国产网站开发工具公司,深圳p2p网站开发,勒流网站建设制作,网站后台管理系统 模板1.TCP之2MSL 
1.1 MSL MSL:Maximum Segment Lifetime报文段最大生存时间#xff0c;它是任何报文段被丢弃前在网络内的最长时间 1.2为什么存在MSL TCP报文段以IP数据报在网络内传输#xff0c;而IP数据报则有限制其生存时间的TTL字段#xff0c;并且TTL的限制是基于跳数 1.3…1.TCP之2MSL 
1.1 MSL MSL:Maximum Segment Lifetime报文段最大生存时间它是任何报文段被丢弃前在网络内的最长时间 1.2为什么存在MSL TCP报文段以IP数据报在网络内传输而IP数据报则有限制其生存时间的TTL字段并且TTL的限制是基于跳数 1.3MSL大小定义 RFC文档中规定为2分钟但是实际实现过程中MSL一般为30秒、1分钟、2分钟 2.1 何为2MSL状态 
在TCP调用connect建立socket的连接后主动关闭socket连接的过程中有一个状态为Time_Wait也就是2MSL等待机制需要停留2MSL的时间具体见下面的图 2.2什么时候有2MSL状态 只有主动关闭socket连接的时候才有此状态并且在2MSL等待期间定义这个连接的Socket Pair客户的IP地址和端口号服务器的IP地址和端口号不能再被使用 3.1 2MSL机制作用 保证了最后一个ACK发送给被动关闭端确保连接双方关闭完成如果没有该机制最后一个ACK丢失后会出现半连接的状态 3.2 为什么客户端在 TIME-WAIT 状态必须等待 2MSL 的时间 就好像分手一样客户端主动关闭的你得为这件事负责吧客户端为了确保服务器收到最后一次挥手的报文。如果最后一次丢包了服务器没有收到第四次挥手的报文还以为客户端不想分手就会再重发一次第三次挥手的报文看看客户端是不是后悔了不想分手了。这个等待时间就是为了接收超时重传的报文。 假如客户端发完就断开了链接然后服务器一直等不到回应重传了报文还是没有得到回应服务器不死心啊服务器就关闭不了链接。客户端这时就是典型的渣男角色分手你别让别人还抱有幻想是不是 说多了回归正题 tcp最大的特点就是数据不会丢失啊客户端渣渣的建立了新连接然后发现有一个旧的数据包然后让客户端的新连接也不好了这就叫自食其果。所以有了这个等待时间既保证了双方都正常关闭又保证了所有报文段消失不会在新连接中出现旧的请求报文段。 总结 主动发送 fin 关闭的一方在 4 次挥手最后一次要等待一段时间我们称这段时间为 2MSL。