路径故障检测方法及装置与流程

文档序号:15845581发布日期:2018-11-07 08:58阅读:255来源:国知局
路径故障检测方法及装置与流程

本公开涉及网络通信技术领域,尤其涉及一种路径故障检测方法及装置。

背景技术

sr(segmentrouting,段路由)协议是mpls(multi-protocollabelswitching,多协议标签交换)协议的一种优化协议,也称为源路由协议。在基于sdn(softwaredefinednetwork,软件定义网络)架构的sr网络中,控制器负责计算报文的转发路径,并将转发路径转换成对应的标签栈下发给源节点,源节点将标签栈封装于报文头部,向转发路径上的下一节点转发,转发路径上的每一个节点根据报文头部的标签栈将报文转发至目的节点。



技术实现要素:

根据本公开的一方面,提供了一种路径故障检测方法,该方法应用于段路由sr网络中的节点中,所述方法包括:

在接收到sr隧道的第一路径标签栈时,利用所述第一路径标签栈对通过所述sr隧道的双向转发检测bfd报文进行封装生成第一bfd报文;

其中,在所述第一路径标签栈中,从外到内依次为第一路径的正向路径标签栈和回程路径标签栈,所述正向路径标签栈指示从所述节点到目标节点的路径,所述回程路径标签栈指示从所述目标节点到所述节点的路径,所述正向路径标签栈指示的路径与所述回程路径标签栈指示的路径为同一条链路;及

发送所述第一bfd报文以对所述第一路径进行故障检测。

在一种可能的实现方式中,发送所述第一bfd报文以对所述第一路径进行故障检测,包括:

根据所述第一bfd报文的外层标签确定所述节点的下一跳节点,剥离所述外层标签;及

将剥离所述外层标签的第一bfd报文转发到所述下一跳节点,以对所述第一路径进行故障检测。

在一种可能的实现方式中,所述方法还包括:

在发送所述第一bfd报文之后的预设时间内未接收到基于所述第一bfd报文返回的应答报文时,确定所述第一路径故障。

在一种可能的实现方式中,所述方法还包括:

在接收到所述正向路径标签栈后,通过所述正向路径标签栈构造所述回程路径标签栈;

通过所述正向路径标签栈及所述回程路径标签栈构造所述第一路径标签栈。

根据本公开的另一方面,提供了一种路径故障检测方法,应用于段路由sr网络中的控制器中,所述方法包括:

响应于节点的请求生成sr隧道的第一路径标签栈;及

发送所述第一路径标签栈给节点,以使所述节点利用所述第一路径标签栈对通过所述sr隧道的双向转发检测bfd报文进行封装生成第一bfd报文;

其中,在所述第一路径标签栈中,从外到内依次为第一路径的正向路径标签栈和回程路径标签栈,所述正向路径标签栈指示从所述节点到目标节点的路径,所述回程路径标签栈指示从所述目标节点到所述节点的路径,所述正向路径标签栈指示的路径与所述回程路径标签栈指示的路径为同一条链路,所述第一bfd报文用于对所述第一路径进行故障检测。

根据本公开的另一方面,提供了一种路径故障检测装置,应用于段路由sr网络中的节点中,所述装置包括:

封装模块,用于在接收到sr隧道的第一路径标签栈时,利用所述第一路径标签栈对通过所述sr隧道的双向转发检测bfd报文进行封装生成第一bfd报文;

其中,在所述第一路径标签栈中,从外到内依次为第一路径的正向路径标签栈和回程路径标签栈,所述正向路径标签栈指示从所述节点到目标节点的路径,所述回程路径标签栈指示从所述目标节点到所述节点的路径,所述正向路径标签栈指示的路径与所述回程路径标签栈指示的路径为同一条链路;及

第一故障检测模块,用于发送所述第一bfd报文以对所述第一路径进行故障检测。

在一种可能的实现方式中,所述第一故障检测模块包括:

第一确定子模块,用于根据所述第一bfd报文的外层标签确定所述节点的下一跳节点,剥离所述外层标签;及

第一检测子模块,用于将剥离所述外层标签的第一bfd报文转发到所述下一跳节点,以对所述第一路径进行故障检测。

在一种可能的实现方式中,所述装置还包括:

第一判定模块,用于在发送所述第一bfd报文之后的预设时间内未接收到基于所述第一bfd报文返回的应答报文时,确定所述第一路径故障。

在一种可能的实现方式中,所述装置还包括:

构造模块,用于在接收到所述正向路径标签栈后,通过所述正向路径标签栈构造所述回程路径标签栈;

所述构造模块,还用于通过所述正向路径标签栈及所述回程路径标签栈构造所述第一路径标签栈。

根据本公开的另一方面,提供了一种路径故障检测装置,应用于段路由sr网络中的控制器中,所述装置包括:

生成模块,用于响应于节点的请求生成sr隧道的第一路径标签栈;

发送模块,用于发送所述第一路径标签栈给节点,以使所述节点利用所述第一路径标签栈对通过所述sr隧道的双向转发检测bfd报文进行封装生成第一bfd报文;

其中,在所述第一路径标签栈中,从外到内依次为第一路径的正向路径标签栈和回程路径标签栈,所述正向路径标签栈指示从所述节点到目标节点的路径,所述回程路径标签栈指示从所述目标节点到所述节点的路径,所述正向路径标签栈指示的路径与所述回程路径标签栈指示的路径为同一条链路,所述第一bfd报文用于对所述第一路径进行故障检测。

本公开通过在接收到sr隧道的第一路径标签栈时,利用所述第一路径标签栈对通过所述sr隧道的双向转发检测bfd报文进行封装生成第一bfd报文,发送所述第一bfd报文以对第一路径进行故障检测,基于所述第一路径标签栈转发bfd报文,可以使得bfd回程报文的回程路径可控,从而实现对所述第一路径的故障检测。

根据下面参考附图对示例性实施例的详细说明,本公开的其它特征及方面将变得清楚。

附图说明

包含在说明书中并且构成说明书的一部分的附图与说明书一起示出了本公开的示例性实施例、特征和方面,并且用于解释本公开的原理。

图1示出了基于sdn架构的sr网络的组网示意图。

图2示出了bfd报文的报文格式示意图。

图3示出了本公开一实施例的路径故障检测方法的流程图。

图4示出了sdn架构下sr网络的组网示意图。

图5示出了本公开一实施例的路径故障检测方法中bfd报文的报文格式示意图。

图6示出了本公开一实施例的路径故障检测方法步骤s120的具体步骤示意图。

图7示出了本公开一实施例的路径故障检测方法的流程图。

图8示出了本公开一实施例的路径故障检测方法的流程图。

图9示出了本公开一实施例的路径故障检测装置的框图。

图10示出了本公开一实施例的路径故障检测装置的框图。

图11示出了本公开一实施例的路径故障检测装置的框图。

图12示出了本公开一实施例的路径故障检测装置的框图。

具体实施方式

以下将参考附图详细说明本公开的各种示例性实施例、特征和方面。附图中相同的附图标记表示功能相同或相似的元件。尽管在附图中示出了实施例的各种方面,但是除非特别指出,不必按比例绘制附图。

在这里专用的词“示例性”意为“用作例子、实施例或说明性”。这里作为“示例性”所说明的任何实施例不必解释为优于或好于其它实施例。

另外,为了更好的说明本公开,在下文的具体实施方式中给出了众多的具体细节。本领域技术人员应当理解,没有某些具体细节,本公开同样可以实施。在一些实例中,对于本领域技术人员熟知的方法、手段、元件和电路未作详细描述,以便于凸显本公开的主旨。

为了便于说明,下面对bfd报文进行简要介绍。

请参阅图1,图1示出了bfd报文的报文格式示意图。

如图1所示,bfd报文可以包括sr路径标签(栈),ipv4/ipv6报文头,udp,bfd数据等。上述的主路径标签栈和备路径标签栈可以分别封装在bfd报文的sr路径标签栈中。

应该说明的是,bfd是一种全网统一的检测机制,用于快速检测、监控网络中链路、ip路由或者mpls路径的转发连通状况。为了减小设备故障对业务的影响,提高网络的可靠性,网络设备需要能够尽快检测到与相邻设备间的通信故障,以便及时采取措施,保证业务继续进行。

请参考图2,图2示出了基于sdn架构的sr(segmentrouting,段路由)网络的组网示意图。

如图2所示,该sr网络包括控制器,节点pe1-pe5,箭头上的数字可用于表示邻接标签,用于标识相邻节点间的链路。

在sdn架构下的sr网络中,为了保证报文转发的可靠性,控制器同时为报文计算多条转发路径(例如主路径pe1-pe2-pe4和备路径pe1-pe3-pe4),并基于多条转发路径分别向源节点下发主路径标签栈(16,17)和备路径标签栈(18,19),同时,启动源节点的bfd(bidirectionalforwardingdetection,双向转发检测)功能对主、备路径进行故障检测。

当检测主路径时,源节点将主标签栈封装于报文头部,报文沿主路径转发;当检测到主路径故障时,则启用备用链路。

然而,由于bfd报文只有目的地址和源地址,因此当不同路径的bfd报文(如主、备路径)到达目的节点后,目的节点针对不同路径接收的bfd报文,可能以相同的回程路径来发送bfd反馈报文。如果该回程路径出现故障,将导致头结点认为不同路径的bfd都检测到路径故障,导致sr隧道发生震荡,不利于对整个网络流量的规划和保持流量稳定。

因此,使回程bfd报文可控,当bfd报文到达目的节点后,目的节点按照原路径转发bfd报文到源节点,实现单条路径故障不会影响主备路径的bfd检测具有重要的意义。

基于以上问题,本公开提出一种路径故障检测方法,使回程bfd报文可控,当bfd报文到达目的节点后,目的节点按照原路径转发bfd报文到源节点,实现单条路径故障不会影响主、备路径的bfd检测。

请参阅图3,图3示出了本公开一实施例的路径故障检测方法的流程图。

如图3所示,所述方法可以应用于段路由sr网络中的节点中,所述方法可以包括:

步骤s110,在接收到sr隧道的第一路径标签栈时,利用所述第一路径标签栈对通过所述sr隧道的双向转发检测bfd报文进行封装生成第一bfd报文。

其中,在所述第一路径标签栈中,从外到内依次为第一路径的正向路径标签栈和回程路径标签栈,所述正向路径标签栈指示从所述节点到目标节点的路径,所述回程路径标签栈指示从所述目标节点到所述节点的路径,所述正向路径标签栈指示的路径与所述回程路径标签栈指示的路径为同一条链路,所述第一bfd报文用于对所述第一路径进行故障检测。

第一路径可以是主路径或备路径。

在一种可能的实施方式中,在所述第一路径标签栈中,从外到内依次可为主路径的正向主路径标签栈和主回程路径标签栈,所述正向主路径标签栈指示的路径与所述主回程路径标签栈指示的路径为同一条链路。在本实施方式中,节点按照正向主路径标签栈和主回程路径标签栈指定的路径转发所述第一bfd报文,可以使得所述第一bfd报文按照主回程路径标签栈指定的路径返回节点,实现了所述第一bfd报文的回程路径可控。

在一种可能的实施方式中,在所述第一路径标签栈中,从外到内依次为备路径的正向备路径标签栈和备回程路径标签栈,所述正向备路径标签栈指示的路径与所述备回程路径标签栈指示的路径为同一条链路,为了区分不同路径对应的bfd报文,下文中将与备路径对应的bfd报文称为第二bfd报文。在本实施方式中,节点按照正向备路径标签栈和备回程路径标签栈指定的路径转发所述第二bfd报文,可以使得所述第二bfd报文按照备回程路径标签栈指定的路径返回节点,实现了所述第二bfd报文的回程路径可控。请一并参阅图4,图4示出了sdn架构下sr网络的组网示意图。

如图4所示,sr网络可以包括控制器,节点pe1-pe5,箭头上的数字可以用于标识邻接标签,邻接标签可用于标识相邻节点之间的链路。应该明白的是,上述的组网示意图为举例说明,为简明清晰,列举以上节点作为示例,在实际使用中,sr网络中可以包括更多的节点,路径,本公开并不限制。

在一种可能的实施方式中,所述第一路径标签栈中的正向路径标签栈及回程路径标签栈可由控制器下发。

在另一种可能的实施方式中,所述正向路径标签栈可由控制器下发,所述回程路径标签栈可由头节点根据所述正向路径标签栈构造。在本实施方式中,头节点在接收到所述正向路径标签栈后,可以通过所述正向路径标签栈构造所述回程路径标签栈,并可以通过所述正向路径标签栈及所述回程路径标签栈构造所述第一路径标签栈。

在一种可能的实施方式中,控制器可以根据业务报文的要求(例如,业务的重要程度,带宽,速率等)计算从源节点pe1到目标节点pe4的sr隧道的多条路径,并优选两条(示例性的,也可有多条主,多条备)分别作为主路径和备路径。举例而言,如图4,主路径可为pe1-pe2-pe4,备路径可为pe1-pe3-pe4。控制器还可以为业务报文的转发设定路由路径,例如pe1-pe5-pe4,当上述的主路径和备路径都出现故障时,业务报文可以通过所述路由路径转发到目的节点。控制器可以为各个节点间的链路分发邻接标签,例如pe1-pe2之间的邻接标签可以为16,pe2-pe4之间的邻接标签可以17,pe1-pe3之间的邻接标签可以18,pe3-pe4之间的邻接标签可以19,pe4-pe2之间的邻接标签可以20,pe2-pe1之间的邻接标签可以21,pe4-pe3之间的邻接标签可以22,pe3-pe1之间的邻接标签可以23。

在一种可能的实施方式中,当主路径为pe1-pe2-pe4时,控制器可以设定主路径的正向主路径标签栈为(16,17)。在一种可能的实施方式中,控制器可以设置主路径的回程路径为pe4-pe2-pe1,当主路径的回程路径为pe4-pe2-pe1时,控制器可以设置主路径的主回程路径标签栈为(20,21),主路径和主路径的回程路径可为同一条链路,但方向相反。

在另一种可能的实施方式中,当主路径为pe1-pe2-pe4时,头节点可以根据获得的主路径设置主路径的回程路径为pe4-pe2-pe1,当主路径的回程路径为pe4-pe2-pe1时,头节点可以根据主路径的正向主路径标签栈(16,17)设置主路径的主回程路径标签栈为(20,21),主路径和主路径的回程路径可为同一条链路,但方向相反。

在一种可能的实施方式中,当备路径为pe1-pe3-pe4时,控制器可以设定备路径的正向备路径标签栈为(18,19)。

在一种可能的实施方式中,控制器可以设置备路径的回程路径为pe4-pe3-pe1,当备路径的回程路径为pe4-pe3-pe1时,控制器可以设置备路径的备回程路径标签栈为(22,23),备路径和备路径的回程路径可为同一条链路,但反向相反。

在另一种可能的实施方式中,当备路径为pe1-pe3-pe4时,头节点可以设置备路径的回程路径为pe4-pe3-pe1,当备路径的回程路径为pe4-pe3-pe1时,头节点可以根据备路径的正向备路径标签栈(18,19)设置备路径的备回程路径标签栈为(22,23),备路径和备路径的回程路径可为同一条链路,但反向相反。

请一并参阅图5,图5示出了本公开一实施例的路径故障检测方法中bfd报文的报文格式示意图。

如图5所示,bfd报文从最外层到最内层可以依次封装sr路径标签、sr回程路径标签、ipv4/ipv6报文头、udp、bfd数据。

在一种可能的实施方式中,对于sr隧道的主路径来说,节点可将主路径的正向主路径标签栈封装在bfd报文的最外层,可以将主回程路径标签栈封装在对应bfd报文中主路径标签栈的下一层,从而生成主路径的第一bfd报文。

在一种可能的实施方式中,对于sr隧道的备路径来说,节点可将备路径的正向备路径标签栈封装在bfd报文的最外层,可以将备回程路径标签栈封装在对应bfd报文中备路径标签栈的下一层,从而生成备路径的第二bfd报文。

步骤s120,发送所述第一bfd报文以对所述第一路径进行故障检测。

所述的第一bfd报文可以用于对所述主路径进行故障检测。

在一种可能的实施方式中,当所述主路径通过故障检测说明路径正常时,源节点可以通过所述主路径发送业务报文到目的节点。举例而言,当节点在预设时间内收到发送所述第一bfd报文信息的应答报文信息时,节点可以判定所述的主路径正常。

应该明白的是,当存在备路径时,可以发送所述第二bfd报文以对所述备路径进行故障检测。

在一种可能的实施方式中,当所述主路径检测故障,所述备路径在通过故障检测证明所述备路径正常时,源节点可以通过所述备路径发送业务报文到目的节点。

应该说明的是,以上介绍并不用于限定路径故障检测方法的顺序,以上步骤的执行顺序是可以根据实际情况改变的,举例而言,节点对主路径和备路径的检测是独立进行的,节点可以同时发送所述第一bfd报文和所述第二bfd报文以分别对所述主路径和备路径进行故障检测,也可以分开发送所述第一bfd报文和所述第二bfd报文以分别对所述主路径和备路径进行故障检测,也可以仅仅发送所述第一bfd报文或者所述第二bfd报文以对主路径或备路径进行单独检测。

如果两条路径都检测正常时,可以通过所述主路径发送业务报文,在整个过程中,两条路径的故障检测都在进行;如果所述主路径故障,且此时的第二路径没有检测到故障,会将业务报文切换到备路径进行转发,此时主路径的bfd会持续监测故障是否恢复。

如果主路径检测正常,而备路径检测到路径故障(此时备路径会持续监测路径故障是否恢复),那么流量不受影响,后续如果主路径也检测到故障,且备路径没有检测到路径恢复,说明整个sr隧道已经无法转发业务报文,这时,可以通过路由方式或者其他预设的低优先级的sr隧道转发业务报文。

这样,本公开通过在接收到sr隧道的第一路径标签栈时,利用所述第一路径标签栈对通过所述sr隧道的双向转发检测bfd报文进行封装生成第一bfd报文,发送所述第一bfd报文以对所述第一路径进行故障检测,基于所述第一路径标签栈转发bfd报文,可以使得bfd回程报文的回程路径可控,从而实现对主路径、备路径的故障检测。

图6示出了本公开一实施例的路径故障检测方法步骤s120的具体步骤示意图。

如图6所示,步骤s120可以包括:

步骤s1201,根据所述第一bfd报文的外层标签确定所述节点的下一跳节点,剥离所述外层标签。

步骤s1202,将剥离所述外层标签的第一bfd报文转发到所述下一跳节点,以对所述第一路径进行故障检测。

下面结合示例对以上过程进行描述,应该明白的是,以下描述为示例性描述,并不用于限定本公开。

请一并参阅图4。

当第一路径为主路径时,所述第一bfd报文封装有正向主路径标签栈和主回程路径标签栈,所述第一bfd报文在源节点pe1的报文信息可以包括(16,17,20,21),其中的数字为sr隧道的主路径和主回程路径路径中各个节点之间的邻接标签,其中,邻接标签16和邻接标签17表示的路径为主路径,邻接标签20和邻接标签21表示的路径为主回程路径路径,正向主路径标签栈可以包括邻接标签16和邻接标签17,主回程路径标签栈可以包括邻接标签20和邻接标签21。

源节点pe1可以通过所述正向主路径标签栈将所述第一bfd报文发送到目的节点pe4,目的节点pe4可以根据所述主回程路径标签栈将响应于所述第一bfd报文的应答报文发送到源节点。

pe1获取所述第一bfd报文最外层的邻接标签16,查找邻接标签16的ilm表(incominglabelmap,入标签映射),确定下一跳节点为pe2后,剥离邻接标签16,并将剥离所述邻接标签16的第一bfd报文沿邻接标签16指示的路径转发报文,此时,所述第一bfd报文的标签栈信息更新为(17,20,21)。

所述第一bfd报文到达pe2后,pe2获取所述第一bfd报文最外层的邻接标签17,查找邻接标签17的ilm表,确定下一跳节点为pe4后,剥离邻接标签17,并将报文送往pe4,此时,所述第一bfd报文的标签栈信息更新为(20,21)。

所述第一bfd报文到达pe4后,pe4根据所述第一bfd报文产生应答信息,并将所述应答信息封装到所述第一bfd报文(也可以直接将所述第一bfd报文作为应答报文),pe4获取所述第一bfd报文最外层的邻接标签20,查找邻接标签20的ilm表,确定下一跳节点为pe2后,剥离邻接标签20,并将报文送往pe2,此时,所述第一bfd报文的标签栈信息更新为(21)。

所述第一bfd报文到达pe2后,pe2获取所述第一bfd报文最外层的邻接标签21,查找邻接标签21的ilm表,确定下一跳节点为pe1后,剥离邻接标签20,并将报文送往pe1。此时,所述第一bfd报文回到pe1,bfd收到后检查报文。

在第一路径为备路径时,发送所述第二bfd报文以对所述备路径进行故障检测,可以包括:根据所述第二bfd报文的外层标签确定所述节点的下一跳节点,剥离所述外层标签;将剥离所述外层标签的第二bfd报文转发到所述下一跳节点。第二bfd报文封装有正向备路径标签栈和备回程路径标签栈,所述第二bfd报文在源节点pe1的报文信息可以包括(18,19,22,23),其中的数字为sr隧道的主路径和其回程路径中各个节点之间的邻接标签,其中,邻接标签18和邻接标签19表示的路径为备路径,邻接标签22和邻接标签23表示的路径为备回程路径路径,正向备路径标签栈可以包括邻接标签18和邻接标签19,备回程路径标签栈可以包括邻接标签22和邻接标签23。源节点pe1可以通过所述备路径标签栈将所述第二bfd报文发送到目的节点pe4,目的节点pe4可以根据所述备回程路径标签栈将响应于所述第二bfd报文的应答报文发送到源节点。

pe1获取所述第二bfd报文最外层的邻接标签18,查找邻接标签18的ilm表,确定下一跳节点为pe3后,剥离邻接标签18,并将剥离所述邻接标签18的第二bfd报文沿邻接标签18指示的路径转发报文,此时,所述第二bfd报文的标签栈信息更新为(19,22,23)。

所述第二bfd报文到达pe3后,pe3获取所述第二bfd报文最外层的邻接标签19,查找邻接标签19的ilm表,确定下一跳节点为pe4后,剥离邻接标签19,并将报文送往pe4,此时,所述第二bfd报文的标签栈信息更新为(22,23)。

所述第二bfd报文到达pe4后,pe4根据所述第二bfd报文产生应答信息,并将所述应答信息封装到所述第二bfd报文(也可以直接将所述第二bfd报文作为应答报文),pe4获取所述第二bfd报文最外层的邻接标签22,查找邻接标签22的ilm表,确定下一跳节点为pe3后,剥离邻接标签22,并将报文送往pe3,此时,所述第二bfd报文的标签栈信息更新为(23)。

所述第二bfd报文到达pe3后,pe3获取所述第二bfd报文最外层的邻接标签23,查找邻接标签23的ilm表,确定下一跳节点为pe1后,剥离邻接标签23,并将报文送往pe1。此时,所述第二bfd报文回到pe1,bfd收到后检查报文。

需要说明的是,尽管以路径故障检测方法作为示例介绍了本公开如上,但本领域技术人员能够理解,本公开应不限于此。事实上,用户完全可根据个人喜好和/或实际应用场景灵活设定各个步骤的顺序、实现,只要可以使bfd回程报文回程路径可控,从而实现对路径故障的检测即可。

这样,本公开通过在接收到sr隧道的第一路径标签栈时,利用所述第一路径标签栈对通过所述sr隧道的双向转发检测bfd报文进行封装生成第一bfd报文,发送所述第一bfd报文以对所述主路径进行故障检测,基于所述第一路径标签栈转发bfd报文,可以使得bfd回程报文的回程路径可控,从而实现对主路径、备路径的故障检测。

请参阅图7,图7示出了本公开一实施例的路径故障检测方法的流程图。

如图7所示,所述方法可以应用于段路由sr网络中的节点中,所述方法可以包括:

步骤s110,在接收到sr隧道的第一路径标签栈时,利用所述第一路径标签栈对通过所述sr隧道的双向转发检测bfd报文进行封装生成第一bfd报文。

步骤s120,发送所述第一bfd报文以对第一路径进行故障检测。

步骤s121,在发送所述第一bfd报文之后的预设时间内未接收到基于所述第一bfd报文返回的应答报文时,确定所述第一路径故障。

bfd的检测机制可以是指定所述第一bfd报文的发送时间间隔和多长时间没有收到检测报文就认为路径出现故障。举例来说,可以指定所述第一bfd报文发送间隔为10ms,指定如果3个间隔时间内没有收到过回应的所述第一bfd报文就认为路径不通。例如,源节点每10ms发出一个所述第一bfd报文,如果30ms内没有收到过回应或者回传的报文,源节点就会认为路径不通。

步骤s110,s120的具体介绍请参考之前的描述,此处不再赘述。

需要说明的是,尽管以路径故障检测方法作为示例介绍了本公开如上,但本领域技术人员能够理解,本公开应不限于此。事实上,用户完全可根据个人喜好和/或实际应用场景灵活设定各个步骤的顺序、实现,只要可以使bfd回程报文回程路径可控,从而实现对路径故障的检测即可。

这样,本公开通过在接收到sr隧道的第一路径标签栈时,利用所述第一路径标签栈对通过所述sr隧道的双向转发检测bfd报文进行封装生成第一bfd报文,发送所述第一bfd报文以对所述第一路径进行故障检测,在发送所述第一bfd报文之后的预设时间内未接收到基于所述第一bfd报文返回的应答报文时,确定所述第一路径故障,可以使得bfd回程报文的回程路径可控,从而实现对第一路径的故障检测。

请参阅图8,图8示出了本公开一实施例的路径故障检测方法的流程图。

如图8所示,所述方法可以应用于段路由sr网络中的控制器中,所述方法可以包括:

步骤s210,响应于节点的请求生成sr隧道的第一路径标签栈。

在所述第一路径标签栈中,从外到内依次为第一路径的正向路径标签栈和回程路径标签栈,所述正向路径标签栈指示从所述节点到目标节点的路径,所述回程路径标签栈指示从所述目标节点到所述节点的路径,所述正向路径标签栈指示的路径与所述回程路径标签栈指示的路径为同一条链路,所述第一bfd报文用于对所述第一路径进行故障检测。

第一路径可以是主路径或备路径。

在一种可能的实施方式中,在sr隧道存在主路径和备路径的情况下,还可以生成sr隧道的第二路径标签栈(与所述备路径相对应)。

在一种可能的实施方式中,控制器可以根据业务报文的业务需求计算路径,例如,可以根据业务报文的重要程度,需要的带宽、速率等要求计算多条路径,并优选一条路径作为主路径,优选一条路径作为备用路径,控制器可以为主路径及备路径分发标签栈以标识路径。

步骤s220,发送所述第一路径标签栈给节点,以使所述节点利用所述第一路径标签栈对通过所述sr隧道的双向转发检测bfd报文进行封装生成第一bfd报文。

在一种可能的实施方式中,在所述第一路径标签栈中,从外到内依次为主路径的正向主路径标签栈和主回程路径标签栈,所述正向路径标签栈指示从所述节点到目标节点的路径,所述回程路径标签栈指示从所述目标节点到所述节点的路径,所述主路径标签栈指示的路径与所述主回程路径标签栈指示的路径为同一条链路,所述第一bfd报文用于对所述主路径进行故障检测。

在一种可能的实施方式中,在所述第一路径标签栈中,从外到内依次为备路径的正向备路径标签栈和备回程路径标签栈,所述正向备路径标签栈指示从所述节点到目标节点的路径,所述备回程路径标签栈指示从所述目标节点到所述节点的路径,所述正向备路径标签栈指示的路径与所述备回程路径标签栈指示的路径为同一条链路,为了区分不同路径对应的bfd报文,下文中将与备路径对应的bfd报文称为第二bfd报文,所述第二bfd报文用于对所述备路径进行故障检测。

需要说明的是,尽管以路径故障检测方法作为示例介绍了本公开如上,但本领域技术人员能够理解,本公开应不限于此。事实上,用户完全可根据个人喜好和/或实际应用场景灵活设定各个步骤的顺序、实现,只要可以使bfd回程报文回程路径可控,从而实现对路径故障的检测即可。

这样,本公开通过响应于节点的请求生成sr隧道的第一路径标签栈,发送所述第一路径标签栈给节点,以使所述节点利用所述第一路径标签栈对通过所述sr隧道的双向转发检测bfd报文进行封装生成第一bfd报文,节点可以根据控制器下发的报文使得bfd回程报文的回程路径可控,从而实现对第一路径的故障检测。

请参阅图9,图9示出了本公开一实施例的路径故障检测装置的框图。

如图9所示,所述路径故障检测装置可以应用于段路由sr网络中的节点中,所述装置包括:

封装模块500,用于在接收到sr隧道的第一路径标签栈时,利用所述第一路径标签栈对通过所述sr隧道的双向转发检测bfd报文进行封装生成第一bfd报文。

其中,在所述第一路径标签栈中,从外到内依次为第一路径的正向路径标签栈和回程路径标签栈,所述正向路径标签栈指示从所述节点到目标节点的路径,所述回程路径标签栈指示从所述目标节点到所述节点的路径,所述路径标签栈指示的路径与所述回程路径标签栈指示的路径为同一条链路。

第一路径可以是主路径或备路径。

在一种可能的实施方式中,在所述第一路径标签栈中,从外到内依次为正向主路径标签栈和主回程路径标签栈,所述主路径标签栈指示的路径与所述主回程路径标签栈指示的路径为同一路径。

在一种可能的实施方式中,在所述第一路径标签栈中,从外到内依次为正向备路径标签栈和备回程路径标签栈,所述备路径标签栈指示的路径与所述备回程路径标签栈指示的路径为同一路径。

第一故障检测模块510,用于发送所述第一bfd报文以对所述第一路径进行故障检测。

应该说明的是,路径故障检测装置为上述路径故障检测方法对应的装置项,因此,路径故障检测装置各个模块的具体介绍请参考之前对路径故障检测方法的描述,此处不再赘述。

需要说明的是,尽管以路径故障检测故障装置作为示例介绍了本公开如上,但本领域技术人员能够理解,本公开应不限于此。事实上,用户完全可根据个人喜好和/或实际应用场景灵活设定各个模块的功能、实现,只要可以使bfd回程报文回程路径可控,从而实现对路径故障的检测即可。

这样,本公开通过各个模块的配合,在接收到sr隧道的第一路径标签栈时,利用所述第一路径标签栈对通过所述sr隧道的双向转发检测bfd报文进行封装生成第一bfd报文,发送所述第一bfd报文以对第一路径进行故障检测,基于所述第一路径标签栈,可以使得bfd回程报文的回程路径可控,从而实现对第一路径的故障检测。

请参阅图10,图10示出了本公开一实施例的路径故障检测装置的框图。

如图10所示,所述路径故障检测装置可以应用于段路由sr网络中的节点中,所述装置包括:

封装模块500,用于在接收到sr隧道的第一路径标签栈时,利用所述第一路径标签栈对通过所述sr隧道的双向转发检测bfd报文进行封装生成第一bfd报文。

第一故障检测模块510,用于发送所述第一bfd报文以对所述第一路径进行故障检测。

在一种可能的实施方式中,所述装置还可以包括:

构造模块550,用于在接收到所述正向路径标签栈后,通过所述正向路径标签栈构造所述回程路径标签栈。

所述构造模块550,还用于通过所述正向路径标签栈及所述回程路径标签栈构造所述第一路径标签栈。

在一种可能的实施方式中,所述第一故障检测模块510可以包括:

第一确定子模块5101,可以用于根据所述第一bfd报文的外层标签确定所述节点的下一跳节点,剥离所述外层标签;及

第一检测子模块5102,可以用于将剥离所述外层标签的第一bfd报文转发到所述下一跳节点,以对所述第一路径标签栈对应的所述第一路径进行故障检测。

在一种可能的实施方式中,路径故障检测装置还可以包括第一判定模块511。

第一判定模块511,可以用于在发送所述第一bfd报文之后的预设时间内未接收到基于所述第一bfd报文返回的应答报文时,确定所述第一路径故障。

应该说明的是,路径故障检测装置为上述路径故障检测方法对应的装置项,因此,路径故障检测装置各个模块的具体介绍请参考之前对路径故障检测方法的描述,此处不再赘述。

需要说明的是,尽管以路径故障检测故障装置作为示例介绍了本公开如上,但本领域技术人员能够理解,本公开应不限于此。事实上,用户完全可根据个人喜好和/或实际应用场景灵活设定各个模块的功能、实现,只要可以使bfd回程报文回程路径可控,从而实现对路径故障的检测即可。

这样,本公开通过各个模块的配合,可以使得bfd回程报文的回程路径可控,从而实现对第一路径、备路径的故障检测。

请参阅图11,图11示出了本公开一实施例的路径故障检测装置的框图。

如图11所示,所述路径故障检测装置可以应用于段路由sr网络中的控制器中,所述装置包括:

生成模块610,用于响应于节点的请求生成sr隧道的第一路径标签栈。发送模块620,用于发送所述第一路径标签栈给节点,以使所述节点利用所述第一路径标签栈对通过所述sr隧道的双向转发检测bfd报文进行封装生成第一bfd报文其中,在所述第一路径标签栈中,从外到内依次为第一路径的第一路径标签栈和第一回程路径标签栈,所述第一路径标签栈指示的路径与所述第一回程路径标签栈指示的路径为同一条链路,所述第一bfd报文用于对所述第一路径进行故障检测;

应该说明的是,路径故障检测装置为上述路径故障检测方法对应的装置项,因此,路径故障检测装置各个模块的具体介绍请参考之前对路径故障检测方法的描述,此处不再赘述。

需要说明的是,尽管以路径故障检测故障装置作为示例介绍了本公开如上,但本领域技术人员能够理解,本公开应不限于此。事实上,用户完全可根据个人喜好和/或实际应用场景灵活设定各个模块的功能、实现,只要可以使bfd回程报文回程路径可控,从而实现对路径故障的检测即可。

这样,本公开通过各个模块的配合,可以使得bfd回程报文的回程路径可控,从而实现对第一路径、备路径的故障检测。

图12是根据一示例性实施例示出的一种用于路径故障检测装置900的框图。参照图12,该装置900可包括处理器901、存储有机器可执行指令的机器可读存储介质902。处理器901与机器可读存储介质902可经由系统总线903通信。并且,处理器901通过读取机器可读存储介质902中与路径故障检测逻辑对应的机器可执行指令以执行上文所述的路径故障检测方法。

本文中提到的机器可读存储介质902可以是任何电子、磁性、光学或其它物理存储装置,可以包含或存储信息,如可执行指令、数据,等等。例如,机器可读存储介质可以是:ram(radomaccessmemory,随机存取存储器)、易失存储器、非易失性存储器、闪存、存储驱动器(如硬盘驱动器)、固态硬盘、任何类型的存储盘(如光盘、dvd等),或者类似的存储介质,或者它们的组合。

以上已经描述了本公开的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术的技术改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。

以上已经描述了本公开的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术的技术改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。

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