测试一个网络MTU值的操作步骤 九

合集下载

系统与路由MUT设置

系统与路由MUT设置

一.如何检测网关的MTU?在本机打开dos窗口,执行:ping -f -l 1452 192.168.1.1其中192.168.1.1是网关IP地址,1452是数据包的长度。

请注意,上面的参数是“-l”(小写的L),而不是“-1”。

如果能ping通,表示数据包不需要拆包,可以通过网关发送出去。

如果出现: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 命令。

从1400到1472之间多试几次,就能找到合适的数据包长度了。

把数据包长度加上数据包头28字节,就得到MTU的值。

如果检测到网关的MTU值是1500,不需要修改。

如果网关有防火墙ping不通,可以试试直接把MTU设为1400。

C:\Documents and Settings\Administrator>ping -f -l 1452 192.168.1.1Pinging 192.168.1.1 with 1452 bytes of data:Reply from 192.168.1.1: bytes=1452 time=5ms TTL=64Reply from 192.168.1.1: bytes=1452 time=5ms TTL=64Reply from 192.168.1.1: bytes=1452 time=5ms TTL=64Reply from 192.168.1.1: bytes=1452 time=1ms TTL=64结果出现了回应了!这表示这一个MTU 值是可行的!不过,强烈建议找出可行的最大MTU 值!这样一来,在设定的时候,才可以达到最佳的网速!找出MTU 值:利用上面这个方法找到的数值还不是MTU 喔!由于一些封包上面的问题,上面这个值再加上28 才是我们所需要的MTU 值!所以,在上面的例子中,我们所需要的MTU 值是1464+28=1492!附注:我设置为1452+28=1480后,还是会出现有些网站打不开、远程桌面无法通过域名登陆的问题(通过ip可以正常远程桌面登陆),而把MTU设置为1452后,反而这些问题都迎刃而解了,并且,此时,登陆zlbog后台正常、使用域名登陆远程桌面正常。

MTU值取值及修改详解

MTU值取值及修改详解

ROS等路由器MTU值取值及修改详解[图文]MTU是Maximum Transmission Unit的缩写。

意思是网络上传送的最大数据包。

MTU的单位是字节。

大部分网络设备的MTU都是1500。

如果本机的MTU比网关的MTU大,大的数据包就会被拆开来传送,这样会产生很多数据包碎片,增加丢包率,降低网络速度。

把本机的MTU设成比网关的MTU小或相同,就可以减少丢包。

如何检测网关的MTU?在本机打开dos窗口,执行:ping -f -l 1452 192.168.1.1其中192.168.1.1是网关IP地址,1452是数据包的长度。

请注意,上面的参数是“-l”(小写的L),而不是“-1”。

如果能ping通,表示数据包不需要拆包,可以通过网关发送出去。

如果出现: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命令。

从1400到1472之间多试几次,就能找到合适的数据包长度了。

把数据包长度加上数据包头28字节,就得到MTU的值。

如果检测到网关的MTU值是1500,不需要修改。

如果网关有防火墙ping不通,可以试试直接把MTU设为1400。

C:\Documents and Settings\Administrator>ping -f -l 1452 192.168.1.1Pinging 192.168.1.1 with 1452 bytes of data:Reply from 192.168.1.1: bytes=1452 time=5ms TTL=64Reply from 192.168.1.1: bytes=1452 time=5ms TTL=64Reply from 192.168.1.1: bytes=1452 time=5ms TTL=64Reply from 192.168.1.1: bytes=1452 time=1ms TTL=64结果出现了回应了!这表示这一个 MTU 值是可行的!不过,强烈建议找出可行的最大 MTU 值!这样一来,在设定的时候,才可以达到最佳的网速!找出 MTU 值:利用上面这个方法找到的数值还不是 MTU 喔!由于一些封包上面的问题,上面这个值再加上 28 才是我们所需要的 MTU 值!所以,在上面的例子中,我们所需要的 MTU 值是 1464+28=1492!附注:我设置为1452+28=1480后,还是会出现有些网站打不开、远程桌面无法通过域名登陆的问题(通过ip可以正常远程桌面登陆),而把MTU设置为1452后,反而这些问题都迎刃而解了,并且,此时,登陆zlbog后台正常、使用域名登陆远程桌面正常。

用ping追踪计算机的最佳MTU值修改MTU值

用ping追踪计算机的最佳MTU值修改MTU值

(本文转载自网络)用ping追踪计算机的最佳MTU值&修改MTU值1、什么是MTUMTU是Maximum Transmission Unit的缩写。

意思是网络上传送的最大数据包。

MTU的单位是字节。

大部分网络设备的MTU都是1500。

如果本机的MTU比网关的MTU大,大的数据包就会被拆开来传送,这样会产生很多数据包碎片,增加丢包率,降低网络速度。

把本机的MTU 设成比网关的MTU小或相同,就可以减少丢包。

2、如何检测网关的MTU?在本机打开dos窗口,执行:ping -f -l 1472 192.168.0.1 其中192.168.0.1是网关IP地址,1472是数据包的长度。

请注意,上面的参数是“-l”(小写的L),而不是“-1”。

如果能ping通,表示数据包不需要拆包,可以通过网关发送出去。

如果出现:Packet needs to be fragmented but DF set. 表示数据包需要拆开来发送。

此时,减少数据包长度,再执行上面的ping命令。

从1400到1472之间多试几次,就能找到合适的数据包长度了。

把数据包长度加上数据包头28字节,就得到MTU的值。

如果检测到网关的MTU值是1500,不需要修改。

如果网关有防火墙ping不通,可以试试直接把MTU设为1400。

3、如何修改本机的MTU?修改方法如下:(1)、运行regedit(2)、浏览到:HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Services/T cpip/Parameters/Interf aces(3)、Interfaces下有多个子项,每个子项对应一个网卡。

请按如下方法选择网卡:(a)确定本机用来连接Internet的网卡或拨号连接的IP,如192.168.0.19;(b)用鼠标点击Interfaces上的子项,查看键值列表中的IPAddress项;(c)如果IPAddress的键值与(a)中的IP相同,即192.168.0.19,则该子项就是要找的网卡。

TCP协议的MTU探测与调整方法解析(四)

TCP协议的MTU探测与调整方法解析(四)

TCP协议的MTU探测与调整方法解析MTU(Maximum Transmission Unit)指的是在一个通信协议中能够传送的最大数据包大小。

对于TCP协议来说,MTU的大小决定了数据的传输效率和稳定性。

在网络传输过程中,如果数据的大小超过了MTU 的限制,就需要对数据进行分片,增加了网络的负载和延迟。

因此,确保TCP协议中的MTU能够适应当前网络环境的变化是非常重要的。

TCP协议的MTU探测方法主要有两种:路径MTU探测和黑洞探测。

路径MTU探测是通过发送带有不同大小的数据包来寻找最大传输单元。

具体而言,TCP会发送一个初始大小的数据包,如果该数据包能够成功传输到目的地并收到响应,那么发送端会逐步增大发送的数据包大小,直到达到不可传输的大小,然后根据这个最大可传输的大小来设置MTU。

这种探测方法能够提高传输效率,但是会增加网络的负载。

另外一种探测方法是黑洞探测,它是通过发送具有特殊标记的数据包来检测网络中是否存在MTU大小不一致的节点。

具体来说,TCP会发送一个小于MTU的数据包,同时设置一个特殊标记。

如果数据包成功到达目的地并得到响应,说明该节点的MTU与发送端一致;如果数据包没有到达目的地或者接收到的响应中没有特殊标记,那么说明该节点的MTU存在问题。

通过黑洞探测,TCP协议可以寻找到网络中不一致的MTU节点,并提前做出相应的调整,从而提高传输的可靠性。

在实际的网络环境中,TCP协议还需要根据网络的动态变化来动态调整MTU的大小,以保证传输的效率和稳定性。

常见的调整方法有两种:路径MTU检测和分段重组。

路径MTU检测是在TCP连接建立阶段和传输过程中,定期发送大数据包来检测网络的MTU情况。

具体来说,发送方会记录下每次传输成功的数据包大小,当传输失败时,会根据传输成功的最大数据包大小减小MTU的大小,并重新发送。

这样,通过不断地测试和调整,可以找到适应当前网络环境的MTU值。

另一种调整方法是分段重组,它是TCP协议在发送端和接收端对数据进行分片和重组的过程中调整MTU的大小。

MTU最合适值的测试方法

MTU最合适值的测试方法

关于MTUMTU (最大传输单元)是网络设备传输的信息包最大值。

对于各种路由器,最佳的MTU值通常都是默认值。

有时,更改MTU值可提高设备工作性能,做起来很简单,但事实上,这样做往往会导致出现其他问题。

最好保持MTU不变,除非有以下情况出现:当连接不到ISP或者不能使用其他的因特网服务时,且他们的技术支持人员建议更改MTU值当您使用VPN,遇到性能问题时可以考虑更改MTU为了提高网络的某些性能,使用了可优化MTU 值的应用程序,而这引起了连通性和其他性能方面的问题一个信息包被发送到MTU值较小的设备时,将被分解为若干小块。

理论上,在所有电脑、交换机、路由器及您能访问到的因特网的所有设备上的MTU值应该设置为同一大小。

但是您不能控制因特网上的MTU 值,而事实上在一个局域网中的最佳MTU值取决于硬件、软件、无线接口等等。

在一种情形下修改MTU的大小可使设备很好地工作,但在其他方面却可能引起性能和连接性问题当具有不同MTU值的设备相互通信时,信息包将会被分成多个以便能传给具有最小的MTU值的设备Windows XP自动设置MTU ,换句话说,它使MTU对于各种应用综合性能最优化。

微软的文章解释了使用Windows XP的宽带用户不能连接到ISP的原因一旦网络设备分解了一个信息包,此信息包在到达目的地前一直保持分解的状态各种应用下的最佳MTU值设置MTU大小是一个反复试验的过程: 由最大值1500开始下降,直至问题解决。

使用下列值之一或许能解决一些由MTU值引起的问题:1500. 以太网信息包最大值,也是默认值。

是没有PPPoE和VPN 的网络连接的典型设置。

是各种路由器、网络适配器和交换机的默认设置1492. PPPoE 的最佳值1472. 使用ping 的最大值(大于此值的信息包会先被分解)1468. DHCP的最佳值1430. VPN和PPTP 的最佳值576. 拨号连接到ISP的标准值下面给出宽带网络下利用Ping命令测试本地最佳MTU值的方法。

MTU对网络的影响

MTU对网络的影响

路由器MTU值对于网络通讯的影响关于 MTUMTU (最大传输单元)是网络设备传输的信息包最大值。

对于各种路由器,最佳的MTU值通常都是默认值。

有时,更改MTU值可提高设备工作性能,做起来很简单,但事实上,这样做往往会导致出现其他问题。

最好保持MTU不变,除非有以下情况出现:当连接不到ISP或者不能使用其他的因特网服务时,且他们的技术支持人员建议更改MTU值当您使用 VPN,遇到性能问题时可以考虑更改MTU为了提高网络的某些性能,使用了可优化MTU 值的应用程序,而这引起了连通性和其他性能方面的问题一个信息包被发送到MTU值较小的设备时,将被分解为若干小块。

理论上,在所有电脑、交换机、路由器及您能访问到的因特网的所有设备上的MTU值应该设置为同一大小。

但是您不能控制因特网上的 MTU 值,而事实上在一个局域网中的最佳MTU值取决于硬件、软件、无线接口等等。

在一种情形下修改MTU的大小可使设备很好地工作,但在其他方面却可能引起性能和连接性问题当具有不同MTU值的设备相互通信时,信息包将会被分成多个以便能传给具有最小的MTU值的设备Windows XP自动设置MTU ,换句话说,它使MTU对于各种应用综合性能最优化。

微软的文章解释了使用Windows XP的宽带用户不能连接到ISP的原因一旦网络设备分解了一个信息包,此信息包在到达目的地前一直保持分解的状态各种应用下的最佳MTU值设置MTU大小是一个反复试验的过程: 由最大值1500开始下降,直至问题解决。

使用下列值之一或许能解决一些由MTU值引起的问题:1500. 以太网信息包最大值,也是默认值。

是没有PPPoE和VPN 的网络连接的典型设置。

是各种路由器、网络适配器和交换机的默认设置1492. PPPoE 的最佳值1472. 使用 ping 的最大值(大于此值的信息包会先被分解)1468. DHCP的最佳值1430. VPN和PPTP 的最佳值576. 拨号连接到ISP的标准值下面给出宽带网络下利用Ping命令测试本地最佳MTU值的方法。

MTU

MTU

最大传输单元(Maximum Transmission Unit,MTU)是指一种通信协议的某一层上面所能通过的最大数据包大小(以字节为单位)。

最大传输单元这个参数通常与通信接口有关(网络接口卡、串口等)。

路由器MTU值对于网络通讯的影响[复制本帖链接]陈年老酒发表于2010-03-30 18:14:51[此帖被浏览12669次,回复21次]最后由陈年老酒于2010-03-30 18:30:41 修改本主题由冬冬于2011-01-04 09:54:28 设为精华1,原因:技术分享关于 MTUMTU (最大传输单元)是网络设备传输的信息包最大值。

对于各种路由器,最佳的MTU值通常都是默认值。

有时,更改MTU值可提高设备工作性能,做起来很简单,但事实上,这样做往往会导致出现其他问题。

最好保持MTU不变,除非有以下情况出现:当连接不到ISP或者不能使用其他的因特网服务时,且他们的技术支持人员建议更改MTU值当您使用 VPN,遇到性能问题时可以考虑更改MTU为了提高网络的某些性能,使用了可优化MTU 值的应用程序,而这引起了连通性和其他性能方面的问题一个信息包被发送到MTU值较小的设备时,将被分解为若干小块。

理论上,在所有电脑、交换机、路由器及您能访问到的因特网的所有设备上的MTU值应该设置为同一大小。

但是您不能控制因特网上的 MTU 值,而事实上在一个局域网中的最佳MTU 值取决于硬件、软件、无线接口等等。

在一种情形下修改MTU的大小可使设备很好地工作,但在其他方面却可能引起性能和连接性问题当具有不同MTU值的设备相互通信时,信息包将会被分成多个以便能传给具有最小的MTU值的设备Windows XP自动设置MTU ,换句话说,它使MTU对于各种应用综合性能最优化。

微软的文章解释了使用Windows XP的宽带用户不能连接到ISP的原因一旦网络设备分解了一个信息包,此信息包在到达目的地前一直保持分解的状态各种应用下的最佳MTU值设置MTU大小是一个反复试验的过程: 由最大值1500开始下降,直至问题解决。

路由器MTU设置

路由器MTU设置

路由器MTU设置.txt时尚,就是让年薪八千的人看上去像年薪十万。

我们总是要求男人有孩子一样的眼神,父亲一样的能力。

一分钟就可以遇见一个人,一小时喜欢上一个人,一天爱上一个人,但需要花尽一生的时间去忘记一个人。

用路由器慢的原因比较多,有可能是一台机器负载高,占完了宽带自然慢了,还有可能是路由器设置问题。

比如MTU值,这个大小有时候也会影响速度,而且经过一次路由器NAT转换后应该会对宽带造成一定损失,大概有1%—5%左右。

这是宽带路由器的一个小小弊端。

通过对网速的实测证明,在ADSL接入电脑之间安装宽带路由器后,在多台电脑同时在线的情况下,由于路由器在地址解析、路由分发等方面的耽误,实际到达电脑的速度比单机直接连入ADSL线路要稍慢一些。

当然我们也可以采用以下办法将这种损耗降至最低,即更改路由器的MTU值。

MTU是Maximum Transmission Unit的缩写,意思是网络上传送的最大数据包,单位是字节。

不同的接入方式,MTU值是不一样的,如果值太大就会产生很多数据包碎片,增加丢包率,降低网络速度。

我们平常使用的宽带PPPoE 连接方式,其MTU值最大为1492,解决的办法就是对其逐步调低,直到网络最正常为止。

那么又如何判定某个MTU值是最适合的呢?进入DOS环境(开始->所有程序->附件->命令提示符),输入以下命令行:ping -f -l 1492 192.168.1.1。

注:其中“192.168.1.1”是网关IP地址(路由器的IP),1492为数据包的长度,参数“-l”是小写的L。

如果出现信息:Packet needs to be fragmented but DF set,那就表示MTU值太大了!而如果出现:Reply from 192.168.1.1: bytes=1492 time<10ms TTL=128,则表示此MTU值是可行的,不过还是建议多试几个找到最佳值。

我从1492试到1472终于找到了最佳的值:1472(这个是我的路由器的最佳的值,可以做参考)! 大家还有什么好的方法可以研究研究!说明:本文是转帖外一篇:MTU设置MTU,即Maximum Transmission Unit(最大传输单元),此值设定TCP/IP协议传输数据报时的最大传输单元。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

测试一个网络MTU值的操作步骤九
对于以太网环境下UDP传输中的数据包长度问题,首先要看TCP/IP协议,涉及到四层:链路层,网络层,传输层,应用层。

其中以太网(Ethernet)的数据帧在链路层,IP包在网络层,TCP或UDP包在传输层,TCP或UDP中的数据(Data)在应用层,它们的关系是:
数据帧{IP包{TCP或UDP包{Data}}}
在应用程序中我们用到的Data的长度最大是多少,直接取决于底层的限制。

我们从下到上分析一下:
在链路层,由以太网的物理特性决定了数据帧的长度为(46+18)-(1500+18),其中的18是数据帧的头和尾,46+18=64是以太网帧的最短帧长,1500+18=1518是最大帧长。

也就是说数据帧的内容最大为1500,即MTU (Maximum Transmission Unit)为1500;
(可是为什么我用wireshark抓下的包看到的帧头部是14字节,木有校验位4位?!,最短帧长是62?!)
在网络层,因为IP包的首部要占用20字节,所以这的MTU为1500-20=1480;在传输层,对于UDP包的首部要占用8字节,所以这的MTU为1480-8=1472;所以,在应用层,你的Data最大长度为1472。

(当我们的UDP包中的数据多于MTU(1472)时,发送方的IP层需要分片fragmentation进行传输,而在接收方IP层则需要进行数据报重组,由于UDP是不可靠的传输协议,如果分片丢失导致重组失败,将导致UDP数据包被丢弃)。

从上面的分析来看,在普通的局域网环境下,UDP的数据最大为1472字节最好(避免分片重组)。

但在网络编程中,Internet中的路由器可能有设置成不同的值(小于默认值),Internet上的标准MTU值为576,所以Internet的UDP编程时数据长度最好在576-20-8=548字节以内。

MTU不同网络的大小
EtherNet(一般上网方式,默认值):1500
PPPoE/ADSL:1492
Dial Up/Modem:576
顺便说一句,个人电脑修改MTU无任何意义!下面是方法。

1、本地MTU值大于网络MTU值时,本地传输的数据包过大导致网络会拆包后传输,不但产生额外的数据包,而且消耗了“拆包、组包”的时间。

2、本地MTU值小于网络MTU值时,本地传输的数据包可以直接传输,但是未能完全利用网络给予的数据包传输尺寸的上限值,传输能力未完全发挥。

这样我们就知道,所谓合理的设置MTU值,就是让本地的MTU值与网络的MTU 值一致,既能完整发挥传输性能,又不让数据包拆分。

接下来最重要的就是要找出对于你的网络环境来说MTU多少才是合理的。

方法如下:
1、按Win+R组合键,调出“运行”菜单,输入“cmd”然后回车
2、在出现的“命令提示符”窗口中输入“ping -l 1472 -f ”然后回车
含义:
ping:发起一个探测请求;
-l(L的小写)
:限制探测包大小;
1472:包大小为1472字节;
-f:禁止路由器拆分数据包
:设百度为探测目标
(你问我为什么不用Google做目标?考虑到Google时不时被墙,还是算了吧。


3、这时有2种情况:
(1)、如果收到了回复,那么说明你的网络允许最大MTU值就是1500字节,与系统默认值相同,只需要将路由器的MTU值也设置为1500即可;
(2)、如果出现需要拆分数据包但是设置DF。

或是Packer needs to be fragmented but DF set.的提示,那就说明数据包大小超过了网络限定的MTU大小。

需要减小探测包大小再次尝试。

(为了截效果图,我将探测包改为1473了)
4、按“上箭头”恢复刚才输入的命令,然后以5为跨度减小包大小为1467字节,再次回车探测。

5、这时同样也有两种可能:
(1)、如果有返回,说明数据包小于MTU限制,就将包大小+3再次探测,如果+3之后没有返回,那就以1为跨度降低数据包大小进行探测。

(2)、如果还是没有返回,就继续以5为跨度减小包大小,直至有返回后进行5(1)中的操作。

6、直至你发现数据包-1后,有了返回,就说明你探测到了MTU允许的准确数据
(例如从1465降低到1464就有了返回,那么允许的数据包大小就是1464)包大小。

7、不过上面得到的值还不能设置为操作系统或路由器的MTU,你找到的数据包大小需要加上28字节的“数据包报头”,才是完整的数据包尺寸。

(例如:探测到的数据包大小是1464,那么加上28字节,最终MTU=1492字节)8、最后,只需要将路由器和操作系统中的MTU值设置为你得出的结果即可。

路由器设置方法见路由器说明书!建议使用“Windows优化大师、超级兔子魔法设置、鲁大师”等软件修改操作系统的MTU。

以下是较复杂的方法:
(1)、XP操作系统设置方法:
1、按Win+R组合键,调出“运行”菜单,输入regedit,然后回车;
2、选择“HKEY_Local_Machine&gt;SYSTEM&gt;CurrentControlSet&gt;Services&gt;Tcpip&gt; Parameters&gt;interface”;
3、在interface 中下可能有很多项,需要逐个观察键值,会有一个项与你的网卡IP一致,选中该项;
4、然后在该项上点击右键,选择“编辑&gt;新建&gt;DWORD值”,然后在右侧将其命名为“MTU”;
5、右键点击MTU,选择“修改”,在弹出的窗口中选择“十进制”,填入你得出的合理MTU值即可。

(2)、Vista、Win7操作系统设置方法:
1、进入系统盘:\Windows\System32\找到cmd.exe,右键“以管理员身份运行”;
2、在出现的“命令提示符”窗口中输入“netsh interface ipv4 show subinterfaces”并回车来查看当前的MTU值
3、接下来输入“
netsh interface ipv4 set subinterface &quot;需修改的连接名&quot; mtu=你得出的合理值store=persistent”并回车即可
例如:“netsh interface ipv4 set subinterface &quot;本地连接&quot; mtu=1492 store=persistent”
参考资料:/?p=1326。

相关文档
最新文档