当客户端发送给服务器的巨帧经过路由器时,要么被丢包,要么被分片,取决于该巨帧是否在网络层带了DF(Don’t Fragment)标志。
案例1:
用户浏览某些共享目录时客户端会死机,浏览其他目录则不会。
思路:
通过抓包,发现一直在重传,但是客户端一直没有确认。
发生丢包的可能性很多,为什么能确定是MTU导致的呢?思路如下:
①如果端口被防火墙阻止了也可能丢包,但是会从三次握手时就开始丢
②网络拥塞会导致丢包,但是不会这样持续的丢包
③丢的那个包时1460字节,对于MTU来说较大了,其他较小的包没有丢
④用"ping -l 1472 -f " 测试,失败,逐渐减小字节能成功,说明网络有MTU较小的设备。
⑤把MTU改小以后,问题得到解决
案例2:
客户端的MTU为1500字节,服务端的MTU为9000字节,平时连接正常,把客户端的MTU提高到9000字节,连接出现问题。
中间设备的MTU太小导致的问题