Configuring LLDP
This chapter describes how to configure the Link Layer Discovery Protocol (LLDP) in order to discover other devices on the local network.
Note The Cisco NX-OS release that is running on a managed device may not support all of the features or settings described in this chapter. For the latest feature information and caveats, see the documentation and release notes for your platform and software release.
This chapter includes the following sections:
Information About LLDP
This section includes the following topics:
LLDP Overview
The Cisco Discovery Protocol (CDP) is a device discovery protocol that runs over the data-link layer (Layer 2) on all Cisco-manufactured devices (routers, bridges, access servers, and switches). CDP allows network management applications to automatically discover and learn about other Cisco devices that are connected to the network.
To permit the discovery of non-Cisco devices, the switch also supports the Link Layer Discovery Protocol (LLDP), a vendor-neutral device discovery protocol that is defined in the IEEE 802.1ab standard. LLDP allows network devices to advertise information about themselves to other devices on the network. This protocol runs over the data-link layer, which allows two systems running different network layer protocols to learn about each other.
LLDP is a one-way protocol that transmits information about the capabilities and current status of a device and its interfaces. LLDP devices use the protocol to solicit information only from other LLDP devices.
LLDP supports a set of attributes that it uses to discover other devices. These attributes contain type, length, and value (TLV) descriptions. LLDP devices can use TLVs to send and receive information to other devices on the network. Details such as configuration information, device capabilities, and device identity can be advertised using this protocol.
LLDP advertises the following TLVs by default:
- DCBXP
- Management address
- Port description
- Port VLAN
- System capabilities
- System description
- System name
DCBXP Overview
The Data Center Bridging Exchange Protocol (DCBXP) is an extension of LLDP. It is used to announce, exchange, and negotiate node parameters between peers. DCBXP parameters are packaged into a specific DCBXP TLV. This TLV is designed to provide an acknowledgement to the received LLDP packet. In this way, DCBXP adds a lightweight acknowledgement mechanism on top of LLDP so that any application that needs a request-response semantic from a link-level protocol can make use of DCBXP.
Other applications that need to exchange and negotiate parameters with peer nodes using DCBXP are as follows:
- Priority-based Flow Control (PFC)—PFC is an enhancement to the existing Pause mechanism in Ethernet. It enables Pause based on user priorities or classes of service. A physical link divided into eight virtual links with PFC provides the capability to use Pause on a single virtual link without affecting traffic on the other virtual links. Enabling Pause on a per-user-priority basis allows administrators to create lossless links for traffic requiring no-drop service while retaining packet-drop congestion management for IP traffic.
- Enhanced Transmission Selection (ETS)—ETS enables optimal bandwidth management of virtual links. ETS is also called priority grouping. It enables differentiated treatments within the same priority classes of PFC. ETS provides prioritized processing based on bandwidth allocation, low latency, or best effort, resulting in per-group traffic class allocation. For example, an Ethernet class of traffic may have a high-priority designation and a best effort within that same class. ETS allows differentiation between traffic of the same priority class, thus creating priority groups.
- Application Priority Configuration TLV—Carries information about which VLANs will be used by specific protocols.
Note For more information on the QoS features, see the Cisco Nexus 7000 Series NX-OS Quality of Service Configuration Guide, Release 5.x.
DCBXP is enabled by default, provided LLDP is enabled. When LLDP is enabled, DCBXP can be enabled or disabled using the [ no] lldp tlv-select dcbxp command. DCBXP is disabled on ports where LLDP transmit or receive is disabled.
High Availability
The LLDP feature supports stateless and stateful restarts. After a reboot or supervisor switchover, the running configuration is applied.
For more information on high availability, see the Cisco Nexus 7000 Series NX-OS High Availability and Redundancy Guide, Release 5.x.
Virtualization Support
One instance of LLDP is supported per virtual device context (VDC). You are automatically placed in the default VDC unless you specify otherwise.
For information on VDCs, see the Cisco Nexus 7000 Series NX-OS Virtual Device Context Configuration Guide, Release 5.x.
Licensing Requirements for LLDP
The following table shows the licensing requirements for this feature:
|
|
Cisco NX-OS |
LLDP requires no license. Any feature not included in a license package is bundled with the Cisco NX-OS system images and is provided at no extra charge to you. For a complete explanation of the Cisco NX-OS licensing scheme, see the Cisco NX-OS Licensing Guide. |
Guidelines and Limitations
LLDP has the following configuration guidelines and limitations:
- LLDP must be enabled on the device before you can enable or disable it on any interfaces.
- LLDP is supported only on physical interfaces.
- LLDP can discover up to one device per port.
- LLDP can discover Linux servers, provided they are not using a converged network adapter (CNA). LLDP cannot discover other types of servers.
- DCBXP is not supported for the Cisco Nexus 2000 Series Fabric Extender.
- Beginning with Cisco NX-OS Release 5.2, LLDP is supported for the Cisco Nexus 2000 Series Fabric Extender. LLDP packets can now be sent and received through the Fabric Extender ports for neighbor discovery.
– All LLDP configuration on Fabric Extender ports occurs on the supervisor. LLDP configuration and show commands are not visible on the Fabric Extender console.
– LLDP is not supported for a Fabric Extender-virtual port channel (vPC) connection.
Default Settings
Table 20-1 lists the LLDP default settings.
Table 20-1 LLDP Default Settings
|
|
Global LLDP |
Disabled |
LLDP on interfaces |
Enabled, after LLDP is enabled globally |
LLDP hold time (before discarding) |
120 seconds |
LLDP reinitialization delay |
2 seconds |
LLDP timer (packet update frequency) |
30 seconds |
LLDP TLVs |
Enabled |
LLDP receive |
Enabled, after LLDP is enabled globally |
LLDP transmit |
Enabled, after LLDP is enabled globally |
DCBXP |
Enabled, provided LLDP is enabled |
Configuring LLDP
This section includes the following topics:
Note Cisco NX-OS commands for this feature may differ from Cisco IOS commands for a similar feature.
Enabling or Disabling LLDP Globally
You can enable or disable LLDP globally on a device. You must enable LLDP globally to allow a device to send and receive LLDP packets.
BEFORE YOU BEGIN
Make sure that you are in the correct VDC. To switch VDCs, use the switchto vdc command.
SUMMARY STEPS
1. config t
2. [no] feature lldp
3. (Optional) show running-config lldp
4. (Optional) copy running-config startup-config
DETAILED STEPS
|
|
|
Step 1 |
config t Example: switch# config t Enter configuration commands, one per line. End with CNTL/Z. switch(config)# |
Enters global configuration mode. |
Step 2 |
[no] feature lldp Example: switch(config)# feature lldp |
Enables or disables LLDP on the device. LLDP is disabled by default. |
Step 3 |
show running-config lldp Example: switch(config)# show running-config lldp |
(Optional) Displays the global LLDP configuration. If LLDP is enabled, it shows “feature lldp.” If LLDP is disabled, it shows an “Invalid command” error. |
Step 4 |
copy running-config startup-config Example: switch(config)# copy running-config startup-config |
(Optional) Saves the change persistently through reboots and restarts by copying the running configuration to the startup configuration. |
This example shows how to enable LLDP globally on the device:
Enter configuration commands, one per line. End with CNTL/Z.
switch(config)# feature lldp
Enabling or Disabling LLDP on an Interface
After you globally enable LLDP, it is enabled on all supported interfaces by default. However, you can enable or disable LLDP on individual interfaces or selectively configure an interface to only send or only receive LLDP packets.
Note If the interface is configured as a tunnel port, LLDP is disabled automatically.
BEFORE YOU BEGIN
Make sure that you are in the correct VDC. To switch VDCs, use the switchto vdc command.
Make sure that you have globally enabled LLDP on the device.
SUMMARY STEPS
1. config t
2. interface ethernet slot/port
3. [no] lldp transmit
4. [no] lldp receive
5. (Optional) show lldp interface ethernet slot/port
6. (Optional) copy running-config startup-config
DETAILED STEPS
|
|
|
Step 1 |
config t Example: switch# config t Enter configuration commands, one per line. End with CNTL/Z. switch(config)# |
Enters global configuration mode. |
Step 2 |
interface ethernet slot/port Example: switch(config)# interface ethernet 7/1 switch(config-if) |
Specifies the interface on which you are enabling LLDP and enters the interface configuration mode. |
Step 3 |
[no] lldp transmit Example: switch(config-if)# lldp transmit |
Enables or disables the transmission of LLDP packets on an interface. After you globally enable LLDP, it is enabled on all supported interfaces by default. |
Step 4 |
[no] lldp receive Example: switch(config-if)# lldp receive |
Enables or disables the reception of LLDP packets on an interface. After you globally enable LLDP, it is enabled on all supported interfaces by default. |
Step 5 |
show lldp interface ethernet slot/port Example: switch(config-if)# show lldp interface ethernet 7/1 |
(Optional) Displays the LLDP configuration on the interface. |
Step 6 |
copy running-config startup-config Example: switch(config-if)# copy running-config startup-config |
(Optional) Saves the change persistently through reboots and restarts by copying the running configuration to the startup configuration. |
This example shows how to disable the transmission of LLDP packets on an interface:
switch(config)# interface ethernet 7/1
switch(config-if)# no lldp transmit
Configuring Optional LLDP Parameters
You can configure the frequency of LLDP updates, the amount of time for a receiving device to hold the information before discarding it, and the initialization delay time. You can also select the TLVs to include in LLDP packets.
BEFORE YOU BEGIN
Make sure that you are in the correct VDC. To switch VDCs, use the switchto vdc command.
SUMMARY STEPS
1. config t
2. (Optional) [no] lldp holdtime seconds
3. (Optional) [no] lldp reinit seconds
4. (Optional) [no] lldp timer seconds
5. (Optional) show lldp timers
6. (Optional) [no] lldp tlv-select tlv
7. (Optional) show lldp tlv-select
8. (Optional) copy running-config startup-config
DETAILED STEPS
|
|
|
Step 1 |
config t Example: switch# config t Enter configuration commands, one per line. End with CNTL/Z. switch(config)# |
Enters global configuration mode. |
Step 2 |
[no] lldp holdtime seconds Example: switch(config)# lldp holdtime 200 |
(Optional) Specifies the amount of time in seconds that a receiving device should hold the information sent by your device before discarding it. The range is 10 to 255 seconds; the default is 120 seconds. |
Step 3 |
[no] lldp reinit seconds Example: switch(config)# lldp reinit 5 |
(Optional) Specifies the delay time in seconds for LLDP to initialize on any interface. The range is 1 to 10 seconds; the default is 2 seconds. |
Step 4 |
[no] lldp timer seconds Example: switch(config)# lldp timer 50 |
(Optional) Specifies the transmission frequency of LLDP updates in seconds. The range is 5 to 254 seconds; the default is 30 seconds. |
Step 5 |
show lldp timers Example: switch(config)# show lldp timers |
(Optional) Displays the LLDP hold time, delay time, and update frequency configuration. |
Step 6 |
[no] lldp tlv-select tlv Example: switch(config)# lldp tlv-select system-name |
(Optional) Specifies the TLVs to send and receive in LLDP packets. The available TLVs are dcbxp, management-address, port-description, port-vlan, system-capabilities, system-description, and system-name. All available TLVs are enabled by default. Note For more information about using these TLVs, see the Cisco Nexus 7000 Series NX-OS System Management Command Reference. |
Step 7 |
show lldp tlv-select Example: switch(config)# show lldp tlv-select |
(Optional) Displays the LLDP TLV configuration. |
Step 8 |
copy running-config startup-config Example: switch(config)# copy running-config startup-config |
(Optional) Saves the change persistently through reboots and restarts by copying the running configuration to the startup configuration. |
This example shows how to configure a hold time of 200 seconds, a delay time of 5 seconds, and an update frequency of 50 seconds as well as how to disable the port-vlan TLV:
Enter configuration commands, one per line. End with CNTL/Z.
switch(config)# lldp holdtime 200
switch(config)# lldp reinit 5
switch(config)# lldp timer 50
switch(config)# no lldp tlv-select port-vlan
Verifying the LLDP Configuration
To display the LLDP configuration, perform one of the following tasks:
|
|
show running-config lldp |
Displays the global LLDP configuration. |
show lldp interface ethernet slot / port |
Displays the LLDP interface configuration. |
show lldp timers |
Displays the LLDP hold time, delay time, and update frequency configuration. |
show lldp tlv-select |
Displays the LLDP TLV configuration. |
show lldp dcbx interface ethernet slot / port |
Displays the local DCBX control status. |
show lldp neighbors {detail | interface ethernet slot / port } |
Displays the LLDP neighbor device status. |
show lldp traffic |
Displays the LLDP counters, including the number of LLDP packets sent and received by the device, the number of discarded packets, and the number of unrecognized TLVs. |
show lldp traffic interface ethernet slot / port |
Displays the number of LLDP packets sent and received on the interface. |
Use the clear lldp counters command to clear the LLDP statistics.
Configuration Example for LLDP
This example shows how to enable LLDP on a device; disable LLDP on some interfaces; configure optional parameters such as hold time, delay time, and update frequency; and disable several LLDP TLVs:
Enter configuration commands, one per line. End with CNTL/Z.
switch(config)# feature lldp
switch(config)# interface ethernet 7/9
switch(config-if)# no lldp transmit
switch(config-if)# no lldp receive
switch(config)# interface ethernet 7/10
switch(config-if)# no lldp transmit
switch(config-if)# no lldp receive
switch(config)# lldp holdtime 200
switch(config)# lldp reinit 5
switch(config)# lldp timer 50
switch(config)# no lldp tlv-select port-vlan
switch(config)# no lldp tlv-select system-name
Additional References
For additional information related to implementing LLDP, see the following sections:
Related Documents
|
|
LLDP commands: complete command syntax, command modes, command history, defaults, usage guidelines, and examples |
Cisco Nexus 7000 Series NX-OS System Management Command Reference |
Fabric Extender |
Configuring the Cisco Nexus 2000 Series Fabric Extender |
VDCs |
Cisco Nexus 7000 Series NX-OS Virtual Device Context Configuration Guide, Release 5.x |
Standards
|
|
No new or modified standards are supported by this feature, and support for existing standards has not been modified by this feature. |
— |
Feature History for LLDP
Table 20-2 lists the release history for this feature.
Table 20-2 Feature History for LLDP
|
|
|
LLDP |
5.2(1) |
Added LLDP support for the Cisco Nexus 2000 Series Fabric Extender. |
DCBXP |
5.1(1) |
This feature was introduced. |
LLDP |
5.0(2) |
This feature was introduced. |