Documente Academic
Documente Profesional
Documente Cultură
UDLD (Unidirectional Link Detection) is Cisco proprietary extension for detecting a mis-configured link. Submit
The idea behind it is pretty strighforward allow two switches to verify if they can both send and receive
data on a point-to-point connection. Consider a network with two switches, A and B connected by two links: A=B. Categories
Naturally, if A is the root of spanning tree, one of the ports on B will be blocking, constantly receiving BPDUs
Select Category
from A. If this link would turn uni-directional and B would start missing those BPDUs, the port will eventually
unblock, forming a loop betwen A and B. Note that the problem with unidirectional links usually occurs on fiber-
optical connections and is not common on UTP (wired) connections, where link pulses are used to monitor the CCIE Bloggers
connection integrity.
Brian Dennis, CCIEx5 #2210
Routing & Sw itching
The confusion about UDLD is that Cisco provides quite unclear description of the feature operations be it on Voice
CatOS or IOS platform. So here is a short overview of how UDLD works. Security
Service Provider
ISP Dial
1) Both UDLD peers (switches) discover each other by exchanging special frames sent to well-known MAC
Brian McGahan, CCIEx4 #8593,
address 01:00:0C:CC:CC:CC. (Naturally, those frames are only understood by Cisco switches). Each switch sends CCDE #2013::13
its own device ID along with the originator port ID and timeout value to its peer. Additionally, a switch echoes back Design
the ID of its neighbor (if the switch does see the neighbor). Since some versions of CatOS and IOS you can Data Center
Routing & Sw itching
change UDLD timers globally. Security
Service Provider
2) If no echo frame with our ID has been seen from the peer for a certain amount of time, the port is suspected to Mark Snow , CCIEx4 #14073
be unidirectional. What happens next depends on UDLD mode of operations. Data Center
Collaboration
3) In Normal mode, if the physical state of port (as reported by Layer 1) is still up, UDLD marks this port as Security
Voice
Undetermined, but does NOT shut down or disable the port, which continues to operate under its current STP
Petr Lapukhov, CCIEx4 #16379,
status. This mode of operations is informational and potentially less disruptive (though it does not prevent STP CCDE #2010::7
loops). You can review the undetermined ports using CLI show commands when troubleshooting the STP issues Design
though. Routing & Sw itching
Security
Service Provider
3) If UDLD is set to Agressive mode, once the switch loses its neighbor it actively tries to re-establish the Voice
relationship by sending a UDLD frame 8 times every 1 second (surpisingly this coincides with TCP keepalives retry
values used by FCIP on Cisco MDS storage switches . If the neighbor does not respond after that, port is
Popular Posts
considered to be unidirectional and brought to Errdisable state. (Note that you can configure errdisable
No posts to display
recovery to make switch automatically recover from such issues)
4) UDLD Aggressive will only brings link to errdisable state when it detects Bidirectional to Unidirectional state
transition. In order for a link to become Bidirectional, UDLD process should first hear an echo packet with its own
ID from a peer on the other side. This prevents link from becoming errdisabled when you configure Aggressive
mode just on one side. The UDLD state of such link will be Unknown.
5) UDLD Aggressive inteoperates with UDLD Normal on the other side of a link. This type of configuration
means that just one side of the link will be errdisabled once Unidirectional condition has been detected.
To complete this overview, remember that UDLD is designed to be a helper for STP. Therefore, UDLD should be
able to detect an unidirectional link before STP would unblock the port due to missed BPDUs. Thus, when you
configure UDLD timers, make sure your values are set so that unidirectional link is detected before STP MaxAge
+ 2xForwardDelay expires. Additionally, notice that UDLD function is similar to STP Loopguard and Bridge
Assurance feature found in newer switches. The benefit of UDLD is that it operates at physical port-level, whereas
STP may not be able to detect a malfunctioning link bundled in an Etherchannel. This is why you normally use all
features together they dont replace but truly complement each other.
[...] I knew enough about UDLD. Petr Lapukhov from Internetwork Expert writes a good explanation about UDLD Modes of Operation.
From this writing I found out that udld aggressive is not enabled by [...]
Reply
I have a question
what if one side the port was set to udld port aggressive, and the other side was set to udld port disable?
Reply
> though who uses the classic STP with defaults nowdays?
Indeed. So can we accept Ciscos best practice recommendation to implement UDLD Aggressive Mode between point-to-point
switch links if were running RPVST+ or MST? I confess to having been a bit mystified by Ciscos documentation of this feature from
day one and this only adds to the confusion:
Most recently, fiber FastEthernet hardware implementations have Far End Fault Indication (FEFI) functions in order to bring the link
down on both sides in these situations. On Gigabit Ethernet, a similar function is provided by link negotiation. Copper ports are
normally not susceptible to this type of issue, as they use Ethernet link pulses to monitor the link. It is important to mention that in
both cases, no forwarding loop occurs because there is no connectivity between the ports. If the link is up on one side and down on
the other, however, blackholing of traffic might occur. Aggressive UDLD is designed to prevent this.
From:
http://www.cisco.com/en/US/tech/tk389/tk621/technologies_tech_note09186a008009477b.shtml
Reply
what would happen if i configure 2 neibhours with diferent udld timers? how should these switches behave?
Reply
At least in my opinion biggest problem with UDLD is its inability to recover from fault state. Sure, it disables port in aggressive mode
and errdisable recovery re-enables port after configured delay. However recovery is done blindly without checking if UDLD partner
has actually come back or not. Port is simply enabled and no further UDLD processing is done on that port until partner has returned
and port has changed to bidirectional mode at least once. After that if new fault has occurred it will take port down as expected. For
this reason UDLD is fine when not using errdisable recovery or running it in non-aggressive mode. Which also means youre
prepared to always manually fix problem and have off-band management access to all of your network equipment. For automated
operations UDLD offers no help making it completely useless for many setups where such monitoring would be needed (dumb
fiber transceivers, EoMPLS etc). Based on comments where people claim they use UDLD successfully makes me believe they have
never actually tested different fault scenarios and simply assume it will function properly when needed.
Reply
kk
Additionally, loop guard does not work on shared links or in situations where the link has been unidirectional since the link-up. In the
last case, the port never receives BPDU and becomes designated. Because this behaviour could be normal, this particular case is
not covered by loop guard. UDLD provides protection against such a scenario.
Reply
@kk
I know this post is old but just to clarify, one of the big problems with unidirectional links is the fact that STP loops can form becuase
the switch stops receiving BPDUs. If you only have one link to the site in question to begin with, then you arent gaining much by
turning it on anyway. If you do have multiple links that get shut down due to udld, then you have bigger problems.
Reply
Reply
Hi Guys,
Please correct me if this is wrong , UDLD normal mode will error disable a link if an Empty Echo is received .
I had this situation , I enabled normal udld and still some ports get disabled because of the UDLD , I did some research and found
that UDLD normal mode can disable the port in case of receiving Empty Echo .
Reply
UDLD normal mode When it detect undirectional link it will continue to operation but will undetermined and generate syslog
message.
Reply
UDLD normal mode When it detect undirectional link it will continue to operation and generate syslog message.
Reply
In normal mode, if the link state of the port was determined to be bi-directional and the UDLD information times out, no action is
taken by UDLD. The port state for UDLD is marked as undetermined. The port behaves according to its STP state.
Reply
In aggressive mode-If link is up and BPDUs Frames is sending but not receiving in this case UDLT detect from bi-directional link to
undirectional link and will send 8 times echo message in every one second after not receiving any message from Remote then it will
shut its port after that you have to reenble port through mannually
Reply
what would happen if i configure 2 neibhours with diferent udld timers? how should these switches behave?
Reply
this behaviour could be normal, this particular case is not covered by loop guard. UDLD provides protection against such a scenario.
Reply
Leave a Reply
Name (required)
Submit Comment
twitter.com/ine
pdfcrowd.com