While doing a review to MPLS, I thought of writing a series of blogs exposing what MPLS is, its advantages, how to configure it and few of its applications.

Before I show you the topology diagram I will be working on, let’s start with MPLS fundamentals:

  • MPLS is seen by some as a L2.5 (two and a half) in the OSI model – this is only to say that the MPLS header sits between e Layer2 and Layer3:


  • Looking at the figure above, it should also become clear that no matter what Layer2 protocol is used, Layer3 will always be made transparent by the MPLS label – the Layer3 header won’t even matter for switching purposes!
  • MPLS header is 32 bits long
    • 20 bits Label
    • 8 bits TTL
    • 3 bits EXP
    • 1 bit S (stands for “Stack” – when this bit is 1, it means that the label is at the bottom of the stack)
  • MPLS Advantages
    • Faster packet switching – no more route lookups; furthermore, MPLS header is shorter than IP header
    • MPLS switching process uses the CEF table – so CEF must be enabled!
    • MPLS uses Layer3 behind the scenes, while creating an overlay over the Layer3 network, essentially making it transparent – this in turns allows Layer3 resiliency over a Layer2-like network – instead of routing packets, they will be switched based on labels (instead of L2 addresses)
    • Provides advanced applications such as Layer2 and Layer3 scalable VPNs (more on this later)
    • Allows for QoS implementation and TE (Traffic Engineering)
    • Sitting between Layer2 and Layer3, MPLS can then provide advanced features (QoS, Traffic Engineering, L2 & L3 VPNs) to a range of L2/L3 technologies in a consistent fashion
    • MPLS offers great scalability
  • There are two types of MPLS routers ([tooltip tip=”Label Switching Routers”]LSRs[/tooltip]) – consider the image below:


  • Provider Edge router (PE) – Sits at the edge of the MPLS core; this router intersects the MPLS to non-MPLS networks
    • Provides connectivity to the customer
    • Entering the MPLS core: Receives non-MPLS packets (not labeled) from the customer and sends them labeled (PUSH operation) into the core
    • Exiting the MPLS core: Receives an unlabeled MPLS packet and routes the packet out
Towards the exit point of the MPLS core, the labeled is removed one hop, just before the PE LSR; this saves PE some processing or otherwise, it would have to POP the label and then route it out. This feature is known as [tooltip tip=”Penultimate Hop Popping”]PHP[/tooltip].
  • Provider router (P) – these are routers sitting inside the MPLS core and from the Layer3 perspective, they become completely transparent to the customer
    • Receives labeled packet and replaces the label (SWAP operation) before sending the packet out to the next MPLS LSR
  • A [tooltip tip=”Forward Equivalency Class = { IP Prefix, Local Label }”]FEC[/tooltip] is one of the building blocks of the MPLS switching table called [tooltip tip=”Label Forwarding Information Base = a set of FECs and outgoing interfaces”]LFIB[/tooltip]:
    • IP World: IP Route –> FIB (aka. Routing Table)
    • MPLS World: FEC –> LFIB (Label Forwarding Information Base)

So far, I’ve shown you an overview of what is MPLS and what it does; I’ve also mentioned the advantages of using MPLS. Next, in part 2, I will show how the magic actually happens.

Go back to Index


Thank you,
View Rafael A Couto Cabral's profile on LinkedIn

Leave a reply

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>