1. 程式人生 > >詳解TCP的3次握手和4次揮手

詳解TCP的3次握手和4次揮手

3次æ¡æå4次æ¡æå¾è§£

為什麼有3次握手

         每當建立一個TCP/IP連線的時候都要經歷3次握手,這是為了保證建立一個可靠的連線。

什麼是3次握手

       上圖中的三次揮手說的是,客戶端向伺服器發請求,伺服器接收請求,伺服器接收請求之後傳送一個連線標誌,客戶端接收連線標誌之後也向伺服器傳送一個連線標誌,至此連線完成。用打電話類比的話就是:

小明撥打小紅的電話

小紅按下通話鍵並說了聲,喂 (一次握手)

小明聽到小紅的迴應,也說了聲,喂 (二次握手)

小紅接收到小明的迴應 (三次握手)

4次揮手

為什麼有4次揮手呢,4次揮手的作用就是斷開連線,之所以要斷開連線是因為TCP/IP協議是要佔用埠的,而計算機的埠是有限的,所以一次傳輸完成之後是要斷開連線的,斷開連線的方式就是4次揮手。

連線是由客戶端發起的,所以斷開連線也要有客戶端發起,因為伺服器是被動的。上圖的最後一部分就是4次揮手,還是用小明和小紅打電話來類比。

小明:我這沒事兒了,你還有事兒嗎? (1次揮手)

小紅:我也沒事兒了,你確定沒事兒了嗎? (2次揮手)

小紅:我要掛電話了。 (3次揮手)

小明:好吧,你掛吧。 (4次揮手)