TCP是如何實現三次握手的?


什么是三次握手

  1. TCP是網絡傳輸層的協議,提供面向連接的可靠的字節流服務,要通信得先建立連接
  2. 所謂三次握手就是指,建立一個TCP連接時,需要CLient與Server發送三個包,確認連接的建立
  3. 這一過程由Client執行connect觸發

簡單描述下三次握手的具體過程

第一次握手:

Client將SYN置為1,seq=隨機值j,將該數據包發送給Server, 進入SYN_SENT狀態,等待Server確認

第二次握手:

Server收到數據包由標志位SYN=1知道,是請求建立新連接, 將ACK置為1,ack=j+1,作為響應Client的請求, 將SYN置為1,seq=隨機值k,發送給Client等待確認, Server進入SYN_RECV狀態 因為是建立連接,這些信息在一個數據包中


第三次握手:

Client收到響應
檢查ACK==1?,ack==j+1?,若都符合 將ACK置為1,ack=k+1,發送給Server,Client進入establish狀態 Server收到響應 檢查ACK==1?,ack==k+1?,若都符合 進入establish狀態,三次握手完成,TCP連接建立,開始通信


TCP報文圖:

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM