Multi-Protocol Label Switching
Mutli-protocol label switching (MPLS) is a networking protocol that operates between the OSI model layers of 2 (Data Link) and 3 (Network) and is often referred to as a “Layer 2.5” protocol. MPLS is able to encapsulate many different protocols making it easy to establish virtual links between distant nodes. MPLS uses “labels” to make packet-forwarding decisions without having to look at the packet itself. This allows virtual connections to be created between any set of networking protocols and transport media.
Originally, MPLS was designed as an IP Switching technology that was defined to work across ATM networks and was created by a group of engineers from Ipsilon Networks. This technology never really took off in the marketplace. Cisco Systems then introduced a similar proposal called “Tag Switching” that was not limited to ATM transmissions. This was a Cisco proprietary protocol and was later renamed to “Label Switching.”
The way MPLS works is by encapsulating packets with a MPLS header that contains label information. A packet can contain one or more labels and is referred to as a label stack. Each label stack has four fields: 20 bit label field, 3 bit Traffic Class field for QoS (Quality of Service) and ECN (Explicit Congestion Notification), 1 bit “bottom of stack” flag that signifies the current label is the last in the stack if set, and an 8 bit TTL (Time-to-Live) field. It is important to note that because of the MPLS header information, routers do not need to view their routing table to making routing and switching decisions. These decisions can be made purely on the information contained in the label stack created by MPLS, saving processing on the CPU of networking devices. Edge routers that handle the entry and exit points of an MPLS network at called Label Edge Routers (LERs).These routers handle the encapsulation of MPLS label information as it enters the network, and strips the label information when it...