-
目录:
一,TCP协议的头部
二,滑动窗口
三,建立连接时的三次握手,状态变迁
3.1 三次握手为什么不能是两次握手?
3.2 什么时候使用RST标志位?
3.3 syn攻击是什么?
3.4 TCP如果没收到握手的报文,怎么重传?
四,断开连接时四次挥手,状态变迁
4.1 为什么要四次挥手?
4.2 什么是MSL?一个MSL是多长?
4.3 TIME_WAIT状态为什么要持续 2MSL ?
-
一,TCP协议的头部
-
二,滑动窗口
-
三,建立连接时的三次握手,状态变迁
-
四,断开连接时四次挥手,状态变迁
4.2 什么是MSL?一个MSL是多长?
答: MSL是Maximum Segment Lifetime的英文缩写,可译为“最长报文段寿命”,它是任何报文在网络上存在的最长时间,超过这个时间报文将被丢弃。
我们都知道IP头部中有个TTL字段,TTL是time to live的缩写,可译为“生存时间”,这个生存时间是由源主机设置设置初始值但不是但不是存在的具体时间,而是一个IP数据报可以经过的最大路由数,每经过一个路由器,它的值就减1,当此值为0则数据报被丢弃,同时发送ICMP报文通知源主机。
RFC793中规定MSL为2分钟,但这完全是从工程上来考虑,对于现在的网络,MSL=2分钟可能太长了一些。因此TCP允许不同的实现可根据具体情况使用更小的MSL值。TTL与MSL是有关系的但不是简单的相等关系,MSL要大于TTL。