标签:协议栈 code 时间 tcp info mic ack png inf
深入理解
TIME_WAIT是干啥的
先祭出tcp状态机迁移图。做协议栈的都要能默写啊!
只有主动关闭连接的一方,才会转移到TIME_WAIT。
TIME_WAIT的主要目的有2个:
避免误收延迟到达的报文
如下图,由于TIME_WAIT的时间被缩短了,造成新建的连接收到了之前延迟到达的报文(5元组是匹配的)。
保证对端已经关闭了连接
如下图,由于TIME_WAIT的时间被缩短了,对端还处于LAST_ACK状态,本端发送的syn报文被直接RST掉了。
标签:协议栈 code 时间 tcp info mic ack png inf
原文地址:https://www.cnblogs.com/alberto/p/14375656.html