TCP三次握手和四次挥手

时间:2020-05-22 00:21:09   收藏:0   阅读:70

参考资料:https://blog.csdn.net/qq_38950316/article/details/81087809

三次握手

1.客户端向服务端发送SYN包,syn标志位置为1,seq=x,此时进入SYN_SENT状态。SYN:同步序列编号(Synchronize Sequence Numbers)。

2.服务端收到SYN包后,ack标志位置为1,seq=y,同时也发一个SYN包,syn标志位置为1,ack=x+1。 此时发送的包等于ACK+SYN包,服务器进入 SYN_RECV 状态。

3.客户端收到服务端返回的包后,向服务端发送ACK包,ack标志位置为1,ack=y+1。此时进入连接成功状态 ESTABLISHED

四次挥手

1. (第一次)主动关闭方发送FIN包。FIN=1,seq=u,。主动关闭方进入FIN-WAIT-1状态。

2. (第二次)被动关闭放发出确认报文,ACK=1,ack=u+1,seq=v。被动关闭放进入CLOSE-WAIT状态。

3. 关闭发起方接收到确认报文后就进入FIN-WAIT-2状态。

4. 此时被动关闭方可能还有数据要传递给主动关闭方。

5. (第三次)当被动关闭方发送完所有数据,向主动关闭方发送FIN包。ACK=1,ack=u+1,FIN=1,seq=w。此时被动关闭方进入LAST-ACK状态。

6. (第四次)当主动关闭方收到报文之后,向被动关闭方发送ACK包。ACK=1,ack=w+1,seq=u+1。然后进入TIME-WAIT状态,2MSL【两倍的MSL(Maximum Segment Lifetime)】后进入CLOSED状态。如果2MSL内再次接收到FIN包,会重发ACK并重新等待。

7. 当被动关闭方收到确认报文后,立即进入CLOSED状态。

 

原文:https://www.cnblogs.com/chhgamwork/p/12934203.html

评论(0
© 2014 bubuko.com 版权所有 - 联系我们:wmxa8@hotmail.com
打开技术之扣,分享程序人生!