TCP的三次握手与四次断开

三次握手:

 

第一次握手:客户端发送syn(连接请求/接收 报文段)和seq=x(seq:序列号)到服务器,等待服务器确认。
第二次握手:服务器收到syn包,确认客户的SYN,回复ack=x+1,同时服务器也发送一个SYN包,也回复seq=y。
第三次握手:客户端收到服务器的SYN+ACK包,向服务器发送确认ACK(ack=y+1),此时,完成三次握手。
三次握手结束后,客户端与服务器建立TCP连接。

四次挥手(断开):

第一次挥手:客户端发送一个 FIN 报文(请求连接终止:FIN = 1),报文中会指定一个序列号并停止发送数据,主动关闭 TCP 连接,等待服务端的确认。

第二次挥手:服务端收到 FIN 之后,会发送 ACK 报文,把客户端的序列号值 +1 作为 ACK 报文的序列号值,表明已经收到客户端的报文。

第三次挥手:服务端若要断开连接,向客户端发送FIN和一个序列值,等待客户端确认。

第四次挥手:客户端收到 FIN 之后,发送ACK 作为应答,把服务端的序列值 +1 作为自己 ACK 报文的序号值。

经过一段时间的等待,确保服务端收到客户端的ACK,完成四次挥手,双方关闭。

你可能感兴趣的:(tcp/ip)