04-DLDP配置
本章节下载: 04-DLDP配置 (350.21 KB)
目 录
在实际组网中,有时会出现一种特殊的现象——单向链路(即单通)。所谓单向链路是指本端设备可以通过链路层收到对端设备发送的报文,但对端设备不能收到本端设备的报文。单向链路会引起一系列问题,比如生成树拓扑中存在环路等。
以光纤连接为例,单向链路可分为两种类型:一种是光纤交叉相连,另一种是一条光纤未连接或一条光纤断路。如图1-1所示,是正确的光纤连接与上述两种类型单向连接的对比示意。
DLDP(Device Link Detection Protocol,设备链路检测协议)可以监控光纤或铜质双绞线的链路状态。如果发现单向链路存在,DLDP会根据用户配置,自动关闭或通知用户手工关闭相关端口,以防止网络问题的发生。
DLDP是链路层协议,它与物理层协议协同工作来监控设备的链路状态。物理层的自动协商机制进行物理信号和故障的检测;DLDP进行对端设备的识别、单向链路的识别和关闭不可达端口等工作。二者协同工作,可以检测和关闭物理和逻辑的单向连接。如果链路两端在物理层都能独立正常工作,DLDP会在链路层检测这些链路是否正确连接、两端是否可以正确的交互报文。这种检测不能通过物理层的自动协商机制实现。
DLDP协议的状态类型如表1-1所示。
表1-1 DLDP协议状态
状态 |
说明 |
Initial(初始) |
DLDP协议未使能时的初始化状态 |
Inactive(非活动) |
DLDP协议已使能且链路down时所处的状态 |
Active(活动) |
DLDP协议已使能且链路up,或者清空邻居表项后所处的状态 |
Advertisement(通告) |
所有邻居双向连通(two way)或者处于Active状态超过5秒后进入的状态,这是一种没有发现单向链路时的比较稳定的状态 |
Probe(探测) |
收到一个未知邻居的报文后进入的状态,此时将发送探测报文检测链路是否为单向链路。该状态启动Probe发送定时器,为每个需要探测的邻居启动一个Echo等待定时器 |
Disable(单通) |
DLDP协议检测到单向链路,或在加强模式下邻居消失时的状态。此时端口不再接收和发送除DLDPDU以外的报文 |
DelayDown(延迟down) |
当DLDP状态处于Active状态、Advertisement状态或Probe状态时,如果收到端口down事件,不会立即删除邻居、进入Inactive状态,而是先进入临时的DelayDown状态 在该状态下,DLDP邻居信息仍然被保留,同时启动DelayDown定时器 |
DLDP协议工作过程中需要使用到的定时器如表1-2所示。
表1-2 DLDP协议中的定时器
定时器 |
说明 |
Active发送定时器 |
发送带有RSY标记的Advertisement报文的时间间隔(缺省为1秒):即在Active状态下每秒发送1个带RSY标记的Advertisement报文,最多会发送5个报文 |
Advertisement发送定时器 |
发送普通Advertisement报文的时间间隔(缺省为5秒) |
Probe发送定时器 |
发送Probe报文的时间间隔(固定为1秒):即在Probe状态下每秒发送一次、每次发送2个Probe报文,最多会发送10个报文 |
Echo等待定时器 |
在DLDP切换到Probe状态或启动加强探测时启用Echo等待定时器(超时时间为10秒)。若该定时器超时后仍未收到来自邻居应答本端的Echo报文,则将本端的状态置为单通,并将状态机转到Disable状态,发送Disable报文,并根据用户配置的DLDP Down模式,提示用户手动或者自动关闭本端口,同时删除该邻居表项 |
邻居老化定时器 |
每个新邻居加入时都要建立邻居表项,并启用相应的邻居老化定时器,当收到邻居报文时刷新相应的邻居表项和邻居老化定时器: l 在普通模式下,若该定时器超时后仍未收到邻居发来的报文,则发送带有RSY标记的Advertisement报文,同时删除该邻居表项 l 在加强模式下,若该定时器超时后仍未收到邻居发来的报文,则启用加强定时器 邻居老化定时器的超时时间是Advertisement定时器的3倍 |
加强定时器 |
在加强模式下,若邻居老化定时器超时后仍未收到邻居发来的报文,则对该邻居启用加强定时器(超时时间为1秒)。在该定时器启用之后,每秒向邻居发送1个Probe报文,会连续发送8次 |
DelayDown定时器 |
当DLDP处于Active、Advertisement或Probe状态时,如果收到端口down事件,不会立即删除邻居并进入Inactive状态,而是先进入DelayDown状态并启动DelayDown定时器(此时仍保留DLDP邻居信息,且只响应端口up事件): l 若该定时器超时后仍未收到端口up事件,则删除DLDP邻居信息并进入Inactive状态 l 若该定时器超时前收到了端口up事件,则返回到原来的DLDP状态 |
恢复探测定时器 |
恢复探测定时器的时间间隔为2秒:即处于Disable状态下的端口每2秒发送1个RecoverProbe报文,用于检测单向链路是否恢复 |
DLDP协议有如下两种工作模式:
l 普通模式:在该模式下,一旦有邻居老化定时器超时,只是在删除该邻居表项的同时发送一个带RSY标记的Advertisement报文。
l 加强模式:在该模式下,一旦有邻居老化定时器超时,则启动加强定时器,每1秒发送1个Probe报文(连续发送8个)用于主动探测该邻居,如果Echo等待定时器超时仍未收到来自邻居的Echo报文,则进入Disable状态。
表1-3 DLDP协议工作模式与邻居表项老化
DLDP协议工作模式 |
邻居老化后是否主动探测该邻居的存在 |
邻居老化定时器超时后是否立即删除该邻居表项 |
邻居老化定时器超时后是否启用加强定时器 |
普通模式 |
否 |
是 |
否 |
加强模式 |
是 |
否 |
是(加强定时器超时后开始发送Probe报文) |
加强模式的目的在于检测网络黑洞,防止出现一端up而另一端down的情况。有些设备在端口配置为强制速率和强制全双工模式时,会出现如图1-2所示的情况,此时Device B的端口虽已down掉,但由于普通的链路层协议无法检测出来,因此Device A的端口还处于up状态。在加强模式下,Device A的端口在邻居老化定时器超时后会进行主动探测,如果在Echo等待定时器超时仍未收到Device B的端口返回的Echo报文,Device A的端口就将进入Disable状态。此时由于Device B的端口的物理状态为down,因此其DLDP状态为Inactive。
图1-2 加强模式的应用场景示意图
l 当DLDP协议工作在普通模式下,系统只能识别光纤交叉连接这一种类型的单向链路。
l 当DLDP协议工作在加强模式下,系统能够识别光纤交叉连接和一条光纤未连接或断路这两种类型的单向链路。当出现后一种类型的单向链路时,Rx端有信号的端口将处于Disable状态,而Rx端没有信号的端口将处于Inactive状态。
为了防止网络攻击和恶意探测,用户可以在端口上配置DLDP报文认证方式,分为下列三种:
l 不认证方式:发送DLDP报文一方将认证字字段置为全0,认证类型字段置为0;接收DLDP报文一方要将报文中的认证字和认证类型同本端配置进行比较,如果不一致,则丢弃报文。
l 明文认证方式:发送DLDP报文一方将认证字字段置为用户配置的明文认证密码,认证类型字段置为1;接收DLDP报文一方要将报文中的认证字和认证类型同本端配置进行比较,如果不一致,则丢弃报文。
l MD5认证方式:发送DLDP报文一方将认证字字段置为用户配置的密码采用MD5算法加密后的摘要,认证类型字段置为2;接收DLDP报文一方要将报文中的认证字和认证类型分别和本端配置的密码用MD5算法加密后的摘要以及本端认证类型进行比较,如果不一致,则丢弃报文。
(1) 如果使能了DLDP的端口链路状态为up,DLDP会向对端发送DLDP报文,同时分析处理对端设备发送过来的DLDP报文。如表1-4所示,DLDP在不同状态下发送的报文类型不同。
表1-4 不同DLDP状态下发送的报文类型
DLDP状态 |
发送的报文类型 |
Active |
带有RSY标记的Advertisement报文 |
Advertisement |
普通Advertisement报文 |
Probe |
Probe报文 |
Disable |
发送一个Disable报文,随后发送RecoverProbe报文 |
当从其它DLDP状态(不包括Inactive和Disable)迁移到Initial状态时,DLDP将发送Flush报文。
(2) DLDP会对收到的报文进行如下分析和处理:
l 在认证方式下,对报文进行认证。如果报文通不过认证,丢弃该报文。
l 报文中的通告时间间隔如果和本设备的不一致,丢弃该报文。
l 对DLDP报文进行相应的处理,具体处理方式如表1-5所示。
表1-5 DLDP对收到报文的处理方式
收到的报文类型 |
处理方式 |
带RSY标记的Advertisement报文 |
取出报文中的邻居信息后,判断邻居表中是否有该邻居的表项: l 如果没有,则为该邻居建立表项、启动该表项的老化定时器,并将DLDP状态切换到Probe状态 l 如果有,则刷新该表项的老化定时器,并将DLDP状态切换到Probe状态 |
普通Advertisement报文 |
取出报文中的邻居信息后,判断邻居表中是否有该邻居的表项: l 如果没有,则为该邻居建立表项、启动该表项的老化定时器,并将DLDP状态切换到Probe状态 l 如果有,则刷新该表项的老化定时器 |
Flush报文 |
判断本端口是否处于Disable状态: l 如果是,则不需进行任何处理 l 如果不是,且邻居表中有该邻居的表项,则删除该表项 |
Probe报文 |
取出报文中的邻居信息后,判断邻居表中是否有该邻居的表项: l 如果没有,则为该邻居建立表项,将DLDP状态切换到Probe状态,并向对端回复Echo报文 l 如果有,则刷新该表项的老化定时器,并向对端回复Echo报文 |
Echo报文 |
取出报文中的邻居信息后,判断邻居表中是否有该邻居的表项: l 如果没有,则为该邻居建立表项、启动该表项的老化定时器,并将DLDP状态切换到Probe状态 l 如果有,则检查报文中携带的邻居信息是否与本机相同:若不同则丢弃该报文;否则将该邻居标记为双向连通,如果所有邻居的状态都是双向连通,则将DLDP状态由Probe切换到Advertisement,同时将Echo定时器置为无效 |
Disable报文 |
判断本端口是否处于Disable状态: l 如果是,则不需进行任何处理 l 如果不是,则本端口进入Disable状态 |
RecoverProbe报文 |
判断本端口是否处于Disable或Advertisement状态: l 如果都不是,则不需进行任何处理 l 如果是其中之一,则回应RecoverEcho报文 |
RecoverEcho报文 |
判断本端口是否处于Disable状态: l 如果不是,则不需进行任何处理 l 如果是,则检查该报文中携带的邻居信息是否与本端口的相同,若相同则本端口转换为Active状态 |
LinkDown报文 |
判断本端口是否工作在加强模式下: l 如果不是,则不需进行任何处理 l 如果是,且本端口尚未处于Disable状态,则本端口进入Disable状态 |
(3) 如果DLDP没有收到邻居的Echo应答报文,会做如下处理:
表1-6 未收到邻居Echo应答报文时的处理过程
未收到邻居Echo报文 |
处理过程 |
普通模式下,Echo等待定时器超时还未收到 |
将DLDP状态转到Disable,输出日志和跟踪信息,向邻居发送Disable报文,并根据用户配置的DLDP Down模式,手动或者自动关闭本端端口。同时删除该邻居表项 |
加强模式下,由于加强探测启动的Echo定时器超时还未收到 |
如果端口的关闭模式被设置为系统自动关闭,当DLDP检测到单向链路时,把端口的状态设置为DLDP Down,处于此状态的端口不会转发业务报文,也不能收发除DLDPDU之外的任何协议报文。
处于DLDP Down状态端口能在链路恢复之时,从DLDP Down状态中恢复。DLDP Down状态下的端口仍然会周期性的发送链路恢复探测报文(RecoverProbe报文),一旦收到正确的恢复回应报文(RecoverEcho报文),则说明单向链路已经变为双向链路,DLDP将此端口重新up。其具体过程如下:
处于DLDP Down状态的端口向外每2秒发送一次RecoverProbe报文。报文中只携带本端口的信息。对端如果收到该报文,则以RecoverEcho报文作为应答。一旦本端收到RecoverEcho报文,检查RecoverEcho报文中携带的邻居信息是否和本端口信息相同。如果相同,则认为本端口和该邻居之间已经恢复双向连通,则端口从Disable状态迁移到Active状态,开始重新建立邻居关系。
链路恢复报文只在处于DLDP Down状态的端口上发送和处理。如果端口被用户使用shutdown命令手工关闭,则自动恢复机制不能生效。
DLDP邻居的状态有三种,如表1-7所示。
表1-7 DLDP邻居状态
状态类型 |
说明 |
未知状态 |
刚建立这个邻居,目前正在对邻居进行探测,还没有收到邻居回应时的邻居状态。该状态只在探测(Probe)过程中存在,探测结束后就转为双通或者单通 |
双通状态 |
收到邻居回应后的邻居状态,表示目前处于正常的双向连通状态,该状态可以长期稳定存在 |
单通状态 |
检测到单通链路时的邻居状态,此时会将该邻居删除 |
表1-8 DLDP配置任务简介
配置任务 |
说明 |
详细配置 |
使能DLDP功能 |
必选 |
|
配置DLDP的工作模式 |
可选 |
|
配置发送Advertisement报文的时间间隔 |
可选 |
|
配置DelayDown定时器的超时时间 |
可选 |
|
配置发现单向链路后端口的关闭模式 |
可选 |
|
配置DLDP报文的认证方式 |
可选 |
|
重置DLDP的状态 |
可选 |
l 为了使DLDP能够正常工作,需要将两端端口的双工模式都配置为全双工模式,速率都配置为相同的强制速率。
l 为确保DLDP能够正常工作,要保证两端设备的DLDP功能都处于使能状态,且发送Advertisement报文的时间间隔、DLDP报文的认证方式及口令都相同。
l DLDP不会处理任何LACP(Link Aggregation Control Protocol,链路聚合控制协议)事件,DLDP会将端口聚合组中的每条链路都视为独立的链路进行处理。
l 请确保两端设备上运行的DLDP版本一致,否则DLDP的运行可能出现问题。
要启用DLDP功能,必须先全局使能DLDP功能,再在端口上使能DLDP功能。
表1-9 使能DLDP功能
命令 |
说明 |
||
进入系统视图 |
system-view |
- |
|
全局使能DLDP功能 |
dldp enable |
必选 缺省情况下,全局的DLDP功能处于关闭状态 |
|
进入相应视图 |
进入以太网端口视图 |
interface interface-type interface-number |
二者必选其一 以太网端口视图下的配置只对当前端口生效,端口组视图下的配置对当前端口组中的所有端口生效 |
进入端口组视图 |
port-group manual port-group-name |
||
使能端口的DLDP功能 |
dldp enable |
必选 缺省情况下,端口上的DLDP功能处于关闭状态 |
l 只能在以太网端口(包括光口和电口)上使能DLDP功能。
l DLDP功能只有在物理链路连通后才会起作用,因此在使能DLDP之前,请连接好光纤或铜质双绞线。
DLDP的工作模式有如下两种:
l 普通模式:在此模式下,DLDP协议在老化邻居表项时不会主动探测邻居是否存在,此时系统只能识别光纤交叉连接这一种类型的单向链路。
l 加强模式:在此模式下,DLDP协议在老化邻居表项时会主动探测邻居是否存在,此时系统可以识别光纤交叉连接和一条光纤未连接或断路这两种类型的单向链路。
表1-10 配置DLDP的工作模式
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
配置DLDP的工作模式 |
dldp work-mode { enhance | normal } |
可选 缺省情况下,DLDP的工作模式为普通模式 |
通过合理调整发送Advertisement报文的时间间隔,可使DLDP在不同的网络环境下都能够及时发现单向链路。通常情况下,发送Advertisement报文的时间间隔应小于STP收敛时间的三分之一:若此间隔太长,可能导致在DLDP关闭单向链路前出现STP环路,由于设备需较长时间才能发现单向链路,因此会造成较多错误流量的转发;若此间隔太短,则会增加网络的流量。建议采用缺省值。
表1-11 配置发送Advertisement报文的时间间隔
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
配置发送Advertisement报文的时间间隔 |
dldp interval time |
可选 缺省情况下,发送Advertisement报文的时间间隔为5秒 |
l 本配置将应用于所有使能了DLDP功能的端口上。
l 请确保通过光纤/铜质双绞线连接的两台设备上发送Advertisement报文的时间间隔相同,否则DLDP将不能正常工作。
有些端口在Tx端发生故障时会引起Rx端光信号的抖动(表现为该端口down后随即又up),为避免在这种情况下直接进入Inactive状态而清除了邻居信息,因此先进入DelayDown状态,同时启动DelayDown定时器,待该定时器超时后再进入Inactive状态。如果在DelayDown定时器超时之前端口up了,则返回之前的DLDP状态。
表1-12 配置DelayDown定时器的超时时间
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
配置DelayDown定时器的超时时间 |
dldp delaydown-timer time |
可选 缺省情况下,DelayDown定时器的超时时间为1秒 |
本配置将应用于所有使能了DLDP功能的端口上。
当DLDP检测到单向链路时,可以采用两种方式关闭单通的端口:
l 手动模式:其目的是为了避免网络性能差时,DLDP协议检测到单通就立即自动关闭端口,从而造成业务报文不能收发,是针对这种误判较多的情形所采取的一种折中方案。它仅依靠DLDP协议检测单向链路,端口的关闭由网络管理员手动完成。在该模式下,当DLDP检测到单通时,DLDP状态机只输出Log和Trap信息,建议此时用户使用shutdown命令手工关闭此端口,然后DLDP状态机才会迁移到Disable状态。
l 自动模式:在该模式下,当DLDP协议检测到单通时,除了DLDP状态机迁移到Disable状态并输出Log和Trap信息外,还会自动将端口的状态设置为DLDP Down。
表1-13 配置发现单向链路后端口的关闭模式
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
配置发现单向链路后端口的关闭模式 |
dldp unidirectional-shutdown { auto | manual } |
可选 缺省情况下,发现单向链路后端口的关闭模式为自动模式 |
l 如果欲在端口上配置OAM远端环回,建议先将发现单向链路后端口的关闭模式配置为手动模式,否则DLDP收到了由本端口发出的报文后会认为出现单向链路而自动关闭端口,从而导致OAM远端环回失效。
l 当设备业务量较大或CPU利用率较高时,可能会出现DLDP误报的情况。此时建议将发现单向链路后端口的关闭模式配置为手动模式,以减小由于DLDP误报而造成的影响。
通过配置适当的DLDP报文的认证方式,可以防止网络攻击和恶意探测。DLDP报文的认证方式可分为三种:不认证、明文认证和MD5认证。
表1-14 配置DLDP报文的认证方式
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
配置当前设备与邻居设备端口间的DLDP认证方式 |
dldp authentication-mode { md5 md5-password | none | simple simple-password } |
必选 缺省情况下,当前设备与邻居设备端口间的DLDP认证方式为none |
请确保两台设备间通过光纤/铜质双绞线连接的端口上配置的DLDP认证方式和认证口令相同,否则DLDP将不能正常工作。
DLDP协议发现单向链路后,端口进入Disable状态。此时需要根据用户选择的端口关闭模式,提示用户关闭端口或自动将端口的状态设为DLDP Down。如果用户需要该端口重新探测,可以通过下列方式重置端口的DLDP状态:
l 对于使用shutdown命令手工关闭的端口,用户需要手动输入undo shutdown命令来恢复对端口的探测。
l 对于系统自动设置为DLDP Down的端口,用户可以等待DLDP通过链路自动恢复机制,发现邻居恢复双通后启用端口;也可以使用dldp reset命令来手工恢复,从而使处于DLDP Down状态下的端口重新进行单向链路的检测。
恢复后的端口状态与端口的物理状态有关:如果端口的物理状态为down,则端口的DLDP状态变为Inactive;如果端口的物理状态为up,则端口的DLDP状态变为Active。
重置DLDP的状态可以在全局进行或在端口上进行:
在系统视图下全局重置DLDP的状态,将对设备上所有端口的DLDP状态进行重置。
表1-15 全局重置DLDP的状态
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
全局重置DLDP的状态 |
dldp reset |
必选 |
在端口上重置DLDP的状态,只能对当前端口或端口组中所有端口的DLDP状态进行重置。
表1-16 在端口上重置DLDP的状态
操作 |
命令 |
说明 |
|
进入系统视图 |
system-view |
- |
|
进入相应视图 |
进入以太网端口视图 |
interface interface-type interface-number |
二者必选其一 以太网端口视图下的配置只对当前端口生效,端口组视图下的配置对当前端口组中的所有端口生效 |
进入端口组视图 |
port-group manual port-group-name |
||
重置DLDP的状态 |
dldp reset |
必选 |
在完成上述配置后,在任意视图下执行display命令可以显示配置后DLDP的运行情况及报文统计信息,通过查看显示信息验证配置的效果。
在用户视图下执行reset命令可以清除DLDP报文统计信息。
表1-17 DLDP显示和维护
操作 |
命令 |
显示端口的DLDP配置信息 |
display dldp [ interface-type interface-number ] [ | { begin | exclude | include } regular-expression ] |
显示端口的DLDP报文统计信息 |
display dldp statistics [ interface-type interface-number ] [ | { begin | exclude | include } regular-expression ] |
清除端口的DLDP报文统计信息 |
reset dldp statistics [ interface-type interface-number ] |
l Device A和Device B各自的端口Gigabitethernet1/0/49和Gigabitethernet1/0/50之间分别通过一对光纤进行连接。
l 要求通过配置,使DLDP检测到单向链路故障后自动关闭故障端口,并在网络管理员排除故障后,故障端口能够自动恢复。
(1) 配置Device A
# 全局使能DLDP功能。
<DeviceA> system-view
[DeviceA] dldp enable
# 在端口GigabitEthernet1/0/49上配置双工模式为全双工、端口速率为1000Mbps,并使能DLDP功能。
[DeviceA] interface gigabitethernet 1/0/49
[DeviceA-GigabitEthernet1/0/49] duplex full
[DeviceA-GigabitEthernet1/0/49] speed 1000
[DeviceA-GigabitEthernet1/0/49] dldp enable
[DeviceA-GigabitEthernet1/0/49] quit
# 在端口GigabitEthernet1/0/50上配置双工模式为全双工、端口速率为1000Mbps,并使能DLDP功能。
[DeviceA] interface gigabitethernet 1/0/50
[DeviceA-GigabitEthernet1/0/50] duplex full
[DeviceA-GigabitEthernet1/0/50] speed 1000
[DeviceA-GigabitEthernet1/0/50] dldp enable
[DeviceA-GigabitEthernet1/0/50] quit
# 配置DLDP的工作模式为加强模式。
[DeviceA] dldp work-mode enhance
# 配置发现单向链路后端口的关闭模式为自动模式。
[DeviceA] dldp unidirectional-shutdown auto
(2) 配置Device B
# 全局使能DLDP功能,分别在端口GigabitEthernet1/0/49和GigabitEthernet1/0/50上配置全双工模式,并使能DLDP功能。
<DeviceB> system-view
[DeviceB] dldp enable
[DeviceB] interface gigabitethernet 1/0/49
[DeviceB-GigabitEthernet1/0/49] duplex full
[DeviceB-GigabitEthernet1/0/49] speed 1000
[DeviceB-GigabitEthernet1/0/49] dldp enable
[DeviceB-GigabitEthernet1/0/49] quit
[DeviceB] interface gigabitethernet 1/0/50
[DeviceB-GigabitEthernet1/0/50] duplex full
[DeviceB-GigabitEthernet1/0/50] speed 1000
[DeviceB-GigabitEthernet1/0/50] dldp enable
[DeviceB-GigabitEthernet1/0/50] quit
# 配置DLDP的工作模式为加强模式。
[DeviceB] dldp work-mode enhance
# 配置发现单向链路后端口的关闭模式为自动模式。
[DeviceB] dldp unidirectional-shutdown auto
(3) 检验配置效果
配置完成后,通过使用display dldp命令可以查看端口上的DLDP配置信息。例如:
# 查看Device A所有使能了DLDP的端口上的DLDP配置信息。
[DeviceA] display dldp
DLDP global status : enable
DLDP interval : 5s
DLDP work-mode : enhance
DLDP authentication-mode : none
DLDP unidirectional-shutdown : auto
DLDP delaydown-timer : 1s
The number of enabled ports is 2.
Interface GigabitEthernet1/0/49
DLDP port state : advertisement
DLDP link state : up
The neighbor number of the port is 1.
Neighbor mac address : 0023-8956-3600
Neighbor port index : 59
Neighbor state : two way
Neighbor aged time : 11
Interface GigabitEthernet1/0/50
DLDP port state : advertisement
DLDP link state : up
The neighbor number of the port is 1.
Neighbor mac address : 0023-8956-3600
Neighbor port index : 60
Neighbor state : two way
Neighbor aged time : 12
以上信息表明,端口GigabitEthernet1/0/49和GigabitEthernet1/0/50上的DLDP状态机均处于Advertisement状态,说明这两个端口所在的链路均处于双通状态。
# 在Device A上打开系统信息监视功能,并分别打开Log和Trap信息的显示功能。
[DeviceA] quit
<DeviceA> terminal monitor
<DeviceA> terminal logging
<DeviceA> terminal trapping
此后某刻,网络管理员在Device A上看到如下Log和Trap信息:
<DeviceA>
#Jan 18 17:36:18:798 2010 DeviceA DLDP/1/TrapOfUnidirectional: -Slot=1; h3cDLDPUnidirectionalPort : DLDP detects a unidirectional link in port 17825792.
%Jan 18 17:36:18:799 2010 DeviceA IFNET/3/LINK_UPDOWN: GigabitEthernet1/0/49 link status is DOWN.
%Jan 18 17:36:18:799 2010 DeviceA DLDP/3/DLDP_UNIDIRECTION_AUTO: -Slot=1; DLDP detects a unidirectional link on port GigabitEthernet1/0/49. The transceiver has malfunction in the Tx direction or cross-connected links exist between the local device and its neighbor. The shutdown mode is AUTO. DLDP shuts down the port.
#Jan 18 17:36:20:189 2010 DeviceA DLDP/1/TrapOfUnidirectional: -Slot=1; h3cDLDPUnidirectionalPort : DLDP detects a unidirectional link in port 17825793.
%Jan 18 17:36:20:189 2010 DeviceA IFNET/3/LINK_UPDOWN: GigabitEthernet1/0/50 link status is DOWN.
%Jan 18 17:36:20:190 2010 DeviceA DLDP/3/DLDP_UNIDIRECTION_AUTO: -Slot=1; DLDP detects a unidirectional link on port GigabitEthernet1/0/50. The transceiver has malfunction in the Tx direction or cross-connected links exist between the local device and its neighbor. The shutdown mode is AUTO. DLDP shuts down the port.
%Jan 15 16:54:56:040 2010 DeviceA DLDP/3/DLDP_UNIDIRECTION_AUTO_ENHANCE: -Slot=1; In enhanced DLDP mode, port GigabitEthernet1/0/49 cannot detect its aged-out neighbor. The transceiver has malfunction in the Tx direction or cross-connected links exist between the local device and its neighbor. The shutdown mode is AUTO. DLDP shuts down the port.
以上信息表明,端口GigabitEthernet1/0/49和GigabitEthernet1/0/50的链路状态均已变为down;DLDP在这两个端口上都检测到了单向链路,并自动关闭了这两个端口。
经过网络管理员排查,发现连接Device A和Device B的两对光纤被错误地进行了交叉连接。于是,网络管理员将这两对光纤重新进行了正确连接,然后在Device A上看到如下Log信息:
<DeviceA>
%Jan 18 17:47:33:869 2010 DeviceA IFNET/3/LINK_UPDOWN: GigabitEthernet1/0/49 link status is UP.
%Jan 18 17:47:35:894 2010 DeviceA IFNET/3/LINK_UPDOWN: GigabitEthernet1/0/50 link status is UP.
以上信息表明,端口GigabitEthernet1/0/49和GigabitEthernet1/0/50的链路状态均已重新变为up。
l Device A和Device B各自的端口Gigabitethernet1/0/49和Gigabitethernet1/0/50之间分别通过一对光纤进行连接。
l 要求通过配置,使DLDP检测到单向链路故障后,提示网络管理员手工关闭故障端口。
图1-4 手动关闭单向链路配置组网图
(1) 配置Device A
# 全局使能DLDP功能。
<DeviceA> system-view
[DeviceA] dldp enable
# 在端口GigabitEthernet1/0/49上配置双工模式为全双工、端口速率为1000Mbps,并使能DLDP功能。
[DeviceA] interface gigabitethernet 1/0/49
[DeviceA-GigabitEthernet1/0/49] duplex full
[DeviceA-GigabitEthernet1/0/49] speed 1000
[DeviceA-GigabitEthernet1/0/49] dldp enable
[DeviceA-GigabitEthernet1/0/49] quit
# 在端口GigabitEthernet1/0/50上配置双工模式为全双工、端口速率为1000Mbps,并使能DLDP功能。
[DeviceA] interface gigabitethernet 1/0/50
[DeviceA-GigabitEthernet1/0/50] duplex full
[DeviceA-GigabitEthernet1/0/50] speed 1000
[DeviceA-GigabitEthernet1/0/50] dldp enable
[DeviceA-GigabitEthernet1/0/50] quit
# 配置DLDP的工作模式为加强模式。
[DeviceA] dldp work-mode enhance
# 配置发现单向链路后端口的关闭模式为手动模式。
[DeviceA] dldp unidirectional-shutdown manual
(2) 配置Device B
# 全局使能DLDP功能,分别在端口GigabitEthernet1/0/49和GigabitEthernet1/0/50上配置全双工模式,并使能DLDP功能。
<DeviceB> system-view
[DeviceB] dldp enable
[DeviceB] interface gigabitethernet 1/0/49
[DeviceB-GigabitEthernet1/0/49] duplex full
[DeviceB-GigabitEthernet1/0/49] speed 1000
[DeviceB-GigabitEthernet1/0/49] dldp enable
[DeviceB-GigabitEthernet1/0/49] quit
[DeviceB] interface gigabitethernet 1/0/50
[DeviceB-GigabitEthernet1/0/50] duplex full
[DeviceB-GigabitEthernet1/0/50] speed 1000
[DeviceB-GigabitEthernet1/0/50] dldp enable
[DeviceB-GigabitEthernet1/0/50] quit
# 配置DLDP的工作模式为加强模式。
[DeviceB] dldp work-mode enhance
# 配置发现单向链路后端口的关闭模式为手动模式。
[DeviceB] dldp unidirectional-shutdown manual
(3) 检验配置效果
配置完成后,通过使用display dldp命令可以查看端口上的DLDP配置信息。例如:
# 查看Device A所有使能了DLDP的端口上的DLDP配置信息。
[DeviceA] display dldp
DLDP global status : enable
DLDP interval : 5s
DLDP work-mode : enhance
DLDP authentication-mode : none
DLDP unidirectional-shutdown : manual
DLDP delaydown-timer : 1s
The number of enabled ports is 2.
Interface GigabitEthernet1/0/49
DLDP port state : advertisement
DLDP link state : up
The neighbor number of the port is 1.
Neighbor mac address : 0023-8956-3600
Neighbor port index : 59
Neighbor state : two way
Neighbor aged time : 11
Interface GigabitEthernet1/0/50
DLDP port state : advertisement
DLDP link state : up
The neighbor number of the port is 1.
Neighbor mac address : 0023-8956-3600
Neighbor port index : 60
Neighbor state : two way
Neighbor aged time : 12
以上信息表明,端口GigabitEthernet1/0/49和GigabitEthernet1/0/50上的DLDP状态机均处于Advertisement状态,说明这两个端口所在的链路均处于双通状态。
# 在Device A上打开系统信息监视功能,并分别打开Log和Trap信息的显示功能。
[DeviceA] quit
<DeviceA> terminal monitor
<DeviceA> terminal logging
<DeviceA> terminal trapping
此后某刻,网络管理员在Device A上看到如下Log和Trap信息:
<DeviceA>
#Jan 18 18:10:38:481 2010 DeviceA DLDP/1/TrapOfUnidirectional: -Slot=1; h3cDLDPUnidirectionalPort : DLDP detects a unidirectional link in port 17825792.
%Jan 18 18:10:38:481 2010 DeviceA DLDP/3/DLDP_UNIDIRECTION_MANUAL: -Slot=1; DLDP detects a unidirectional link on port GigabitEthernet1/0/49. The transceiver has malfunction in the Tx direction or cross-connected links exist between the local device and its neighbor. The shutdown mode is MANUAL. The port needs to be shut down by the user.
#Jan 18 18:10:38:618 2010 DeviceA DLDP/1/TrapOfUnidirectional: -Slot=1; h3cDLDPUnidirectionalPort : DLDP detects a unidirectional link in port 17825793.
%Jan 18 18:10:38:618 2010 DeviceA DLDP/3/DLDP_UNIDIRECTION_MANUAL: -Slot=1; DLDP detects a unidirectional link on port GigabitEthernet1/0/50. The transceiver has malfunction in the Tx direction or cross-connected links exist between the local device and its neighbor. The shutdown mode is MANUAL. The port needs to be shut down by the user.
以上信息表明,DLDP在端口GigabitEthernet1/0/49和GigabitEthernet1/0/50上都检测到了单向链路,并提示用户手工关闭故障端口。
经过网络管理员排查,发现连接Device A和Device B的两对光纤被错误地进行了交叉连接。于是,网络管理员将故障端口手工关闭:
# 在Device A上分别关闭端口GigabitEthernet1/0/49和GigabitEthernet1/0/50,并看到如下Log信息:
<DeviceA> system-view
[DeviceA] interface gigabitethernet 1/0/49
[DeviceA-GigabitEthernet1/0/49] shutdown
%Jan 18 18:16:12:044 2010 DeviceA IFNET/3/LINK_UPDOWN: GigabitEthernet1/0/49 link status is DOWN.
[DeviceA-GigabitEthernet1/0/49] quit
[DeviceA] interface gigabitethernet 1/0/50
[DeviceA-GigabitEthernet1/0/50] shutdown
%Jan 18 18:18:03:583 2010 DeviceA IFNET/3/LINK_UPDOWN: GigabitEthernet1/0/50 link status is DOWN.
以上信息表明,端口GigabitEthernet1/0/49和GigabitEthernet1/0/50的链路状态均已变为down。
然后,网络管理员将连接Device A和Device B的两对光纤重新进行了正确连接。检查无误后,网络管理员将已排除故障的端口重新打开:
# 在Device A上分别打开端口GigabitEthernet1/0/50和GigabitEthernet1/0/49,并看到如下Log信息:
[DeviceA-GigabitEthernet1/0/50] undo shutdown
[DeviceA-GigabitEthernet1/0/50]
%Jan 18 18:22:11:698 2010 DeviceA IFNET/3/LINK_UPDOWN: GigabitEthernet1/0/50 link status is UP.
[DeviceA-GigabitEthernet1/0/50] quit
[DeviceA] interface gigabitethernet 1/0/49
[DeviceA-GigabitEthernet1/0/49] undo shutdown
[DeviceA-GigabitEthernet1/0/49]
%Jan 18 18:22:46:065 2010 DeviceA IFNET/3/LINK_UPDOWN: GigabitEthernet1/0/49 link status is UP.
以上信息表明,端口GigabitEthernet1/0/49和GigabitEthernet1/0/50的链路状态均已重新变为up。
Device A和Device B通过两对光纤相连,并在这两台设备上都使能了DLDP;假设Device A与Device B间出现了光纤交叉连接的情况,但DLDP并未检测出链路单通,且四个端口均处于Advertisement状态。
如下两个原因均会导致上述情况的出现:
l Device A和Device B上配置的发送Advertisement报文的时间间隔不一致。
l Device A和Device B上配置的DLDP报文认证方式或认证口令不一致。
在Device A和Device B上配置相同的发送Advertisement报文的时间间隔、DLDP报文的认证方式及口令。
不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!