Several manufacturers identified a need for a form of label switching and began developing their own individual solutions. All took a different approach, and all but CISCO focused on ATM as the layer 2 technology, where
Toshiba came up with the idea of a cell switching router (CSR) and the idea that the ATM switching fabric can be controlled by standard IP routing protocols such as RIP, OSPF and RSVP. Toshiba came up with the idea that traditional IP Subnets could be aligned to ATM virtual connections through the use of FANP (Flow Attribute Notification Protocol.
A couple of years later Ipsilon came up with a similar concept that became known as IP Switching. This also identified a way of utilising the Layer 2 capabilities of ATM Switches and adding intelligence in the form of IP Routing.
Cisco introduced their own version known as TAG Switching, which had the concept of TAG Edge routers at the edge of the network, known as the Ingress or Egress and Tag Switching Routers in the core of the network. Edge routers add tags to the packets and a distribution protocol is used to distribute TAG information between routers. Eventually the IETF (Internet Engineering Task Force) developed MPLS in consultation with the major players.
Core networks of carriers, service providers and enterprise networks almost invariably will be built around the MPLS standards.
Within an IP packet, the IP header contains information such as source and destination IP address, but also contains such information as QoS (Quality of Service) marking using the ToS (Type of Service) field.
Standard routing is normally based on using the destination IP address and using the nearest match to the network and subnetwork portion of the address in order to route the data packet to the next hop destination. With MPLS we can use this intelligence with additional information in the IP header to identify a specific route from ingress to egress. This is known as explicit routing.
MPLS works by adding tags to the traffic that contain labels to identify and distinguish LSPs (Label Switched Paths) through the network. An edge router configured for MPLS will provide a label or labels and the network routers will use the label to determine the Label Switched Path. A router will often change the label in the packets when it has identified the next hop so the next router will use the next label. Some implementations have the Label Edge Routers stacking a number of labels within the packets, where each router in turn actions the top label and then removes it so the next label is at the top of the stack for the next hop router to action. The process of removing a label at a time hop-by-hop is often referred to as “Label Popping”.
Implementations of MPLS utilising many different data link technology are common, with a method of label encoding described for each data link layer. With Ethernet, the 32-bit label is added directly following the data link layer header, and immediately before the network layer header. The router can therefore see the label information prior to the network layer header. The label used in this method is often referred to as a “Shim Label”.
With MPLS we often talk about FEC (Forward Equivalency Class), where a FEC are packets that are to be treated in an identical way from ingress to egress in an MPLS network. Each packet within a FEC will follow the same Label Switched Path through the network.
In order to implement MPLS we need a method of distributing the labels throughout the network and building LSFTs (Label Switched Forwarding Tables. Sometimes the labels can be carried by existing routing protocols in a Piggyback fashion, but sometimes we need a dedicated distribution protocol such as LDP (Label Distribution Protocol).
MPLS is discussed in a number of our instructor-led training courses, and we will be adding MPLS to our training portfolio soon.