Home Knowledge Center White Papers and Articles

Multi Label Protocol Switching (MPLS)

Introduction
It is now something of a cliché to talk about the "explosive" or "exponential" growth of the Internet but the fact remains that it has achieved remarkable growth. This growth has created a host of technical challenges and Multi label Protocol Switching (MPLS) is one of the responses to these challenges. MPLS evolved from a set of developments by different vendors like IBM, Toshiba and is now being standardized by the IETF body. This article will first introduce to the challenges posed by the growth of Internet, how MPLS tries to address them, basic framework of MPLS and references to the technology.

Challenges posed by Internet growth
Scalability: The classical routers in the Internet used to do routing in software by making the longest compare of the addresses. The routing algorithms were typically hand coded and crafted for efficiency. The performance of these routers was acceptable for a small traffic but the growth in IP traffic has made this architecture obsolete and there is a need to go for switching in the core networks.

IP over ATM networks: In the early 90's, ATM technology was touted as the universal technology and ISPs converted their core network to ATM as it was based on switching giving better performance. The mapping of IP over ATM posed challenges and new protocols like MPOA, LANE were proposed to overcome the issues. But the overlay of IP over ATM posed significant scaling problems. The scaling problem basically means that the complexity of the network grows much faster than the number of nodes in the network and after some size; it becomes impossible to manage such a network. Since the ATM is virtual circuit based, for a network of n nodes, it would require n*(n-1)/2 virtual circuits for full connectivity. This becomes unmanageable after some size.

Providing new classes of service: Initially Internet was used as a data network and used for applications like telnet and file transfer. As Internet became the defacto network protocol, new and newer applications have been built on it. Some demand stricter Quality of Service (QoS) guarantees for delay sensitive voice / video applications while some demand tunneling services like Virtual Private Network (VPNs). Today's Internet cannot support these new applications easily.

Traffic Engineering: The ISP profitability is heavily determined how it is able to use the network infrastructure efficiently and specifically the available bandwidth. ISP should be able to construct routes in such a way to avoid causing some parts of the network be overutilized (congested) while some are underutilized. Today's IP routing protocols are destination based, least cost routing and do not take into account available bandwidth in individual links as a parameter to determine the routing. This is affecting ISP flexibility to engineer routes based on different metrics and bandwidth available.

What is MPLS?
MPLS is an IETF specified framework for efficient designing, forwarding, routing and switching of traffic flows in a network.

MPLS performs following functionalities:
Provides a mechanism to map IP addresses to simple, fixed length labels used by different packet forwarding/switching technologies
Interfaces to existing routing protocols like BGP, IS-IS
Is independent of L2 protocols like Frame relay, ATM or IP and hence allows existing network to be upgraded for MPLS without hardware change

MPLS Speak
A Label is a short fixed length identifier that is used to forward packets. A label-switching device in the network will usually replace the label in the packet to a new value before forwarding to the next hop. A label is usually of local significance. There are different protocols being proposed for the management of labels. Label Distribution Protocol (LDP) is an IETF proposed protocol that deals with assignment, management and distribution of labels. Other alternatives include enhancing existing routing protocols like IS-IS or BGP to distribute the labels or use RVSP to distribute the labels.

In MPLS, data transmission happens on what are known as Label Switched Paths (LSPs). The LSPs are a sequence of labels at each and every node from the source to the destination. LSPs are established either beginning of transmission or at the time of detection of a traffic flow.

Since the labels are small and operations associated with the labels are well defined, it is possible to implement the label switching in the network in hardware.

The devices that participate in MPLS can be of two types: Label Edge Routers (LERs) and Label Switching Routers (LSRs). An LER operates at the edge of the MPLS network and participates in establishment of LSPs and performs ingress/egress MPLS operations. In case of ingress, it adds the label and sends out to the MPLS network and in egress, it removes the label and does the final forwarding. In typical applications, this will be an aggregator edge device that takes in different type of traffic like Frames, ATM and Ethernet, convert them to IP and does additional MPLS functionality.

LSRs are high-speed router devices in the core of an MPLS network that do label swapping and participate in creation of LSP's.

Framework comes here

Labels
A label is carried or encapsulated in the layer 2 header in the network. MPLS offers flexibility to allow popular layer 2 protocols to carry traffic without any change. In Frame relay, the Data Link Connection Identifiers (DLCI) is used as a label. In ATM, the VPI-VCI is used as the label. In general, a shim layer is added between the data link layer header and IP header to allow carrying of labels. Figure 2 gives general format of the label:

Framework comes here

How does MPLS try to solve Internet problems?
Scalability: LSRs don't need to do longest match of addresses in software and they can use the short fixed length labels to do forwarding. Since labels are simple format, this operation can be done in hardware and it improves the performance.

IP over any network: Since MPLS is L2 agnostic, any existing network can be upgraded to support MPLS. In case of ATM, there is no need to construct lots of virtual circuits reducing the complexity of current networks.

Different services over Internet: MPLS provides Constraint Routed Label Distribution Protocol (CR-LDP) that takes into account different QoS parameters like latency, Committed Data Rate (CDR), Committed Burst Size (CBS) to reserve the resources along all the nodes in the route. Other approaches like RSVP-Traffic Engineering (RSVP-TE) also provide similar capability. This will make sure that all LSR's in the MPLS network are able to treat the traffic flows differentially and provide QoS.

Similarly, tunneling is a feature that is available in MPLS. This is implemented using the label-stacking feature available in MPLS. This helps in providing VPN functionality easily over the network.

Traffic Engineering: Any solution to the traffic engineering problem should establish routes that are optimal with respect to scalar metric and also take into account the available bandwidth on individual links. MPLS constraint routing protocols like CR-LDP and RSVP-TE provide such a capability to use the bandwidth more effectively.

Status of MPLS technology
Network vendors like Cisco, Nortel, Alcatel are rolling out core routers with MPLS functionality. New network startups like Amber, which are in aggregation-router business, are also adding MPLS edge functionality to their boxes. It is expected that MPLS core networks will be deployed more actively in 2001.

Caveats with MPLS technology
Though MPLS is touted as panacea to all of today's Internet problems, it has couple of caveats:
For the benefits of the MPLS to be realized, the core network routers have to be upgraded to MPLS. Even if one of the devices in core network is not MPLS, it may not work.
MPLS does not provide end-to-end IP QoS still. It addresses QoS in core networks, but still gaps are there when IP packets travel from core to access network to the end user.

References
IETF drafts home page
MPLS source home page

Rajagopal is the Director of the Network Edge and Access Technology group at MindTree Consulting.
He can be contacted at n_rajagopal@mindtree.com