TCP的CLOSING状态发生条件

TCP的CLOSING状态发生条件

在这里插入图片描述
当主动关闭方发送了FIN后(主动方状态FIN_TAIT_1)到达被动关闭方。被动关闭方接受FIN并发送了确认ACK(被动方变为CLOSE_WAIT),之后发送了被动方自己的FIN;
情况1:此时主动方先收到ACK,进入fin_wait_2,然后收到FIN并发送确认码ACK,主动关闭方进入TIME_WAIT
情况2:此时主动方先收到被动关闭方的FIN然后发送该FIN的接收确认码ACK到被动关闭方(主动方状态变为CLOSING,可能是由于传输过程中出现异常,ACK数据被阻塞延时),然后收到被动方发送给主动方的ACK确认码,主动方进入TIME_WAIT。

备注:每次2个socket之间进行通讯,每次通信都必须经过2个环节。a:主动方发送数据到被动方,b:被动方发送确认收到的信息ACK到发送方,如果主动方没有收到该ACK,那么主动方会重新发送。一般主动方请求发送后,ack码会与要传输的数据内容一起传输给发送请求端。

发布了16 篇原创文章 · 获赞 0 · 访问量 670

猜你喜欢

转载自blog.csdn.net/yaqiang2017/article/details/104007819