码迷,mamicode.com
首页 > 其他好文 > 详细

tcp协议的三次握手四次挥手

时间:2018-11-04 11:12:20      阅读:172      评论:0      收藏:0      [点我收藏+]

标签:自己   time   时间   focus   协议   lock   style   需要   end   

第一次握手:建立连接时,客户端发送syn包到服务器,并进入SYN_SENT状态,等待服务器确认;SYN:同步序列编号

第二次握手:服务器收到syn包,必须确认客户的SYN,同时自己也发送一个SYN包和一个ack包,此时服务器进入SYN_RECV状态;

第三次握手:客户端收到服务器的SYN包和ACK包,向服务器发送确认包ACK,此包发送完毕,客户端和服务器进入ESTABLISHED(TCP连接成功)状态,完成三次握手。 完成三次握手,客户端与服务器开始传送数据

技术分享图片

第一次挥手:客户端A发送一个“FIN”报文段给服务器B,其中该报文中的FIN标志位被置为1。

第二次挥手:服务器B收到了FIN报文段后,它会向客户端发送“ACK”报文段,表示允许断开该TCP连接了。同时它还会通知高层应用程序,客户端已经请求释放连接。此时客户端已经不再会给服务器发送数据了,但是服务器到客户端的TCP连接还没有断开,所以服务器还是可以向客户端发送数据,此时状态称为“半关闭状态”。

第三次挥手:当服务端的高层程序已经没有数据要发送了,它会通知TCP可以断开连接了,这时候,服务器就会向客户端发送FIN报文段。

第四次挥手:客户端收到FIN报文段后,客户端会发送“ACK”报文段给服务器,同时客户端会进入一个叫“TIME-WAIT”的状态,需要再等待两个报文寿命(MSL)时间后,才进入最后的“CLOSE”状态。

技术分享图片

 

tcp协议的三次握手四次挥手

标签:自己   time   时间   focus   协议   lock   style   需要   end   

原文地址:https://www.cnblogs.com/gkl123/p/9903093.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!