🏷️

Label distribution protocol (LDP)

LDP is used to exchange labels used for IP forwarding. A seperate protocol was chosen to minimize changes needed to IGPs.
LDP is a standard (RFS 3036) that replaced Cisco’s proprietary Tag Distribution Protocol (TDP)
Generally used on directly connected neighbors, can be targeted for routed neighbors.
 
frame-mode mpls - per-platform label space
224.0.0.2 All routers multicast address,
Hello packet UDP port 646 for source and destination
LSR ID: Highest IP on loopback interface
Highest LSR ID becomes active
TCP destination port 646 used for LDP session
show mpls ldp neighbor clear mpls ldp neighbor 1.1.1.1 show mpls ldp discovery detail
Liberal Label Retention - keeps both upstream and downstream label
Label Switch Path - by default same as IGP
  1. Which LDP neighbors advertise network
 
  1. Who owns next hop IPv4 for network
 
notion image
  • RIB - Routing Information Base (All routes learned about)
  • FIB - Forwarding Information Base (Routing Table)
  • LIB - Label Information Base (All labels learned LDP)
  • LFIB - Label Forwarding Information Base (Label Forwarding Table)
  • CEF - Cisco Express Forwarding (cache of FIB and LFIB)
LFIB takes priority over FIB
#RIB show ip ospf 1 rib #FIB show ip route #LIB show mpls ldp bindings #LFIB show mpls forwarding-table

LDP Security

  • Authentication
  • LDP Session Protection
  • IGP Synchronisation
  • Label Filtering

LDP Authentication

Password set individually for each neighbour
mpls neighbor 1.1.1.1 password Password123!
MPLS LDP Lossless MD5 session authentication
access-list 10 permit host 1.1.1.1 key chain LDP_KEYS key 1 key-string Password123! accept-lifetime 0:0:0 jan 1 2002 infinite send-lifetime 0:0:0 jan 1 2002 infinite mpls ldp password option 2 for 10 key-chain LDP_KEYS mpls ldp password required