TCP爲什麼進行三次握手?爲什麼兩次、四次握手不可以?

TCP 三次握手的過程掌握最重要的兩點就是客戶端和服務端狀態的變化,另一個是三次握手過程標誌信息的變化,那麼掌握 TCP 的三次握手就簡單多了。下面就以動畫形式進行拆解三次握手過程。

在這裏插入圖片描述

初始狀態:客戶端處於 closed(關閉)狀態,服務器處於 listen(監聽) 狀態。在這裏插入圖片描述

第一次握手:客戶端發送請求報文將 SYN = 1同步序列號和初始化序列號seq = x發送給服務端,發送完之後客戶端處於SYN_Send狀態。在這裏插入圖片描述

第二次握手:服務端受到 SYN 請求報文之後,如果同意連接,會以自己的同步序列號SYN(服務端) = 1、初始化序列號 seq = y和確認序列號(期望下次收到的數據包)ack = x+ 1 以及確認號ACK = 1報文作爲應答,服務器爲SYN_Receive狀態。在這裏插入圖片描述

第三次握手: 客戶端接收到服務端的 SYN + ACK之後,知道可以下次可以發送了下一序列的數據包了,然後發送同步序列號 ack = y + 1和數據包的序列號 seq = x + 1以及確認號ACK = 1確認包作爲應答,客戶端轉爲established狀態。在這裏插入圖片描述

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章