UniDirectional Link Detection (UDLD) Protocol

First Published: March 28, 2013

This document describes how to configure the UniDirectional Link Detection (UDLD) protocol on the Cisco ASR 1000 Series Aggregation Services Routers.

Finding Feature Information

Your software release may not support all the features documented in this module. For the latest information about features and caveats, see the release notes document pertaining to your platform and software release. To find information about the features documented in this module and to view a list of the releases in which each feature is supported, see the Feature Information for Configuring UDLD on Cisco ASR 1000 Series Aggregation Services Routers.

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

Contents

Restrictions for the UDLD Protocol

Currently, the UDLD protocol on the Cisco ASR 1000 Series Aggregation Services Routers has the following limitations:

  • High Availability (HA) is not supported, but when the Ethernet port is up and UDLD is enabled on the port, the UDLD automatically performs the detection.
  • Only Gigabit Ethernet, 10 Gigabit Ethernet, and Fast Ethernet interfaces are supported.
  • Supports only the basic UDLD functions.

Information About the UDLD Protocol

These sections describe how UDLD works:

UDLD Overview

The Cisco-proprietary UDLD protocol allows the devices connected through fiber optic or copper (for example, Category 5 cabling) Ethernet cables that are connected to the LAN ports to monitor the physical configuration of the cables and detect whether a unidirectional link exists. When a unidirectional link is detected, the UDLD shuts down the affected LAN port and alerts the corresponding user, because unidirectional links cause a variety of problems, including spanning tree topology loops.

UDLD is a Layer 2 protocol that works with the Layer 1 protocols to determine the physical status of a link. In Layer 1, auto negotiation takes care of physical signaling and fault detection. UDLD performs tasks that auto negotiation cannot perform, such as detecting the identities of neighbors and shutting down misconnected LAN ports. When you enable both auto negotiation and UDLD, the Layer 1 and Layer 2 detections work together to prevent physical and logical unidirectional connections and the malfunctioning of other protocols.

A unidirectional link occurs whenever the traffic transmitted by a local device over a link is received by a neighbor, but traffic transmitted from the neighbor is not received by the local device. If one of the fiber strands in a pair is disconnected, the link does not stay up as long as the auto negotiation is active. In such a scenario, the logical link is undetermined, and the UDLD does not take any action. If both the fibers are working normally in Layer 1, the UDLD in Layer 2 determines whether those fibers are connected correctly and whether the traffic is flowing bidirectionally between the correct neighbors. This check cannot be performed by auto negotiation because auto negotiation operates in Layer 1.

The Cisco ASR 1000 Series Aggregation Services Routers periodically transmit the UDLD packets to the neighbor devices on LAN ports where UDLD is enabled. If the packets are echoed back within a specific timeframe and they are lacking a specific acknowledgment (echo), the link is flagged as unidirectional and the LAN port is shut down. Devices on both ends of the link must support UDLD for the protocol to successfully identify and disable the unidirectional links.


Note


By default, the UDLD is disabled on all ports to avoid sending unnecessary traffic.

The following figure shows an example of a unidirectional link condition. Switch B successfully receives traffic from Switch A on the port. However, Switch A does not receive traffic from Switch B on the same port. UDLD detects the problem and disables the port.

Figure 1. Unidirectional Link

Configuring the UDLD Aggressive Mode

Configure the UDLD aggressive mode only on the point-to-point link between the network devices that support the UDLD aggressive mode. With UDLD aggressive mode enabled, a port on a bidirectional link that has a UDLD neighbor relationship established stops receiving the UDLD packets. The UDLD tries to re-establish the connection with the neighbor; the port is disabled after eight failed retries.

To prevent spanning tree loops, nonaggressive UDLD with the default interval of 15 seconds is fast enough to shut down a unidirectional link before a blocking port transitions to the forwarding state (with default spanning tree parameters).

When the UDLD aggressive mode is enabled, the UDLD will error disable the ports on the link to prevent the traffic from being discarded under the following scenarios:

  • One side of a link has a port (either Tx and Rx) stuck.
  • One side of a link remains up while the other side of the link has gone down.

Default UDLD Configuration

The following table shows the default UDLD configuration.

Table 1 UDLD Default Configuration

Feature

Default Value

UDLD global enable state

Globally disabled

UDLD aggressive mode

Disabled

UDLD per-port enable state for fiber-optic media

Disabled

UDLD per-port enable state for twisted-pair (copper) media

Disabled on all Ethernet 10/100 and 1000BASE-TX LAN ports

How to Configure the UDLD Protocol

These sections describe how to configure the UDLD protocol:

Enabling UDLD Globally

To globally enable the UDLD on all fiber-optic LAN ports, perform this task:

SUMMARY STEPS

    1.    enable

    2.    configure terminal

    3.    udld {enable | aggressive}


DETAILED STEPS
     Command or ActionPurpose
    Step 1enable


    Example:
    Router# enable
     

    Enables the privileged EXEC mode.

    Enter your password, if prompted.

     
    Step 2configure terminal


    Example:
    Router# configure terminal
     

    Enters the global configuration mode.

     
    Step 3udld {enable | aggressive}

    Example:
    no udld {enable | aggressive}


    Example:
    Router(config)# udld enable
     

    Enables the UDLD globally on fiber-optic LAN ports.

    Note    This command configures only the fiber-optic LAN ports. Individual LAN port configuration overrides the setting of this command.

    Use the no form of this command to disable the UDLD globally on fiber-optic LAN ports.

     

    Enabling UDLD on Individual LAN Interfaces

    To enable the UDLD on individual LAN interfaces, perform this task:

    SUMMARY STEPS

      1.    enable

      2.    configure terminal

      3.    interface type slot/port

      4.    udld port [aggressive]


    DETAILED STEPS
       Command or ActionPurpose
      Step 1enable


      Example:
      Router> enable
       

      Enables the privileged EXEC mode.

      Enter your password, if prompted.

       
      Step 2 configure terminal

      Example:
      Router# configure terminal
       

      Enters the global configuration mode.

       
      Step 3interface type slot/port


      Example:
      Router(config)# interface gigabitethernet2/2
      
       

      Selects the LAN port to configure.

       
      Step 4udld port [aggressive]


      Example:
      no udld port [aggressive]


      Example:
      Router(config)# udld port aggressive
      
       

      Enables UDLD on a specific LAN port. Enter the aggressive keyword to enable the aggressive mode. On a fiber-optic LAN port, this command overrides the udld enable global configuration command setting.

      Use the no form of this command to disable the UDLD on a nonfiber-optic LAN port.

      On fiber-optic LAN ports, the no udld port command reverts the LAN port configuration to the udld enable global configuration command setting.
       

      Disabling UDLD on Fiber-Optic LAN Interfaces

      To disable the UDLD on individual fiber-optic LAN ports, perform this task:

      SUMMARY STEPS

        1.    enable

        2.    configure terminal

        3.    interface type slot/port

        4.    udld port disable


      DETAILED STEPS
         Command or ActionPurpose
        Step 1enable


        Example:
        Router> enable
         

        Enables the privileged EXEC mode.

        Enter your password, if prompted.

         
        Step 2 configure terminal

        Example:
        Router# configure terminal
         

        Enters the global configuration mode.

         
        Step 3interface type slot/port


        Example:
        Router(config)# interface gigabitethernet2/2
        
         

        Selects the LAN port to configure.

         
        Step 4udld port disable


        Example:
        no udld port disable


        Example:
        Router(config)# udld port disable
        
         

        Disables UDLD on a fiber-optic LAN port.

        Use the no form of this command to revert to the udld enable global configuration command setting.

        Note    This command is supported only on the fiber-optic LAN ports.
         

        Configuring the UDLD Probe Message Interval

        To configure the time between UDLD probe messages on ports that are in the advertisement mode and are currently determined to be bidirectional, perform this task:

        SUMMARY STEPS

          1.    enable

          2.    configure terminal

          3.    udld message time interval


        DETAILED STEPS
           Command or ActionPurpose
          Step 1enable


          Example:
          Router> enable
           

          Enables the privileged EXEC mode.

          Enter your password, if prompted.

           
          Step 2 configure terminal

          Example:
          Router# configure terminal
           

          Enters the global configuration mode.

           
          Step 3udld message time interval


          Example:
          no udld message


          Example:
          Router(config)# udld message time 60
          
           

          Configures the time between the UDLD probe messages on the ports that are in the advertisement mode and are currently determined to be bidirectional. Valid values are from 7 to 90 seconds.

          Use the no form of this command to return to the default value (15 seconds).

           

          Resetting the Disabled LAN Interfaces Manually

          To reset all the LAN ports that have been shut down by UDLD, perform this task:

          SUMMARY STEPS

            1.    enable

            2.    udld reset


          DETAILED STEPS
             Command or ActionPurpose
            Step 1enable


            Example:
            Router> enable
             

            Enables the privileged EXEC mode.

            Enter your password, if prompted.

             
            Step 2 udld reset

            Example:
            Router# udld reset
             

            Resets all the LAN ports that have been shut down by UDLD.

             

            Resetting the Disabled LAN Interfaces Automatically

            To automatically reset all the LAN ports that have been shut down by UDLD, perform this task:

            SUMMARY STEPS

              1.    enable

              2.    configure terminal

              3.    udld recovery

              4.    udld recovery interval interval


            DETAILED STEPS
               Command or ActionPurpose
              Step 1enable


              Example:
              Router> enable
               

              Enables the privileged EXEC mode.

              Enter your password, if prompted.

               
              Step 2 configure terminal

              Example:
              Router# configure terminal
               

              Enters the global configuration mode.

               
              Step 3 udld recovery

              Example:
              no udld recovery


              Example:
              Router(config)# udld recovery
               

              Enables the recovery timer for the UDLD error disabled state.

              Use the no form of this command to disable the recovery timer for the UDLD error disabled state.

               
              Step 4 udld recovery interval interval

              Example:
              no udld recovery interval


              Example:
              Router(config)# udld recovery interval 100
               

              Specifies the time to recover from a UDLD error disabled state. Valid values are from 30 to 86400 seconds.

              Use the no form of this command to return to the default value (300 seconds).

               

              Debugging UDLD

              To enable the debugging of an UDLD activity, perform this task:

              SUMMARY STEPS

                1.    enable

                2.    debug udld {events | packets | registries}


              DETAILED STEPS
                 Command or ActionPurpose
                Step 1enable


                Example:
                Router> enable
                 

                Enables the privileged EXEC mode.

                Enter your password, if prompted.

                 
                Step 2debug udld {events | packets | registries}

                Example:
                no debug udld {events | packets | registries}


                Example:
                Router#
                 debug udld events
                 

                Enables the debugging of UDLD process events, packets, or registry events.

                Use the no form of this command to disable the debugging of UDLD process events, packets, or registry events.

                 

                Configuration Examples for UDLD Protocol

                The secion provides the following configuration examples:

                Example: Verifying a UDLD Configuration

                Example: Verifying Information About Neighbors

                Example: Displaying all the UDLD Interface Statuses

                Example: Verifying a UDLD Configuration

                The following example show how to use the show command to verify an UDLD configuration:

                Sample Output for the show udld interface-id Command

                Router# show udld gigabitethernet2/2
                Interface Gi2/2
                ---
                Port enable administrative configuration setting: Follows device default
                Port enable operational state: Enabled
                Current bidirectional state: Bidirectional
                Current operational state: Advertisement
                Message interval: 60
                Time out interval: 5
                No multiple neighbors detected
                	
                	Entry 1
                ---
                	Expiration time: 146
                	Device ID: 1
                	Current neighbor state: Bidirectional
                	Device name: 0050e2826000
                	Port ID: 2/1 
                	Neighbor echo 1 device: SAD03160954
                	Neighbor echo 1 port: Gi1/1
                	Message interval: 5
                	CDP Device name: 066527791
                

                Example: Verifying Information About Neighbors

                The following example shows how to view the information pertaining to neighbors:

                Sample Output for the show udld neighbors Command

                Router# show udld neighbors
                Port     Device Name                    Device ID    Port-ID OperState
                -------- ------------------------------ ------------ ------- --------------
                Gi3/1    SAL0734K5R2                    1            Gi4/1   Bidirectional
                Gi4/1    SAL0734K5R2                    1            Gi3/1   Bidirectional
                

                Example: Displaying all the UDLD Interface Statuses

                The follwing example shows how to display all the UDLD interface statuses:

                Sample Output for the show udld Command

                Router# show udld
                Interface Gi0/0/0
                ---
                Port enable administrative configuration setting: Follows device default
                Port enable operational state: Disabled
                Current bidirectional state: Unknown
                Interface Gi0/0/1
                ---
                Port enable administrative configuration setting: Follows device default
                Port enable operational state: Disabled
                Current bidirectional state: Unknown
                Interface Fa0/1/0
                ---
                Port enable administrative configuration setting: Disabled
                Port enable operational state: Disabled
                Current bidirectional state: Unknown
                Interface Fa0/1/1
                ---
                Port enable administrative configuration setting: Disabled
                Port enable operational state: Disabled
                .
                .
                .
                

                Additional References

                The following sections provide references related to the UniDirectional Link Detection (UDLD) protocol on the Cisco ASR 1000 Series Aggregation Services Routers.

                Related Documents

                Related Topic

                Document Title

                Cisco IOS commands

                Cisco IOS Master Commands List, All Releases

                Cisco IOS Configuration Fundamentals

                Cisco IOS Configuration Fundamentals Command Reference

                Standards

                Standard

                Title

                No new or modified standards are supported by this feature.

                MIBs

                MIB

                MIBs Link

                None

                To locate and download MIBs for selected platforms, Cisco IOS releases, and feature sets, use the Cisco MIB Locator found at the following URL:

                http:/​/​www.cisco.com/​go/​mibs

                RFCs

                RFC1

                Title

                RFC 5171

                Cisco Systems UniDirectional Link Detection (UDLD) Protocol

                1 Not all the supported RFCs are listed.

                Technical Assistance

                Description

                Link

                The Cisco Support website provides extensive online resources, including documentation and tools for troubleshooting and resolving technical issues with Cisco products and technologies.

                To receive security and technical information about your products, you can subscribe to various services, such as the Product Alert Tool (accessed from Field Notices), the Cisco Technical Services Newsletter, and Really Simple Syndication (RSS) Feeds.

                Access to most tools on the Cisco Support website requires a Cisco.com user ID and password.

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

                Feature Information for Configuring UDLD on Cisco ASR 1000 Series Aggregation Services Routers

                The following table lists the features in this module and provides links to specific configuration information. Only features that were introduced or modified in Cisco IOS Release 3.9S or later appear in the table.

                Not all commands may be available in your Cisco IOS software release. For release information about a specific command, see the corresponding command reference documentation.

                Use the Cisco Feature Navigator to find information about platform support and software image support. The Cisco Feature Navigator enables you to determine which Cisco IOS and Cisco Catalyst operating system software images support a specific software release, feature set, or platform. To access the Cisco Feature Navigator, go to http:/​/​www.cisco.com/​go/​cfn . An account on Cisco.com is not required.

                Table 2 Feature Information for Configuring UDLD on Cisco ASR 1000 Series Aggregation Services Routers

                Feature Name

                Releases

                Feature Information

                UniDirectional Link Detection (UDLD) protocol

                3.9S

                The Cisco-proprietary UDLD protocol allows devices connected through fiber-optic or copper (for example, Category 5 cabling) Ethernet cables connected to LAN ports to monitor the physical configuration of the cables and detect when a unidirectional link exists. When a unidirectional link is detected, UDLD shuts down the affected LAN port and alerts users. Unidirectional links can cause a variety of problems, including spanning tree topology loops.

                In Cisco IOS XE Release 3.9S, this feature was implemented on the Cisco ASR 1000 Series Aggregation Services Routers.

                The following sections provide information about this feature: