MPLS stands for MultiProtocol Label Switching. MPLS is a service provider technology that allows fast packet switching based on a label number instead of a MAC address. The MPLS frame sits between the Layer 2 and Layer 3 frames on an IP packet and is 32 bits long.
The MPLS label looks like this.
The contents of the MPLS label have the following meanings;
- Label: This is the value the Label Switched Router applies to allow the packet to be sent over the MPLS network. The range of labels that can be used is determined by how much memory you have in the router, but labels start at 16; anything below 16 is reserved. The packet can contain more than one label
- EXP (Experimental) Bits: These are used for QoS or MPLS Traffic Engineering (MPLS TE)
- BoS (Bottom of Stack): If this is set to 1, then this is the last label in the MPLS frame; if the bit is set to 0, then there are more labels in the MPLS frame
- TTL (Time to Live) – Same meaning as with IP TTL
For MPLS to forward packets, there needs to be an IP routing protocol setup and functional before MPLS forms neighborships and does not function.
There are two ways to implement MPLS.
- Overlay Model: Where the Service Provider provides virtual point-to-point links between customer sites and does not participate in customer routing (for example, Frame-Relay)
- Peer-to-Peer Model: The Service Provider participates in the customer routing, and you peer with the PE (Provider Edge) of the Service Provider
Both models have pros and cons; the one big disadvantage is the overlay model; if you want a full mesh, a VC needs to connect every site, which is unnecessary with the peer-to-peer model.
There are two components to MPLS.
- Data Plane, which forwards packets based on labels
- The engine that drives this is called the Label Forwarding Information Base, or LFIB.
- Control Plane, which exchanges routing information and label information with its neighbors
I think this is good for the basics of what MPLS is. In the next blog, we will look at all the new acronyms for MPLS.