we have cisco 4000 switch connected to router.
it went down today.
check the logs on router
Nov 5 09:38:46.901 EST: %LINEPROTO-5-UPDOWN: Line protocol on Interface GigabitEthernet8/2, changed state to down
Nov 5 09:38:46.897 EST: %UDLD-SP-4-UDLD_PORT_DISABLED: UDLD disabled interface Gi8/2, unidirectional link detected
Nov 5 09:38:46.897 EST: %PM-SP-4-ERR_DISABLE: udld error detected on Gi8/2, putting Gi8/2 in err-disable state
Nov 5 09:38:46.957 EST: %LINK-3-UPDOWN: Interface GigabitEthernet8/2, changed state to down
Nov 5 09:38:46.917 EST: %LINEPROTO-SP-5-UPDOWN: Line protocol on Interface GigabitEthernet8/2, changed state to down
Nov 5 09:38:46.957 EST: %LINK-SP-3-UPDOWN: Interface GigabitEthernet8/2, changed state to down
Nov 5 09:38:47.005 EST: %PM-SP-STDBY-4-ERR_DISABLE: udld error detected on Gi8/2, putting Gi8/2 in err-disable state
why this happened
Thats part of explanation, there are some operating characteristics you need to be aware of.
For example, if the switch on either end of a UDLD aggressive link experience high CPU, the link will have a high risk of dropping as UDLD messages will be missed.
In this manner, it works almost like a heartbeat. This may or may not be desireable, you'll see this happen if a switch flakes out and introduces an STP loop, CPU's will spike, and UDLD will drop links in response. Note this has nothing to do with unidirectional links.
I see recommendations here for error timeouts. Be careful with these, this is a feature that cuts both ways. 1) it can restore and error disabled port for you automatically, but 2) it can restore a port that may have error'ed out for a good reason and should not be re-introduced into the network without a human looking at the link firt...simply, putting it back may do more harm.