前端系列-三次握手

不止于生活z發表於2024-04-05

客戶端和伺服器端的互動

簡單過程:

seq=x

seq=y ack=x+1

seq=y+1

  1. 第一次握手(SYN)
    • 客戶端(Client)向伺服器(Server)發出一個帶有SYN標誌的資料段,其中包含一個隨機序列號seq=x(x為隨機生成的數字)。

1Client -> Server: SYN(seq=x)

  1. 第二次握手(SYN+ACK)
    • 伺服器接收到客戶端的SYN資料段後,如果同意建立連線,則回應一個帶有SYN和ACK標誌的資料段。該資料段確認了客戶端的序列號seq=x,並且包含伺服器自己的序列號seq=y和確認號ack=x+1(acknowledgment number)。

Server -> Client: SYN(seq=y), ACK(ack=x+1)

  1. 第三次握手(ACK)
    • 客戶端收到伺服器的SYN+ACK資料段後,再回應一個帶有ACK標誌的資料段,確認號ack=y+1,表明收到了伺服器的SYN並將自己的連線狀態置為已建立連線。

Client -> Server: ACK(ack=y+1)

相關文章