Unidirectional Link Detection (UDLD) is a data link layer protocol from Cisco Systems to monitor the physical configuration of the cables and detect unidirectional links. UDLD complements the Spanning Tree Protocol which is used to eliminate switching loops.
However, Unidirectional Link failure can cause "traffic blackholing" and loops in the Switch topology.
If two devices, A and B, are connected via a pair of optical fibers, one used for sending from A to B and other for sending from B to A, the link is bidirectional (two-way). If one of these fibers is broken, the link has become one-way or unidirectional. The goal of the UDLD protocol is to detect a broken bidirectional link (e.g. transmitted packets do not arrive at the receiver, or the fibers are connected to different ports).
For each device and for each port, a UDLD packet is sent to the port it links to. The packet contains sender identity information (device and port), and expected receiver identity information (device and port). Each port checks that the UDLD packets it receives contain the identifiers of his own device and port.
UDLD is a Cisco-proprietary protocol but HP, Extreme Networks, and AVAYA all have a similar feature calling it by a different name. HP calls theirs Device Link Detection Protocol (DLDP). Extreme Networks call it Extreme Link Status Monitoring (ELSM) and AVAYA calls theirs, Link-state Tracking. Brocade/Ruckus Networks ICX Switches offer this feature as Uni-Directional Link Detection(UDLD).
Similar functionality in a standardized form is provided as part of the Ethernet OAM protocol that is defined as part of the Ethernet in the First Mile changes to 802.3 (previously 802.3ah). D-Link has their DULD feature built on top of Ethernet OAM function. Brocade devices running Ironware support a proprietary form of UDLD.
The use of UDLD over 10GbE is augmented, as per 802.3ae/D3.2 standard, when a fault is detected in the physical link: