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