MPLS LDP IGP Synchronization

The MPLS LDP IGP synchronization feature ensures that the Label Distribution Protocol (LDP) is fully established before the Interior Gateway Protocol (IGP) path is used for switching. This module explains the concepts related to MPLS LDP IGP synchronization and describes how to configure MPLS LDP IGP synchronization in a network.

Feature history for MPLS LDP IGP synchronization

This table provides release and platform support information for the features explained in this module.

These features are available in all the releases subsequent to the one they were introduced in, unless noted otherwise.

Release

Feature name and description

Supported platform

Cisco IOS XE 17.18.2

MPLS LDP IGP synchronization

Cisco C9350 Series Smart Switches

Cisco C9610 Series Smart Switches

MPLS LDP IGP synchronization

MPLS LDP IGP synchronization is an MPLS LDP synchronization feature that

  • provides a means to synchronize LDP and Interior Gateway Protocol (IGP) to minimize MPLS packet loss, and

  • ensures that LDP is fully established before the IGP path is used for switching.

MPLS LDP IGP synchronization with peers

When the MPLS LDP IGP synchronization feature is enabled on an interface, the LDP determines if any peer connected by the interface is reachable by looking up the transport address of the peer in the routing table. If a routing entry including longest match or default routing entry for the peer exists, LDP assumes that LDP IGP synchronization is required for the interface and notifies the IGP to wait for LDP convergence.

LDP IGP synchronization with peers requires that the routing table be accurate for the transport address of the peer. If the routing table shows that there is a route for the transport address of the peer, that route must be able to reach that address. However, if the route is a summary route, a default route, or a statically configured route, it may not be the correct route for the peer. You must verify that the route in the routing table can reach the transport address of the peer.

When the routing table has an inaccurate route for the transport address of the peer, LDP cannot set up a session with the peer, which causes the IGP to wait for LDP convergence unnecessarily for the sync hold-down time.

MPLS LDP IGP synchronization incompatibility with IGP nonstop forwarding

The device does not support the MPLS LDP IGP synchronization feature during the startup period if the IGP nonstop forwarding (NSF) is configured. The feature conflicts with IGP NSF when the IGP is performing NSF during startup. After the NSF startup is complete, the device supports MPLS LDP IGP synchronization.

MPLS LDP IGP synchronization compatibility with LDP graceful restart

LDP graceful restart protects traffic when an LDP session is lost. If an interface that supports a graceful restart-enabled LDP session fails, MPLS LDP IGP synchronization is still achieved on the interface while it is protected by graceful restart. MPLS LDP IGP synchronization is eventually lost under these scenarios:

  • If LDP fails to restart before the LDP graceful restart reconnect timer expires.

  • If an LDP session restarts through other interfaces, but the LDP session on the protected interface fails to recover when the LDP graceful restart recovery timer expires.

MPLS LDP IGP synchronization delay timer

The MPLS LDP IGP synchronization delay timer is a configurable option that:

  • allows you to specify a delay time for LDP and IGP synchronization on an interface-by-interface basis

  • helps mitigate issues when inaccurate routes cause LDP to wait unnecessarily for convergence, and

  • ensures LDP checks synchronization validity after the configured delay before notifying OSPF.

When LDP is fully established and synchronized, it checks the delay timer:

  • If you configured a delay time, LDP starts the timer. When the timer expires, LDP checks that synchronization is still valid and notifies the OSPF process.

  • If you did not configure a delay time, if synchronization is disabled or down, or if an interface was removed from an IGP process, LDP stops the timer and immediately notifies the OSPF process.

  • If you configure a new delay time while a timer is running, LDP saves the new delay time but does not reconfigure the running timer.

How MPLS LDP IGP synchronization works

Summary

These are the key components involved in MPLS LDP IGP synchronization:

  • Interior Gateway Protocol (IGP) : Establishes network adjacency and determines optimal paths.

  • Label Distribution Protocol (LDP) : Exchanges labels between peers for MPLS forwarding.

  • Routing table : Stores network reachability information used by LDP to determine peer reachability.

This process coordinates IGP and LDP actions to ensure that traffic is only forwarded over links where LDP sessions are fully established.

Workflow

These stages describe how MPLS LDP IGP synchronization operates:

  1. Synchronization initiation: LDP determines if a peer connected by an interface is reachable by looking up the transport address of the peer in the routing table.
  2. IGP notification: If a routing entry for the peer exists, LDP assumes LDP IGP synchronization is required and notifies the IGP to wait for LDP convergence.
  3. IGP waiting: The IGP waits for synchronization to be achieved. By default, this wait is indefinite, but it can be limited by configuring the mpls ldp igp sync holddown command.
  4. Max-metric advertisement: If an IGP adjacency is established but LDP IGP synchronization is not yet achieved or is lost, the IGP advertises the max-metric on that link.
  5. Synchronization achievement: When LDP is fully established and synchronized, it notifies the IGP process, for example, OSPF.

Result

MPLS LDP IGP synchronization ensures that traffic forwarding only occurs over links where LDP sessions are fully established, thereby preventing packet loss due to unsynchronized protocol states.

Restrictions for MPLS LDP IGP synchronization

The support for MPLS LDP IGP synchronization feature is subjected to these restrictions:

  • The feature is supported only on interfaces running Open Shortest Path First (OSPF) or Intermediate System-to-System (IS-IS) processes.

  • The feature is not supported on tunnel interfaces or LC-ATM interfaces.

  • The feature is not supported with interface-local label space or downstream-on-demand (DoD) requests.

  • The feature does not support targeted LDP sessions. Therefore, Any Transport over MPLS (AToM) sessions are not supported.

  • The feature does not support Tag Distribution Protocol (TDP). You must specify that the default label distribution protocol is LDP for a device or for an interface.

Configure MPLS LDP IGP synchronization

Configure MPLS LDP IGP synchronization on OSPF interfaces

This task enables MPLS LDP IGP synchronization globally on all interfaces belonging to an OSPF process and specifies LDP as the label distribution protocol.

Procedure


Step 1

Globally enable MPLS hop-by-hop forwarding and set LDP as the label protocol for all interfaces.

Example:


Device> enable
Device# configure terminal
Device(config)# mpls ip
Device(config)# mpls label protocol ldp

Step 2

Enable hop-by-hop forwarding on an interface.

Example:


Device(config)# interface HundredGigE 1/0/1
Device(config-if)# ip address 10.0.0.11 255.255.255.255
Device(config-if)# mpls ip
Device(config-if)# exit

Step 3

Enable OSPF routing on the device.

Example:


Device(config)# router ospf 1
Device(config-router)# network 10.0.0.0 0.0.255.255 area 3

Step 4

Enable MPLS IGP synchronization on interfaces belonging to an OSPF process.

Example:


Device(config-router)# mpls ldp sync
Device(config-router)# end

When you issue the mpls ldp sync command, all the interfaces that belong to an OSPF process are enabled for MPLS LDP IGP synchronization. To remove LDP IGP synchronization from some interfaces, use the no mpls ldp igp sync command on those interfaces.

For example:


Device(config)# interface HundredGigE 1/0/1
Device(config-if)# no mpls ldp igp sync
Device(config-if)# end

Step 5

Verify MPLS LDP IGP synchronization with OSPF.

  1. Verify if MPLS LDP IGP synchronization is enabled on the interface.

    Example:

    
    Device# show mpls ldp igp sync
    
    HundredGigE 1/0/1:
     LDP configured;  SYNC enabled.
     SYNC status: sync achieved; peer reachable.
     IGP holddown time: infinite.
     Peer LDP Ident: 10.0.0.1:0
     IGP enabled: OSPF 1
    

    The output shows that LDP is configured and that synchronization is enabled.

    If MPLS LDP IGP synchronization is not enabled on an interface, the output appears as follows:

    
    HundredGigE 1/0/3:
     LDP configured; LDP-IGP Synchronization not enabled.
    
  2. Verify the status and configuration of MPLS LDP synchronization with OSPF on specific interfaces.

    Example:

    
    Device# show ip ospf mpls ldp interface
    
    HundredGigE 1/0/1
      Process ID 1, Area 0
      LDP is configured through LDP autoconfig
      LDP-IGP Synchronization: Yes
      Holddown timer is not configured
      Timer is not running
    HundredGigE 1/0/2
      Process ID 1, Area 0
      LDP is configured through LDP autoconfig
      LDP-IGP Synchronization: Yes
      Holddown timer is not configured
      Timer is not running 
    

    The LDP-IGP Synchronization status in the output shows as Yes.


Configure MPLS LDP IGP synchronization on an IS-IS interface

This task configures IS-IS on a particular interface and then enables LDP IGP synchronization for IS-IS processes, which then applies to the configured interface.

Procedure


Step 1

Configure the interface to run the IS-IS protocol.

Example:


Device(config)# interface HundredGigE 1/0/1
Device(config-if)# ip address 10.50.72.4 255.0.0.0
Device(config-if)# ip router isis
Device(config-if)# exit

Step 2

Enable IS-IS routing on the device.

Example:


Device(config)# router isis

Step 3

Enable MPLS LDP IGP synchronization for all the interfaces belonging to an IS-IS process.

Example:


Device(config-router)# mpls ldp sync
Device(config-router)# end

Configure MPLS LDP IGP synchronization for all IS-IS interfaces

This task sets up the necessary LDP and IS-IS configurations and enables MPLS LDP IGP synchronization globally for all interfaces belonging to an IS-IS process on the device.

Before you begin

You must define a valid holddown timer for IS-IS.

Procedure


Step 1

Globally enable MPLS hop-by-hop forwarding and set LDP as the label protocol for all interfaces.

Example:


Device> enable
Device# configure terminal
Device(config)# mpls ip
Device(config)# mpls label protocol ldp

Step 2

Enable IS-IS routing on the device.

Example:


Device(config)# router isis ISIS

Step 3

Enable MPLS LDP IGP synchronization for all the interfaces belonging to an IS-IS process.

Example:


Device(config-router)# mpls ldp sync
Device(config-router)# end

Step 4

Enable IS-IS on the required interface.

Example:


Device(config)# interface HundredGigE 1/0/1
Device(config-if)# ip address 10.25.25.11 255.255.255.0
Device(config-if)# ip router isis ISIS
Device(config-if)# end

When you issue the mpls ldp sync command, all the interfaces that belong to an IS-IS process are enabled for MPLS LDP IGP synchronization. To remove LDP IGP synchronization from some interfaces, use the no mpls ldp igp sync command on those interfaces.

For example:


Device(config)# interface HundredGigE 1/0/1
Device(config-if)# no mpls ldp igp sync
Device(config-if)# end