In computer networking and telecommunications, Multi Protocol Label Switching (MPLS) is a data-carrying mechanism that belongs to the family of packet-switched networks.
When it comes to getting network traffic from point A to point B, no single way suits every application. Voice and video applications require minimum delay variation, while mission-critical applications require hard guarantees-of-service and rerouting.
So far, only circuit-switched networks have provided the differentiated services and guarantees required by many of these applications. But a new technology called Multiprotocol Label Switching (MPLS) is changing all that. With MPLS, you can support all ...view middle of the document...
The IETF work involved proposals from other vendors, and development of a consensus protocol that combined features from several vendors' work.
One original motivation was to allow the creation of simple high-speed switches, since for a significant length of time it was impossible to forward IP packets entirely in hardware. However, advances in VLSI have made such devices possible. Therefore the advantages of MPLS primarily revolve around the ability to support multiple service models and perform traffic management. MPLS also offers a robust recovery framework that goes beyond the simple protection rings of synchronous optical networking (SONET/SDH).
While the traffic management benefits of migrating to MPLS are quite valuable (better reliability, increased performance), there is a significant loss of visibility and access into the MPLS cloud for IT departments.
How MPSL Works
MPLS works by prefixing packets with an MPLS header, containing one or more 'labels'. This is called a label stack.
Each label stack entry contains four fields:
• a 20-bit label value.
• a 3-bit field for QoS (Quality of Service) priority (experimental).
• a 1-bit bottom of stack flag. If this is set, it signifies that the current label is the last in the stack.
• an 8-bit TTL (time to live) field.
A label is a short, four-byte, fixed-length, locally-significant identifier which is used to identify a Forwarding Equivalence Class (FEC). The label which is put on a particular packet represents the FEC to which that packet is assigned.
• Label—Label Value (Unstructured), 20 bits
• Exp—Experimental Use, 3 bits; currently used as a Class of Service (CoS) field.
• S—Bottom of Stack, 1 bit
• TTL—Time to Live, 8 bits
The label is imposed between the data link layer (Layer 2) header and network layer (Layer 3) header. The top of the label stack appears first in the packet, and the bottom appears last. The network layer packet immediately follows the last label in the label stack.
Traditional IP forwarding techniques analyze the destination IP address contained in the network layer header for every packet at each hop in the network. This process is called hop-by-hop destination-based routing. The route that packets take is based solely on the destination unicast address. Layer 3 routing protocols do not traditionally have any interaction with Layer 2 network characteristics, making the implementation of Quality of Service (QOS) and loading features difficult.
Multiprotocol Label Switching (MPLS) is a vendor-independent protocol (based on Cisco's tag-switching protocol) that applies labels to packets providing QOS and advance route selection functions.
There are several terms used in MPLS implementations.
Header applied to a packet by an edge label switch router (edge LSR) and used by label switch routers (LSR) to forward packets.
Label forwarding information base (LFIB)
Table that indicates...