NSR LDP Support

The NSR LDP Support feature allows the Label Distribution Protocol (LDP) to continue to operate across a node failure without losing peer sessions. Before the introduction of nonstop routing (NSR), LDP sessions with peers reset if a Route Processor (RP) failover or a Cisco In-Service Software Upgrade (ISSU) occurred. When peers reset, traffic is lost while the session is down. Protocol reconvergence occurs after the session is reestablished.

When NSR is enabled, RP failover and Cisco ISSU events are not visible to the peer device, and the LDP sessions that were established prior to failover do not flap. The protocol state learned from the peers persists across an RP failover or Cisco ISSU event and does not need to be relearned.

Finding Feature Information

Your software release may not support all the features documented in this module. For the latest caveats and feature information, see Bug Search Tool and the release notes for your platform and software release. To find information about the features documented in this module, and to see a list of the releases in which each feature is supported, see the feature information table at the end of this module.

Use Cisco Feature Navigator to find information about platform support and Cisco software image support. To access Cisco Feature Navigator, go to www.cisco.com/​go/​cfn. An account on Cisco.com is not required.

Prerequisites for NSR LDP Support

The Label Distribution Protocol (LDP) must be up and running on the standby Route Processor (RP) for NSR LDP Support to work.

Information About NSR LDP Support

Roles of the Standby Route Processor and Standby LDP

For the NSR LDP Support feature to work, the Label Distribution Protocol (LDP) must be up and running on the standby Route Processor (RP). The LDP component running on the active RP is called the active LDP, and the LDP component running on the standby RP is called the standby LDP.

When nonstop routing (NSR) is enabled, the standby LDP runs independently from the active LDP, but with the assistance of some software components. The standby LDP maintains LDP session states and database information, ready to take over for the active LDP if the failover occurs.

Standby LDP maintains its local database by querying or receiving notifications of interface status change, configuration changes from the CLI, and checkpoints from the active LDP for other information that is not directly available on the standby RP.

To keep the protocol and session-state information synchronized with the active LDP, the standby LDP depends on TCP to replicate all LDP messages on the active RP to the standby RP. The standby LDP processes all received messages, updates its state, but does not send any responses to its neighbors.

The standby LDP performs the following tasks:

  • Processes LDP configuration on startup and during steady state
  • Processes active LDP checkpoints of state and session information such as LDP adjacencies, remote addresses, remote bindings, and so forth
  • Builds its database of local interfaces
  • Processes interface change events
  • Receives and processes all LDP messages replicated by TCP
  • Updates remote address and label databases

After a switchover and notification that the RP has become active, the standby LDP takes over the role of the active LDP and performs the following tasks:

  • Sends hello messages immediately to prevent neighbors from reaching the discovery timeout and bringing down the session
  • Retransmits any protocol-level response that has not been sent by the previous active LDP
  • Readvertises label bindings
  • Refreshes all forwarding entries
  • Processes and responds to any LDP message from its neighbor

When the NSR LDP Support feature is disabled, the active LDP performs the following tasks:

  • Stops checkpointing to the standby LDP
  • Continues to manage all existing sessions

The standby LDP performs the following tasks:

  • Cleans up all session-state information
  • Reverses to the behavior before NSR is enabled

LDP Operating States

When the NSR LDP Support feature is enabled, the Label Distribution Protocol (LDP) operates in the following states:

Initial State

In the initial state, the active Label Distribution Protocol (LDP) process sets up the standby LDP to be ready to support nonstop routing (NSR). The active LDP performs the following tasks:

  • Replicates all TCP sessions used by LDP with the standby LDP
  • Synchronizes all existing session-state information with the standby LDP
  • Synchronizes the LDP database with the standby LDP

LDP could be in the initial state because of one of these conditions:

  • NSR is enabled
  • NSR was enabled and the standby Route Processor (RP) starts up (asymmetric startup)
  • System boots up and NSR is configured (symmetric startup)

Steady State

In the steady state, the active and standby Label Distribution Protocol (LDP) databases are synchronized. The active and standby LDP process the same LDP messages and update their states independently. The standby LDP is ready to take over the active LDP role in a switchover event.

On the active Route Processor (RP), the active LDP performs the following tasks:

  • Continues to manage all existing sessions and checkpoints any significant session event to the standby LDP (such as adjacency delete, session shutdown, timers)
  • Notifies the standby LDP of new adjacencies and neighbors

On the standby RP, the standby LDP performs these tasks:

  • Processes all received messages but does not send any messages to its neighbor
  • Processes checkpoint information from the active LDP
  • Manages session keepalive timers but does not bring down the session if a keepalive timer times out

Post Switchover

In the post switchover state, the standby Label Distribution Protocol (LDP) process takes over the active LDP role while the active Route Processor (RP) is reloading.

Supported NSR Scenarios

The NSR LDP Support feature is supported under the following scenarios:

  • Route Processor (RP) failover or node failure The Label Distribution Protocol (LDP) keeps the session up during an RP or node failover because the LDP adjacency and session-state information between LDP on the active and standby RPs are synchronized. As sessions are created on the active RP, new adjacencies are synchronized to the standby RP. If a standby RP is brought online after sessions are already up (asymmetric startup), LDP synchronizes the existing session-state information from the active to the standby RP.
  • Cisco In-Service Software Upgrade (ISSU) LDP supports Cisco ISSU negotiation between RPs when a standby RP comes online for the MPLS LDP IGP Synchronization feature. Current Cisco ISSU negotiation is not impacted by NSR. For NSR, LDP negotiates messages specific to NSR, which are checkpointed during initial synchronization (adjacency and session-state information).

How to Configure NSR LDP Support

Enabling NSR LDP Support

SUMMARY STEPS

    1.    enable

    2.    configure terminal

    3.    mpls ldp nsr

    4.    exit

    5.    show mpls ldp nsr


DETAILED STEPS
      Command or Action Purpose
    Step 1 enable


    Example:
    Device> enable
     

    Enables privileged EXEC mode.

    • Enter your password if prompted.
     
    Step 2 configure terminal


    Example:
    Device# configure terminal
     

    Enters global configuration mode.

     
    Step 3 mpls ldp nsr


    Example:
    Device(config)# mpls ldp nsr
     

    Enables nonstop routing (NSR) for all Label Distribution Protocol (LDP) sessions for both link and targeted.

     
    Step 4 exit


    Example:
    Device(config)# exit
     

    Returns to privileged EXEC mode.

     
    Step 5 show mpls ldp nsr


    Example:
    Device# show mpls ldp nsr
     

    Displays whether NSR is enabled.

     

    Troubleshooting Tips for NSR LDP Support

    Use the debug mpls ldp nsr command to enable the display of Multiprotocol Label Switching (MPLS) Label Distribution Protocol (LDP) nonstop routing (NSR) debugging events for all NSR sessions or for the specified peer.

    Configuration Examples for NSR LDP Support

    Example: NSR LDP Configuration

    Device 1 Configured with NSR LDP Support

    !
    mpls label range 16 100000 static 100001 1048575
    mpls label protocol ldp
    mpls ldp nsr
    mpls ldp graceful-restart
    !
    interface Loopback0
    ip address 20.20.20.20 255.255.255.255
    no ip directed-broadcast
    no ip mroute-cache
    !                                          
    interface ATM5/1/0
    no ip address
    no ip directed-broadcast
    atm clock INTERNAL
    no atm enable-ilmi-trap
    no atm ilmi-keepalive
    !
    interface ATM5/1/0.5 point-to-point
    ip address 10.12.0.2 255.255.0.0
    no ip directed-broadcast
    no atm enable-ilmi-trap
    pvc 6/100
    encapsulation aal5snap
    mpls label protocol ldp
    mpls ip
    !
    router ospf 100
    log-adjacency-changes
    nsr
    nsf cisco enforce global
    redistribute connected subnets
    network 20.20.20.20 0.0.0.0 area 0
    network 10.12.0.0 0.0.255.255 area 0
    !
    mpls ldp router-id Loopback0 force
    
    
    mpls label range 16 100000 static 100001 1048575
    mpls label protocol ldp
    mpls ldp graceful-restart
    !
    interface Loopback0
    ip address 10.17.17.17 255.255.255.255
    no ip directed-broadcast
    !
    interface ATM4/0/0
    no ip address
    no ip directed-broadcast
    no ip mroute-cache
    atm clock INTERNAL
    atm sonet stm-1
    no atm enable-ilmi-trap
    no atm ilmi-keepalive
    !
    interface ATM4/0/0.5 point-to-point
    ip address 10.12.0.1 255.255.0.0
    no ip directed-broadcast
    no atm enable-ilmi-trap
    pvc 6/100
    encapsulation aal5snap
    mpls label protocol ldp
    mpls ip
    !
    interface POS5/1/0
    ip address 10.11.0.1 255.255.0.0
    no ip directed-broadcast
    encapsulation ppp
    mpls label protocol ldp
    mpls ip
    no peer neighbor-route
    clock source internal
    !
    router ospf 100
    log-adjacency-changes
    nsr
    nsf enforce global
    redistribute connected
    network 10.11.0.0 0.0.255.255 area 0
    network 10.12.0.0 0.0.255.255 area 0
    network 10.17.17.17 0.0.0.0 area 0
    !
    mpls ldp router-id Loopback0 force
    
    

    Additional References for NSR LDP Support

    Related Documents

    Related Topic Document Title

    Cisco IOS commands

    Cisco IOS Master Command List, All Releases

    MPLS commands

    Cisco IOS Multiprotocol Label Switching Command Reference

    LDP configuration tasks

    MPLS Label Distribution Protocol Configuration Guide

    Technical Assistance

    Description Link

    The Cisco Support and Documentation website provides online resources to download documentation, software, and tools. Use these resources to install and configure the software and to troubleshoot and resolve technical issues with Cisco products and technologies. Access to most tools on the Cisco Support and Documentation website requires a Cisco.com user ID and password

    http:/​/​www.cisco.com/​cisco/​web/​support/​index.html

    Feature Information for NSR LDP Support

    The following table provides release information about the feature or features described in this module. This table lists only the software release that introduced support for a given feature in a given software release train. Unless noted otherwise, subsequent releases of that software release train also support that feature.

    Use Cisco Feature Navigator to find information about platform support and Cisco software image support. To access Cisco Feature Navigator, go to www.cisco.com/​go/​cfn. An account on Cisco.com is not required.

    Table 1 Feature Information for NSR LDP Support

    Feature Name

    Releases

    Feature Information

    NSR LDP Support

    Cisco IOS XE Release 3.9S

    The NSR LDP Support feature allows the Label Distribution Protocol (LDP) to continue to operate across a node failure without losing peer sessions. Before the introduction of nonstop routing (NSR), LDP sessions with peers reset if a Route Processor (RP) failover or an Cisco In-Service Software Upgrade (ISSU) occurred. When peers reset, traffic is lost while the session is down. Protocol reconvergence occurs after the session is reestablished.

    In Cisco IOS XE Release 3.9S, this feature was introduced and implemented on Cisco ASR 1000 Series Routers.

    The following commands were introduced or modified: clear mpls ldp nsr statistics, debug mpls ldp nsr, mpls ldp nsr, show mpls ldp nsr, show mpls ldp neighbor, show mpls ldp parameters.