Information About MPLS: Cisco Nexus 7000 Series NX-OS MPLS Configuration Guide OL-23587-01
Information About MPLS: Cisco Nexus 7000 Series NX-OS MPLS Configuration Guide OL-23587-01
Overview
This chapter describes the Multiprotocol Label Switching (MPLS) distribution protocol.
This chapter includes the following sections:
• Information About MPLS, page 1-1
• MPLS Terminology, page 1-1
• Benefits of MPLS, page 1-2
• Label Switching Functions, page 1-3
• MPLS Label, page 1-4
• Distribution of Label Bindings, page 1-6
• MPLS and Routing, page 1-7
• 6PE and 6VPE, page 1-7
• MPLS Label Switching and HA, page 1-9
• Virtualization Support for MPLS, page 1-9
• Guidelines and Limitations for MPLS, page 1-9
MPLS Terminology
The following MPLS terms are used in this document:
• Multiprotocol Label Switching (MPLS)—A highly scalable, data-carrying mechanism that is
independent of any data link layer protocol, such as Ethernet, ATM, frame relay, or SONET.
• Label Distribution Protocol (LDP)—A mechanism by which two Label Switch Routers (LSR)
exchange label mapping information. This protocol is defined by the IETF (RFC 5036).
• Label Edge Router (LER)—A router that operates at the edges of an MPLS network. An LER
determines and applies the appropriate labels and forwards the labeled packets into the MPLS
domain.
• Provider Edge (PE)—The LER that functions as the ingress and/or egress routers to the MPLS
domain.
• Label Forwarding Information Base (LFIB)—Routing information used to determine the
hop-by-hop path through the network.
• Label Switch Router (LSR)—A router that switches the labels that are used to route packets through
an MPLS network.
• Label Switched Path (LSP)—A route through an MPLS network, defined by a signaling protocol
such as LDP or the Border Gateway Protocol (BGP). The path is set up based on criteria in the
forwarding equivalence class (FEC).
• Forwarding Equivalence Class (FEC)—A set of packets with similar characteristics that might be
bound to the same MPLS label. An FEC tends to correspond to a label switched path (LSP);
however, an LSP might be used for multiple FECs.
Benefits of MPLS
MPLS provides the following benefits to enterprise and service provider networks:
• Scalable support for virtual private network (VPN) services in enterprise and service provider
networks.
MPLS VPN is highly scalable and can accommodate increasing numbers of sites and customers.
MPLS VPN also supports “any-to-any” communication among VPN sites across the enterprise and
service provider network. For each MPLS VPN user, the 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, MPLS VPN greatly simplifies network routing. For example, an MPLS
VPN user can employ the 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) employ
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, such factors as bandwidth requirements, media requirements, and the
priority of one traffic flow versus another enable the administrator of an enterprise or service
provider network to perform the following tasks:
– Control traffic flow in the network
– Reduce congestion in the network
– Make best use of network resources
As the network administrator, you can specify the amount of traffic that you expect to flow between
various points in the network (establishing a traffic matrix), while relying on the routing system to
perform the following tasks:
– Calculate the best paths for network traffic
– Set up the explicit paths to carry the traffic
Figure 1-1 MPLS Network Connecting Two Sites of a IP Network Belonging to a Customer
MPLS MPLS
network network
IP IP
network network
Host A Host B
CE1 PE1 P1 P2 PE2 CE2
41867
Owned by
service provider
Note The network in Figure 1-1 is bidirectional, but in the following discussion, the movement of the packets
is from left to right.
Table 1-1 describes the device symbols that are used in Figure 1-1.
Symbol Meaning
CE1 Customer equipment 1
PE1 Service provider edge router (ingress LSR)
P1 Service provider router within the core of the network of the service provider
P2 Service provider router within the core of the network of the service provider
PE2 Service provider edge router (egress LSR)
CE2 Customer equipment 2
Note PE1 and PE2 are at the boundaries between the MPLS network and the IP network.
MPLS Label
An MPLS label consists of the following parts:
• 20-bit label value.
• 3-bit traffic class field for quality of service (QoS) priority and explicit congestion notification
(ECN).
• 1-bit bottom of stack flag. If this flag is set, it signifies that the current label is the last in the stack.
• 8-bit time-to-live (TTL) field.
More than one label can be pushed onto a packet, which is called a label stack. The label stack is inserted
between the frame header and the Layer 3 header in the packet.
This section includes the following topics:
• Label Imposition, page 1-4
• Label Swap, page 1-5
• Label Disposition, page 1-6
Label Imposition
On the ingress LSR at the provider edge (PE), the incoming packet header is inspected and assigned a
label stack that maps it to a particular FEC. The label is pushed onto the packet that is then forwarded
to the first hop.
There are different cases for label imposition depending on the configuration, label distribution method,
and incoming packet type:
• An incoming IPv4 packet sent to an LDP has an LDP label pushed onto the packet header.
• An incoming IPv4 packet sent to a TE tunnel has a TE label pushed onto the packet header.
• An incoming IPv4 packet sent to a TE tunnel with a backup route has a label stack with a TE backup
inner label and a TE backup outer label pushed onto the packet header.
• An incoming IPv4 packet sent to an LDP over a TE tunnel has a label stack with an LDP label and
a TE label pushed onto the packet header.
• An incoming IPv4 packet sent to an LDP over a TE tunnel with a backup route has a label stack with
an LDP label, a TE backup inner label, and a TE backup outer label pushed onto the packet header.
• An incoming IPv4 packet sent to a Layer 3 VPN in an LDP has a label stack with a VPN label and
an LDP label pushed onto the packet header.
• An incoming IPv4 packet sent to a Layer 3 VPN in a TE tunnel has a label stack with a VPN label
and a TE label pushed onto the packet header.
• An incoming IPv4 packet sent to a Layer 3 VPN in a TE tunnel with a backup route has a label stack
with a VPN label, a TE backup inner label, and a TE backup outer label pushed onto the packet
header.
• An incoming IPv4 packet sent to a Layer 3 VPN in an LDP over a TE tunnel has a label stack with
a VPN label, an LDP label, and a TE label pushed onto the packet header.
• An incoming IPv4 packet sent to a Layer 3 VPN in an LDP over a TE tunnel with a backup route
has a label stack with a VPN label, an LDP label, a TE backup inner label, and a TE backup outer
label pushed onto the packet header.
Transporting IPv6 packets over an MPLS backbone is called 6PE/6VPE, where there is no addition of
IPv4 headers to the packet:
• An incoming 6PE packet sent to an LDP has a label stack with a BGP label and an LDP label pushed
onto the packet header.
• An incoming 6PE packet sent to a TE tunnel has a label stack with a BGP label and a TE label pushed
onto the packet header.
• An incoming 6PE packet sent to a TE tunnel with a backup route has a label stack with a BGP label,
a TE backup inner label, and a TE backup outer label pushed onto the packet header.
• An incoming 6PE packet sent to an LDP over a TE tunnel has a label stack with a BGP label, an
LDP label, and a TE label pushed onto the packet header.
• An incoming 6PE packet sent to an LDP over a TE tunnel with a backup route has a label stack with
a BGP label, an LDP label, a TE backup inner label, and a TE backup outer label pushed onto the
packet header.
• An incoming 6VPE packet sent to an LDP has a label stack with a VPN label and an LDP label
pushed onto the packet header.
• An incoming 6VPE packet sent to a TE tunnel has a label stack with a VPN label and a TE label
pushed onto the packet header.
• An incoming 6VPE packet sent to a TE tunnel with a backup route has a label stack with a VPN
label, a TE backup inner label, and a TE backup outer label pushed onto the packet header.
• An incoming 6VPE packet sent to an LDP over a TE tunnel has a label stack with a VPN label, an
LDP label, and a TE label pushed onto the packet header.
• An incoming 6VPE packet sent to an LDP over a TE tunnel with a backup route has a label stack
with a VPN label, an LDP label, a TE backup inner label, and a TE backup outer label pushed onto
the packet header.
Label Swap
As the labeled packet traverses the MPLS domain, the outermost label of the label stack is examined at
each hop. Depending on the contents of the label, a swap, push (impose), or pop (dispose) operation is
performed on the label stack. Forwarding decisions are made by performing a MPLS table lookup for
the label carried in the packet header. The packet header does not need to be reevaluated during packet
transit through the network. Because the label has a fixed length and is unstructured, the MPLS
forwarding table lookup process is both straightforward and fast.
In a swap operation, the label is swapped with a new label, and the packet is forwarded to the next hop
that is determined by the new label.
In a push operation, a new label is pushed on top of the existing label, effectively encapsulating the
packet in another layer. This process allows hierarchical routing of MPLS packets. Encapsulation is the
process used by MPLS VPNs.
In certain cases, the label is swapped and a further label is pushed onto the packet header as follows:
• A packet that traverses a TE tunnel with a backup route has its TE label removed and a label stack
with a TE backup inner label and a TE backup outer label are pushed onto the packet header.
• A packet that traverses an LDP over a TE tunnel has its original LDP label removed and a label stack,
a new LDP label, and a TE label are pushed onto the packet header.
• A packet that traverses an LDP over a TE tunnel with a backup route has its original LDP label
removed and a label stack, a new LDP label, a TE backup inner label, and a TE backup outer label
are pushed onto the packet header.
In a pop operation, the label is removed from the packet, which may reveal an inner label below. If the
popped label was the last label on the label stack, the packet exits the MPLS domain. Typically, this
process occurs at the egress LSR.
Label Disposition
On the egress LSR at the provider edge (PE), the MPLS label stack is popped off the packet header
leaving an IPv4 or IPv6 packet to be forwarded onward. This process is called disposition.
In certain cases, the MPLS label stack is popped off the packet header at the hop before the egress LSR.
This process is called Penultimate Hop Popping (PHP). By using PHP, transit routers that are connected
directly to the egress LSR can effectively offload the CPU load on that router by popping the last label
themselves and forwarding the packet.
Note You must configure all participating iBGP peers with the address-family ipv6 labeled-unicast
command.
In Figure 1-2, the 6PE routers are configured as dual-stack routers that can route both IPv4 and IPv6
traffic. Each 6PE router is configured to run a protocol to bind the IPv4 labels. The 6PE routers use
MP-iBGP to exchange the reachability information with the other 6PE devices within the MPLS domain
and to distribute aggregate IPv6 labels between them. All 6PE and core routers (labeled P routers in
Figure 1-2) within the MPLS domain share a common IPv4 Interior Gateway Protocol (IGP) such as
OSPF or Intermediate System-to-Intermediate System (IS-IS).
v6 MP-iBGP sessions v6
IPv6 IPv6
v4 6PE 6PE
v6
P P
IPv4 IPv6
P P
v6 v4
6PE 6PE
IPv6 IPv4
65141
v4
IPv4
In addition to the regular MPLS commands for troubleshooting, enter the show bgp ipv6 and show ipv6
route commands.
Note See the Cisco Nexus 7000 Series NX-OS Virtual Device Context Configuration Guide for complete
information on VDCs and assigning resources.
Note F1 Series I/O modules do not support MPLS natively, but they can take advantage of proxy
routing with M Series modules for MPLS forwarding. For more information on proxy
routing, see the Cisco Nexus 7000 Series NX-OS Unicast Routing Configuration Guide.