TCP(传输控制协议)使用三次握手来建立可靠的连接。过程如下:
- 第一次握手 (SYN): 客户端向服务器发送一个SYN(同步)报文段,其中包含一个初始序列号(Seq=X)。客户端进入SYN_SENT状态。
- 第二次握手 (SYN-ACK): 服务器收到SYN报文段后,如果同意建立连接,会回复一个SYN-ACK报文段。该报文段包含服务器的初始序列号(Seq=Y),确认号为客户端的序列号加1(ACK=X+1),并将SYN和ACK标志位置1。服务器进入SYN_RCVD状态。
- 第三次握手 (ACK): 客户端收到服务器的SYN-ACK报文段后,会发送一个ACK(确认)报文段。该报文段的确认号为服务器的序列号加1(ACK=Y+1),并将ACK标志位置1。客户端进入ESTABLISHED状态。服务器收到ACK报文段后,也进入ESTABLISHED状态。连接建立完成。
标志位说明:
- SYN (Synchronize): 请求建立连接。
- ACK (Acknowledge): 确认收到的数据。