摘要:而上面兩種情況,如果使用三次握手就可以成功避免,三次握手完成的兩個重要功能既要雙方做好發(fā)送數(shù)據(jù)的準備工作雙方都知道彼此已準備好允許雙方就初始序列號進行協(xié)商,這個序列號在握手過程中被發(fā)送和確認
我們都知道tcp協(xié)議需要三次握手,那為什么不是兩次握手呢,關(guān)于這個疑問我查了很多資料,看到很多的解釋,現(xiàn)歸納總結(jié)如下,方便我們理解記憶
如果是兩次握手,我們一起來看看下面兩種場景
1.造成資源浪費
Client向Server發(fā)送了一個a1的包
假如這時由于傳輸鏈路上遇到故障,導(dǎo)致a1傳輸?shù)絊erver的時間特別長 假設(shè)1min
在這一分鐘的時間內(nèi),由于Client沒有收到Server對于a1包的確認,Client會以為上一個包發(fā)送丟了或者失敗
那么Client會再發(fā)送一個a2的包
Client又向Server發(fā)送了一個a2的包
這次Server正常收到
于是Server向Client發(fā)送了一個b2的確認包
Client和Server建立鏈接
而隨后滯后的a1包傳到了Server,Server又會返回b1包確認
但是由于Client已經(jīng)清除了a1包,所以Client會丟棄掉這個包,但是Server又會保持這個相當(dāng)于“僵尸”的連接
這樣就會造成白白浪費資源
在謝希仁著《計算機網(wǎng)絡(luò)》第四版中講“三次握手”的目的是“為了防止已失效的連接請求報文段又突然傳送到服務(wù)器,因為產(chǎn)生錯誤”在另一部經(jīng)典的《計算機網(wǎng)絡(luò)》(AndrewS.Tanenbaum著,第四版)一書中講“三次握手”的目的是為了解決“網(wǎng)絡(luò)中存在延遲的重復(fù)分組”的問題。
我們會發(fā)現(xiàn)這兩種不同的表述其實闡明的是同一個問題。
2.死鎖可能發(fā)生
Client向Server發(fā)送了一個連接請求分組
Server收到這個分組,并發(fā)送了確認應(yīng)答分組
按照兩次握手的協(xié)定,Server認為已經(jīng)成功的建立連接,可以開始發(fā)送數(shù)據(jù)分組
而此時Server的應(yīng)答分組傳輸丟失了,Client不知道Server是否已準備好,不知道Server建立什么樣的序列號
Client甚至懷疑Server是否收到了自己的連接請求分組,在這種情況下,Client認為連接還未建立成功,將忽略Server發(fā)來的任何數(shù)據(jù)請求,只等待連接確認影帶分組。而Server在發(fā)出的分組超時后,重復(fù)發(fā)送同樣的分組,資源就形成了死鎖。
而上面兩種情況,如果使用三次握手就可以成功避免,三次握手完成的兩個重要功能
既要雙方做好發(fā)送數(shù)據(jù)的準備工作(雙方都知道彼此已準備好)
允許雙方就初始序列號進行協(xié)商,這個序列號在握手過程中被發(fā)送和確認
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/53944.html
摘要:而上面兩種情況,如果使用三次握手就可以成功避免,三次握手完成的兩個重要功能既要雙方做好發(fā)送數(shù)據(jù)的準備工作雙方都知道彼此已準備好允許雙方就初始序列號進行協(xié)商,這個序列號在握手過程中被發(fā)送和確認 我們都知道tcp協(xié)議需要三次握手,那為什么不是兩次握手呢,關(guān)于這個疑問我查了很多資料,看到很多的解釋,現(xiàn)歸納總結(jié)如下,方便我們理解記憶 如果是兩次握手,我們一起來看看下面兩種場景 1.造成資源浪費...
摘要:原理套接字概念套接字是通信的基石,是支持協(xié)議的網(wǎng)絡(luò)通信的基本操作單元。建立連接建立連接至少需要一對套接字,其中一個運行于客戶端,稱為,另一個運行于服務(wù)器端,稱為。而服務(wù)器端套接字繼續(xù)處于監(jiān)聽狀態(tài),繼續(xù)接收其他客戶端套接字的連接請求。 最近在惡補計算機網(wǎng)絡(luò)方面的知識,之前對于TCP的三次握手和四次分手也是模模糊糊,對于其中的細節(jié)更是渾然不知,最近看了很多這方面的知識,也在系統(tǒng)的學(xué)習(xí)計算機...
閱讀 2864·2021-11-22 11:56
閱讀 3564·2021-11-15 11:39
閱讀 909·2021-09-24 09:48
閱讀 768·2021-08-17 10:14
閱讀 1335·2019-08-30 15:55
閱讀 2763·2019-08-30 15:55
閱讀 1320·2019-08-30 15:44
閱讀 2789·2019-08-30 10:59