為什么TCP 要采用「3次握手」建立連接?

2021-01-31    分類: 網(wǎng)站建設(shè)

首先說說為什么是三次握手?

當(dāng)客戶端發(fā)送一次請求A后,但是A在網(wǎng)絡(luò)延遲了很久, 接著客戶端又發(fā)送了一次B,但是此時A已經(jīng)無效了。

接著服務(wù)器相應(yīng)了B,并返回TCP連接頭,建立連接(這里就2次哈)。

然后,A 歷經(jīng)千山萬水終于到服務(wù)器了, 服務(wù)器一看有請求來了,則接受。

由于一開始A帶著的TCP格式都是正確的,那么服務(wù)器,理所應(yīng)當(dāng)?shù)囊卜祷爻晒B接的flag,但是,此時客戶端已經(jīng)判斷該次請求無效,廢棄了。

然后服務(wù)器,就這么一直掛著(浪費資源),造成的一個問題是,md, 這個鍋是誰的?所以,為了保險起見,再補充一次連接就可以了。

所以3次是最合適的。在Chinese中,以3為起稱為多,如果你用4,5,6,7,8...次的話,這不更浪費嗎?

為什么要進行三次握手?舉個栗子吧!

在紅軍時期,A連和B連分在左右翼,約定在幾時幾分一同發(fā)起打擊。這個幾時幾分的信息就需要人工通過通訊員來走路傳遞。所以A連指揮官派出通訊員。

這是第一次。

假設(shè)通訊員到達了B連,并且告知了B連指揮官幾時幾分,B連指揮官一定會讓通訊員再回去通知A連指揮官,可憐的通訊員只能冒著危險返回A連,因為A連指揮官看不到通訊員返回的話,不知道幾時幾分這個信息到底傳達到了B連沒有。

這是第二次。

現(xiàn)在B連指揮官開始擔(dān)心通訊員是否回到了A連,如果沒回到,B連指揮官會設(shè)身處地的想一想A連指揮官見不到返回的通訊員,肯定是不敢打的,所以B連指揮官最盼望的是再次看到通訊員出現(xiàn)在B連,所以A連指揮官會讓通訊員再回B連一次。

因此可以說三次握手是在最快最省力的情況下作出的選擇。

(第二次握手)

第三次握手的數(shù)據(jù)包,客戶端再次發(fā)送確認(rèn)包(ACK) SYN標(biāo)志位為0,ACK標(biāo)志位為1.并且把服務(wù)器發(fā)來ACK的序號字段+1,放在確定字段中發(fā)送給對方.并且在數(shù)據(jù)段放寫ISN的+1,如下圖所示

TCP/IP

(第三次握手)

以上就是 wireshark中的tcp三次握手過程。

分享標(biāo)題:為什么TCP 要采用「3次握手」建立連接?
分享URL:http://www.muchs.cn/news20/98420.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供響應(yīng)式網(wǎng)站、關(guān)鍵詞優(yōu)化、品牌網(wǎng)站制作、面包屑導(dǎo)航、網(wǎng)站制作電子商務(wù)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都網(wǎng)頁設(shè)計公司