13-DLDP操作
本章节下载 (213.73 KB)
目 录
在实际组网中,有时会出现一种特殊的现象——单向链路(即单通)。所谓单向链路是指:本端设备可以通过链路层收到对端设备发送的报文,但对端设备不能收到本端设备的报文。
单向链路分为两种类型:一种是光纤交叉相连,另一种是一条光纤未连接或一条光纤断路。图1-1中交叉的光纤表示光纤接反的情况,图1-2中空心线表示一条光纤未连接或一条光纤断路的情况。
单向链路会引起一系列问题,比如生成树拓扑环路等。
DLDP(Device Link Detection Protocol,设备连接检测协议)可以监控光纤或铜质双绞线(例如,超五类双绞线)的链路状态。如果发现单向链路存在,DLDP会根据用户配置,自动关闭或通知用户手工关闭相关端口,以防止网络问题的发生。
DLDP协议有如下特点:
DLDP是链路层协议,它与物理层协议协同工作来监控设备的链路状态。
物理层的自动协商机制进行物理信号和故障的检测;DLDP进行对端设备的识别、单向链路的识别和关闭不可达端口等工作。
当使能自动协商机制和DLDP后,二者协同工作,可以检测和关闭物理和逻辑的单向连接,并阻止其他协议(如:STP协议)的失效。
如果两端链路在物理层都能独立正常工作,DLDP会在链路层检测这些链路是否正确连接、两端是否可以正确的交互报文。这种检测不能通过自动协商机制实现。
DLDP协议有如下状态:Initial(初始化)、Inactive(未连通)、Active(活动)、Advertisement(通告)、Probe(探测)、Disable(单通)、DelayDown状态。
表1-1 DLDP协议状态
状态 |
说明 |
Initial |
DLDP协议未使能时的初始化状态 |
Inactive |
DLDP协议已使能,但是链路Down时所处的状态 |
Active |
DLDP协议已使能且链路Up,或者清空邻居表项后所处的状态 |
Advertisement |
所有邻居双向连通或者处于Active状态超过5秒后进入的状态,这是一种没有发现单向链路时的比较稳定的状态 |
Probe |
发送探测报文检测链路是否为单向链路。该状态启动Probe发送定时器,为每个需要探测的邻居启动一个Echo等待定时器 |
Disable |
DLDP协议检测到单向链路,或在加强模式下邻居消失情况下的状态。此时DLDP协议不再接收和发送DLDP报文 |
DelayDown |
当DLDP状态处于Active状态、Advertisement状态或Probe状态时,如果收到端口Down事件,不会立即删除邻居、进入Inactive状态,而是先进入临时的DelayDown状态 在该状态下,DLDP邻居信息仍然被保留,同时启动DelayDown定时器 |
DLDP协议工作过程中需要用到如下定时器:
表1-2 DLDP协议中的定时器
定时器 |
说明 |
Advertisement发送定时器 |
发送Advertisement报文的时间间隔,可以通过命令行进行配置 默认状态下,Advertisement发送定时器的时间间隔为10秒 |
Probe发送定时器 |
Probe发送定时器的时间间隔为0.5秒,在Probe状态下每秒发送2个Probe报文 |
Echo等待定时器 |
DLDP状态切换到Probe时启用,超时时间为10秒 如果Echo等待定时器超时,还未收到来自此邻居应答本端的Echo报文,则将本端状态置为单通,并将状态机转到Disable状态,输出日志和跟踪信息,发送Flush报文,并根据用户配置的DLDP Down模式,手动或者自动关闭掉本端端口,同时删除该邻居表项 |
Entry老化定时器 |
每个新邻居加入时都要建立邻居表项,并启用相应的Entry老化定时器 每次收到邻居报文时都会刷新邻居表项,并更新相应的Entry老化定时器 普通模式下:如果Entry老化定时器超时,还未收到邻居发来的报文,则发送带有RSY标记的Advertisement报文,同时删除该邻居表项 加强模式下:如果Entry老化定时器超时,还未收到邻居发来的报文,则启用加强定时器 Entry老化定时器的时间间隔是Advertisement定时器的3倍 |
加强定时器 |
在加强模式下:当Entry老化定时器超时,还未收到邻居发来的报文,则对该邻居启用加强定时器。加强定时器的超时时间为10秒 加强定时器启用后,每秒向相应的邻居发送1个Probe报文,连续发送八个 如果加强定时器超时,还未收到来自此邻居应答本端的Echo报文,则将此本端状态置为单通,并将状态机转到Disable状态,输出日志和跟踪信息,发送Flush报文,并根据用户配置的DLDP Down模式,手动或者自动关闭掉本端端口,同时删除该邻居表项 |
DelayDown定时器 |
当DLDP状态处于Active状态、Advertisement状态或Probe状态时,如果收到端口Down事件,不会立即删除邻居、进入Inactive状态,而是先进入临时的DelayDown状态 在该状态下,DLDP邻居信息仍然被保留,同时启动DelayDown定时器(定时器长度可配置,取值范围为1~5秒) 在该状态下,系统只响应端口Up事件 如果该定时器超时后,系统还没有收到端口Up事件,则删除DLDP邻居信息并进入Inactive状态;如果在定时器超时前收到端口Up事件,则返回到原来的DLDP状态 |
DLDP协议有两种工作模式:普通模式、加强模式。
表1-3 DLDP协议工作模式与邻居表项老化
DLDP协议工作模式 |
老化邻居表时是否主动探测邻居的存在 |
老化邻居表时是否启用Entry老化定时器 |
Entry老化定时器超时时,是否启用加强定时器 |
普通模式 |
不进行主动探测 |
是(Entry老化定时器超时后,直接老化该邻居表项) |
否 |
加强模式 |
进行主动探测 |
是(Entry老化定时器超时后,启用加强定时器) |
是(加强定时器超时后,将本端状态置为单通,并老化该邻居表项) |
(1) 如果使能了DLDP的端口链路状态为Up,DLDP会向对端发送DLDP报文,同时分析处理对端设备发送过来的DLDP报文。DLDP处在不同的状态时发送的报文类型不同。
表1-4 DLDP发送报文类型
DLDP状态 |
发送报文类型 |
Active |
Advertisement报文(包括带有RSY标记和不带RSY标记的) |
Advertisement |
Advertisement报文 |
Probe |
Probe报文 |
(2) DLDP对接收到的报文进行如下分析和处理:
在认证模式下,对报文进行认证。如果报文通不过认证,DLDP丢弃该报文。
对DLDP报文进行处理。
表1-5 对接收到的DLDP报文的处理过程
收到报文类型 |
处理过程 |
||||
Advertisement报文 |
取出邻居信息 |
如果本机上没有该邻居表项,则建立该邻居表项,启动此表项的Entry老化定时器,并把DLDP状态切换到Probe状态 |
|||
如果本机上存在该邻居表项,则刷新此表项的Entry老化定时器 |
|||||
Flush报文 |
删除本机上该邻居表项 |
||||
Probe报文 |
向对端发送包含邻居信息和自己信息的Echo报文 |
如果本机上没有该邻居,则建立该邻居表 |
|||
如果本机上有该邻居的表项,则刷新此表项的Entry老化定时器 |
|||||
Echo报文 |
检查本机状态是否为Probe状态 |
否 |
丢弃该Echo报文 |
||
是 |
检查报文中携带的邻居信息是否和本机相同 |
不同 |
丢弃该Echo报文 |
||
相同 |
将该邻居标志位置为双向连通 |
||||
如果所有邻居状态都为双向连通,则DLDP状态由Probe切换为Advertisement,同时将Echo定时器置为0 |
(3) 如果DLDP没有收到邻居的Echo应答报文,会做如下处理:
表1-6 未收到邻居Echo应答报文时的处理过程
未收到邻居Echo报文 |
处理过程 |
普通模式下,Echo等待定时器超时还未收到 |
将DLDP状态转到Disable,输出日志和跟踪信息,向邻居发送Flush报文,并根据用户配置的DLDP Down模式,手动或者自动关闭掉本端端口。发送RSY信息,同时删除该邻居表项 |
加强模式下,加强定时器超时还未收到 |
链路未连通的情况下DLDP不起作用。
为确保检测出单向链路,要保证两端设备的DLDP处于使能状态、DLDP Advertisement报文发送时间间隔相等、认证方式和密码相同。
DLDP Advertisement报文的时间间隔是可调整的,以便根据不同的网络环境使DLDP对链路失效作出更快的响应。此时间间隔应该小于STP收敛时间的三分之一。如果设定的时间太长,DLDP协议在没有关闭单向链路的情况下已出现STP环路。如果设定的时间太短,会增加网络的流量,减少端口的带宽。通常情况下STP收敛时间为30秒。
DLDP不处理任何LACP事件,DLDP将端口汇聚组中的每条链路视为独立的链路进行处理。
当运行DLDP的两台设备进行对接时,请保证两台设备的软件版本一致,否则DLDP的运行可能出现问题。
表1-7 DLDP基本配置
命令 |
说明 |
|||
进入系统视图 |
system-view |
- |
||
使能DLDP协议 |
全局使能 |
dldp enable |
必选 缺省情况下,DLDP功能处于关闭状态 |
|
端口使能 |
进入以太网端口视图 |
interface interface-type interface-number |
||
端口上使能 |
dldp enable |
|||
设置与对方端口间的认证模式、认证口令 |
dldp authentication-mode { none | simple simple-password | md5 md5-password } |
可选 缺省情况下,认证方式为none |
||
设定所有使能DLDP的端口(处于Advertisement状态时)发送Advertisement报文的时间间隔 |
dldp interval timer-value |
可选 缺省情况下,时间间隔为10秒 |
||
配置DelayDown定时器的超时时间 |
dldp delaydown-timer delaydown-time |
可选 缺省值为1秒 |
||
设置发现单向链路后的操作模式 |
dldp unidirectional-shutdown { auto | manual } |
可选 缺省情况下,发现单向链路后的操作模式为auto |
||
设置DLDP的工作模式 |
dldp work-mode { enhance | normal } |
可选 缺省情况下,DLDP协议工作在普通模式,不能识别单通 |
||
进入以太网端口视图 |
interface interface-type interface-number |
- |
||
配置端口处于强制全双工模式 |
duplex full |
必选 |
||
配置端口处于强制速率下 |
speed speed-value |
必选 |
||
显示使能了DLDP的端口的配置信息 |
display dldp { unit-id | interface-type interface-number } |
该命令可以在任意视图下执行 |
注意:
系统视图下:dldp enable/dldp disable命令用来全局使能/关闭交换机上所有光纤端口的DLDP功能;命令仅对设备上当前已有的光纤端口有效,而对设备后续新增的光纤端口不起作用。
只有本端端口与对方端口设置同样的认证模式和认证口令DLDP协议才能正常工作。
当将DLDP协议的工作模式配置为dldp work-mode normal时,系统只能识别一种类型的单向链路:光纤交叉连接。
当将DLDP协议的工作模式配置为dldp work-mode enhance时,系统能识别两种类型的单向链路:一种是光纤交叉相连,另一种是一条光纤未连接或一条光纤断路。
当设备业务繁忙、CPU利用率较高时,可能会出现DLDP误报的情况。建议用户把DLDP发现单向链路后的操作模式配置为manual,减小DLDP误报造成的影响。
& 说明:
DLDP探测到单向链路、将端口DLDP Down掉后,可以通过重置命令使端口状态恢复,重新进行DLDP探测。
表1-8 DLDP状态重置
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
重置系统DLDP状态 |
dldp reset |
可选 |
进入以太网端口视图 |
interface interface-type interface-number |
- |
重置端口DLDP状态 |
dldp reset |
可选 |
注意:
重置DLDP功能只适用于处于DLDP Down状态的端口。
如图1-3所示:
SwitchA和SwitchB通过两对光纤相连,两台交换机均支持DLDP;
假设SwitchA与SwitchB间出现了光纤接反的情况,DLDP检测出单向链路后,自动断开单向链路;
当网管人员正确连接光纤后,恢复被DLDP Down掉的端口。
(1) 配置SwitchA
# 配置端口工作在强制全双工模式,速率为1000Mbits/s。
<H3CA> system-view
[H3CA] interface gigabitethernet 2/1/3
[H3CA-GigabitEthernet2/1/3] duplex full
[H3CA-GigabitEthernet2/1/3] speed 1000
[H3CA-GigabitEthernet2/1/3] quit
[H3CA] interface gigabitethernet 2/1/4
[H3CA-GigabitEthernet2/1/4] duplex full
[H3CA-GigabitEthernet2/1/4] speed 1000
[H3CA-GigabitEthernet2/1/4] quit
# 全局使能DLDP。
[H3CA] dldp enable
# 设置发送DLDP报文的时间间隔为15秒。
[H3CA] dldp interval 15
# 配置DLDP协议的工作模式为加强模式。
[H3CA] dldp work-mode enhance
# 配置DLDP单向链路操作模式为自动模式。
[H3CA] dldp unidirectional-shutdown auto
# 查看DLDP状态。
[H3CA] display dldp 1
& 说明:
当光纤交叉连接时,可能有两个或三个端口处于Disable状态,剩余端口处于Inactive状态。
当光纤一端连接正确,一端未连接时:
如果是DLDP的工作模式为normal,则有收光的一端处于Advertisement状态,没有收光的一端处于Inactive状态。
如果DLDP的工作模式为enhance,则有收光的一端处于Disable状态,没有收光的一端处于Inactive状态。
# 恢复被DLDP协议Down掉的端口。
[H3CA] dldp reset
(2) 配置SwitchB
SwitchB上的配置与SwitchA上的配置完全一致,此处不再赘述。
& 说明:
要使用DLDP协议检测“一端光纤未接通”情况,必须配置端口工作在强制速率和强制全双工模式下。
若端口处于非强制全双工模式和非强制速率下,此时若一端光纤未接,即使启用了DLDP协议,该协议也不起作用,认为端口处于Down状态。
不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!