MTU介绍以及操作说明

1:什么是MTU

          引用自百度百科:

        最大传输单元(Maximum Transmission Unit,MTU)用来通知对方所能接受数据服务单元的最大尺寸,说明发送方能够接受的有效载荷大小。 

        是包或帧的最大长度,一般以字节记。如果MTU过大,在碰到路由器时会被拒绝转发,因为它不能处理过大的包。如果太小,因为协议一定要在包(或帧)上加上包头,那实际传送的数据量就会过小,这样也划不来。大部分操作系统会提供给用户一个默认值,该值一般对用户是比较合适的。

        MTU 平时我们并不需要设置。数据太大,系统会自动帮你按照默认值分包发送,不需要手动设置。但你可以查询这个值。

        UDP 包的大小就应该是 1500 – IP头(20) – UDP头(8) = 1472(BYTES)
        TCP 包的大小就应该是 1500 – IP头(20) – TCP头(20) = 1460 (BYTES)

        注:PPPoE所谓PPPoE就是在以太网上面跑“PPP”。随着宽带接入(这种宽带接入一般为Cable Modem或者xDSL或者以太网的接入),因为以太网缺乏认证计费机制而传统运营商是通过PPP协议来对拨号等接入服务进行认证计费的,所以引入PPPoE。PPPoE导致MTU变小了以太网的MTU是1500,再减去PPP的包头包尾的开销(8Bytes),就变成1492。不过目前大多数的路由设备的MTU都为1500。

2:Ping测试一下

命令:ping -f -l 1473  192.168.5.1

正在 Ping 192.168.5.1 具有 1473 字节的数据:
需要拆分数据包但是设置 DF。
需要拆分数据包但是设置 DF。

命令:ping -f -l 1472  192.168.5.1

正在 Ping 192.168.5.1 具有 1472 字节的数据:
来自 192.168.5.1 的回复: 字节=1472 时间=6ms TTL=64
来自 192.168.5.1 的回复: 字节=1472 时间=10ms TTL=64

ping 的参数

-f 在数据包中设置“不分段”标记(仅适用于 IPv4)。 //按照 -l 给的数值分包。
-l 发送缓冲区大小。                          //设置数据包大小

 
        第一次命令的意思是每个包 1473 大小,不分包。系统回复:最大1472,你这1473我发不了,拒绝
        第二次则将 MTU 值设置为 1472 ,还是不分包,但是系统可以接受这个数值,就进行了数据传输。
        此处说明系统能发送的最大数据包是 1472 (最后发送前,还要加上一些身份信息 28 byte,实际上应为 1500 )


 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值