sequenceDiagram
participant Client
participant Server
Note over Server: CLOSED
Note over Client: CLOSED
Note over Server: LISTEN
Client->>Server: SYN (seq=x)
Note over Client: SYN_SENT
Server-->>Client: SYN-ACK (seq=y, ack=x+1)
Note over Server: SYN_RCVD
Client->>Server: ACK (seq=x+1, ack=y+1)
Note over Client: ESTABLISHED
Note over Server: ESTABLISHED
握手过程
客户端向服务器发送 SYN 包(包中指定自己的初始 seq),进入 SYN_SENT 状态;
服务端收到 SYN 包,回复自己的 SYN 包(包中包含自己的初始 seq 和对客户端 SYN 包的 ACK),进入 SYN_RCVD 状态;
客服端收到 SYN+ACK 回复 ACK,自己进入 ESTABLISHED 状态,同时这个包是可以带要发送的数据的;