03.06 一個tcp連接,http連接怎麼選擇?

草莓味屠夫


“我是喲喲吼說科技,專注於數據網絡的問題,歡迎大家與我交流數據網絡的問題”

如題,一個TCP連接,HTTP連接怎樣選擇?

喲喲認為HTTP請求的選擇是根據其數據報文傳輸層所對應的端口號來確定選用哪個TCP連接。

下面喲喲來簡單介紹一下TCP連接和HTTP連接的區別和聯繫:

兩者的區別:

1、TCP協議是傳輸層的一個面向連接的、可靠的傳輸協議;而HTTP協議是應用層的協議,是無狀態的;

2、TCP用來單純的為了建立連接的;而HTTP是單純的收發數據的;

3、TCP是定義數據傳輸和連接的規範;而HTTP是定義傳輸數據內容的規範;

兩者的聯繫:

HTTP協議是基於TCP協議來完成的,即HTTP數據報文的請求或回應都是通過傳輸層的TCP協議來實現的。一個完整的HTTP過程,首先要通過TCP三次握手機制來建立連接後,才能發送HTTP請求、回應等過程,待數據傳輸完畢時,通過TCP四次揮手的機制來斷開連接。

通過網上查閱資料可以看到,HTTP連接分為長連接和短連接。不過喲喲認為,HTTP連接只是說明狀態,不是真正意義上的連接過程,因為建立連接是由TCP來完成,因此喲喲自我感覺HTTP長連接和短連接之分是根據TCP的長連接和短連接來定義的,畢竟HTTP協議是基於TCP協議的。

回到主題上,多個TCP連接通道,HTTP究竟如何選擇呢?喲喲認為這還是要看HTTP數據報文中傳輸層所對應的端口是什麼,因為每個TCP連接只能對應唯一的端口,因此數據報文中端口與哪條TCP通道匹配就選哪個TCP連接,若不能匹配,則重新創建TCP連接。

歡迎大家多多關注我,在下方評論區說出自己的見解。


分享到:


相關文章: