MPLS Label Distribution - LDP Part1
MPLS Label distribution protocol (LDP) as its name implies was defined to automatically create and maintain Label switched paths (LSP) in an MPLS network via label distribution. LDP specifications are defined in RFC 5036.
In brief LDP assigns local label bindings to all IGP routes in the routing table and forms neighbor relationships with other LDP peers to exchange those local bindings. I will explain this further below.
Label distribution Protocol (LDP) has four major functions as listed below:
- Automatically discover LDP Peers in the same network segment.
- Establish and maintain LDP sessions with those peers.
- Exchange and advertise label bindings to create LSPs.
- House keeping of the protocol.
In this series of MPLS label distribution posts we are going to examine each of the above functions in some details. However, lets start by defining some concepts before we move forward into explaining LDP operation.
MPLS Label Space:
MPLS has two type of label spaces; per interface label space and per platform label space.
Per-Interface label space: MPLS labels are assigned per FEC per interface. This means that MPLS packets are forwarded based on both the incoming label and the incoming interface. This mode is used cell mode MPLS implementations.
Per Platform label space: MPLS labels are assigned per FEC per platform. MPLS packets are forwarded based on incoming label only without considering the incoming interface. This is the widely used label space in frame mode MPLS implementations.
MPLS Label distribution modes:
MPLS has also two label distribution modes. The downstream on-demand and the unsolicited on-demand.
Downstream on-demand: In this mode each LSR sends a label binding request to its downstream router only, for each specific FEC. RSVP for TE is a good example for this.
Unsolicited Downstream: Each LSR automatically distributes its label bindings to all peers without waiting for a request message from those peers. The LSR receives a label binding for the FEC from all adjacent LSRs.
MPLS Label retention modes:
Again we have two modes for MPLS label retention. They are liberal and conservative modes.
Liberal label retention mode: In this mode every label mapping received from a peer is retained regardless of whether the LSR is the next hop for the advertised mapping. The main advantage of this mean is quick reaction to routing changes because labels are already stored in the LIB.
Conservative Label retention mode: In this mode advertised label mappings will only be retained if the sending LSR is the next hop downstream router for this specific FEC. Only labels which will be used for MPLS packet forwarding are kept in the LIB.
MPLS Label Control modes:
MPLS has Independent control mode and Ordered Control mode.
Independent label distribution control mode: An LSR assigns a local binding to a FEC as soon as it realizes its existence in the routing table. Does not wait to receive any labels from downstream LSR.
Ordered label distribution control mode: As LSR assigns a local binding to a FEC only if it recognizes it is the egress LSR for that FEC or if it receives a label binding from the next hop downstream LSR.
The concepts we explained in this post applies to any Label Distribution protocol and we are going to visit them again when we talk about other protocols. I am done for this post, I hope I have been informative.
P.S: If you are new to MPLS Please review those posts before we move forward What is MPLS?, MPLS label operations and MPLS special labels.