You are on page 1of 32

Label Distribution Protocol (LDP) is a protocol

in which routers capable of Multiprotocol Label


Switching (MPLS) exchange label mapping
information.

 MPLS is a mechanism in high-performance


telecommunications networks that directs
data from one network node to the next
based on short path labels rather than long
network addresses, avoiding complex
lookups in a routing table.
MPLS
Label Distribution Protocol (LDP) is a key
protocol in the MPLS (Multi Protocol Label
Switching) architecture.

 In the MPLS network, 2 Label Switching


Routers (LSR) must agree on the meaning
of the labels used to forward traffic
between and through them.
LSR Routers
 The Label Distribution Protocol (LDP) is a
protocol defined by the IETF (RFC 5036)
for the purpose of distributing labels in an
MPLS environment.
 LDP defines a set of procedures and
messages by which one LSR (Label Switched
Router) informs another of the label bindings
it has made.

 The LSR uses this protocol to establish label


switched paths through a network by
mapping network layer routing information
directly to data-link layer switched paths.
LSR Routers
 Two LSRs (Label Switched Routers) which
use LDP to exchange label mapping
information are known as LDP peers and
they have an LDP session between them.

 In a single session, each peer is able to


learn about the others label mappings, in
other words, the protocol is bi-
directional.
1. Version -- LDP version number. The present
number is 1.

2. PDU Length -- The total length of the PDU


excluding the version and the PDU length field.

3. LDP identifier -- This field uniquely identifies


the label space of the sending LSR for which
this PDU applies. The first 4 octets encode the
IP address assigned to the LSR. The last 2
indicate a label space within the LSR.
All LDP messages have the following format:
1. U -- The U bit is an unknown message bit.

2. Message Type -- The type of message. The following message


types exist: Notification, Hello, Initialization, Keep Alive,
Address, Address Withdraw, Label Request, Label Withdraw,
Label Release, and Unknown Message name.

3. Message Length -- The length in octets of the message ID,


mandatory parameters and optional parameters.

4. Message ID -- 32-bit value used to identify the message.

5. Parameters -- The parameters contain the TLVs. There are


both mandatory and optional parameters. Some messages
have no mandatory parameters, and some have no optional
parameters.
1. U -- The U bit is an unknown TLV bit.

2. F -- Forward unknown TLV bit.

3. Type -- Encodes how the Value field is to be


interpreted.

4. Length -- Specifies the length of the Value field in


octets.

5. Value -- Octet string of Length octets that encodes


information to be interpreted as specified by the
Type field.
The following message types are defined in this version
of LDP:

Message Name Section Title


Notification Notification Message
Hello Hello Message
Initialization Initialization Message
KeepAlive KeepAlive Message
Address Address Message
Address Withdraw Address Withdraw Message
Label Mapping Label Mapping Message
Label Request Label Request Message
Label Abort Request Label Abort Request Message
Label Withdraw Label Withdraw Message
Label Release Label Release Message
LDP provides a standard methodology for
hop-by-hop, or dynamic label, distribution in
an MPLS network by assigning labels to routes
that have been chosen by the underlying
Interior Gateway Protocol (IGP) routing
protocols.

 Theresulting labeled paths, called Label


Switch Paths (LSPs), forward label traffic
across an MPLS backbone to particular
destinations.
When you enable MPLS LDP, the LSRs send out
messages to try to find other LSRs with which
they can create LDP sessions.

The following sections explain the differences


between sessions.
1. Directly Connected MPLS LDP Sessions
2. Nondirectly Connected MPLS LDP Sessions
If an LSR is one hop from its neighbor, it is
directly connected to its neighbor. The LSR
sends out LDP link Hello messages as User
Datagram Protocol (UDP) packets to all the
routers on the subnet (multicast).

A neighboring LSR may respond to the link


Hello message, allowing the two routers to
establish an LDP session. This is called Basic
Discovery.
 Toinitiate an LDP session between routers, the
routers determine which router will take the
active role and which router will take the
passive role. The router that takes the active
role establishes the LDP TCP connection
session and initiates the negotiation of the LDP
session parameters.

 Todetermine the roles, the two routers


compare their Transport Addresses. The router
with the higher IP address takes the active role
and establishes the session.
After the LDP TCP connection session is
established, the LSRs negotiate the session
parameters, including the method of label
distribution to be used. Two methods are available:

1. Downstream Unsolicited: An LSR advertises


label mappings to peers without being asked
to.
2. Downstream on Demand: An LSR advertises
label mappings to a peer only when the peer
asks for them.
If the LSR is more than one hop from its
neighbor, it is nondirectly connected to its
neighbor. For these nondirectly connected
neighbors, the LSR sends out a targeted Hello
message as a UDP packet, but as a unicast
message specifically addressed to that LSR.

The nondirectly connected LSR responds to the


Hello message and the two routers begin to
establish an LDP session. This is called Extended
Discovery.
The exchange of targeted Hello messages between two
nondirectly connected neighbors can occur in several
ways, including the following:

1. Router 1 sends targeted Hello messages carrying a


response request to Router 2. Router 2 sends targeted
Hello messages in response if its configuration
permits. In this situation, Router 1 is considered to be
active and Router 2 is considered to be passive.

2. Router 1 and Router 2 both send targeted Hello


messages to each other. Both routers are considered
to be active. Both, one, or neither router can also be
passive, if they have been configured to respond to
requests for targeted Hello messages from each other.
An LDP label binding is an association
between a destination prefix and a label.
There are four categories of LDP messages:

1. Discovery messages, used to announce and


maintain the presence of an LSR in a network.
2. Session messages, used to establish, maintain,
and terminate sessions between LDP peers.
3. Advertisement messages, used to create,
change, and delete label mappings for FECs.
4. Notification messages, used to provide
advisory information and to signal error
information.
LDP errors and other events of interest are
signaled to an LDP peer by Notification
messages.
There are two kinds of LDP Notification
messages:

1. Error Notifications
2. Advisory Notifications
Error Notifications, used to signal fatal
errors. If an LSR receives an Error
Notification from a peer for an LDP session,
it terminates the LDP session by closing the
TCP transport connection for the session
and discarding all label mappings learned
via the session.
Advisory Notifications, used to pass on LSR
information about the LDP session or the
status of some previous message received
from the peer.
 LDPuses TCP as a reliable transport for
sessions.

 When multiple LDP sessions are


required between two LSRs, there is one
TCP session for each LDP session.

You might also like