UDLD(UnDirectional Link Detection,单向链路检测)是一个二层协议,当一个单向连接存在时,它通过光纤或者以太网双绞线电缆来检测关于电缆侦听的物理配置。所有的连接设备必须支持UDLD,这个协议成功地定义和禁用了单向连接。当UDLD发现一个单向连接时,它提醒并禁用被影响到的端口。单向连接可以引起多种问题,包括生成树拓扑结构。
10.10.1  UDLD的默认配置
UDLD是Cisco的私有二层协议,用于检测链路的单向问题。如果物理层是up,但链路层是down,这时候就需要UDLD去检测链路是否真的已经up。当AB两端都配置好UDLD后,A给B发送一个包含自己port id的UDLD帧,B收到后会返回一个UDLD帧,并在其中包含了收到的A的port id,当A接收到这个帧并发现自己的port id也在其中后,认为这条链路是好的。反之就变成err-disable状态了。假设A配置了UDLD,而B没有配置UDLD,A给B发送一个包含自己port id的帧,B收到后并不知道这个帧是什么,也就不会返回一个包含A的port id的UDLD帧,那么,这时候A就认为这条链路是一个单向链路,自然也就变成err-disable状态了。
UDLD的默认配置见表10-11。
表10-11  UDLD的默认配置



UDLD : 单向链路监测协议
用途是能够检测链路是否存在链路上的单向,避免出现环路。我们知道,full duplex的端口都能同时发送和接受包(1236四条线,当其中任意一条线损换的话,就会引起单向链路的问题)。特别是在STP环境中,如果由于链路问题而block端口不再收到BPDU包(发送链路没有问题),端口就会进入forwarding状态,从而造成环路。
 
配置方法
全局模式下打开udld
Vega> (enable) set udld enable
UDLD enabled globally
验证udld是否打开 
Vega> (enable) show udld
UDLD: enabled
Message Interval: 15 seconds
在指定的端口上打开udld功能
Vega> (enable) set udld enable 1/2
UDLD enabled on port 1/2
 
show udld port查看在那些端口上打开了udld
Vega> (enable) show udld port
UDLD : enabled
Message Interval : 15 seconds
Port Admin Status Aggressive Mode Link State
-------- ------------ --------------- ----------------
1/1 enabled disabled undetermined
1/2 enabled disabled bidirectional
 
指定某个端口使用Aggressive UDLD
Vega> (enable) set udld aggressive-mode enable 1/2
Aggressive UDLD enabled on port 1/2.
Vega> (enable) show udld port 1/2
UDLD : enabled
Message Interval : 15 seconds
Port Admin Status Aggressive Mode Link State
-------- ------------ --------------- ----------------
1/2 enabled enabled undetermined
下面的命令改变udld默认时间
Vega> (enable) set udld interval 10
UDLD message interval set to 10 seconds
可以指定7-90秒,默认15秒

特性

默认配置

UDLD全局启用状态

全局禁用

UDLD光纤媒体

在所有Ethernet fiber-optic端口禁用

UDLD双绞线媒体

在所有10/100MB以太网和1000BASE-TX端口禁用

UDLD***模式

禁用