一种连通性探测方法、控制器和设备与流程

文档序号:19431294发布日期:2019-12-17 16:50阅读:222来源:国知局
一种连通性探测方法、控制器和设备与流程

本发明涉及通信技术领域,更具体地说,涉及一种连通性探测方法、控制器和设备。



背景技术:

等价多路径路由(英文:equal-costmulti-pathrouting,简称:ecmp)为到达同一个目的因特网协议(英文:internetprotocol,简称:ip)地址或者目的网段间存在的多条开销(cost)值相等的不同路径。利用ecmp协议可以在等值的多路径中实现多路径负载均衡和链路备份。

现有的ecmp路径的连通性探测方法通过增加探测报文中的存活时间(英文:timetolive,简称:ttl)值来实现路径连通性探测,每当探测报文经过一个路由器,其ttl值就会减1。当探测报文中的ttl为0时,接收方便取消丢弃接收的探测报文,并发送一个互联网控制报文协议(英文:internetcontrolmessageprotocol,简称:icmp)报文给所述探测报文的发送端。

具体地以图1-3为例,探测报文的发送端(源设备)1与目的设备2之间存在两条路径,分别为设备1-设备a-设备b-设备2和设备1-设备a-设备c-设备2。

现有技术中,设备1会首先向设备2发送一ttl值等于1的探测报文,该探测报文经过设备a后,ttl值减1变为0,此时设备a将该探测报文丢弃,并向设备1返回一icmp报文,告知设备1路径不可达。

进一步,设备1再次向设备2发送一ttl值等于2的探测报文,该探测报文依次经过设备a、设备b后,ttl值变为0,此时设备b将该探测报文丢弃,并向设备1返回一icmp报文,告知设备1路径不可达。

更进一步,设备1再次向设备2发送一ttl值等于3的探测报文,该探测报文依次经过设备a、设备b后,ttl值变为1,此时报文会继续发送至设备2,并在到达设备2后ttl值变为0,设备2发现目的地址为自己的ip地址,返回一icmp报文,告知设备1路径可达。

虽然现有技术中的上述方法能够实现对设备1与设备2间的路径连通性的探测,但本发明的发明人发现,设备1与设备2间可能包括多条路径,而每条路径的选择都是由设备自己决定的,例如上述示例中设备a是选择设备b发送探测报文,还是选择设备c发送探测报文,是由设备a自己决定的。且设备a每次只能选择一个设备,即每次只能实现对一条路径的连通性探测,那么现有技术也就无法保证对设备1与设备2之间存在的所有路径的连通性都进行探测。



技术实现要素:

有鉴于此,本发明提供一种连通性探测方法、控制器和设备,以实现对源设备与目的设备间存在的所有路径的连通性探测。

本发明的第一方面公开了一种连通性探测方法,包括:

确定源设备与目的设备之间存在n条等价路径;所述n大于等于2;

生成n个探测报文,所述n个探测报文中的任意一个包括源地址、目的地址和用于表示一条等价路径的标签列表;其中,所述源地址为所述源设备的因特网协议ip地址,所述目的地址为所述目的设备的ip地址;所述标签列表包括指针和多个顺序排列的标签,每个标签用于表示一条直连路径;其中,所述直连路径为仅包括两个网络设备且以所述两个网络设备为端点的路径;

向所述源设备发送所述n个探测报文,以使所述源设备将所述n个探测报文分别发送给所述n条等价路径中对应的一条等价路径以检测所述n条等价路径的连通性。

结合第一方面,在第一方面的第一种可能的实现方式中,所述确定源设备与目的设备之间存在n条等价路径之前,所述方法还包括:

收集网络拓扑;

根据所述网络拓扑为网络中的每条直连路径分配标签;

向所述网络中的每个网络设备发送所述网络设备所在的每条直连路径的标签;

所述确定源设备与目的设备之间存在n条等价路径包括:根据所述网络拓扑确定所述源设备与目的设备之间存在n条等价路径。

本发明的第二方面公开了另一种连通性探测方法,包括:

第一设备接收探测报文,其中,所述探测报文包括源地址、目的地址和用于表示一条等价路径的标签列表;其中,所述源地址为所述等价路径的源设备的因特网协议ip地址,所述目的地址为所述等价路径的目的设备的ip地址;所述标签列表包括指针和多个顺序排列的标签,每个标签用于表示一条直连路径;其中,所述直连路径为仅包括两个网络设备且以所述两个网络设备为端点的路径;

所述第一设备依据所述探测报文生成探测响应报文;其中所述探测响应报文包括源地址和目的地址,所述源地址为所述第一设备的ip地址,所述目的地址为所述源设备的ip地址;

所述第一设备将所述探测响应报文发送至所述源设备;

所述第一设备依据所述指针指向的当前标签,确定所述探测报文的出端口,所述出端口对应所述等价路径上的下一直连路径;

所述第一设备通过所述出端口向所述下一直连路径发送所述探测报文。

结合第二方面,在第二方面的第一种可能的实现方式,当所述指针不指向所述标签列表中的最后一个标签时,所述发送所述探测报文之前,所述方法还包括:所述第一设备控制所述指针沿所述标签列表顺序移动到下一标签位置;或

当所述指针指向所述标签列表中的最后一个标签时,所述发送所述探测报文前,所述方法还包括:所述第一设备删除所述标签列表中的指针。

结合第二方面、第二方面的第一种可能的实现方式中的任一种实现方式,在第二方面的第二种可能的实现方式下,所述方法还包括:

所述第一设备接收并存储控制器发送的所述源设备所在的每条直连路径的标签与所述直连路径的对应关系。

结合第二方面、第二方面的第一种可能的实现方式中的任一种实现方式,在第二方面的第三种可能的实现方式下,所述方法还包括:所述第一设备通过扩展内部网关协议igp进行多协议标签交换mpls标签分配,以获得所述第一设备所在的每条直连路径的标签,并存储每条直连路径与所述直连路径的标签的对应关系。

本发明的第三方面公开了再一种连通性探测方法,包括:

源设备接收探测报文,其中,所述探测报文包括源地址、目的地址和用于表示一条等价路径的标签列表;其中,所述源地址为所述源设备的因特网协议ip地址,所述目的地址为所述等价路径的目的设备的ip地址;所述标签列表包括指针和多个顺序排列的标签,每个标签用于表示一条直连路径;其中,所述直连路径为仅包括两个网络设备且以所述两个网络设备为端点的路径;

所述源设备依据所述指针指向的第一标签,确定所述第一标签对应的出端口,所述出端口对应所述等价路径上的下一直连路径;

所述源设备控制所述指针沿所述标签列表顺序移动到第二标签位置;

所述源设备依据所述出端口,通过所述下一直连路径发送所述探测报文以检测所述等价路径的连通性。

结合第三方面,在第三方面的第一种可能的实现方式,还包括:

当所述源设备接收到所述等价路径上的第一设备发送的探测响应报文时,确定所述源设备与所述第一设备之间的路径连通;

其中,所述第一设备为所述等价路径上除所述源设备之外的设备。

结合第三方面、第三方面的第一种可能的实现方式中的任一种实现方式,在第三方面的第二种可能的实现方式下,当所述源设备在预设时间内没有收到所述目的设备发送的探测响应报文时,所述源设备确定所述等价路径异常;所述方法还包括:

所述源设备根据所述等价路径上的其他设备发送的探测响应报文确定故障设备。

结合第三方面、第三方面的第一种可能的实现方式、第三方面的第二种可能的实现方式中的任一种实现方式,在第三方面的第三种可能的实现方式下,所述方法还包括:

所述源设备接收并存储控制器发送的所述源设备所在的每条直连路径的标签与所述直连路径的对应关系。

本发明的第四方面公开了一种控制器,包括:

等价路径数量确定单元,用于确定源设备与目的设备之间存在n条等价路径;所述n大于等于2;

探测报文生成单元,用于生成n个探测报文,所述n个探测报文中的任意一个包括源地址、目的地址和用于表示一条等价路径的标签列表;其中,所述源地址为所述源设备的因特网协议ip地址,所述目的地址为所述目的设备的ip地址;所述标签列表包括指针和多个顺序排列的标签,每个标签用于表示一条直连路径;其中,所述直连路径为仅包括两个网络设备且以所述两个网络设备为端点的路径;

探测报文发送单元,用于向所述源设备发送所述n个探测报文,以使所述源设备将所述n个探测报文分别发送给所述n条等价路径中对应的一条等价路径以检测所述n条等价路径的连通性。

结合第四方面,在第四方面的第一种可能的实现方式,还包括:

收集单元,用于收集网络拓扑;

标签分配单元,用于根据所述网络拓扑为网络中的每条直连路径分配标签;

标签发送单元,用于向所述网络中的每个网络设备发送所述网络设备所在的每条直连路径的标签;

所述等价路径数量确定单元具体用于,根据所述网络拓扑确定所述源设备与目的设备之间存在n条等价路径。

本发明的第五方面公开了一种设备,包括:

接收单元,用于接收探测报文,其中,所述探测报文包括源地址、目的地址和用于表示一条等价路径的标签列表;其中,所述源地址为所述等价路径的源设备的因特网协议ip地址,所述目的地址为所述等价路径的目的设备的ip地址;所述标签列表包括指针和多个顺序排列的标签,每个标签用于表示一条直连路径;其中,所述直连路径为仅包括两个网络设备且以所述两个网络设备为端点的路径;

探测响应报文生成单元,用于依据所述探测报文生成探测响应报文;其中所述探测响应报文包括源地址和目的地址,所述源地址为所述设备的ip地址,所述目的地址为所述源设备的ip地址;

第一发送单元,用于将所述探测响应报文发送至所述源设备;

确定单元,用于依据所述指针指向的当前标签,确定所述探测报文的出端口,所述出端口对应所述等价路径上的下一直连路径;

第二发送单元,用于通过所述出端口向所述下一直连路径发送所述探测报文。

结合第五方面,在第五方面的第一种可能的实现方式,还包括指针处理单元,所述指针处理单元用于:

当所述指针不指向所述标签列表中的最后一个标签时,控制所述指针沿所述标签列表顺序移动到下一标签位置;或,

当所述指针指向所述标签列表中的最后一个标签时,删除所述标签列表中的指针。

结合第五方面、第五方面的第一种可能的实现方式中的任一种实现方式,在第五方面的第二种可能的实现方式下,还包括:

接收单元,用于接收控制器发送的所述源设备所在的每条直连路径的标签与所述直连路径的对应关系;

存储单元,用于存储所述接收单元接收的对应关系。

结合第五方面、第五方面的第一种可能的实现方式中的任一种实现方式,在第五方面的第三种可能的实现方式下,还包括:

标签分配单元,用于通过扩展内部网关协议igp进行多协议标签交换mpls标签分配,以获得所述第一设备所在的每条直连路径的标签,并存储每条直连路径与所述直连路径的标签的对应关系。

本发明的第六方面公开了一种设备,包括:

接收单元,用于接收探测报文,其中,所述探测报文包括源地址、目的地址和用于表示一条等价路径的标签列表;其中,所述源地址为所述源设备的因特网协议ip地址,所述目的地址为所述等价路径的目的设备的ip地址;所述标签列表包括指针和多个顺序排列的标签,每个标签用于表示一条直连路径;其中,所述直连路径为仅包括两个网络设备且以所述两个网络设备为端点的路径;

第一确定单元,用于依据所述指针指向的第一标签,确定所述第一标签对应的出端口,所述出端口对应所述等价路径上的下一直连路径;

指针控制单元,用于控制所述指针沿所述标签列表顺序移动到第二标签位置;

发送单元,用于依据所述出端口,通过所述下一直连路径发送所述探测报文以检测所述等价路径的连通性。

结合第六方面,在第六方面的第一种可能的实现方式,所述第一确定单元还用于当接收到所述等价路径上的第一设备发送的探测响应报文时,确定所述源设备与所述第一设备之间的路径连通;

其中,所述第一设备为所述等价路径上除所述源设备之外的设备。

结合第六方面、第六方面的第一种可能的实现方式中的任一种实现方式,在第六方面的第二种可能的实现方式下,还包括:

第二确定单元,用于当在预设时间内没有收到所述目的设备发送的探测响应报文时,确定所述等价路径异常;以及根据所述等价路径上的其他设备发送的探测响应报文确定故障设备。

结合第六方面、第六方面的第一种可能的实现方式、第六方面的第二种可能的实现方式中的任一种实现方式,在第六方面的第三种可能的实现方式下,还包括:

接收单元,用于接收控制器发送的所述源设备所在的每条直连路径的标签与所述直连路径的对应关系。

存储单元,用于存储所述接收单元接收的对应关系。

本发明预先为网络中每条直连路径分配标签,且当源设备与目的设备间存在n条等价路径时,相应地生成n个探测报文,进而依据每个探测报文中的标签列表实现探测报文沿指定等价路径被转发。由于本发明中每一探测报文中的标签列表用于表示一条等价路径,且各个探测报文中的标签列表不同,因此本发明依据标签列表中的标签顺序完成n个探测报文的转发能够遍历源设备与目的设备间存在的所有等价路径。且在探测报文的转发过程中,第一设备(即中间设备)在继续依据标签列表顺序转发探测报文的同时,还生成探测响应报文,并将该探测响应报文发送给源设备,因此本发明中的源设备可以通过判断是否接收到各个中间设备反馈的探测响应报文,来判断该标签列表表示的等价路径的连通性。因此,本发明能够实现对源设备与目的设备间存在的所有等价路径的连通性探测。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍。

图1为现有技术中一种连通性探测方法的示意图;

图2为现有技术中另一种连通性探测方法的示意图;

图3为现有技术中再一种连通性探测方法的示意图;

图4为本发明中标签分配过程示意图;

图5为本发明实施例提供的一种连通性探测方法的流程示意图;

图6为本发明中标签列表的结构示意图;

图7为本发明实施例提供的另一种连通性探测方法的流程示意图;

图8为本发明实施例提供的再一种连通性探测方法的流程示意图;

图9为本发明实施例提供的一种控制器的结构示意图;

图10为本发明实施例提供的另一种控制器的结构示意图;

图11为本发明实施例提供的一种设备的结构示意图;

图12为本发明实施例提供的另一种设备的结构示意图;

图13为本发明实施例提供的再一种设备的结构示意图;

图14为本发明实施例提供的再一种设备的结构示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

在本发明中,本发明预先为网络中每个直连路径分配标签,其中,所述直连路径为仅包括两个网络设备且以所述两个网络设备为端点的路径。例如图4所示,源设备为设备1、目的设备为设备2、中间设备包括设备a、设备b和设备c,那么本发明预先为设备1与设备a间的直连路径分配第一标签8001,为设备a与设备b间的直连路径分配第二标签8011,为设备b与设备2间的直连路径分配第三标签8021,为设备a与设备c间的直连路径分配第四标签8012,为设备c与设备2间的直连路径分配第五标签8022。

具体地本发明中为网络中每条直连路径分配标签的方法可以包括:

步骤001,收集网络拓扑;

步骤002,根据所述网络拓扑为网络中的每条直连路径分配标签;

步骤003,向所述网络中的每个网络设备发送所述网络设备所在的每条直连路径的标签。

具体在本发明中,本发明通过采集各个设备间的直连路径,以得到由各个设备构成的网络拓扑,进而依据所述网络拓扑,为每条直连路径分配标签。可选地,本发明可以由网络中的控制器controller采集每个设备间的连接关系,以得到各个设备间的直连路径,进而得到整个网络的网络拓扑,此时controller为该网络中的每个直连路径分配标签。然后,controller将分配好的标签下发到相关设备中。

此外,本发明还可以通过扩展内部网关协议(英文:interiorgatewayprotocol,简称igp)进行多协议标签交换(英文:multi-protocollabelswitching,简称:mpls)标签分配,以实现对各个设备间的直连路径的标签分配。

具体地,如图5所示,其示出了本发明实施例提供的一种连通性探测方法的流程示意图,该方法被控制器执行,所述方法具体包括:

步骤101,确定源设备与目的设备之间存在n条等价路径;所述n大于等于2。

具体地,本发明可以根据所述网络拓扑确定所述源设备与目的设备之间存在n条等价路径。

仍以图4所示为例,那么本发明可以确定源设备1与目的设备2之间存在两条等价路径,分别为:设备1-设备a-设备b-设备2和设备1-设备a-设备c-设备2。

步骤102,生成n个探测报文。

在本发明中,当本发明完成对整个网络中各个设备间的直连路径的标签分配后,本发明首先确定源设备与目的设备间存在的等价路径数量,并生成相同数量的探测报文。

其中,所述n个探测报文中的任意一个包括源地址、目的地址和用于表示一条等价路径的标签列表。其中,所述源地址为所述源设备的因特网协议(英文:internetprotocol,简称:ip)地址,所述目的地址为所述目的设备的ip地址;所述标签列表包括指针和多个顺序排列的标签,每个标签用于表示一条直连路径。当本发明中指针指向所述多个顺序排列的标签中的一个标签时,能够控制所述探测报文向所述一个标签对应的出端口进行转发。其中,不同探测报文中的标签列表不同,出端口对应所述探测报文继续转发的下一直连路径。

步骤103,向所述源设备发送所述n个探测报文,以使所述源设备将所述n个探测报文分别发送给所述n条等价路径中对应的一条等价路径以检测所述n条等价路径的连通性。

具体仍以图4所示为例,本发明中源设备1与目的设备2间包括两条等价路径,分别为:设备1-设备a-设备b-设备2和设备1-设备a-设备c-设备2。此时,本发明会依据该两条等价路径生成两个探测报文,如第一探测报文和第二探测报文。该两个探测报文中均包括设备1的ip地址、设备2的ip地址和一个标签列表,其中第一探测报文中包括第一标签列表,所述第一标签列表用于表示设备1-设备a-设备b-设备2这条路径,第二探测报文中包括第二标签列表,所述第二标签列表用于表示设备1-设备a-设备c-设备2这条路径。

在本发明中,欲探测设备1与设备2间包括的所有路径的连通性,本发明会将该两个探测报文均下发给设备1,以控制设备1首先分别按照该两个探测报文中的标签列表中的第一标签,将探测报文转发至第一标签对应的第一设备。

对于本发明中的标签列表,其包括指针和多个顺序排列的标签,该多个顺序排列的标签即指示的一条路径。仍以图4所示为例,用于表示设备1-设备a-设备b-设备2的第一标签列表中的标签包括顺序排列的第一标签8001、第二标签8011和第三标签8021,用于表示设备1-设备a-设备c-设备2的第二标签列表中的标签包括顺序排列的第一标签8001、第四标签8012和第五标签8022,其中标签列表的具体结构形式可参阅图6所示。与此同时,标签列表中还包括指针,指针用于指向该多个顺序排列的标签中的一个标签。具体地,当所述指针指向所述多个顺序排列的标签中的一个标签时,控制所述探测报文向所述一个标签对应出端口进行转发。

为了便于对本发明实施例的进一步说明,下面本发明以探测设备1-设备a-设备b-设备2这一等价路径的连通性为例继续说明。如图7所示,其示出了本发明实施例提供的另一种连通性探测方法的流程示意图,该方法被第一设备执行,方法具体包括:

步骤201,第一设备接收探测报文。

其中,所述第一设备可以是一条等价转发路径上除源设备和目的设备之外的任意设备。所述探测报文包括源地址、目的地址和用于表示一条等价路径的标签列表。其中,所述源地址为所述等价路径的源设备(即设备1)的ip地址,所述目的地址为所述等价路径的目的设备(即设备2)的ip地址;所述标签列表包括指针和多个顺序排列的标签,每个标签用于表示一条直连路径;其中,所述直连路径为仅包括两个网络设备且以所述两个网络设备为端点的路径。

在本实施例中,假设第一设备为设备a,本发明中的设备1会首先依据探测报文的标签列表中指针指向的第一标签,确定该第一标签的出端口,经由该出端口向第一标签对应的设备a发送探测报文。

在本发明中,出端口是用于确定探测报文继续转发的下一直连路径的。具体在本实施例中,以设备a作为探测报文发送端的直连路径包括两条,那么对应的,设备a上会包括两个出端口,该两个出端口分别对应设备a与设备b间的直连路径,和设备a与设备c间的直连路径。本发明为了保证设备a成功无误地发送到设备b,则需要首先依据指针指向的第一标签确定设备a与设备b间的直连路径对应的出端口,如出端口1,只要设备a将探测报文从该出端口1发出,则保证了探测报文会经由设备a与设备b间的直连路径发送至设备b。

需要说明的是,在实际应用过程中,源设备中探测报文的标签列表中,指针一般都是指向的第一个标签。

本实施例中的第一标签为8001,第二标签为8011,第三标签为8021,此时标签列表可以表示为:8001*/8011/8021,其中*为指针,此时表示指针指向第一标签8001。具体在发明中,如果当前指针指向于第一标签8001,则用于告知设备1将探测报文向第一标签8001对应的出端口进行转发,即转发至设备a。如果当前指针指向于第二标签8011,则用于告知设备a将探测报文继续向第二标签8011对应的出端口进行转发,即转发至设备b。

那么具体在本实施例中,设备a接收到的标签列表为8001/8011*/8021,即指针指向第二标签8011。

在本实施例中可选的,第一设备可以通过接收并存储控制器发送的所述源设备所在的每条直连路径的标签与所述直连路径的对应关系,也可通过igp进行mpls标签分配,以获得所述第一设备所在的每条直连路径的标签,并存储每条直连路径与所述直连路径的标签的对应关系。

步骤202,第一设备依据所述探测报文生成探测响应报文。其中探测响应报文包括源地址和目的地址,所述源地址为所述第一设备的ip地址,所述目的地址为所述源设备的ip地址。

在本实施例中,设备a在接收到探测报文后,会依据该探测报文生成探测响应报文,该探测响应报文以设备a的ip地址作为源地址,以设备1的ip地址作为目的地址。

步骤203,第一设备将所述探测响应报文发送至所述源设备。

设备a在生成探测响应报文后,依据探测响应报文中的目的地址,即设备1的ip地址,将探测响应报文发送至设备1。

步骤204,第一设备依据指针指向的当前标签,确定所述探测报文的出端口,所述出端口对应所述等价路径上的下一直连路径。

在本实施例中,设备a包括两个出端口,如出端口1对应设备a与设备b间的直连路径,出端口2对应设备a与设备c间的直连路径。具体地,设备a在继续转发探测报文时,首先依据指针指向的第二标签8011确定探测报文进行后续转发的出端口为出端口1,通过该出端口1将探测报文沿设备a与设备b间的直连路径继续转发。

步骤205,第一设备通过所述出端口向所述下一直连路径发送所述探测报文。

在本实施例中,设备a依据第二标签8011,确定出第二标签8011对应的出端口,进而将探测报文从该出端口继续向设备b进行转发。

在本发明上述实施例中,当指针不指向所述标签列表中的最后一个标签时,在步骤205中第一设备发送所述探测报文之前,所述方法还包括:第一设备控制所述指针沿所述标签列表顺序移动到下一标签位置。

在本发明中,当第一设备在确定探测报文进行后续转发的出端口后,第一设备便将指针沿所述标签列表顺序移动到下一标签位置。具体地,即本实施例中的设备a将指针*顺序移动到第三标签8021后面,此时的标签列表为:8001/8011/8021*,以用于告知设备b,设备b继续转发探测报文的转发路径为第三标签8021对应的出端口,即具体向设备c(第二设备)继续转发探测报文。

需要说明的是在本实施例中,设备a在接收到设备1发送的探测报文后,一共包括两个处理动作,一个处理动作为步骤202至步骤203,生成探测响应报文,并将探测响应报文发送至设备1;另一处理动作为步骤204-步骤205,设备a控制指针沿标签列表顺序移动到下一标签位置,并完成探测报文的继续转发。因此,本发明上述实施例只是示例性实施例,本发明对于上述两个处理动作的执行顺序不做限定。

当然,对于本发明上述实施例,其第一设备也可以为设备b,其设备b的处理动作与设备a的处理动作相同,即在接收到设备a发送的探测报文后,生成第二探测响应报文,并将第二探测响应报文发送至设备1,并继续控制指针沿标签列表顺序移动到下一标签位置,控制探测报文的继续转发。其唯一不同在于,设备b生成第二探测响应报文中的源地址为设备b的ip地址,目的地址仍为设备1的ip地址。

在本发明另一个实施例中,如果当指针指向所述标签列表中的最后一个标签时,在步骤205第一设备发送所述探测报文之前,所述方法还包括:第一设备删除所述标签列表中的指针。

在本实施例中,第一设备为设备b。设备b接收到设备a发送的探测报文后,继续控制指针沿所述标签列表顺序移动到下一标签位置,此时探测报文中标签列表为:8001/8011/8021*,显然指针已经移动到了标签列表中最后一个标签的位置处,此时设备b依据指针指向的最后一个标签8021,确定该最后一个标签8021对应的直连路径,将探测报文发送至设备2。

需要说明的是,在本实施例中,由于当前指针已经指向了标签列表中的最后一个标签,那么当设备b把探测报文发送至设备2前,设备b会删除标签列表中的指针。此时,设备2接收到的探测报文中的标签列表中不再包括指针,那么当设备2接收到探测报文,检测到标签列表中并不包括指针时,不再继续转发探测报文,而只向设备1返回一探测响应报文,该探测响应报文中的源地址为设备2的ip地址,目的地址为设备1的ip地址。

最后还需要说明的是,在有些情况下,如本发明附图4,源设备1与目的设备2间包括的两条等价路径的前段直连路径相同,即对于该两条等价路径均需要设备1先发送探测报文至设备a,那么此时,本发明在生成标签列表时,标签列表中可以不包括前段相同的直连路径的标签,而只包括从分支点开始的后段直连路径的标签,例如,对于上述实施例中的第一标签列表和第二标签列表来说,其第一标签列表可以为8011*/8021,第二标签列表为8012*/8022。当设备a接收到包括第一标签列表的第一探测报文时,将第一探测报文按照标签8011指向的出端口进行转发,当设备a接收到包括第二标签列表的第二探测报文时,将第二探测报文按照标签8012指向的出端口进行转发。

因此应用本发明上述技术方案,本发明预先为网络中每条直连路径分配标签,且当源设备与目的设备间存在n条等价路径时,相应地生成n个探测报文,进而依据每个探测报文中的标签列表实现探测报文沿指定直连路径被转发。由于本发明中每一探测报文中的标签列表用于表示一条等价路径,且各个探测报文中的标签列表不同,因此本发明依据标签列表中的标签顺序完成n个探测报文的转发能够遍历源设备与目的设备间存在的所有等价路径。且在探测报文的转发过程中,第一设备(即中间设备)在继续依据标签列表顺序转发探测报文的同时,还生成探测响应报文,并将该探测响应报文发送给源设备,因此本发明中的源设备可以通过判断是否接收到各个中间设备反馈的探测响应报文,来实现判断该标签列表表示的等价路径的连通性。因此,本发明能够实现对源设备与目的设备间存在的所有路径的连通性探测。

基于前文本发明实施例提供的一种连通性探测方法,本发明还提供一种连通性探测方法,如图8所示,该方法被源设备执行,方法具体包括:

步骤301,源设备接收探测报文。

其中,所述探测报文包括源地址、目的地址和用于表示一条等价路径的标签列表;其中,所述源地址为所述源设备的ip地址,所述目的地址为所述等价路径的目的设备的ip地址;所述标签列表包括指针和多个顺序排列的标签,每个标签用于表示一条直连路径;其中,所述直连路径为仅包括两个网络设备且以所述两个网络设备为端点的路径。

在本实施例中,源设备首先接收来自于控制器发送的探测报文,进而依据接收到的探测报文中的标签列表执行后续的发送过程。

在本实施例中可选地,源设备可以接收并存储控制器发送的所述源设备所在的每条直连路径的标签与所述直连路径的对应关系,以清楚地获知每条等价路径。

步骤302,源设备依据所述指针指向的第一标签,确定所述第一标签对应的出端口,其中所述出端口对应所述等价路径上的下一直连路径。

仍以图4所示,以及探测设备1-设备a-设备b-设备2这一等价路径的连通性为例继续说明。其中探测报文的标签列表为:8001*/8011/8021,当前指针*指向于第一标签8001,设备1依据该第一标签8001确定该第一标签8001对应的出端口。

步骤303,源设备控制所述指针沿所述标签列表顺序移动到第二标签位置。

当设备1确定探测报文转发的下一直连路径后,将指针沿所述标签列表顺序移动到第二标签位置,即当前的标签列表为:8001/8011*/8021。

步骤304,源设备依据所述出端口,通过所述下一直连路径发送所述探测报文以检测所述等价路径的连通性。

具体地,设备1将所述探测报文通过设备1与设备a间的直连路径发送至设备a。

其中优选地,方法还包括:

源设备接收所述等价路径上的第一设备发送的探测响应报文,确定所述源设备与所述第一设备之间的路径连通。

其中,所述第一设备为所述等价路径上除所述源设备之外的设备,如设备a、设备b。

在本实施例中,当设备1接收到设备a返回的探测响应报文时,表明当前从设备1到设备a间的路径连通,当设备1接收到设备b返回的探测响应报文时,表明当前从设备1到设备b间的路径连通。

此外,当所述源设备在预设时间内没有收到所述目的设备发送的探测响应报文时,所述源设备确定所述等价路径异常。

在本实施例中,当设备1在预设时间内没有收到设备2发送的探测响应报文时,设备1确定等价路径设备1-设备a-设备b-设备2异常。

为了进一步确定发生故障的故障设备,本发明还可以进一步包括:

源设备根据所述等价路径上的其他设备发送的探测响应报文确定故障设备。

在本发明实际应用过程中,源设备会不断地接收到除所述源设备之外的其他设备返回得探测响应报文,具体地,当源设备接收到设备a返回的探测响应报文,并接收到设备b返回的探测响应报文和设备2返回的探测响应报文,可以确定当前等价路径设备1-设备a-设备b-设备2连通。当源设备只接收到设备a返回的探测响应报文和设备b返回的探测响应报文,而未接收到设备2返回的探测响应报文时,可以确定探测报文被丢失在了从设备b到设备2间的直连路径上,此时确定等价路径设备1-设备a-设备b-设备2不连通。

因此本发明通过判断源设备是否接收到各个中间设备反馈的探测响应报文,来实现判断该标签列表表示的路径的连通性。

基于前文本发明提供的一种连通性探测方法,本发明还提供一种控制器,如图9所示,包括:

等价路径数量确定单元901,用于确定源设备与目的设备之间存在n条等价路径;所述n大于等于2;

探测报文生成单元902,用于生成n个探测报文,所述n个探测报文中的任意一个包括源地址、目的地址和用于表示一条等价路径的标签列表;其中,所述源地址为所述源设备的因特网协议ip地址,所述目的地址为所述目的设备的ip地址;所述标签列表包括指针和多个顺序排列的标签,每个标签用于表示一条直连路径;其中,所述直连路径为仅包括两个网络设备且以所述两个网络设备为端点的路径;

探测报文发送单元903,用于向所述源设备发送所述n个探测报文,以使所述源设备将所述n个探测报文分别发送给所述n条等价路径中对应的一条等价路径以检测所述n条等价路径的连通性。

其中可选地,还包括:

收集单元904,用于收集网络拓扑;

标签分配单元905,用于根据所述网络拓扑为网络中的每条直连路径分配标签;

标签发送单元906,用于向所述网络中的每个网络设备发送所述网络设备所在的每条直连路径的标签;

此时,所述等价路径数量确定单元901具体用于,根据所述网络拓扑确定所述源设备与目的设备之间存在n条等价路径。

同时,本发明还提供一种控制器,如图10所示,该控制器可以是包含计算能力的主机服务器,或者是个人计算机pc,或者是可携带的便携式计算机或终端等等,本发明具体实施例并不对控制器的具体实现做限定。控制器包括:

处理器(processor)100,通信接口(communicationsinterface)200,存储器(memory)300,总线400。

处理器100,通信接口200,存储器300通过总线400完成相互间的通信。

处理器100,用于执行程序110。

具体地,程序110可以包括程序代码,所述程序代码包括计算机操作指令。

处理器100可能是一个中央处理器cpu,或者是特定集成电路(英文:applicationspecificintegratedcircuit,简称:asic),或者是被配置成实施本发明实施例的一个或多个集成电路。

存储器300,用于存放程序110。存储器300可能包含高速ram存储器,也可能还包括非易失性存储器(non-volatilememory),例如至少一个磁盘存储器。当程序110被执行时,能够实现图5所示的方法。

同时基于前文本发明提供的一种连通性探测方法,本发明还提供一种设备,如图11所示,包括:

接收单元1101,用于接收探测报文,其中,所述探测报文包括源地址、目的地址和用于表示一条等价路径的标签列表;其中,所述源地址为所述等价路径的源设备的因特网协议ip地址,所述目的地址为所述等价路径的目的设备的ip地址;所述标签列表包括指针和多个顺序排列的标签,每个标签用于表示一条直连路径;其中,所述直连路径为仅包括两个网络设备且以所述两个网络设备为端点的路径;

探测响应报文生成单元1102,用于依据所述探测报文生成探测响应报文;其中所述探测响应报文包括源地址和目的地址,所述源地址为所述设备的ip地址,所述目的地址为所述源设备的ip地址;

第一发送单元1103,用于将所述探测响应报文发送至所述源设备;

确定单元1104,用于依据所述指针指向的当前标签,确定所述探测报文的出端口,所述出端口对应所述等价路径上的下一直连路径;

第二发送单元1105,用于通过所述出端口向所述下一直连路径发送所述探测报文。

其中可选地,所述设备还包括:

指针处理单元,用于当所述指针不指向所述标签列表中的最后一个标签时,控制所述指针沿所述标签列表顺序移动到下一标签位置;或,当所述指针指向所述标签列表中的最后一个标签时,删除所述标签列表中的指针。

其中可选地,所述设备还包括:

接收单元,用于接收控制器发送的所述源设备所在的每条直连路径的标签与所述直连路径的对应关系;

存储单元,用于存储所述接收单元7000接收的对应关系。

其中可选地,所述设备还包括:

标签分配单元,用于通过扩展igp进行mpls标签分配,以获得所述第一设备所在的每条直连路径的标签,并存储每条直连路径与所述直连路径的标签的对应关系。

此外,本发明还提供一种设备,如图12所示,设备包括:

处理器2100,通信接口2200,存储器2300,总线2400。

处理器2100,通信接口2200,存储器2300通过总线2400完成相互间的通信。

处理器2100,用于执行程序2110。

具体地,程序2110可以包括程序代码,所述程序代码包括计算机操作指令。

处理器2100可能是一个中央处理器cpu,或者是特定集成电路asic,或者是被配置成实施本发明实施例的一个或多个集成电路。

存储器2300,用于存放程序2110。存储器2300可能包含高速ram存储器,也可能还包括非易失性存储器,例如至少一个磁盘存储器。程序2110被执行时可以实现图7所示的方法。

基于前文本发明提供的一种连通性探测方法,本发明还提供一种设备,如图13所示,包括:

接收单元1301,用于接收探测报文,其中,所述探测报文包括源地址、目的地址和用于表示一条等价路径的标签列表;其中,所述源地址为所述源设备的因特网协议ip地址,所述目的地址为所述等价路径的目的设备的ip地址;所述标签列表包括指针和多个顺序排列的标签,每个标签用于表示一条直连路径;其中,所述直连路径为仅包括两个网络设备且以所述两个网络设备为端点的路径;

第一确定单元1302,用于依据所述指针指向的第一标签,确定所述第一标签对应的出端口,所述出端口对应所述等价路径上的下一直连路径;

指针控制单元1303,用于控制所述指针沿所述标签列表顺序移动到第二标签位置;

发送单元1304,用于依据所述出端口,通过所述下一直连路径发送所述探测报文以检测所述等价路径的连通性。

可选地,所述第一确定单元1302还用于当接收到所述等价路径上的第一设备发送的探测响应报文时,确定所述源设备与所述第一设备之间的路径连通;

其中,所述第一设备为所述等价路径上除所述源设备之外的设备。

可选地,所述设备还包括:

第二确定单元,用于当在预设时间内没有收到所述目的设备发送的探测响应报文时,确定所述等价路径异常;以及根据所述等价路径上的其他设备发送的探测响应报文确定故障设备。

可选地,所述设备还包括:

接收单元,用于接收控制器发送的所述源设备所在的每条直连路径的标签与所述直连路径的对应关系;

存储单元,用于存储所述接收单元接收的对应关系。

此外,本发明还提供一种设备,如图14所示,设备包括:

处理器3100,通信接口3200,存储器3300,总线3400。

处理器3100,通信接口3200,存储器3300通过总线3400完成相互间的通信。

处理器3100,用于执行程序3110。

具体地,程序3110可以包括程序代码,所述程序代码包括计算机操作指令。

处理器3100可能是一个中央处理器cpu,或者是特定集成电路asic,或者是被配置成实施本发明实施例的一个或多个集成电路。

存储器3300,用于存放程序3110。存储器3300可能包含高速ram存储器,也可能还包括非易失性存储器,例如至少一个磁盘存储器。程序3110被执行时可以实现图8所示的方法。

需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于装置类实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1