成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

tcp協(xié)議為什么是三次握手而不是兩次握手?

iliyaku / 677人閱讀

摘要:而上面兩種情況,如果使用三次握手就可以成功避免,三次握手完成的兩個(gè)重要功能既要雙方做好發(fā)送數(shù)據(jù)的準(zhǔn)備工作雙方都知道彼此已準(zhǔn)備好允許雙方就初始序列號(hào)進(jìn)行協(xié)商,這個(gè)序列號(hào)在握手過(guò)程中被發(fā)送和確認(rèn)

我們都知道tcp協(xié)議需要三次握手,那為什么不是兩次握手呢,關(guān)于這個(gè)疑問(wèn)我查了很多資料,看到很多的解釋,現(xiàn)歸納總結(jié)如下,方便我們理解記憶

如果是兩次握手,我們一起來(lái)看看下面兩種場(chǎng)景

1.造成資源浪費(fèi)

Client向Server發(fā)送了一個(gè)a1的包

假如這時(shí)由于傳輸鏈路上遇到故障,導(dǎo)致a1傳輸?shù)絊erver的時(shí)間特別長(zhǎng) 假設(shè)1min
在這一分鐘的時(shí)間內(nèi),由于Client沒(méi)有收到Server對(duì)于a1包的確認(rèn),Client會(huì)以為上一個(gè)包發(fā)送丟了或者失敗
那么Client會(huì)再發(fā)送一個(gè)a2的包

Client又向Server發(fā)送了一個(gè)a2的包

這次Server正常收到

于是Server向Client發(fā)送了一個(gè)b2的確認(rèn)包

Client和Server建立鏈接

而隨后滯后的a1包傳到了Server,Server又會(huì)返回b1包確認(rèn)

但是由于Client已經(jīng)清除了a1包,所以Client會(huì)丟棄掉這個(gè)包,但是Server又會(huì)保持這個(gè)相當(dāng)于“僵尸”的連接

這樣就會(huì)造成白白浪費(fèi)資源

在謝希仁著《計(jì)算機(jī)網(wǎng)絡(luò)》第四版中講“三次握手”的目的是“為了防止已失效的連接請(qǐng)求報(bào)文段又突然傳送到服務(wù)器,因?yàn)楫a(chǎn)生錯(cuò)誤”

在另一部經(jīng)典的《計(jì)算機(jī)網(wǎng)絡(luò)》(AndrewS.Tanenbaum著,第四版)一書中講“三次握手”的目的是為了解決“網(wǎng)絡(luò)中存在延遲的重復(fù)分組”的問(wèn)題。

我們會(huì)發(fā)現(xiàn)這兩種不同的表述其實(shí)闡明的是同一個(gè)問(wèn)題。

2.死鎖可能發(fā)生

Client向Server發(fā)送了一個(gè)連接請(qǐng)求分組

Server收到這個(gè)分組,并發(fā)送了確認(rèn)應(yīng)答分組

按照兩次握手的協(xié)定,Server認(rèn)為已經(jīng)成功的建立連接,可以開始發(fā)送數(shù)據(jù)分組
而此時(shí)Server的應(yīng)答分組傳輸丟失了,Client不知道Server是否已準(zhǔn)備好,不知道Server建立什么樣的序列號(hào)
Client甚至懷疑Server是否收到了自己的連接請(qǐng)求分組,在這種情況下,Client認(rèn)為連接還未建立成功,將忽略Server發(fā)來(lái)的任何數(shù)據(jù)請(qǐng)求,只等待連接確認(rèn)影帶分組。而Server在發(fā)出的分組超時(shí)后,重復(fù)發(fā)送同樣的分組,資源就形成了死鎖。

而上面兩種情況,如果使用三次握手就可以成功避免,三次握手完成的兩個(gè)重要功能

既要雙方做好發(fā)送數(shù)據(jù)的準(zhǔn)備工作(雙方都知道彼此已準(zhǔn)備好)

允許雙方就初始序列號(hào)進(jìn)行協(xié)商,這個(gè)序列號(hào)在握手過(guò)程中被發(fā)送和確認(rèn)

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/104281.html

相關(guān)文章

  • tcp協(xié)議什么三次握手不是兩次握手?

    摘要:而上面兩種情況,如果使用三次握手就可以成功避免,三次握手完成的兩個(gè)重要功能既要雙方做好發(fā)送數(shù)據(jù)的準(zhǔn)備工作雙方都知道彼此已準(zhǔn)備好允許雙方就初始序列號(hào)進(jìn)行協(xié)商,這個(gè)序列號(hào)在握手過(guò)程中被發(fā)送和確認(rèn) 我們都知道tcp協(xié)議需要三次握手,那為什么不是兩次握手呢,關(guān)于這個(gè)疑問(wèn)我查了很多資料,看到很多的解釋,現(xiàn)歸納總結(jié)如下,方便我們理解記憶 如果是兩次握手,我們一起來(lái)看看下面兩種場(chǎng)景 1.造成資源浪費(fèi)...

    cloud 評(píng)論0 收藏0
  • 通俗大白話來(lái)理解TCP協(xié)議三次握手和四次分手

    摘要:原理套接字概念套接字是通信的基石,是支持協(xié)議的網(wǎng)絡(luò)通信的基本操作單元。建立連接建立連接至少需要一對(duì)套接字,其中一個(gè)運(yùn)行于客戶端,稱為,另一個(gè)運(yùn)行于服務(wù)器端,稱為。而服務(wù)器端套接字繼續(xù)處于監(jiān)聽狀態(tài),繼續(xù)接收其他客戶端套接字的連接請(qǐng)求。 最近在惡補(bǔ)計(jì)算機(jī)網(wǎng)絡(luò)方面的知識(shí),之前對(duì)于TCP的三次握手和四次分手也是模模糊糊,對(duì)于其中的細(xì)節(jié)更是渾然不知,最近看了很多這方面的知識(shí),也在系統(tǒng)的學(xué)習(xí)計(jì)算機(jī)...

    Sanchi 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

閱讀需要支付1元查看
<