tcp状态图的理解以及TIME_WAIT状态

一、tcp状态转移图

tcp状态图的理解以及TIME_WAIT状态

解释:

1、包括服务器端和客户端,两个走向。
2、状态有11中,主要的有CLOSED LISTEN SYN_RCVD SYN_SENT ESTABLISHED FIN_WAIT 1 FIN_WAIT 2 TIME_WAIT CLOSING CLOSE_WAIT LAST_ACK

二、TIME_WAIT 的状态图

tcp状态图的理解以及TIME_WAIT状态

声明:

ser为发送端 +++++ cli为接收端

由图知道,造成TIME_WAIT原因有三个:
1、FIN_WAIT1 ,收到接收端的FIN;
2、 双方同时发起关闭 ;
3、正常情况下。

tcp状态图的理解以及TIME_WAIT状态

声明:

0、TIME_WAIT 解决当服务器发送的最后一个ACK发送失败时,超过2MSL(最大分支生命区),该网络就会消失。(服务器异常退出,默认存在4分钟)(ip数据包在网络中存在)
1、服务器主动断开,会有三种状态变化:FIN_WAIT 1 FIN_WAIT 2 TIME_WAIT
2、客户端被动断开,会有三种状态:CLOSE_WAIT LAST_ACK CLOSED

转载:https://my.oschina.net/xinxingegeya/blog/483922
作者写的内容很清楚,非常感谢!