一种链路状态检测方法、 装置及系统 【技术领域】
本发明涉及通信领域, 尤其涉及一种链路状态检测方法、 装置及系统。背景技术 在实际组网中有时会出现一种特殊的现象——单向链路。所谓单向链路是指 : 本 端设备可以通过链路层收到对端设备发送的报文, 但对端设备不能收到本端设备的报文。 DLDP(Device Link Detection Protocol, 设备链路检测协议 ) 就是一种单向链路的检测协 议。
DLDP 是链路层协议, 它与物理层协议协同工作来监控设备的链路状态。 在物理层, 自协商机制进行物理信号和故障的检测, 以保证链路两端端口的物理状态一致 ; 在链路层, DLDP 能够检测两端端口的链路是否正常收发数据, 保证两端链路状态的一致性, 避免出现 环路。DLDP 可以监控光纤或铜质双绞线 ( 例如, 超五类双绞线 ) 的链路状态。如果发现单 向链路存在, DLDP 会根据用户配置, 自动关闭或通知用户手工关闭相关端口, 以防止网络问 题的发生。
单向链路分为两种类型 : 一种是光纤交叉相连, 另一种是光纤断路。因此, 对于某 一设备的某一端口来说, 包括了连接正常、 光纤交叉相连以及光纤断路等三种不同的链路 状态。
发明人发现 : 现有技术中当完成组网时, 无法准确检测出设备端口的链路状态。
发明内容 本发明要解决的技术问题是, 提供一种链路状态检测方法、 装置及系统, 能够准确 检测出设备端口的链路状态。
根据本发明实施例的一个方面, 一种链路状态检测方法, 包括 :
在第一设备上的第一端口的上行链路上向第二设备的第二端口发送第一探测报 文, 所述第一探测报文包括 : 所述第一端口的媒体接入控制 MAC 地址 ;
判断在预设时间内在所述第一端口的下行链路上是否接收到探测响应报文 ;
如果在预设时间内在所述第一端口的下行链路上未接收到探测响应报文, 确定所 述第一端口与所述第二端口之间的链路状态为光纤断路状态 ;
如果在预设时间内在所述第一端口的下行链路上接收到探测响应报文, 则判断所 述探测响应报文中携带的 MAC 地址与所述第一端口的 MAC 地址是否一致 ;
如果所述探测响应报文中携带的 MAC 地址与所述第一端口的 MAC 地址一致, 确定 第一端口与第二端口之间的链路状态为连接正常状态 ;
所述探测响应报文中携带的 MAC 地址与所述第一端口的 MAC 地址不一致, 确定第 一端口与第二端口之间的链路状态为光纤交叉相连状态。
根据本发明实施例的另一个方面, 一种链路状态检测方法, 包括 :
在第二设备的第二端口的下行链路上接收第一设备通过第一端口发来的第一探
测报文, 所述第一探测报文包括 : 所述第一端口的媒体接入控制 MAC 地址 ;
根据所述第一探测报文生成探测响应报文, 所述探测响应报文包括 : 所述第一端 口的 MAC 地址 ;
在所述第二端口的上行链路上向所述第一设备发送该探测响应报文, 以便所述第 一设备根据该探测响应报文携带的 MAC 地址以及接收到该探测响应报文的端口的 MAC 地址 判断接收到的该探测响应报文的端口与所述第二端口之间的链路状态。
根据本发明实施例的另一个方面, 一种链路状态检测装置, 包括
第一发送单元、 第一判断单元、 第一状态确定单元、 第二判断单元、 第二状态确定 单元和第三状态确定单元, 其中 :
所述第一发送单元, 用于在第一设备的第一端口的上行链路上向第二设备的第二 端口发送第一探测报文, 所述第一探测报文包括 : 所述第一端口的媒体接入控制 MAC 地址 ;
所述第一判断单元, 用于判断在预设时间内在所述第一端口的下行链路上是否接 收到探测响应报文 ;
所述第一状态确定单元, 用于当所述第一判断单元判断结果为未接收到所述探测 响应报文时, 确定所述第一端口与所述第二端口之间的链路状态为光纤断路状态 ; 所述第二判断单元, 用于当所述第一判断单元判断结果为接收到所述探测响应报 文时, 判断所述探测响应报文中携带的 MAC 地址与所述第一端口的 MAC 地址是否一致 ;
所述第二状态确定单元, 用于当所述第二判断单元判断结果为一致时, 确定所述 第一端口与所述第二端口之间的链路状态为连接正常状态 ;
所述第三状态确定单元, 用于当所述第二判断单元判断结果为不一致时, 确定所 述第一端口与所述第二端口之间的链路状态为光纤交叉相连状态。
根据本发明实施例的另一个方面, 一种链路状态检测装置, 包括
接收单元、 生成单元和第二发送单元, 其中 :
所述接收单元, 用于在第二设备的第二端口的下行链路上接收第一设备通过第一 端口发来的第一探测报文, 所述第一探测报文包括 : 所述第一端口的媒体接入控制 MAC 地 址;
所述生成单元, 用于根据所述第一探测报文生成探测响应报文, 所述探测响应报 文包括 : 所述第一端口的 MAC 地址 ;
所述第二发送单元, 用于在所述第二端口的上行链路上向所述第一设备发送该探 测响应报文, 以便所述第一设备根据该探测响应报文携带的 MAC 地址以及接收到该探测响 应报文的端口的 MAC 地址判断接收到该探测响应报文的端口与第二端口之间的链路状态。
根据本发明实施例的另一个方面, 一种链路状态检测系统, 包括
第一链路状态检测装置和第二链路状态检测装置, 其中 :
所述第一链路状态检测装置, 用于在第一设备的第一端口的上行链路上向第二设 备的第二端口发送第一探测报文, 所述第一探测报文包括 : 所述第一端口的媒体接入控制 MAC 地址 ; 判断在预设时间内在所述第一端口的下行链路上是否接收到探测响应报文 ; 未 接收到所述探测响应报文时, 确定所述第一端口与所述第二端口之间的链路状态为光纤断 路状态 ; 接收到所述探测响应报文时, 判断所述探测响应报文中携带的 MAC 地址与所述第 一端口的 MAC 地址是否一致 ; 一致时, 确定所述第一端口与所述第二端口之间的链路状态
为连接正常状态 ; 不一致时, 确定所述第一端口与所述第二端口之间的链路状态为光纤交 叉相连状态 ;
所述第二链路状态检测装置, 用于在所述第二端口的下行链路上接收所述第一设 备通过第一端口发来的所述第一探测报文, 所述第一探测报文包括 : 第一端口的 MAC 地址 ; 根据所述第一探测报文生成探测响应报文, 所述探测响应报文包括 : 所述第一端口的 MAC 地址 ; 在所述第二端口的上行链路上向所述第一设备发送该探测响应报文, 以便所述第一 设备根据该探测响应报文携带的 MAC 地址以及接收到的该探测响应报文的端口的 MAC 地址 判断接收到该探测响应报文的端口与所述第二端口之间的链路状态。
在第一设备的第一端口的上行链路上向第二设备的第二端口发送第一探测报文, 所述第一探测报文包括 : 第一端口的 MAC 地址 ; 判断在预设时间内在第一端口的下行链路 上是否接收到探测响应报文 ; 如果在预设时间内在所述第一端口的下行链路上接收到探测 响应报文, 判断所述探测响应报文中携带的 MAC 地址与第一端口的 MAC 地址是否一致 ; 如 果所述探测响应报文中携带的 MAC 地址与所述第一端口的 MAC 地址一致, 确定第一端口与 第二端口之间的链路状态为连接正常状态 ; 如果所述探测响应报文中携带的 MAC 地址与所 述第一端口的 MAC 地址不一致, 确定第一端口与第二端口之间的链路状态为光纤交叉相连 状态 ; 如果在预设时间内在所述第一端口的下行链路上未接收到探测响应报文, 确定第一 端口与第二端口之间的链路状态为光纤断路状态。 从而实现了对于设备端口的链路状态检 测。 附图说明
图 1 为本发明实施例的一种链路状态检测方法流程示意图 ; 图 2 为本发明实施例的另一种链路状态检测方法流程示意图 ; 图 3 为本发明实施例的另一种链路状态检测方法流程示意图 ; 图 4 为本发明实施例连接正常状态的端口连接示意图 ; 图 5 为本发明实施例的一种光纤断路状态的端口连接示意图 ; 图 6 为本发明实施例的另一种光纤断路状态的端口连接示意图 ; 图 7 为本发明实施例光纤交叉连接状态的端口连接示意图 ; 图 8 为本发明实施例扩展的 DLDP 协议报文结构示例 ; 图 9 为本发明实施例一种链路状态检测装置结构示意图 ; 图 10 为本发明实施例另一种链路状态检测装置结构示意图 ; 图 11 为本发明实施例一种链路状态检测系统结构示意图。具体实施方式
以下, 结合附图详细说明本发明实施例链路状态检测方法、 装置及系统的实现。
图 1 是本发明实施例的一种链路状态检测方法流程示意图, 该方法可以应用于链 路状态检测的发起设备端, 也即第一端口所在的设备端。如图 1 所示, 该方法包括 :
101 : 在第一端口的上行链路上向第二设备的第二端口发送第一探测报文, 所述第 一探测报文包括 : 第一端口的媒体接入控制 (Media Access Control, MAC) 地址 ;
102 : 判断在预设时间内在所述第一端口的下行链路上是否接收到探测响应报文,如果在预设时间内在所述第一端口的下行链路上接收到探测响应报文, 则执行 103 ; 如果 在预设时间内在所述第一端口的下行链路上未接收到探测响应报文, 则执行 106。
103 : 判断所述探测响应报文中携带的 MAC 地址与所述第一端口的 MAC 地址是否一 致; 如果所述探测响应报文中携带的 MAC 地址与所述第一端口的 MAC 地址一致, 执行 104 ; 如果所述探测响应报文中携带的 MAC 地址与所述第一端口的 MAC 地址不一致, 执行 105。
104 : 确定所述第一端口与所述第二端口之间的链路状态为连接正常状态 ;
105 : 确定所述第一端口与所述第二端口之间的链路状态为光纤交叉相连状态 ;
106 : 如果在预设时间内未接收到探测响应报文, 则确定所述第一端口与所述第二 端口之间的链路状态为光纤断路状态。
在本发明实施例中, 所述检测方法是以两端设备均支持 DLDP 为前提的, 因此, 106 中导致光纤断路状态的原因可能是 : 光纤未连接到设备的端口上, 光纤断开, 或者对端设备 不支持探测报文所对应的通信协议等。
图 1 所示的方法中, 在所述第一端口的上行链路上向所述第二设备的第二端口发 送第一探测报文, 所述第一探测报文包括 : 所述第一端口的 MAC 地址 ; 判断在预设时间内所 述第一端口是否接收到探测响应报文 ; 如果在预设时间内所述第一端口未接收到探测响应 报文, 则确定所述第一端口与所述第二端口之间的链路状态为光纤断路状态 ; 如果在预设 时间内所述第一端口接收到探测响应报文, 则进一步判断所述探测响应报文中携带的 MAC 地址与所述第一端口的 MAC 地址是否一致, 如果所述探测响应报文中携带的 MAC 地址与所 述第一端口的 MAC 地址一致, 确定所述第一端口与所述第二端口之间的链路状态为连接正 常状态, 如果所述探测响应报文中携带的 MAC 地址与所述第一端口的 MAC 地址不一致, 确定 所述第一端口与所述第二端口之间的链路状态为光纤交叉相连状态 ; 从而实现了所述第一 端口与所述第二端口之间链路状态的检测, 而且, 可以准确的检测到具体的链路状态为 : 连 接正常或者光纤交叉相连或者光纤断路。 另外, 在工程安装过程中, 可以为工程安装人员提 供准确的链路状态数据, 节省设备安装的成本。
图 2 是本发明实施例的另一种链路状态检测方法流程示意图, 该方法可以适用于 链路状态检测的协助设备端, 该协助设备端为第一探测报文的接收端口所属的设备端, 也 即所述第二设备。如图 2 所示, 该方法包括 :
201 : 在第二设备的第二端口的下行链路上接收第一设备通过第一端口发来的第 一探测报文, 所述第一探测报文包括 : 所述第一端口的 MAC 地址 ;
202 : 根据第一探测报文生成探测响应报文, 所述探测响应报文包括 : 第一端口的 MAC 地址 ;
203 : 在所述第二端口的上行链路上向所述第一设备发送该探测响应报文, 以便第 一设备根据该探测响应报文携带的 MAC 地址以及接收到该探测响应报文的端口的 MAC 地址 判断接收到该探测响应报文的端口与所述第二端口之间的链路状态。
图 2 所示的方法中, 基于接收到的第一探测报文生成探测响应报文, 通过所述第 二端口的上行链路发送给第一设备, 使得所述第一设备可以根据该探测响应报文携带的 MAC 地址以及接收到该探测响应报文的端口的 MAC 地址判断接收到该探测响应报文的端口 与第二端口之间的链路状态, 从而协助第一设备完成了对于链路状态的检测。
在图 1 和图 2 的基础上通过图 3 对本发明实施例链路状态检测方法进行更为详细的说明。 在图 3 所示的本发明实施例中, 详细说明了检测发起设备与协助设备之间配合, 完成链路状态检测的过程。其中, 假定第一设备为检测发起设备, 第二设备为协助设备。在 实际应用中, 如果第一设备发起了链路状态检测, 则可能同时在第一设备的各个端口都会 通过图 3 所示的方法进行各个端口对应链路状态的检测, 第一端口可以泛指第一设备的各 个端口, 而并非某一指定的特殊端口, 而第二端口则是指连接正常状态下, 第二设备的端口 中与第一端口连接的端口。
如图 3 所示, 该方法包括 :
301 : 第一设备在第一端口的上行链路上向第二设备的第二端口发送第一探测报 文, 所述第一探测报文包括 : 第一端口的 MAC 地址。
所述第一探测报文还可以包括第一端口对应的指示方式。 第一端口对应的指示方 式为可选字段。可选地, 可以预先在第一设备中设置不同端口与不同指示方式之间的对应 关系, 则可以直接根据第一端口从预设的对应关系中查找得到第一端口对应的指示方式, 将第一端口对应的指示方式作为 301 发送第一探测报文中携带的数据之一。
如图 4 所示, 为一种第一设备与第二设备之间各个端口连接正常状态下连接关系 示例。假定第一设备为检测发起设备, 第二设备为协助设备。其中, 第一设备的第一端口与 第二设备的第二端口之间的链路实现了双通。其中, 第一设备的第一端口向第二设备的第 二端口发送报文所使用的链路称为第一端口的上行链路, 第一设备的第一端口向第二设备 的第二端口发送报文所使用的链路还称为第二端口的下行链路 ; 同理, 第二设备的第二端 口向第一设备的第一端口发送报文所使用的链路称为第二端口的上行链路, 第二设备的第 二端口向第一设备的第一端口发送报文所使用的链路还称为第一端口的下行链路。
在 301 中第一设备在第一端口的上行链路上向第二设备的第二端口发送了第一 探测报文的情况下, 对于第二设备而言分为三种情况 ;
1、 如图 4 所示, 第一端口与第二端口之间的链路连接正常 ; 则, 第二设备将执行 302 ; 在 303 中, 第一设备判断在预设时间内在第一端口的下行链路上是否接收到第二设备 发送的探测响应报文, 如果判断在预设时间内在第一端口的下行链路上接收到第二设备发 送的探测响应报文, 则执行 304 以及后续步骤 ;
2、 如图 5 所示, 第一端口用于向第二端口发送报文的上行链路连接正常, 第二端 口用于向第一端口发送探测响应报文的上行链路断路, 引起第二端口用于向第一端口发送 探测响应报文的上行链路断路的原因可能为光纤断开或者光纤接口未连接到第一端口或 者第二端口等 ; 则,
第二设备可以接收到第一设备通过第一端口发送的第一探测报文, 将执行 302 ; 而由于第二端口的上行链路断路, 第二设备通过第二端口发送给第一设备的探测响应报文 无法通过传输到第一设备中, 因此, 在 303 中, 第一设备判断在预设时间内在第一端口的下 行链路上是否接收到探测响应报文, 判断结果应为否, 进而执行 307 以及后续步骤 ;
3、 如图 6 所示, 第一端口用于向第二端口发送报文的上行链路断路, 引起链路断 路的原因可能为光纤断开或者光纤接口未连接到第一端口或者第二端口等, 第二端口用于 向第一端口发送探测响应报文的上行链路连接正常 ; 则,
第二设备无法接收到第一设备通过第一端口发送的第一探测报文, 不执行 302, 因
此, 不会向第一设备反馈探测响应报文 ; 因此, 在 303 中, 第一设备判断在预设时间内在第 一端口的下行链路上是否接收到探测响应报文, 判断结果应为否, 进而执行 307 以及后续 步骤 ;
4、 如图 7 所示, 第一端口与第二端口之间的链路交叉连接, 第一端口的上行链路 正常连接到第二端口, 但是第二端口的上行链路链接到第一设备的第三端口 ; 第三端口的 上行链路正常连接到第四端口, 但是第四端口的上行链路连接到第一端口, 从而形成了交 叉连接 ; 则,
第二设备的第二端口可以接收到第一设备通过第一端口发送的第一探测报文, 将 执行 302 ; 而由于第二端口的上行链路连接至第一设备的第三端口, 因此, 第二设备通过第 二端口的上行链路向第一设备发送的探测响应报文将发送至第一设备的第三端口 ; 但是, 当第一设备进行端口的链路状态检测时, 一般同时检测所有端口的链路状态, 因此, 这种情 况下,
301 还包括 : 第一设备在第三端口上发送第二探测报文, 该第二探测报文中携带 第三端口的 MAC 地址 ;
302 还包括 : 第二设备在第四端口上接收到所述第二探测报文, 根据第二探测报 文中携带的第三端口 MAC 地址生成第二探测报文对应的探测响应报文, 在第四端口的上行 链路上发送该第二探测报文对应的探测响应报文 ; 则第一设备将在第一端口上接收到第四端口发送的第二探测报文对应的探测响 应报文, 其中携带第三端口的 MAC 地址 ; 因此, 后续 303 中判断结果为在第一端口的下行链 路上接收到一个探测响应报文, 304 中判断所述接收到的探测响应报文中携带的 MAC 地址 与第一端口的 MAC 地址不一致 ; , 从而判断出第一端口的链路处于交叉连接状态 ;
第一设备将在第三端口的下行链路上接收到第二端口发送的第一探测报文对应 的探测响应报文, 其中携带第一端口的 MAC 地址 ; 因此, 与第一设备对第一端口的处理类似 的, 后续第一设备在进行第三端口的处理时, 将判断预设时间内在第三端口的下行链路上 接收到一个探测响应报文, 并且判断接收到的探测响应报文中携带的 MAC 地址与第三端口 的 MAC 地址不一致, 从而判断出第三端口的链路处于交叉连接状态。
可选地, 第二探测报文中还可以携带第三端口对应的指示方式 ; 可选地, 如果第 二探测报文中还可以携带第三端口对应的指示方式, 根据第二探测报文中携带的第三端口 MAC 地址以及第三端口对应的指示方式生成第二探测报文对应的探测响应报文 ; 可选地, 第一探测报文中还可以携带第一端口对应的指示方式 ; 如果第一探测报文中还携带第一端 口对应的指示方式, 根据第一探测报文中携带的第一端口 MAC 地址以及第一端口对应的指 示方式生成第一探测报文对应的探测响应报文 302 : 第二设备在第二端口上接收到所述第 一探测报文, 根据第一探测报文中携带的第一端口 MAC 地址生成第一探测报文对应的探测 响应报文, 在第二端口的上行链路上发送该探测响应报文。
所述探测响应报文包括 : 第一端口的 MAC 地址 ;
其中, 如果第一探测报文中携带了第一端口对应的指示方式, 则探测响应报文中 也携带第一端口对应的指示方式 ; 如果第一探测报文中未携带第一端口对应的指示方式, 则探测响应报文中也不携带第一端口对应的指示方式。
303 : 第一设备判断在预设时间内在第一端口的下行链路上是否接收到一个探测
响应报文, 如果第一设备在预设时间内在第一端口的下行链路上接收到一个探测响应报 文, 执行 304 ; 如果第一设备在预设时间内在第一端口的下行链路上未接收到一个探测响 应报文, 执行 307。
304 : 第一设备判断所述接收到的探测响应报文中携带的 MAC 地址与第一端口的 MAC 地址是否一致 ; 如果所述接收到的探测响应报文中携带的 MAC 地址与第一端口的 MAC 地址一致, 执行 305 ; 如果所述接收到的探测响应报文中携带的 MAC 地址与第一端口的 MAC 地址不一致, 执行 306。
305 : 第一设备确定第一端口与第二端口之间的链路状态为连接正常状态, 根据连 接正常状态对应的指示方式进行指示处理。
306 : 第一设备确定第一端口与第二端口之间的链路状态为光纤交叉相连状态 ; 根据第一端口对应的指示方式以及探测响应报文中携带的指示方式进行指示处理。
307 : 如果在预设时间内第一设备在第一端口的下行链路上未接收到探测响应报 文时, 第一设备确定第一端口与第二端口之间的链路状态为光纤断路状态, 根据光纤断路 状态对应的指示方式进行指示处理。
可选地, 本发明实施例中的指示方式可以有闪灯频率、 端口号、 颜色类型等不同的 实现形式。 当通过闪灯频率实现时, 所述指示方式可以包括 : 闪灯频率 ; 则 305 ~ 307 中第一 设备可以根据闪灯频率进行预设光源的闪灯控制, 从而实现所述指示处理。
当通过端口号实现时, 所述指示方式可以包括 : 端口对应的端口号 ; 则 305 ~ 307 中第一设备可以根据端口号查找到端口号对应的指示信息 ( 如闪灯频率、 颜色等 ), 进而进 行指示处理。
当通过颜色类型实现时, 所述指示方式可以包括 : 颜色标识 ; 则 305 ~ 307 中第一 设备可以根据颜色标识控制预设光源显示颜色标识对应的颜色。
或者, 在实际应用中第一设备也可以支持以上的各种指示方式, 则可以在指示方 式中增加 : 闪灯模式信息 ; 所述闪灯模式信息用于指示具体的指示方式, 例如, 闪灯模式信 息= 0 表示闪灯频率的指示方式, 闪灯模式信息= 1 表示端口号的指示方式, 闪灯模式信息 = 2 表示颜色类型的指示方式等。
其中, 本发明实施例中的所述指示方式并不限制, 只要能够将不同的状态以及不 同的端口区分开即可。通过指示可以使得工程安装人员更为明确的得知端口链路状态 ; 并 且, 在存在光纤交叉连接时, 可以根据端口的不同指示, 得到是那两个端口的光纤出现了交 叉连接, 进一步提高工程安装人员纠错的效率, 节省成本。例如, 在图 7 所示的光纤交叉连 接下, 第一设备在第一端口的下行链路上接收到的探测响应报文是第四端口发来的, 该探 测响应报文中携带的指示方式将是第三端口对应的指示方式, 因此, 306 中将根据第一端口 对应的指示方式以及第三端口对应的指示方式向用户进行状态指示, 从而安装工程人员马 上可以获知是第一端口和第三端口的光纤出现了交叉连接的情况, 从而可以迅速进行光纤 连接调整。
在图 3 所示的实施例中, 也可以不在第一探测报文以及探测响应报文中携带端口 的指示方式, 而是为光纤交叉连接状态预设对应的指示方式, 则 306 中确定第一端口与第 二端口之间的链路状态为光纤交叉相连状态时, 可以直接根据预设的光纤交叉相连状态对
应的指示方式进行指示处理。
可选地, 本发明实施例中的第一探测报文以及探测响应报文可以通过扩展的 DLDP 报文实现, 所述扩展的 DLDP 报文在 DLDP 报文的基础上增加指示字段以及源端口 MAC 字段, 所述指示字段用于携带端口的指示方式, 源端口 MAC 字段用于携带端口的 MAC 地址。
如图 8 所示, 为本发明实施例扩展的 DLDP 报文的一种实现结构, Reserved 字段作 为指示字段, 用于携带端口的指示方式 ; 而 Host port Mac 字段即为源端口 MAC 字段。
Host port Mac 字段可以设置为 48 位。 当扩展的 DLDP 报文作为第一探测报文时, 该字段设置为第一端口的 MAC 地址 ; 当扩展的 DLDP 报文作为探测响应报文时, 该字段设置 为所述探测响应报文对应的第一探测报文中携带的 MAC 地址。
Reserved 字段可以设置为 16 位 ; 可选地, 高 4 位可以用于指示闪灯模式信息 LDE_ MODE, 低 12 位可以用于指示闪灯信息 LDE_INFO。
例如, LDE_MODE = 0 ;
LDE_INFO : 闪灯频率
LDE_INFO 中闪灯频率的具体频率可以为 : 1-8Hz( 人眼可通过比较的方式识别 ) ;
LED_MODE = 1 LED_INFO : 端口号
LED_MODE = 2
LED_INFO : 颜色类型。
在实际应用中, 所述指示方式可以通过以下方式完成 : 预先设置 link 灯和 ack 灯, 则, 可以预先设置不同端口与闪灯频率之间的对应关系, 并且, 设定连接正常状态为点亮 link 灯, ack 灯灭 ; 光纤断路状态为 : link 灯和 ack 灯均灭 ; 而当出现光纤交叉相连状态时, link 灯按照探测报文发送端口的闪灯频率进行指示, ack 灯按照探测响应报文中携带的闪 灯频率进行指示 ; 则,
305 中, 通过控制 link 灯亮、 ack 灯灭进行连接正常状态的指示 ;
306 中, 根据第一端口的闪灯频率控制 link 灯, 根据探测响应报文中的闪灯频率 控制 ack 灯。
307 中, 通过控制 link 灯以及 ack 灯均灭进行光纤断路状态的指示。
另外, 现有的 DLDP 中包括普通模式和加强模式两种工作模式, 为了尽量不改变现 有的 DLDP, 在实际应用中, 可以扩展设置一个工作模式, 例如上电模式, 进而在上电模式的 探测状态下, 可以使用本发明实施例的链路状态检测方式进行链路状态检测, 此时, 如图 8 所示, 可以在扩展的 DLDP 报文中再设置 : DLDP type 字段, 用于指示所述扩展的 DLDP 报文 是否是上电模式下的探测报文或者探测响应报文。
与以上的方法相对应的, 本发明实施例还提供一种链路状态检测装置, 该装置可 以设置于链路检测发起设备中 ; 如图 9 所示, 该装置包括第一发送单元 910、 第一判断单元 920、 第一状态确定单元 930、 第二判断单元 940、 第二状态确定单元 950 和第三状态确定单 元 960, 其中 :
所述第一发送单元 910, 用于在第一端口的上行链路上向第二设备的第二端口发 送第一探测报文, 所述第一探测报文包括 : 第一端口的 MAC 地址 ;
所述第一判断单元 920, 用于判断预设时间内在第一端口的下行链路上是否接收
到探测响应报文 ;
所述第一状态确定单元 930, 用于第一判断单元判断结果为未接收到探测响应报 文时, 确定第一端口与第二端口之间的链路状态为光纤断路状态 ;
所述第二判断单元 940, 用于第一判断单元判断结果为接收到探测响应报文时, 判 断所述探测响应报文中携带的 MAC 地址与第一端口的 MAC 地址是否一致 ;
所述第二状态确定单元 950, 用于第二判断单元判断结果为一致时, 确定第一端口 与第二端口之间的链路状态为连接正常状态 ;
所述第三状态确定单元 960, 用于第二判断单元判断结果为不一致时, 确定第一端 口与第二端口之间的链路状态为光纤交叉相连状态。
可选地, 第三状态确定单元 960 还可以用于 : 第二判断单元判断所述探测响应报 文中携带的 MAC 地址与第一端口的 MAC 地址不一致时, 确定第一端口与探测响应报文中携 带的 MAC 地址对应的端口之间光纤交叉错连。
可选地, 第三状态确定单元 960 还可以用于 : 确定链路状态为光纤交叉相连状态 时, 根据光纤交叉相连状态对应的指示方式进行指示处理。
另外, 所述第一探测报文中还可以包括 : 第一端口对应的指示方式 ; 相应的, 接收 到的探测响应报文中携带指示方式 ;
则, 第三状态确定单元 960 具体可以用于 : 根据第一端口对应的指示方式以及探 测响应报文中携带的指示方式进行指示处理。
可选地, 第二状态确定单元 950 还可以用于 : 确定链路状态为连接正常状态时, 根 据连接正常状态对应的指示方式进行指示处理 ;
第一状态确定单元 930 还可以用于 : 确定链路状态为光纤断路状态时, 根据光纤 断路状态对应的指示方式进行指示处理。
可选地, 所述第一探测报文以及探测响应报文可以通过扩展的 DLDP 协议报文实 现, 所述扩展的 DLDP 协议报文在 DLDP 协议报文的基础上增加指示字段以及源端口 MAC 字 段, 所述指示字段用于携带端口的指示方式, 源端口 MAC 字段用于携带端口的 MAC 地址。
本发明实施例还提供另一种链路状态检测装置, 该装置可以设置于链路检测协助 设备中, 以协助链路检测发起设备进行链路状态检测, 如图 10 所示, 该装置可以包括接收 单元 1010、 生成单元 1020 和第二发送单元 1030, 其中 :
所述接收单元 1010, 用于在第二端口的下行链路上接收第一设备通过第一端口发 来的第一探测报文, 所述第一探测报文包括 : 第一端口的 MAC 地址 ;
所述生成单元 1020, 用于根据第一探测报文生成探测响应报文, 所述探测响应报 文包括 : 第一端口的 MAC 地址 ;
所述第二发送单元 1030, 用于在第二端口的上行链路上向第一设备发送该探测响 应报文, 以便第一设备根据该探测响应报文携带的 MAC 地址以及接收到该探测响应报文的 端口的 MAC 地址判断接收到该探测响应报文的端口与第二端口之间的链路状态。
可选地, 第一探测报文还可以包括 : 第一端口对应的指示方式 ; 相应的, 生成单元 1020 还用于 : 生成单元 1020 根据第一端口对应的指示方式以及第一端口的 MAC 地址生成 所述探测响应报文。
可选地, 所述第一探测报文以及探测响应报文可以通过扩展的 DLDP 报文实现, 所述扩展的 DLDP 报文在 DLDP 报文的基础上增加指示字段以及源端口 MAC 字段, 所述指示字 段用于携带端口的指示方式, 源端口 MAC 字段用于携带端口的 MAC 地址。
另外, 如图 11 所示, 本发明实施例还提供一种链路状态检测系统, 该系统包括第 一链路状态检测装置 1110 和第二链路状态检测装置 1120, 其中 :
所述第一链路状态检测装置 1110, 用于在第一端口的上行链路上向第二设备的第 二端口发送第一探测报文, 所述第一探测报文包括 : 第一端口的 MAC 地址 ; 判断在预设时间 内在第一端口的下行链路上是否接收到探测响应报文 ; 如果在预设时间内在第一端口的下 行链路上未接收到探测响应报文, 确定第一端口与第二端口之间的链路状态为光纤断路状 态; 如果在预设时间内在第一端口的下行链路上接收到探测响应报文, 判断所述探测响应 报文中携带的 MAC 地址与第一端口的 MAC 地址是否一致 ; 如果所述探测响应报文中携带的 MAC 地址与第一端口的 MAC 地址一致, 确定第一端口与第二端口之间的链路状态为连接正 常状态 ; 如果所述探测响应报文中携带的 MAC 地址与第一端口的 MAC 地址不一致, 确定第一 端口与第二端口之间的链路状态为光纤交叉相连状态 ;
所述第二链路状态检测装置 1120, 用于在第二端口的下行链路上接收第一设备通 过第一端口发来的第一探测报文, 所述第一探测报文包括 : 第一端口的 MAC 地址 ; 根据第一 探测报文生成探测响应报文, 所述探测响应报文包括 : 第一端口的 MAC 地址 ; 在第二端口 的上行链路上向第一设备发送该探测响应报文, 以便第一设备根据该探测响应报文携带的 MAC 地址以及接收到该探测响应报文的端口的 MAC 地址判断接收到该探测响应报文的端口 与第二端口之间的链路状态。
以上的装置及系统中, 在第一端口的上行链路上向第二设备的第二端口发送第一 探测报文, 所述第一探测报文包括第一端口的 MAC 地址 ; 判断在预设时间内在第一端口的 下行链路上是否接收到探测响应报文 ; 如果在预设时间内在第一端口的下行链路上接收到 探测响应报文, 判断所述探测响应报文中携带的 MAC 地址与第一端口的 MAC 地址是否一致 ; 如果所述探测响应报文中携带的 MAC 地址与第一端口的 MAC 地址一致, 确定第一端口与第 二端口之间的链路状态为连接正常状态 ; 如果所述探测响应报文中携带的 MAC 地址与第一 端口的 MAC 地址不一致, 确定第一端口与第二端口之间的链路状态为光纤交叉相连状态 ; 在预设时间内在第一端口的下行链路上未接收到探测响应报文, 确定第一端口与第二端口 之间的链路状态为光纤断路状态。从而实现了对于设备端口的链路状态检测。
本领域普通技术人员可以理解, 实现上述实施例方法的过程可以通过程序指令相 关的硬件来完成, 所述的程序可以存储于可读取存储介质中, 该程序在执行时执行上述方 法中的对应步骤。所述的存储介质可以如 : ROM/RAM、 磁碟、 光盘等。
以上所述仅是本发明的实施方式, 应当指出, 对于本技术领域的普通技术人员来 说, 在不脱离本发明原理的前提下, 还可以做出若干改进和润饰, 这些改进和润饰也应视为 本发明的保护范围。