2016-01-08 48 views
0

瀏覽器在請求網頁之前,需要建立TCP連接。與服務器計算機交互的3次握手的必要性是什麼?爲什麼我們不能簡單地發送Web請求並等待響應?三次握手的必要性

IP地址的分辨率不應該足以達到這個目的嗎?

基本上,我需要知道建立TCP連接的原因。

在此先感謝

回答

0

TCP提供的排序,自動重發,和擁塞控制。我想說這些是設計採用TCP的明顯原因。

相反,例如, UDP很快。沒有握手。但UDP數據包不是有序的,數據包也可能丟失(不自動重傳),並且沒有擁塞控制。

你可以嘗試在UDP中實現你的數據傳輸,例如HTML。這並不容易,您仍然需要重新進行可靠的無損傳輸訂購和轉發。

如果你不關心有損或有點亂序轉移,那麼你可能不需要TCP。 (如實時視頻)

-

在另一方面,避免TCP獲得更好的性能不一定是一個壞主意。閱讀關於QUIC。 (它也具有丟失恢復和擁塞控制等功能,因此您不應該認爲它會非常輕量級。)

1

因爲您需要TCP連接來發送HTTP,TCP有3次握手。

基本上,我需要知道建立TCP連接的原因。

因爲HTTP運行在TCP上。它不存在於真空中。

+0

Pdf非常有用。但它沒有提到握手的原因。所以我問。 – KawaiKx

+0

您在這裏和其他問題中都問過,爲什麼有TCP連接,爲什麼'IP地址解析'還不夠。如果你真的問爲什麼TCP有三次握手,那麼你就離題了。事實上,你無論如何都是主題。 – EJP