Configuring LLDP and LLDP-MED
This chapter describes how to configure the Link Layer Discovery Protocol (LLDP) and LLDP Media Endpoint Discovery (LLDP-MED)on the Catalyst 4500 series switch.
Note
For complete syntax and usage information for the commands used in this chapter, see the command reference for this release and the "System Management Commands" section in the Cisco IOS Configuration Fundamentals Command Reference, Release 12.2.
This chapter consists of these sections:
•
Understanding LLDP and LLDP-MED
•
Configuring LLDP and LLDP-MED
•
Monitoring and Maintaining LLDP and LLDP-MED
Understanding LLDP and LLDP-MED
This section contains this conceptual information:
•
Understanding LLDP
•
Understanding LLDP-MED
Understanding LLDP
The Cisco Discovery Protocol (CDP) is a device discovery protocol that runs over Layer 2 (the data link layer) 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 connected to the network.
To support non-Cisco devices and to allow for interoperability between other devices, the switch supports IEEE 802.1AB LLDP. LLDP is a neighbor discovery protocol that is used for 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 supports a set of attributes that it uses to discover neighbor devices. These attributes contain type, length, and value descriptions and are referred to as TLVs. LLDP supported devices can use TLVs to receive and send information to their neighbors. Details such as configuration information, device capabilities, and device identity can be advertised using this protocol.
The switch supports the following basic management TLVs, which are optional:
•
Port description TLV
•
System name TLV
•
System description TLV
•
System capabilities TLV
•
Management address TLV
These organizationally-specific LLDP TLVs are also advertised to support LLDP-MED:
•
Port VLAN ID TLV ((IEEE 802.1 organizationally specific TLVs)
•
MAC/PHY configuration/status TLV(IEEE 802.3 organizationally specific TLVs)
Understanding LLDP-MED
LLDP for Media Endpoint Devices (LLDP-MED) is an extension to LLDP that operates between endpoint devices such as IP phones and network devices such as switches. It specifically provides support for voice over IP (VoIP) applications and provides additional TLVs for capabilities discovery, network policy, Power over Ethernet, and inventory management. By default, all LLDP-MED TLVs are enabled.
LLDP-MED supports these TLVs:
•
LLDP-MED capabilities TLV
Allows LLDP-MED endpoints to determine the capabilities that the connected device supports and what capabilities the device has enabled.
•
Network policy TLV
Allows both network connectivity devices and endpoints to advertise VLAN configurations and associated Layer 2 and Layer 3 attributes for the specific application on that port. For example, the switch can notify a phone of the VLAN number that it should use. The phone can connect into any switch, obtain its VLAN number, and then start communicating with the call control
•
Power management TLV
Enables advanced power management between LLDP-MED endpoint and network connectivity devices. Allows switches and phones to convey power information, such as how the device is powered, power priority, and how much power the device needs.
Note
Power Management TLV only exchanges power information; it does not perfornm power negotiation, which is handled by CDP.
•
Inventory management TLV
Allows an endpoint to send detailed inventory information about itself to the switch, including information hardware revision, firmware version, software version, serial number, manufacturer name, model name, and asset ID TLV.
Note
A switch cannot send LLDP and LLDP-MED simultaneously to an end point device. By default, a network device sends only LLDP packets until it receives LLDP-MED packets from an endpoint device. The network device then sends LLDP-MED packets until it receives only LLDP packets.
Configuring LLDP and LLDP-MED
This section contains this configuration information:
•
Default LLDP Configuration
•
Configuring LLDP Characteristics
•
Disabling and Enabling LLDP Globally
•
Disabling and Enabling LLDP on an Interface
•
Configuring LLDP-MED TLVs
Default LLDP Configuration
Table 25-1 shows the default LLDP configuration. To change the default settings, use the LLDP global configuration and LLDP interface configuration commands.
Table 25-1 Default LLDP Configuration
|
|
LLDP global state |
Disabled |
LLDP holdtime (before discarding) |
120 seconds |
LLDP timer (packet update frequency) |
30 seconds |
LLDP reinitialization delay |
2 seconds |
LLDP tlv-select |
Enabled to send and receive all TLVs. |
LLDP interface state |
Enabled |
LLDP receive |
Enabled |
LLDP transmit |
Enabled |
LLDP med-tlv-select |
Enabled to send all LLDP-MED TLVs |
Configuring LLDP Characteristics
You can configure the frequency of LLDP updates, the amount of time to hold the information before discarding it, the initialization delay time. You can also select the LLDP and LLDP-MED TLVs for sending and receiving.
To configure these characteristics, perform the follow:
Note
Steps 2 through 5 can be performed in any order.
|
|
|
Step 1 |
Switch# configure terminal
|
Enters global configuration mode. |
Step 2 |
Switch(config)# lldp holdtime
seconds
|
(Optional) Specifies the amount of time a receiving device should hold the information sent by your device before discarding it. The range is 0 to 65535 seconds; the default is 120 seconds. |
Step 3 |
Switch(config)# lldp reinit
|
(Optional) Specific the delay time in seconds for LLDP to initialize on any interface. The range is 2 to 5 seconds; the default is 2 seconds. |
Step 4 |
Switch(config)# lldp timer seconds
|
(Optional) Sets the transmission frequency of LLDP updates in seconds. The range is 5 to 65534 seconds; the default is 30 seconds. |
Step 5 |
Switch(config)# lldp tlv-select
|
(Optional) Specifies the LLDP TLVs to send or receive. |
Step 6 |
|
Returns to privileged EXEC mode. |
Step 7 |
Switch# copy running-config
startup-config
|
Saves your entries in the configuration file. |
Step 8 |
Switch# lldp med-tlv-select
|
(Optional) Specifies the LLDP-MED TLVs to send or receive. |
Note
Use the no form of each of the LLDP commands to return to the default setting.
This example shows how to configure a holdtime of 120 second, a delay time of 2 seconds and an update frequency of 30:
Switch# configure terminal
Switch(config)# lldp holdtime 120
Switch(config)# lldp reinit 2
Switch(config)# lldp timer 30
This example shows how to transmit only LLDP packets:
switch# configure terminal
siwtch(config)# no lldp receive
If you want to receive LLDP packets again, do the following:
switch# configure terminal
siwtch(config)# lldp receive
For additional LLDP show commands, see the "Monitoring and Maintaining LLDP and LLDP-MED" section.
Disabling and Enabling LLDP Globally
Note
LLDP is disabled by default.
To disable LLDP globally, do the following:
|
|
|
Step 1 |
Switch# configure terminal
|
Enters global configuration mode. |
Step 2 |
Switch(config)# no lldp run
|
Disables LLDP. |
Step 3 |
|
Returns to privileged EXEC mode. |
To enable LLDP once it has been disabled, do the following:
|
|
|
Step 1 |
Switch# configure terminal |
Enters global configuration mode. |
Step 2 |
Switch(config)# lldp run |
Enables LLDP. |
Step 3 |
Switch# end |
Returns to privileged EXEC mode. |
This example shows how to globally disable LLDP.
Switch# configure terminal
Switch(config)# no lldp run
Switch(config)# end
This example shows how to globally enable LLDP.
Switch# configure terminal
Disabling and Enabling LLDP on an Interface
LLDP is disabled globally on all supported interfaces. You must enable LLDP globally to allow a device to send LLDP packets. However, no changes are required at the interface level.
You can configure the interface to selectively not to send and receive LLDP packets with the
no lldp transmit and no lldp receive commands.
Note
If the interface is configured as a tunnel port, LLDP is automatically disabled.
To disable LLDP on an interface, do the following:
|
|
|
Step 1 |
Switch# configure terminal |
Enters global configuration mode. |
Step 2 |
Switch(config)# interface interface-id |
Specifies the interface on which you are disabling LLDP, and enter interface configuration mode. |
Step 3 |
Switch(config-if)# no lldp transmit |
Disallows sending LLDP packets on the interface. |
Step 4 |
Switch(config-if)# no lldp receive |
Disallows receiving LLDP packets on the interface. |
Step 5 |
Switch(config-if)# end |
Returns to privileged EXEC mode. |
Step 6 |
Switch# copy running-config startup-config |
Saves your entries in the configuration file. |
To enable LLDP on an interface once it has been disabled, do the following:
|
|
|
Step 1 |
Switch# configure terminal |
Enters global configuration mode. |
Step 2 |
Switch(config# interface interface-id |
Specifies the interface on which you are enabling LLDP, and enter interface configuration mode. |
Step 3 |
Switch(config-if)# lldp transmit |
Sends LLDP packets on the interface. |
Step 4 |
Switch(config-if)# lldp receive |
Receives LLDP packets on the interface. |
Step 5 |
Switch(config-if)# end |
Returns to privileged EXEC mode. |
Step 6 |
Switch# copy running-config startup-config |
Saves your entries in the configuration file. |
This example shows how to enable LLDP on an interface.
Switch# configure terminal
Switch(config)# interface GigabitEthernet 1/1
Switch(config-if)# lldp transmit
Switch(config-if)# lldp receive
Configuring LLDP-MED TLVs
By default, the switch only sends LLDP packets until it receives LLDP-MED packets from the end device. The switch continues to send LLDP-MED packets until it only receives LLDP packets.
By using the lldp interface configuration command, you can configure the interface not to send the TLVs listed in Table 25-2.
Table 25-2 LLDP-MED TLVs
|
|
inventory-management |
LLDP-MED inventory management TLV |
location |
LLDP-MED location TLV |
network-policy |
LLDP-MED network policy TLV |
power-management |
LLDP-MED power management TLV |
To disable a TLV on an interface, do the following:
|
|
|
Step 1 |
Switch# configure terminal |
Enters global configuration mode. |
Step 2 |
Switch(config# interface interface-id |
Specifies the interface on which you are configuring a LLDP-MED TLV, and enter interface configuration mode. |
Step 3 |
Switch(config-if)# no lldp med-tlv-select tlv |
Specifies the TLV to disable. |
Step 4 |
Switch(config-if)# end |
Returns to privileged EXEC mode. |
Step 5 |
Switch# copy running-config startup-config |
(Optional) Saves your entries in the configuration file. |
To enable a TLV on an interface, do the following:
|
|
|
Step 1 |
Switch# configure terminal |
Enters global configuration mode. |
Step 2 |
Switch(config# interface interface-id |
Specifies the interface on which you are configuring an LLDP-MED TLV, and enter interface configuration mode. |
Step 3 |
Switch(config-if)# lldp med-tlv-select tlv |
Specifies the TLV to enable. |
Step 4 |
Switch(config-if)# end |
Returns to privileged EXEC mode. |
Step 5 |
Switch# copy running-config startup-config |
(Optional) Saves your entries in the configuration file. |
This example shows how to enable a TLV on an interface when it has been disabled.
Switch# configure terminal
Switch(config)# interface GigabitEthernet1/0/1
Switch(config-if)# lldp med-tlv-select inventory management
Monitoring and Maintaining LLDP and LLDP-MED
To monitor and maintain LLDP and LLDP-MED on your device, perform one or more of the following tasks, beginning in privileged EXEC mode:
|
|
clear lldp counters |
Resets the traffic and error counters to zero. |
clear lldp table |
Deletes the LLDP table of information about neighbors. |
show lldp |
Displays global information, such as frequency of transmissions, the holdtime for packets being sent, and the delay time for LLDP to initialize on an interface. |
show lldp entry entry-name |
Displays information about a specific neighbor. You can enter an asterisk (*) to display all neighbors, or you can enter the name of the neighbor about which you want information. |
show lldp errors |
Displays LLDP computational errors and overflows. |
show lldp interface [interface-id] |
Displays information about interfaces where LLDP is enabled. You can limit the display to the interface about which you want information. |
show lldp neighbors [interface-id] [detail] |
Displays information about neighbors, including device type, interface type and number, holdtime settings, capabilities, and port ID. You can limit the display to neighbors of a specific interface or expand the display to provide more detailed information. |
show lldp traffic |
Displays LLDP counters, including the number of packets sent and received, number of packets discarded, and number of unrecognized TLVs. |