Sunday, April 3, 2011

What is MPLS ?

Here we go……! The very first blog from me on MPLS, I have a lot stuff to publish and write on many things but because of the hectic schedule I am unable to write things, anyway I will try to be regular now onwards. First let’s talk about what is this lovely term MPLS?? ? Anyone?? ? No Idea :( hmmm! Let me explain what this, “Multiprotocol Label Switching (MPLS) is a new forwarding mechanism in which packets are forwarded based on labels”. MPLS comes in to our life because of some problems in the traditional IP routing like:

1. Routing Lookup is performed on every hop (router)

2. When IP is carrying over ATM or Frame Relay so Layer-2 and Layer-3 topology many be different which results in the least best path or suboptimal path and link utilization.

3. At times data only goes through the primary link and not use the other link means we can’t do Traffic Engineering. In traditional IP routing we can do so by using PBR (Policy Based Routing) but that is strongly recommended not to use.
MPLS comes into our life and solve the Problems of traditional IP routing. MPLS is a layer 2.5 technology and it is called “Multiprotocol” because it supports forwarding of other protocol as well. If we can say that end of the day what MPLS will give us so we can say that “Optimization” and “Scalability”. Speed can never be in the definition of MPLS because now a day’s IP is also too fast because of the hardware enhancement.

Modes of Operation

1. MPLS use a 32-bit label field that is inserted between Layer-2 and Layer-3 header (Frame Mode).
2. MPLS over ATM use the ATM header as the label (Cell Mode).

MPLS Architecture

MPLS has two major components i.e. Control Plane and Data Plane

1. Control Plane: Exchange Layer-3 information and label
2. Data Plane: Forward packets based on Label

Let me briefly explain how the two planes behave when a packet comes to it:
a) When the incoming packet is IP based so request comes to RIB (control plane) which then consult FIB (data plane).
b) When the incoming packet is label so request comes to LIB (control plane) which then consult LFIB (data plane).
c) Outgoing packet doesn’t matter whether it is packet (IP) or label.

We can have total of four tables in MPLS, i.e. LIB, RIB, FIB and LFIB.

1. RIB (Routing Information Base)
2. LIB (Label Information Base)
3. FIB (Forwarding Information Base)
4. LFIB (Label Forwarding Information Base)

Label Format

MPLS uses 32-bit label field that contains the following information.
1. 20-bit Label
2. 3-bit experimental field and this is used for Quality of Service (QoS)
3. 1-bit bottom of stack indicator, this play role when we are using multiple label
4. 8-bit Time-to-live (TTL) field, when a packet is in a loop so it brings that out of that state.

Router Terminologies in MPLS Domain

1. Edge LSR (Label Switch Router), It can be either Egress LSR or Ingress LSR. The nature of the router depends on the flow of the data; a router can be Egress LSR or Ingress LSR at one time. For example data comes as IP based so the router which receive the IP packet is Ingress LSR at this point and forward the packet to the MPLS domain and on a router where this packet leaves the MPLS domain so that is Egress LSR. The duty of Edge LSR to received IP based packet and assign label and send to MPLS domain and vice versa.
2. LSR (Label Switch Router) which is in the MPLS domain and whose duty is to forward labeled packets means duty just include Label swapping and forwarding.

Label Switch Path (LSP)

LSP is the path which the packet follows forms the point where it enters the domain till it leaves the domain. LSP is unidirectional means from Router-A to Router-B we can have two LSP in opposite direction.
A very little and brief introduction to MPLS, I hope this will be informative for you. Soon you will get more blogs on it.

I Hope this will be informative for you !

Cheers :)

No comments: