设为首页收藏本站language 语言切换
查看: 2104|回复: 2
收起左侧

[求助] 求大神帮我理清下MTU的一些概念

[复制链接]
发表于 2017-6-7 12:54:24 | 显示全部楼层 |阅读模式
20鸿鹄币
OSI.png
大神们我现在以这么个图来举个栗子
A端的IP是192.168.2.252  B端的地址为192.168.2.1 数据链路层是标准的以太网。l两端的MTU值都采用默认的值,用的系统是windows 现在用A端这个 ping -f -l 1472 192.168.2.1去ping B端的地址。出现的一些结果我有点迷惑
1、MTU分为 L2 MTU 与L3 MTU,那么在进行阈值管理的时候是以哪个为标准的?
2、MTU的最大传输单元值 (1500 byt)的限制是只是数据字段还是数据字段加首部字段
3、这里我以A端发送1472的数据到B端,按照数据通信的流转途径是不是,A端本身的网络层(L3 MTU阈值)就已经给规定好了?(A端自身对大于MTU值的数据进行分割,而不是一大段数据交给B段去分割,只有A段分割出的数据大于B段,B段才会再次分割)
4、我采用 ping -f -l 1472 192.168.2.1 貌似是按照L3 MTU来阈值规定的。这个1472+28=1500byt 。我了解了一下IP首部最小时20字节 1472+20=1492还没有达到1500byt啊?而且用ping -f -l 1473 192.168.2.1 1473的值就发现需要分割,不能发送出去 用 -f参数。这么这里的8字节是这么多出来的呢?
我特地抓了个包
20by.png
5、L2 MTU是不是数据字段最大是1500,以太网V2标准首部加尾部是1518大小,那么以我这个例子A端从传输层的1472字节的数据到数据链路层生成的数据大小是不是 IP首部+1472=1500到了L2 帧首部+尾部+数据字段=1518大小啊?
希望大神按我5个问题回答下,谢谢谢,帮忙小弟纠错下。

最佳答案

查看完整内容

MTU其实是很基础但是又比较烦的一个参数 需要你去查包头的大小 然后 计算出合理的值 通常在应用中是有一定规范的 以避免丢包等的问题 比如说设 system mtu 为1546 即可避免很多麻烦 MTU 1500 字节通常指的是 IP MTU 2层MTU是在IP MTU的外面进行2层封装 通常是 1518 或1522 在MPLS VPN的环境中 还会有 MPLS MTU 思科的推荐值是1524 也就是加上6个标签的大小 在GRE 等的VPN, PPPoE等各种环境中 也都会考虑包头的大小来计算 ...
发表于 2017-6-7 12:54:25 | 显示全部楼层
MTU其实是很基础但是又比较烦的一个参数
需要你去查包头的大小 然后 计算出合理的值
通常在应用中是有一定规范的 以避免丢包等的问题
比如说设 system mtu 为1546 即可避免很多麻烦

MTU 1500 字节通常指的是 IP MTU
2层MTU是在IP MTU的外面进行2层封装 通常是 1518 或1522
在MPLS VPN的环境中 还会有 MPLS MTU 思科的推荐值是1524 也就是加上6个标签的大小
在GRE 等的VPN, PPPoE等各种环境中 也都会考虑包头的大小来计算合适MTU
比如在GRE VPN是会设成MTU 1400

4、我采用 ping -f -l 1472 192.168.2.1 貌似是按照L3 MTU来阈值规定的。这个1472+28=1500byt 。我了解了一下IP首部最小时20字节 1472+20=1492还没有达到1500byt啊?而且用ping -f -l 1473 192.168.2.1 1473的值就发现需要分割,不能发送出去 用 -f参数。这么这里的8字节是这么多出来的呢?

这8个字节是ping的 ICMP header
ping包 是这样的 1472 DATA + 8 ICMP header + 20 IP HEADER = 1500 IP MTU
外面在加上 18个字节的 Ethernet Header  MTU 是1518 如果在vlan的环境下 会加上4个字节 也就是1522字节
沙发 2017-6-7 12:54:25 回复 收起回复
回复

使用道具 举报

 楼主| 发表于 2017-6-14 08:19:00 | 显示全部楼层
谢谢IE大神,就喜欢这样的回答,透彻
板凳 2017-6-14 08:19:00 回复 收起回复
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 论坛注册

本版积分规则

QQ|Archiver|手机版|小黑屋|sitemap|鸿鹄论坛 ( 京ICP备14027439号 )  

GMT+8, 2025-5-12 07:57 , Processed in 0.119816 second(s), 25 queries , Redis On.  

  Powered by Discuz!

  © 2001-2025 HH010.COM

快速回复 返回顶部 返回列表