Table Of Contents
mpls mtu
To set the per-interface Multiprotocol Label Switching (MPLS) maximum transmission unit (MTU) for labeled packets, use the mpls mtu command in interface configuration mode. To restore the default, use the no form of this command.
mpls mtu [override] bytes
no mpls mtu
Syntax Description
Defaults
The default MPLS MTU is the MTU configured for the interface.
Command Modes
Interface configuration
Command History
Usage Guidelines
Usage Guidelines for Cisco IOS Release 12.2(25)S
If the interface MTU is less than 1524 bytes, you can set the maximum MPLS MTU to 24 bytes more than the interface MTU. For example, if the interface MTU is set to 1510 bytes, then you can set the maximum MPLS MTU to 1534 bytes (1510 + 24).
![]()
Note
Although you can set the MPLS MTU to a value greater than the MPLS MTU, it is recommended that you keep the MPLS MTU less than or equal to the interface MTU to prevent the hardware from dropping packets.
If the interface MTU is greater than or equal to 1524 bytes, then you can set the maximum MPLS MTU as high as the interface MTU. For example, if the interface MTU is set to 1600 bytes, then you can set the MPLS MTU to a maximum of 1600 bytes. If you set the MPLS MTU higher than the interface MTU, traffic is dropped.
For interfaces that do not allow you to configure the interface MTU value and the interface MTU is 1500 byes, the MPLS MTU range is 64 to 1524 bytes.
If you upgrade to Cisco IOS Release 12.2(25)S from an earlier release and you have an an MPLS MTU setting that does not conform to these guidelines, the command is rejected.
Usage Guidelines for Cisco IOS Release 12.2(27)SBC and Later
In Cisco IOS Releases 12.2(27)SBC and later, you cannot set the MPLS MTU value larger than the interface MTU value.
•
If you attempt to set the MPLS MTU value higher than the interface MTU value, the software displays the following error, which reminds you to set the interface MTU to a higher value before you set the MPLS MTU value:
% Please increase interface mtu to xxxx and then set mpls mtu
•
If you have an interface with a default interface MTU value of 1580 or less (such as an Ethernet interface), the mpls mtu command provides the override keyword, which allows you to set the MPLS MTU value higher than the interface MTU value. The override keyword is not available for interface types that do not have a default interface MTU value of 1580 or less.
![]()
Note
The override keyword is supported in Cisco IOS Releases 12.2(27)SBC and 12.2(28)SB and later, but may not be supported in a future release.
•
If you have configuration files with MPLS MTU values that are larger than the interface MTU values and you upgrade to Cisco IOS Release 12.2(27)SBC or later, the software does not change the MPLS MTU value. When you reboot the router, the software accepts whatever values are set for the MPLS MTU and the interface MTU. However, it is recommended that you make the MPLS MTU values lower than the interface MTU values. The following error message is displayed during system initialization:
Setting the mpls mtu to xxxx on interface x/x, which is higher than the interface MTU xxxx. This could lead to packet forwarding problems including packet drops.•
Changing the interface MTU can also modify the IP MTU, Connectionless Network Service (CLNS) MTU, and other MTU values, if they depend on the value of the interface MTU. The Open Shortest Path First (OSPF) routing protocol requires that the IP MTU values match on both ends of the link. Similarly, the Intermediate System-to-Intermediate System (IS-IS) routing protocol requires that the CLNS MTU values match on both ends of the link. If the values on both ends of the link do not match, IS-IS or OSPF cannot complete its initialization.
General Usage Guidelines
•
ATM interfaces cannot accommodate packets that exceed the Segmentation and Reassembly (SAR) buffer size, because labels are added to the packet. The bytes argument refers to the number of bytes in the packet before the addition of any labels. If each label is 4 bytes, the maximum value of bytes on an ATM interface is the physical MTU minus 4*x bytes, where x is the number of labels expected in the received packet.
•
If a labeled IPv4 packet exceeds the MPLS MTU size for the interface, Cisco IOS software fragments the packet. If a labeled non-IPv4 packet exceeds the MPLS MTU size, the packet is dropped.
•
All devices on a physical medium must have the same MPLS MTU value in order for MPLS to interoperate.
•
The MTU for labeled packets for an interface is determined as follows:
–
If the mpls mtu bytes command has been used to configure an MPLS MTU, the MTU for labeled packets is the bytes value.
–
Otherwise, the MTU for labeled packets is the default MTU for the interface.
•
Because labeling a packet makes it larger due to the label stack, you may want the MPLS MTU to be larger than the interface MTU or IP MTU in order to prevent the fragmentation of labeled packets, which would not be fragmented if they were unlabeled. In Cisco IOS Release 12.2(25)S and later, the MPLS MTU cannot be larger than the interface MTU.
•
Changing the interface MTU value (using the mtu interface configuration command) can affect the MPLS MTU of the interface. If the MPLS MTU value is the same as the interface MTU value (this is the default), and you change the interface MTU value, the MPLS MTU value will automatically be set to this new MTU as well. However, the reverse is not true; changing the MPLS MTU value has no effect on the interface MTU.
Examples
The following commands set the interface MTU value and MPLS MTU value for a serial interface:
interface Serial4/0mtu 1520ip unnumbered Loopback0mpls mtu 1510mpls traffic-eng tunnelsmpls ipserial restart-delay 0ip rsvp bandwidth 2000 2000The following example sets the maximum labeled packet size for the FastEthernet interface to 1508, which is common in an MPLS core carrying MPLS virtual private network (VPN) traffic, for example:
interface Fastethernet0mpls mtu override 1508Related Commands