已解决问题 - 浏览343次
下一个已解决问题最佳答案 - 由投票者2008-08-02 22:52:02选出
网络常识
路由器的MTU值如何设置最快最好
学校的微机数量在不断地增加,路由器也不断的添置,关于路由器如何达到最优化的问题,不免要说到MTU数值包的设置了。
MTU,即Maximum Transmission Unit(最大传输单元),此值设定TCP/IP协议传输数据报时的最大传输单元。设置合适的MTU值可以解决“部分网站打不开”、“上网速度慢”等问题,并且可以适当提升上网速度。
设置多大的MTU值取决于你的上网方式,不同的上网方式支持不同的MTU,下面列出了一些上网方式的MTU值:
EtherNet(一般上网方式,默认值):1500
PPPoE/ADSL:1492
Dial Up/Modem:576
问题一:知道了我的上网方式,如何设置MTU值?
1. 在 『开始』>『运行』中,键入regedit,点确定;
2. 选择『HKEY_Local_Machine』>『SYSTEM』>『CurrentControlSet』>『Services』>『Tcpip』>『Parameters』>『interface』;
3. 在 interface 底下可能有很多的选项,你一个一个的去看,会有一个选项与你的网卡的 IP 相同,那个就是你要挑选的选项啦!然后同样的在该选项上选择『编辑』>『新建』>『DWORD值』之后,建立一个名为『MTU』的 DWORD,然后双击修改,选择十进制,填入合适 MTU 值,确定!大功告成!
问题二:我不知道自己的上网方式,如何确定MTU值呢?
ping -f -l 1500 127.0.0.1
C:\WINDOWS>ping -f -l 1500 127.0.0.1
Pinging 127.0.0.1 with 1500 bytes of data:
Packet needs to be fragmented but DF set.
Packet needs to be fragmented but DF set.
Packet needs to be fragmented but DF set.
Packet needs to be fragmented but DF set.
Ping statistics for 127.0.0.1:
Packets: Sent = 4, Received = 0, Lost = 4 (100% loss), Approximate round trip times in milli-seconds:
Minimum = 0ms, Maximum = 0ms, Average = 0ms
上面的式子中,-l 是 L 的小写(不是 1 喔),1500 是我们要测的 MTU 值,结果出现了 Packet needs to be fragmented but DF set. 这个东西,那表示MTU值太大了,你需要更小的 MTU 值才行!好啦!那假设我们使用 1464 来测试时:C:\WINDOWS>ping -f -l 1464 127.0.0.1
Pinging 127.0.0.1 with 1464 bytes of data:
Reply from 127.0.0.1: bytes=1464 time=10ms TTL=128
Reply from 127.0.0.1: bytes=1464 time<10ms TTL=128
Reply from 127.0.0.1: bytes=1464 time<10ms TTL=128
Reply from 127.0.0.1: bytes=1464 time<10ms TTL=128
Ping statistics for 127.0.0.1:
Packets: Sent = 4, Received = 4, Lost = 0 (0% loss), Approximate round trip times in milli-seconds:
Minimum = 0ms, Maximum = 10ms, Average = 2ms
结果出现了回应了!这表示这一个 MTU 值是可行的!不过,强烈建议找出可行的最大 MTU 值!这样一来,在设定的时候,才可以达到最佳的网速!
找出 MTU 值:利用上面这个方法找到的数值还不是 MTU 喔!由于一些封包上面的问题,上面这个值再加上 28 才是我们所需要的 MTU 值!所以,在上面的例子中,我们所需要的 MTU 值是 1464+28=1492!
http://218.4.193.138:8080/blog2006/teacher/user1/tcxz/archives/2007/1337.html
http://group.zol.com.cn/1/44_5447.html看看
参考资料
欢迎点击用户名下方的“向我提问”,答疑解惑,乐此不疲!
其他回答(1)
-
MTU值的意思是网络上传送的最大数据包,单位是字节。不同的接入方式,MTU值是不一样的,如果值太大就会产生很多数据包碎片,增加丢包率,降低网络速度。平常使用的宽带PPPoE连接方式,其MTU值最大为1492,解决的办法就是在注册表中对MaxMTU值逐步调低,直到网络最正常为止。MaxMTU在注册表中的位置是:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\sNetTrans\00yy,键名为“MaxMTU”,其中“yy”是TCP/IP的入口,随设置的不同而不同,一般在00到30之间。
那么又如何判定某个MTU值是最适合的呢?进入DOS环境,输入以下命令行:
ping -f -l 1492 192.168.0.1.
提示:其中“192.168.0.1”是网关IP地址,1492为数据包的长度,参数“-l”中是小写的L.如果出现下面信息:Packet needs to be fragmented but DF set,那就表示MTU值太大了。
而如果出现:Reply from 192.168.0.1: bytes=1492 time<10ms TTL=128则表示此MTU值是可行的,不过还是建议多试几个找到最佳值。
问题总结:这也是使用宽带路由器上网的一个小小弊端。通过对网速的实测证明,在ADSL接入电脑之间安装宽带路由器后,在多台电脑同时在线的情况下,由于路由器在地址解析、路由分发等方面的耽误,实际到达电脑的速度比单机直接连入ADSL线路要稍慢一些。




chrischan370






