Multiprotocol Label Switching (MPLS) on Cisco Routers

This document describes commands for configuring and monitoring Multiprotocol Label Switching (MPLS) functionality on Cisco routers and switches. This document is a companion to other feature modules describing other MPLS applications.

Restrictions for MPLS

Label switching on a Cisco router requires that Cisco Express Forwarding be enabled on that router (see the “Configuration Tasks” section below).

Information About MPLS

MPLS Overview

Multiprotocol label switching (MPLS) combines the performance and capabilities of Layer 2 (data link layer) switching with the proven scalability of Layer 3 (network layer) routing. MPLS enables service providers to meet the challenges of explosive growth in network utilization while providing the opportunity to differentiate services without sacrificing the existing network infrastructure. The MPLS architecture is flexible and can be employed in any combination of Layer 2 technologies. MPLS support is offered for all Layer 3 protocols, and scaling is possible well beyond that typically offered in today’s networks.

MPLS efficiently enables the delivery of IP services over an ATM switched network. MPLS supports the creation of different routes between a source and a destination on a purely router-based Internet backbone. By incorporating MPLS into their network architecture, service providers can save money, increase revenue and productivity, provide differentiated services, and gain competitive advantages.


Note

In the Cisco IOS XE Release 16.x, the ASR 1000 routers only support fragmentation of the MPLS packets from the IP to MPLS direction.


Functional Description of MPLS

Label switching is a high-performance packet forwarding technology that integrates the performance and traffic management capabilities of data link layer (Layer 2) switching with the scalability, flexibility, and performance of network layer (Layer 3) routing.

Label Switching Functions

In conventional Layer 3 forwarding mechanisms, as a packet traverses the network, each router extracts all the information relevant to forwarding the packet from the Layer 3 header. This information is then used as an index for a routing table lookup to determine the next hop for the packet.

In the most common case, the only relevant field in the header is the destination address field, but in some cases, other header fields might also be relevant. As a result, the header analysis must be done independently at each router through which the packet passes. In addition, a complicated table lookup must also be done at each router.

In label switching, the analysis of the Layer 3 header is done only once. The Layer 3 header is then mapped into a fixed length, unstructured value called a label .

Many different headers can map to the same label, as long as those headers always result in the same choice of next hop. In effect, a label represents a forwarding equivalence class --that is, a set of packets which, however different they may be, are indistinguishable by the forwarding function.

The initial choice of a label need not be based exclusively on the contents of the Layer 3 packet header; for example, forwarding decisions at subsequent hops can also be based on routing policy.

Once a label is assigned, a short label header is added at the front of the Layer 3 packet. This header is carried across the network as part of the packet. At subsequent hops through each MPLS router in the network, labels are swapped and forwarding decisions are made by means of MPLS forwarding table lookup for the label carried in the packet header. Hence, the packet header does not need to be reevaluated during packet transit through the network. Because the label is of fixed length and unstructured, the MPLS forwarding table lookup process is both straightforward and fast.

Distribution of Label Bindings

Each label switching router (LSR) in the network makes an independent, local decision to determine a label value to represent a forwarding equivalence class. This association is known as a label binding. Each LSR informs its neighbors of the label bindings it has made.

When a labeled packet is being sent from LSR A to the neighboring LSR B, the label value carried by the IP packet is the label value that LSR B assigned to represent the forwarding equivalence class of the packet. Thus, the label value changes as the IP packet traverses the network.

The awareness of label bindings by neighbouring routers is facilitated using the following protocols:

  • Label Distribution Protocol (LDP) - Enables peer LSRs in an MPLS network to exchange label binding information for supporting hop-by-hop forwarding in an MPLS network.

  • Tag Distribution Protocol (TDP) - Supports MPLS forwarding along normally routed paths.

  • Resource Reservation Protocol (RSVP) - Supports MPLS traffic engineering.

  • Border Gateway Protocol (BGP) - Supports MPLS virtual private networks (VPNs) .

Benefits of MPLS

MPLS provides the following major benefits to service provider networks:

Scalable support for Virtual Private Networks (VPNs)--MPLS enables VPN services to be supported in service provider networks, thereby greatly accelerating Internet growth.

The use of MPLS for VPNs provides an attractive alternative to the building of VPNs by means of either ATM or Frame Relay permanent virtual circuits (PVCs) or various forms of tunneling to interconnect routers at customer sites.

Unlike the PVC VPN model, the MPLS VPN model is highly scalable and can accommodate increasing numbers of sites and customers. The MPLS VPN model also supports “any-to-any” communication among VPN sites without requiring a full mesh of PVCs or the backhauling (suboptimal routing) of traffic across the service provider network. For each MPLS VPN user, the service provider’s network appears to function as a private IP backbone over which the user can reach other sites within the VPN organization, but not the sites of any other VPN organization.

From a user perspective, the MPLS VPN model enables network routing to be dramatically simplified. For example, rather than having to manage routing over a topologically complex virtual backbone composed of many PVCs, an MPLS VPN user can generally employ the service provider’s backbone as the default route in communicating with all of the other VPN sites.

Explicit routing capabilities (also called constraint-based routing or traffic engineering)--Explicit routing employs “constraint-based routing,” in which the path for a traffic flow is the shortest path that meets the resource requirements (constraints) of the traffic flow.

In MPLS traffic engineering, factors such as bandwidth requirements, media requirements, and the priority of one traffic flow versus another can be taken into account. These traffic engineering capabilities enable the administrator of a service provider network to

  • Control traffic flow in the network

  • Reduce congestion in the network

  • Make best use of network resources

Thus, the network administrator can specify the amount of traffic expected to flow between various points in the network (thereby establishing a traffic matrix), while relying on the routing system to

  • Calculate the best paths for network traffic

  • Set up the explicit paths to carry the traffic

Support for IP routing on ATM switches (also called IP and ATM integration)--MPLS enables an ATM switch to perform virtually all of the functions of an IP router. This capability of an ATM switch stems from the fact that the MPLS forwarding paradigm, namely, label swapping, is exactly the same as the forwarding paradigm provided by ATM switch hardware.

The key difference between a conventional ATM switch and an ATM label switch is the control software used by the latter to establish its virtual channel identifier (VCI) table entries. An ATM label switch uses IP routing protocols and the Tag Distribution Protocol (TDP) to establish VCI table entries.

An ATM label switch can function as a conventional ATM switch. In this dual mode, the ATM switch resources (such as VCI space and bandwidth) are partitioned between the MPLS control plane and the ATM control plane. The MPLS control plane provides IP-based services, while the ATM control plane supports ATM-oriented functions, such as circuit emulation or PVC services.

How to Configure MPLS

This section explains how to perform the basic configuration required to prepare a router for MPLS switching and forwarding.

Configuration tasks for other MPLS applications are described in the feature module documentation for the application.

Configuring a Router for MPLS Switching

MPLS switching on Cisco routers requires that Cisco Express Forwarding be enabled.

For more information about Cisco Express Forwarding commands, see the Cisco IOS Switching Command Reference.

SUMMARY STEPS

  1. enable
  2. configure terminal
  3. ip cef distributed

DETAILED STEPS

  Command or Action Purpose
Step 1

enable

Example:


Device> enable

Enables privileged EXEC mode.

  • Enter your password if prompted.

Step 2

configure terminal

Example:


Device# configure terminal

Enters global configuration mode.

Step 3

ip cef distributed

Example:


Device(config)# ip cef distributed

Enables Cisco Express Forwarding on the route processor card.

Verifying Configuration of MPLS Forwarding

To verify that MPLS forwarding has been configured properly, issue the show mpls interfaces detail command, which generates output similar to that shown below:

SUMMARY STEPS

  1. show mpls interfaces detail

DETAILED STEPS


show mpls interfaces detail

Example:


Device# show mpls interfaces detail

Interface GigabitEthernet1/0/0:
         IP labeling enabled (ldp)
         LSP Tunnel labeling not enabled
         MPLS operational
         MTU = 1500
Interface POS2/0/0:
         IP labeling enabled (ldp)
         LSP Tunnel labeling not enabled
         MPLS not operational
         MTU = 4470

MPLS MTU

MPLS MTU configuration is supported starting with Cisco IOS XE Release 3.10.2 and later. The platform mpls mtu-enable command is introduced to enable MPLS MTU on the router.

Restrictions

  • MPLS MTU is not supported if IP address is not configured on the interface.
  • MPLS MTU is not supported with MPLS LDP Auto configuration.
  • MPLS MTU is not supported with BGP send-label.
  • IP MTU configuration on an interface does not program MPLS MTU in the hardware. MPLS MTU value is obtained from the Interface MTU or IP MTU.
  • In releases prior to Cisco IOS XE Release 3.10.2, if IP MTU is changed, MPLS MTU also changes.
  • If both Interface MTU and IP MTU are configured MPLS MTU is obtained from IP MTU. See Table 1.
Table 1. MTU Normal Behavior (Command Not Enabled)

Interface-MTU

IP MTU

MPLS MTU

MPLS MTU Value Derived

Yes

No

No

Interface MTU

No

Yes

No

IP MTU

Yes

Yes

No

IP MTU

  • If MPLS MTU is enabled using platform mpls mtu-enable command, then IP MTU does not affect the MPLS MTU configuration. See Table 2.
Table 2. MTU Behavior with platform mpls mtu-enable Command Configured

Interface MTU

IP MTU

MPLS MTU

MPLS MTU Value Derived

Yes

No

No

Interface MTU

No

Yes

No

Default value

Yes

Yes

No

Interface MTU

No

No

No

Default value

Yes

No

Yes

MPLS MTU

No

Yes

Yes

MPLS MTU

Yes

Yes

Yes

MPLS MTU

No

No

Yes

MPLS MTU

Configuring MPLS MTU Globally

We recommend not to toggle the command as inconsistent results may be displayed.


Note

After configuring or unconfiguring the command, we recommend that all MTU values on all the interfaces are re-configured.

SUMMARY STEPS

  1. platform mpls mtu-enable
  2. interface gigabitethernet slot /subslot /port
  3. mpls mtu mtu-value

DETAILED STEPS

  Command or Action Purpose
Step 1

platform mpls mtu-enable

Example:


Router (config)# platform mpls mtu-enable

Configures MPLS MTU globally on the router

Step 2

interface gigabitethernet slot /subslot /port

Example:


Router (config)# interface GigabitEthernet 0/0/1

Example:


Specifies the Gigabit Ethernet or Ten Gigabit Ethernet interface to configure and enters interface configuration mode, where:

Note 
The slot number is always 0.
Step 3

mpls mtu mtu-value

Example:


Router(config-if)# mpls mtu 700

Example:


Configures the MTU value.

Verifying MPLS MTU

Use the show platform hardware pp active featurempls mtu-table command to display the MPLS MTU values configured on the router.


Router# show platform hardware pp active feature mpls mtu-table
MPLS MTU Table
Index 				MTU 		Ref-Count   
----------------------------
0 	 			1504 		1 
1 	 			 704		0
2 	 				0	0 
3 	 				0	0 
4 	 				0	0 
5 	 				0 	0 
6 	 				0	0 
7 	 				0	0

Additional References

Related Documents

Related Topic Document Title
Cisco IOS commands Cisco IOS Master Commands List, All Releases
MPLS Commands

Cisco IOS Multiprotocol Label Switching Command Reference

Standards and RFCs

Standard/RFC Title

The supported standards/RFCs applicable to the MPLS applications appear in the respective feature module for the application.

MIBs

MIB MIBs Link

The supported MIBs applicable to the MPLS applications appear in the respective feature module for the application.

To locate and download MIBs for selected platforms, Cisco IOS releases, and feature sets, use Cisco MIB Locator found at the following URL:

http://www.cisco.com/go/mibs

Technical Assistance

Description Link

The Cisco Support website provides extensive online resources, including documentation and tools for troubleshooting and resolving technical issues with Cisco products and technologies.

To receive security and technical information about your products, you can subscribe to various services, such as the Product Alert Tool (accessed from Field Notices), the Cisco Technical Services Newsletter, and Really Simple Syndication (RSS) Feeds.

Access to most tools on the Cisco Support website requires a Cisco.com user ID and password.

http://www.cisco.com/support

Feature Information for Multiprotocol Label Switching

The following table provides release information about the feature or features described in this module. This table lists only the software release that introduced support for a given feature in a given software release train. Unless noted otherwise, subsequent releases of that software release train also support that feature.

Use Cisco Feature Navigator to find information about platform support and Cisco software image support. To access Cisco Feature Navigator, go to www.cisco.com/go/cfn. An account on Cisco.com is not required.

Table 3. Feature Information for Multiprotocol Label Switching

Feature Name

Releases

Feature Information

Multiprotocol Label Switching

Cisco IOS XE Release 3.13.0S

This feature was introduced on the Cisco ASR 920 Routers (ASR-920-12CZ-A, ASR-920-12CZ-D, ASR-920-4SZ-A, ASR-920-4SZ-D).

Glossary

BGP --Border Gateway Protocol. The predominant interdomain routing protocol used in IP networks.

Border Gateway Protocol --See BGP.

FIB --Forwarding Information Base. A table that contains a copy of the forwarding information in the IP routing table.

Forwarding Information Base --See FIB.

label --A short, fixed-length identifier that tells switching nodes how the data (packets or cells) should be forwarded.

label binding --An association between a label and a set of packets, which can be advertised to neighbors so that a label switched path can be established.

Label Distribution Protocol --See LDP.

Label Forwarding Information Base --See LFIB.

label imposition --The act of putting the first label on a packet.

label switching router --See LSR.

LDP --Label Distribution Protocol. The protocol that supports MPLS hop-by-hop forwarding by distributing bindings between labels and network prefixes.

LFIB --Label Forwarding Information Base. A data structure in which destinations and incoming labels are associated with outgoing interfaces and labels.

LSR --label switching router. A Layer 3 router that forwards a packet based on the value of an identifier encapsulated in the packet.

MPLS --Multiprotocol Label Switching. An industry standard on which label switching is based.

MPLS hop-by-hop forwarding --The forwarding of packets along normally routed paths using MPLS forwarding mechanisms.

Multiprotocol Label Switching --See MPLS.

Resource Reservation Protocol --See RSVP.

RIB --Routing Information Base. A common database containing all the routing protocols running on a router.

Routing Information Base --See RIB.

RSVP --Resource Reservation Protocol. A protocol for reserving network resources to provide quality of service guarantees to application flows.

traffic engineering --Techniques and processes used to cause routed traffic to travel through the network on a path other than the one that would have been chosen if standard routing methods were used.

Virtual Private Network --See VPN.

VPN --Virtual Private Network. A network that enables IP traffic to use tunneling to travel securely over a public TCP/IP network.