上面这张图片描述了客户端作为断开链接发起者的TCP四次挥手的过程。
time_wait其实并不能说是服务器还是客户端的状态。
因为他其实是一个主动断开链接发起者的状态,在发送最后一次ACK后进入time_wait状态。
那么,为什么需要进行time_wait这个状态呢,为什么不是主动发起关闭端发送最后一次ACK就进入close状态呢?
因为,客户端发送最后一次ACK之后,可能由于网络比较阻塞,该数据帧在传送过程中丢失了。服务器可能会再次进行确认,但是此时如果客户端已经进入close状态,不会理会其他的请求。因此,采用time_wait来保障如果网络比较阻塞,可以保证正常关闭TCP连接。
————————————————
版权声明:本文为CSDN博主「wxtRelax」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/w_weixiaotao/article/details/106223369
tcp 各个状态解读 相关文章:
https://www.cnblogs.com/rexcheny/p/11143128.html
https://segmentfault.com/a/1190000019725423
https://cloud.tencent.com/developer/article/1683650
https://blog.csdn.net/bit_clearoff/article/details/60884905