To properly understand the differences in IOS and IOS-XR MTU configurations, let’s start with explanation of interface “mtu <value>” command:
- In IOS-XR this command is used to configure the L2 MTU.
- In IOS this command is used to configure the L3 payload size.
In other words in IOS-XR we include L2 headers as part of interface MTU command, which is not the case in IOS.
This implies that in order to achieve the same MTU setting between IOS and IOS-XR, IOS-XR interface MTU has to be 14B (bytes) higher for Ethernet and 4B higher for POS interfaces compared to IOS setting.
“mtu 1500” in IOS is equivalent to “mtu 1514” in IOS-XR for Ethernet (FastEth, GigEth, TenGigEth, HundredGigEth) interfaces.
“mtu 4470” in IOS is equivalent to “mtu 4474” in IOS-XR for POS interfaces.
All L3 protocols inherit their MTU settings from L2 MTU. Examples are IPv4, IPv6, MPLS, CLNS.
You can easily check complete MTU settings on IOS-XR:
RP/0/RP0/CPU0:ios#sh imds int gi0/0/0/2
Views: OWN - Owner, LDP - Local Data Plane, GDP - Global Data Plane,
L3P - Local 3rd Party, G3P - Global 3rd Party, RED - Owner Redundancy