cisco交换机与snmp之间的关系(CiscoMTU和IPMTU)

在 Cisco IOS 中我们可以使用MTU和IP MTU对接口的 MTU 值进行修改:

  • MTU命令用于修改二层 MTU
  • IP MTU命令用于修改三层 MTU

cisco交换机与snmp之间的关系(CiscoMTU和IPMTU)(1)

根据数据包封装顺序的先后我们可以看出二层 MTU 决定了数据包的最大值,三层 MTU 必须小于或等于二层 MTU 的值。常见的二层封装有 Ethernet,PPP,HDLC,常见的三层封装有 IPv4,IPv6 等。我们用最常见的 Ethernet 来深入探索一下 MTU 的取值因素。

一个标准的 Ethernet 帧有 14 bytes,而一个带有 802.1Q VLAN Tag 的 Ethernet 帧有 18 bytes (802.1Q Tag 有 4 bytes)。当然还有其他的情况例如 QinQ,这里不讨论。

cisco交换机与snmp之间的关系(CiscoMTU和IPMTU)(2)

以一个标准的 Ethernet 帧为例,如果想让 payload 里的数据包达到 1500 bytes (即三层 MTU)那么二层 MTU 的值应该设置为 1514 bytes (1500 14)。

在 Cisco IOS 中 MTU 命令及对应的 show 命令设置和显示的 MTU 值是不包含 14 bytes 的二层 Ethernet 包头的。

Router#show interfaces fastEthernet 0/0 | include MTU MTU 1500 bytes, BW 100000 Kbit/sec, DLY 100 usec,

通过抓包我们可以看见真正的数据包大小为 1514 bytes (1460 bytes 的 TCP payload 20 bytes 的 IP 包头 14 bytes 的 Ethernet 包头)。

cisco交换机与snmp之间的关系(CiscoMTU和IPMTU)(3)

需要注意的是在 Cisco IOS XR 中 MTU 命令及对应的 show 命令设置和显示的 MTU 值是包含 14 bytes 的二层 Ethernet 包头的。

如果 IOS 和 IOS XR 连接在一起,IOS 的 MTU 设置为 x,那么 IOS XR 的 MTU 应该设置为 x 14。

ip mtu,ipv6 mtu,mpls mtu 在 IOS 和 IOS XR 中的用法相同,其设置的 MTU 值都包含了三层包头。

更详细资料可以参考 Cisco MTU Behavior on Cisco IOS XR and Cisco IOS Routers (Document ID:116350)。

,

免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com

    分享
    投诉
    首页