MPLS: What is it? What can it do for me?
Author: J.D. Wegner
Abstract
Multiprotocol Label Switching (MPLS) began as a way for routers
to short-cut the time-consuming process of treating each packet
independently, looking up the target IP address each time and in
every router along the path. MPLS streamlines the packet forwarding
process by introducing a label, assigned by the ingress edge
router, into the packet. The beauty of MPLS is that the label
itself has no meaning other than what the software gives it.
Therefore, the label can be used to implement any forwarding
treatment that comes to mind. This white paper will teach you what
MPLS is and how it can help provide your customers with flexible
networking services.
Introduction
Multiprotocol Label Switching (MPLS) began life as a way for
routers to short-cut the time-consuming process of treating each
packet independently, looking up the target IP address each time
and in every router along the path. In an MPLS network, the ingress
router does a standard lookup and assigns a numeric label to the
packet. Core routers then examine the label and forward the packet
according to the label. All packets with the same label are
forwarded the same way. This relieves the core routers of much
processing, making the overall network more efficient.
Because the labels are just numbers, they can be assigned
according to any criteria the router software supports. This
feature give MPLS an extraordinary ability to support many
networking applications. Some examples of MPLS applications, in
addition to basic IP destination-based routing, including
- VPN membership
- QoS
- Traffic Engineering
- Emulation of any Layer-2 technology
Service providers and enterprises are implementing MPLS to
provide their customers with flexible networking services.
What Is MPLS?
Traditional routers forward packets by examining the
network-layer header (typically the destination IP address),
searching for the best matching entry in the routing table, and
forwarding the packet through the specified interface to the next
hop router. This process is time-consuming and is repeated for each
packet at each router along the path. Because no state is
maintained from packet to packet, the system is highly scalable,
but inefficient.
MPLS streamlines the packet forwarding process by introducing a
label into the packet. The MPLS label is assigned by the ingress
edge router based on a Forwarding Equivalence Class (FEC) which
represents a series of packets to be forwarded in the same manner,
over the same path, to the same destination. In basic IP routing,
for example, a label is assigned to each target IP network that the
MPLS domain knows about. An FEC could also be associated with
specific classes of service for QoS processing, or with a VPN. The
beauty of MPLS is that the label itself has no meaning other than
what the software gives it. Therefore, the label can be used to
implement any forwarding treatment that comes to mind. By allowing
multiple labels to be stacked within a packet, MPLS permits
multiple applications, such as QoS and VPNs, to be combined. Once a
packet has entered the MPLS domain, the routers use a simple and
fast label lookup process to forward the packet to its next hop. In
the Cisco implementation, MPLS leverages the Cisco Express
Forwarding (CEF) feature to optimize label lookup and
forwarding.
For MPLS to operate, labels must be generated, stored, and
distributed. The Label Distribution Protocol (LDP) handles the
generation and distribution of labels for basic IP forwarding and
other applications, and the Label Information Base (LIB) stores the
labels generated locally and received from LDP neighbors. LDP is
generally enabled on each MPLS interface. Other labels, as required
by various applications, are generated and distributed through
other protocols. For example, Multi-Protocol Border Gateway
Protocol (MP-BGP) assigns and distributes labels used for VPN
forwarding, and the Resource Reservation Protocol (RSVP) does the
same for traffic engineering.
What Does MPLS Do for Me?
MPLS began life as Tag Switching, a method to decrease
processing load and therefore, latency, in the core routers of a
network. Since then, router vendors have implemented technologies
such as Cisco's Express Forwarding (CEF) to allow for wire-speed
processing at layers two and three. Today, these technologies
provide much more of a performance boost than Tag Switching or MPLS
can give. The main reason to implement MPLS today is to provide a
foundation upon which you can build services to offer your
customers.
Service Providers
For networking service providers, moving to MPLS is a clear
win.
Simplified Architecture. The service providers'
networks can be simplified to a two-level hierarchy. Edge
routers are the work-horses of the network. They exchange
routing updates with the customer edge routers, communicate those
customer routes to other edge routers using BGP, and exchange
internal routes typically using OSPF or IS-IS with the core
routers. When encountering IP traffic, they perform traditional
routing table lookups and either impose or strip off the MPLS
labels. The core routers have a simpler task. They
merely exchange internal routes with other core and edge routers.
For traffic forwarding, they use pure MPLS label lookup.
Related Courses
MPLS - Implementing Cisco MPLS v2.2
MPLST - MPLS Traffic Engineering and Other Features
MPLS ENT - Enterprise Networks over Service Provider MPLS
AMPLS - Advanced Implementing and Troubleshooting MPLS VPN
Networks