MPLS: Multiprotocol Label Switching Protocol Overview

MPLS: Multiprotocol Label Switching Protocol Overview
Multiprotocol Label Switching (MPLS), an architecture for fast packet switching and routing, provides the designation, routing, forwarding and switching of traffic flows through the network. More specifically, MPLS has mechanisms to manage traffic flows of various granularities. MPLS is independent of the layer-2 and layer-3 protocols such as ATM and IP. MPLS provides a means to map IP addresses to simple, fixed-length labels used by different packet-forwarding and packet-switching technologies. MPLS interfaces to existing routing and switching protocols, such as IP , ATM, Frame Relay, Resource ReSerVation Protocol (RSVP) and Open Shortest Path First (OSPF), etc.

In MPLS, data transmission occurs on Label-Switched Paths (LSPs). LSPs are a sequence of labels at each and every node along the path from the source to the destination. There are several label distribution protocols used today, such as Label Distribution Protocol (LDP) or RSVP or piggybacked on routing protocols like border gateway protocol (BGP ) and OSPF. High-speed switching of data is possible because the fixed-length labels are inserted at the very beginning of the packet or cell and can be used by hardware to switch packets quickly between links.
MPLS is designed to address the network problems such as networks-speed, scalability, quality-of-service (QoS), and traffic engineering. MPLS has also become a solution to meet the bandwidth-management and service requirements for next-generation IP-based backbone networks.

A newer standard Generalized MPLS (GMPLS) extends the MPLS capabilities to cover multiple underlay traffic technologies such as TDM, FDM, Fiber, Optical etc. with better management and provisioning schemes.

Protocol Structure - Multiprotocol Label Switching (MPLS)
MPLS label structure:
32 bit

  • Label - Label Value carries the actual value of the Label. When a labeled packet is received, the label value at the top of the stack is lookedup and learns:  
  • a) the next hop to which the packet is to be forwarded;
  • b) the operation to be performed on the label stack before forwarding; this operation may be to replace the top label stack entry with another, or to pop an entry off the label stack, or to replace the top label stack entry and then to push one or more additional entries on the label stack.  
  • Exp - Experimental Use: reserved for experimental use.  
  • S - Bottom of Stack: This bit is set to one for the last entry in the label stack, and zero for all other label stack entries  
  • TTL - Time to Live field is used to encode a time-to-live value.
The MPLS protocol family includes:

  • MPLS: Multi Protocol Label Switching architecture
  • MPLS related routing signaling protocols such as BGP, ATM PNNI, OSPF etc. 
  • LDP: Label Distribution Protocol
  • CR-LDP: Constraint-Based LDP
  • RSVP-TE: Resource Reservation Protocol - Traffic Engineering  
The details of each protocols will be discussed in separate documents. 

MPLS is defined by IETF ( ) RFC 3031 and RFC 3032.