欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 文旅 > 艺术 > TCP断开连接

TCP断开连接

2025/5/11 0:17:24 来源:https://blog.csdn.net/m0_73907449/article/details/146875418  浏览:    关键词:TCP断开连接

TCP四次挥手

        

TCP的断开状态

客户端

        1、建立完成状态 --- 发送完所有字节流后,携带最后一组字节流的数据同时将FIN标记位置1,之后进入到下一个状态。

        2、FIN_WAIT_1 --- 等待服务器回复ACK,收到ACK应答之后,将进入到下一个状态。

        3、FIN_WAIT_2 --- 等待服务器发送FIN断开请求,将恢复ACK进行确认,进入下一个状态。

        4、TIME_WAIT --- 等待2MSL时间后进入下一个状态。

        5、CLOSE --- 关闭状态,断开TCP的连接,释放掉所有TCP连接占用的资源。

        为什么会有TIME_WAIT状态??

                保证TCP会话可以正常关闭。断开连接发起方最后发送ACK可能出现问题(丢包),需要等待对方反馈。

                

        为什么TIME——WAIT状态的时间是2MSL??

                MSL --- 报文最大生存时间

                原因:1、最后一个ACK报文丢失,等待对方重传,一来一回正好两个MSL时间,设置为此,则可以保证TCP会话的正常断开。

                           2、设置2MSL足以让两个方向上的数据报都丢弃,再出现新的连接时,不至于让历史报文造成数据错乱。

                           3、太长也不行,导致资源占用过大。

                

服务器

        1、建立完成状态 --- 收到客户端发送的FIN断开请求后,服务器将回复一个ACK确认报文,之后进入到下一个状态

        2、CLOSED_WAIT --- 等待服务器自身字节流的发送,当自身所有字节流传递完毕后,将发送一个FIN断开请求,之后进入到下一个状态

        3、LAST_ACK --- 等待客户端进行最后的ACK答应,当收到客户端发送的ACK确认报文之后,将进入到下一状态。

        4、CLOSE --- 关闭状态,断开TCP的连接,释放掉所有TCP连接占用的资源。

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词