测试思路
在广域网上,大小超出ISP要求的数据包将无法传输,而操作系统则会根据本机MTU值自动将大小不符合要求的数据进行分包处理再进行传输,所以我们可以通过向Internet上的某台主机发送一个定长数据包,并且不允许操作系统更改其大小的方式去检查该数据包能否被正常传输,如果数据包小于或等于ISP的MTU值时,传输就能正常进行,而如果发送的数据包大于ISP使用的MTU值时,传输就会失败,这样我们就能通过不断发送不同大小的数据包最终得到ISP端的MTU大小,而这个数据再加上28字节的包头信息就是我们需要的最终MTU值。
测试步骤
1. 拨号上网,并打开“开始”菜单→“程序→附件→命令提示符”
2. 输入命令“ping –l 14xx –f www.163.com”,这里我们解释一下命令参数的含义
* –l 14xx参数:发送一个定长数据包,14xx是要测试的包大小,如前所述,ADSL的MTU一般在1450与1492之间,第3步中将每次更换一次该值
* –f 参数:通知操作系统不能私自更改该数据包大小
* www.163.com:任意一台Internet上的主机,也可使用其它主机名或IP地址
3. 观察反馈结果并判断ISP的MTU值(请注意图中标黄框部分)
1) 第一次发送测试包,包长1450
如图1,提示数据包过大,需要分包,因此判断该数值(1450)大于ISP的MTU,应降低包大小
2) 第二次发送测试包,包长1440
如图2,数据包大小降为1440,提示应为数据包过大,因此判断该值(1440)仍大于ISP的MTU,还应继续降低
3) 第三次发送测试包,包长1430
如图3,数据包大小降为1430,提示该数据包可以正常传输,因此判断ISP的MTU值在1440~1430之间
4) 第四次发送测试包,包长1435
如图4,数据包大小升为1435,提示仍然可以正常传输,因此判断MTU数值在1440~1435之间
5) 第五次发送测试包,包长1438
如图5,数据包大小升为1438,提示可正常传输,因此判断MTU数值在1440~1438之间
如图6,数据包大小升为1439,提示因数据包过大无法传输,因此,判断出该ISP的MTU值为1438
4. 计算本地电脑的MTU值
上面得到的MTU值不能直接用于本地设置上,还应在此基础上加上28(包头大小),因此最终的MTU数值为1466
5. 修改本机MTU值
修改本机默认的MTU值可以通过注册表来进行,但更直观稳妥的方法是使用一些系统优化软件,如“超级兔子”或“Windows优化大师”等,本例使用“超级兔子 V6.25”进行演示。如图7是进入魔法设置网络设置标签的画面,首先选中“使用最大传输单元”前面的勾,然后再从后面的数据栏中输入计算出的MTU值(1466)后点击确定并重启电脑即可。
总结
如上所述,整个过程可能看起来挺烦琐,但思路十分简单,而且效果不错。笔者的电脑设置了MTU值后,浏览器打开页面的速度较未设置前提高了15%,效果还是很明显的。朔ㄖ皇视糜赑PPOE的拨号ADSL,对于光纤接入或ISDN接入的宽带网络不适用此法。
标签: