Cisco ASR 9000 Series Aggregation Services Router System Management Configuration Guide, Release 5.1.x
Implementing CDP
Downloads: This chapterpdf (PDF - 1.34MB) The complete bookPDF (PDF - 5.04MB) | Feedback

Implementing CDP

Cisco Discovery Protocol (CDP) is a media- and protocol-independent protocol that runs on all Cisco-manufactured equipment including routers, bridges, access and communication servers, and switches. Using CDP, you can view information about all the Cisco devices that are directly attached to the device.

This module describes the new and revised tasks you need to implement CDP on your Cisco IOS XR network.

For more information about CDP on the Cisco IOS XR software and complete descriptions of the CDP commands listed in this module, refer to Related Documents. To locate documentation for other commands that might appear in the course of running a configuration task, search online in Cisco ASR 9000 Series Aggregation Services Router Commands Master List.

Table 1 Feature History for Implementing CDP on Cisco IOS XR Software

Release

Modification

Release 3.7.2

This feature was introduced.

This module contains the following topics:

Prerequisites for Implementing CDP

You must be in a user group associated with a task group that includes the proper task IDs. The command reference guides include the task IDs required for each command. If you suspect user group assignment is preventing you from using a command, contact your AAA administrator for assistance.

Information About Implementing CDP

CDP is primarily used to obtain protocol addresses of neighboring devices and discover the platform of those devices. CDP can also be used to display information about the interfaces your router uses. CDP is media- and protocol-independent, and runs on all equipment manufactured by Cisco, including routers, bridges, access servers, and switches.

Use of SNMP with the CDP MIB allows network management applications to learn the device type and the SNMP agent address of neighboring devices and to send SNMP queries to those devices. CDP uses the CISCO-CDP-MIB.

CDP runs on all media that support Subnetwork Access Protocol (SNAP), including LAN, Frame Relay, and ATM physical media. CDP runs over the data link layer only. Therefore, two systems that support different network-layer protocols can learn about each other.

Each device configured for CDP sends periodic messages, known as advertisements, to a multicast address. Each device advertises at least one address at which it can receive SNMP messages. The advertisements also contain time-to-live, or hold-time, information, which indicates the length of time a receiving device holds CDP information before discarding it. Each device also listens to the periodic CDP messages sent by others to learn about neighboring devices and determine when their interfaces to the media go up or down.

CDP Version-2 (CDPv2) is the most recent release of the protocol and provides more intelligent device tracking features. These features include a reporting mechanism that allows for more rapid error tracking, thereby reducing costly downtime. Reported error messages can be sent to the console or to a logging server, and can cover instances of unmatching native VLAN IDs (IEEE 802.1Q) on connecting ports, and unmatching port duplex states between connecting devices.

CDPv2 show commands can provide detailed output on VLAN Trunking Protocol (VTP) management domain and duplex modes of neighbor devices, CDP-related counters, and VLAN IDs of connecting ports.

Type-length-value fields (TLVs) are blocks of information embedded in CDP advertisements. Table 1 summarizes the TLV definitions for CDP advertisements.

Table 2 Type-Length-Value Definitions for CDPv2
TLV Definition

Device-ID TLV

Identifies the device name in the form of a character string.

Address TLV

Contains a list of network addresses of both receiving and sending devices.

Port-ID TLV

Identifies the port on which the CDP packet is sent.

Capabilities TLV

Describes the functional capability for the device in the form of a device type; for example, a switch.

Version TLV

Contains information about the software release version on which the device is running.

Platform TLV

Describes the hardware platform name of the device, for example, Cisco 4500.

VTP Management Domain TLV

Advertises the system’s configured VTP management domain name-string. Used by network operators to verify VTP domain configuration in adjacent network nodes.

Native VLAN TLV

Indicates, per interface, the assumed VLAN for untagged packets on the interface. CDP learns the native VLAN for an interface. This feature is implemented only for interfaces that support the IEEE 802.1Q protocol.

Full/Half Duplex TLV

Indicates status (duplex configuration) of CDP broadcast interface. Used by network operators to diagnose connectivity problems between adjacent network elements.

How to Implement CDP on Cisco IOS XR Software

Enabling CDP

To enable CDP, you must first enable CDP globally on the router and then enable CDP on a per-interface basis. This task explains how to enable CDP globally on the router and then enable CDP on an interface.

SUMMARY STEPS

    1.    configure

    2.    cdp

    3.    interface type interface-path-id

    4.    cdp

    5.    Use the commit or end command.


DETAILED STEPS
      Command or Action Purpose
    Step 1 configure


    Example:
    RP/0/RSP0/CPU0:router# configure
     

    Enters global configuration mode.

     
    Step 2 cdp


    Example:
    RP/0/RSP0/CPU0:router(config)# cdp
     

    Enables CDP globally.

     
    Step 3 interface type interface-path-id


    Example:
    RP/0/RSP0/CPU0:router(config)# interface pos 0/0/0/1
     

    Enters interface configuration mode.

     
    Step 4 cdp


    Example:
    RP/0/RSP0/CPU0:router(config-if)# cdp
     

    Enables CDP on an interface.

     
    Step 5 Use the commit or end command.  

    commit—Saves the configuration changes, and remains within the configuration session.

    end—Prompts user to take one of these actions:
    • Yes— Saves configuration changes and exits the configuration session.
    • No—Exits the configuration session without committing the configuration changes.
    • Cancel—Remains in the configuration mode, without committing the configuration changes.
     

    Modifying CDP Default Settings

    This task explains how to modify the default version, hold-time setting, and timer settings.


    Note


    The commands can be entered in any order.


    SUMMARY STEPS

      1.    configure

      2.    cdp advertise v1

      3.    cdp holdtime seconds

      4.    cdp timer seconds

      5.    Use the commit or end command.

      6.    (Optional) show cdp


    DETAILED STEPS
        Command or Action Purpose
      Step 1 configure


      Example:
      RP/0/RSP0/CPU0:router# configure
       

      Enters global configuration mode.

       
      Step 2 cdp advertise v1


      Example:
      RP/0/RSP0/CPU0:router(config)# cdp advertise v1
       

      Configures CDP to use only version 1 (CDPv1) in communicating with neighboring devices.

      • By default, when CDP is enabled, the router sends CDPv2 packets. CDP also sends and receives CDPv1 packets if the device with which CDP is interacting does not process CDPv2 packets.
      • In this example, the router is configured to send and receive only CDPv1 packets.
       
      Step 3 cdp holdtime seconds


      Example:
      RP/0/RSP0/CPU0:router(config)# cdp holdtime 30
       

      Specifies the amount of time that the receiving networking device will hold a CDP packet sent from the router before discarding it.

      • By default, when CDP is enabled, the receiving networking device holds a CDP packet for 180 seconds before discarding it.
        Note   

        The CDP hold time must be set to a higher number of seconds than the time between CDP transmissions, which is set with the cdp timer command.

      • In this example, the value of hold-time for the seconds argument is set to 30.
       
      Step 4 cdp timer seconds


      Example:
      RP/0/RSP0/CPU0:router(config)# cdp timer 20
       

      Specifies the frequency at which CDP update packets are sent.

      • By default, when CDP is enabled, CDP update packets are sent at a frequency of once every 60 seconds.
        Note   

        A lower timer setting causes CDP updates to be sent more frequently.

      • In this example, CDP update packets are configured to be sent at a frequency of once every 20 seconds.
       
      Step 5 Use the commit or end command.  

      commit—Saves the configuration changes, and remains within the configuration session.

      end—Prompts user to take one of these actions:
      • Yes— Saves configuration changes and exits the configuration session.
      • No—Exits the configuration session without committing the configuration changes.
      • Cancel—Remains in the configuration mode, without committing the configuration changes.
       
      Step 6 show cdp


      Example:
      RP/0/RSP0/CPU0:router# show cdp
       
      (Optional)

      Displays global CDP information.

      The output displays the CDP version running on the router, the hold time setting, and the timer setting.

       

      Monitoring CDP

      This task shows how to monitor CDP.


      Note


      The commands can be entered in any order.


      SUMMARY STEPS

        1.    show cdp entry {* | entry-name} [protocol | version]

        2.    show cdp interface [type interface-path-id | location node-id]

        3.    show cdp neighbors [type interface-path-id | location node-id] [detail]

        4.    show cdp traffic [location node-id]


      DETAILED STEPS
          Command or Action Purpose
        Step 1 show cdp entry {* | entry-name} [protocol | version]


        Example:
        RP/0/RSP0/CPU0:router# show cdp entry *
         

        Displays information about a specific neighboring device or all neighboring devices discovered using CDP.

         
        Step 2 show cdp interface [type interface-path-id | location node-id]


        Example:
        RP/0/RSP0/CPU0:router# show cdp interface pos 0/0/0/1
         

        Displays information about the interfaces on which CDP is enabled.

         
        Step 3 show cdp neighbors [type interface-path-id | location node-id] [detail]


        Example:
        RP/0/RSP0/CPU0:router# show cdp neighbors
         

        Displays detailed information about neighboring devices discovered using CDP.

         
        Step 4 show cdp traffic [location node-id]


        Example:
        RP/0/RSP0/CPU0:router# show cdp traffic
         

        Displays information about the traffic gathered between devices using CDP.

         

        Examples

        The following is sample output for the show cdp neighbors command:

        RP/0/RSP0/CPU0:router# show cdp neighbors 
          
          Capability Codes: R - Router, T - Trans Bridge, B - Source Route Bridge
                            S - Switch, H - Host, I - IGMP, r - Repeater
           
          Device ID        Local Intrfce   Holdtme  Capability  Platform  Port ID
          router1          Mg0/0/CPU0/0    177      T S         WS-C2924M Fa0/12        
          router2          PO0/4/0/0       157      R           12008/GRP PO0/4/0/1
          

        The following is sample output for the show cdp neighbors command. In this example, the optional type instance arguments are used in conjunction with the detail optional keyword to display detailed information about a CDP neighbor. The output includes information on both IPv4 and IPv6 addresses.

        RP/0/RSP0/CPU0:router# show cdp neighbors POS 0/4/0/0 detail
          
          -------------------------
          Device ID: uut-user
          SysName : uut-user
          Entry address(es):
          IPv4 address: 1.1.1.1
          IPv6 address: 1::1
          IPv6 address: 2::2
          Platform: cisco 12008/GRP, Capabilities: Router
          Interface: POS0/4/0/3
          Port ID (outgoing port): POS0/2/0/3
          Holdtime : 177 sec
          
          Version :
          Cisco IOS XR Software, Version 0.0.0[Default]
          Copyright (c) 2005 by cisco Systems, Inc.
          
          advertisement version: 2
          

        The following is sample output for the show cdp entry command. In this example, the optional entry argument is used to display entry information related to a specific CDP neighbor.

        RP/0/RSP0/CPU0:router# show cdp entry router2
          
          advertisement version: 2
          
          -------------------------
          Device ID: router2
          SysName : router2
          Entry address(es): 
          Platform: cisco 12008/GRP,  Capabilities: Router 
          Interface: POS0/4/0/0
          Port ID (outgoing port): POS0/4/0/1
          Holdtime : 145 sec
          
          Version :
          Cisco IOS XR Software, Version 0.48.0[Default]
          Copyright (c) 2004 by cisco Systems, Inc.
          
          advertisement version: 2
          

        The following is sample output for the show cdp interface command. In this example, CDP information related to Packet over SONET/SDH (POS) interface 0/4/0/0 is displayed.

        RP/0/RSP0/CPU0:router# show cdp interface pos 0/4/0/0
          
          POS0/4/0/0 is Up
            Encapsulation HDLC
            Sending CDP packets every 60 seconds
            Holdtime is 180 seconds
          

        The following is sample output for the show cdp traffic command:

        RP/0/RSP0/CPU0:router# show cdp traffic
          
          CDP counters :
                  Packets output: 194, Input: 99
                  Hdr syntax: 0, Chksum error: 0, Encaps failed: 0
                  No memory: 0, Invalid packet: 0, Truncated: 0
                  CDP version 1 advertisements output: 0, Input: 0
                  CDP version 2 advertisements output: 194, Input: 99
                  Unrecognize Hdr version: 0, File open failed: 0
          

        The following is sample output for the show cdp traffic command. In this example, the optional location keyword and node-id argument are used to display information about the traffic gathered between devices using CDP from the specified node.

        RP/0/RSP0/CPU0:router# show cdp traffic location 0/4/cpu0
          
          CDP counters :
                  Packets output: 16, Input: 13
                  Hdr syntax: 0, Chksum error: 0, Encaps failed: 0
                  No memory: 0, Invalid packet: 0, Truncated: 0
                  CDP version 1 advertisements output: 0, Input: 0
                  CDP version 2 advertisements output: 16, Input: 13
                  Unrecognize Hdr version: 0, File open failed: 0
          

        Configuration Examples for Implementing CDP

        Enabling CDP: Example

        The following example shows how to configure CDP globally and then enable CDP on Packet over SONET/SDH (POS) interface 0/3/0/0:

        cdp
          interface POS0/3/0/0
           cdp
          

        Modifying Global CDP Settings: Example

        The following example shows how to modify global CDP settings. In this example, the timer setting is set to 20 seconds, the hold-time setting is set to 30 seconds, and the version of CDP used to communicate with neighboring devices is set to CDPv1:

        cdp timer 20
          cdp holdtime 30
          cdp advertise v1
          

        The following example shows how to use the show cdp command to verify the CDP global settings:

        RP/0/RSP0/CPU0:router# show cdp
          
          Global CDP information:
                  Sending CDP packets every 20 seconds
                  Sending a holdtime value of 30 seconds
                  Sending CDPv2 advertisements is not enabled
          

        Additional References

        The following sections provide references related to implementing CDP on Cisco IOS XR software.

        Related Documents

        Related Topic

        Document Title

        Cisco IOS XR CDP commands

        CDP Commands on Cisco IOS XR Software module of Cisco ASR 9000 Series Aggregation Services Router System Management Command Reference

        Cisco IOS XR commands

        Cisco ASR 9000 Series Aggregation Services Router Commands Master List

        Getting started with Cisco IOS XR Software

        Cisco ASR 9000 Series Aggregation Services Router Getting Started Guide

        Information about user groups and task IDs

        Configuring AAA Services on Cisco IOS XR Software module of Cisco ASR 9000 Series Aggregation Services Router System Security Configuration Guide

        Standards

        Standards

        Title

        No new or modified standards are supported by this feature, and support for existing standards has not been modified by this feature.

        MIBs

        MIBs

        MIBs Link

        To locate and download MIBs using Cisco IOS XR software, use the Cisco MIB Locator found at the following URL and choose a platform under the Cisco Access Products menu: http:/​/​cisco.com/​public/​sw-center/​netmgmt/​cmtk/​mibs.shtml

        RFCs

        RFCs

        Title

        No new or modified RFCs are supported by this feature, and support for existing RFCs has not been modified by this feature.

        Technical Assistance

        Description

        Link

        The Cisco Technical Support website contains thousands of pages of searchable technical content, including links to products, technologies, solutions, technical tips, and tools. Registered Cisco.com users can log in from this page to access even more content.

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