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 the above applications on an IP network without having to run large subsets of the network with completely different transport mechanisms, routing protocols, and addressing plans.
Although the standard is a work in progress, many vendors and service providers are announcing MPLS products and services. As such, now seems like a good time to learn how the technology works, how it can be deployed, and what issues still need to be addressed.
MPLS operates at an OSI Model layer that is generally considered to lie between traditional definitions of Layer 2 (data link layer) and Layer 3 (network layer), and thus is often referred to as a "Layer 2.5" protocol. It was designed to provide a unified data-carrying service for both circuit-based clients and packet-switching clients which provide a datagram service model. It can be used to carry many different kinds of traffic, including IP packets, as well as native ATM, SONET, and Ethernet frames.
MPLS was originally proposed by a group of engineers from Ipsilon Networks, but their "IP Switching" technology, which was defined only to work over ATM, did not achieve market dominance. Cisco Systems, Inc. introduced a related proposal, not restricted to ATM transmission, called "Tag Switching" when it was a Cisco proprietary proposal, and was renamed "Label Switching" when it was handed over to the IETF for open standardization. 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...