链路故障的处理方法及装置转让专利

申请号 : CN201711045359.0

文献号 : CN107864091B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 郭威王伟

申请人 : 新华三技术有限公司

摘要 :

本公开涉及一种链路故障的处理方法及装置,该方法包括:形成针对所述静态SR头节点的下一跳设备的路由感知表,其中所述路由感知表包括所述下一跳设备的标识和与所述下一跳设备对应的目的节点的标识;当感知所述路由感知表中的所述下一跳设备的标识发生改变时,则确定经由所述下一跳设备至所述目的节点的路径发生故障。由此,能够根据下一跳设备的标识发生改变来及时地确定经由下一跳设备至目的节点的路径发生故障。

权利要求 :

1.一种链路故障的处理方法,应用于多协议标签交换MPLS网络中的静态段路由SR头节点,其特征在于,所述方法包括:形成针对所述静态SR头节点的下一跳设备的路由感知表,其中所述路由感知表包括所述下一跳设备的标识和与所述下一跳设备对应的目的节点的标识;

当感知所述路由感知表中的所述下一跳设备的标识发生改变时,则确定经由所述下一跳设备至所述目的节点的路径发生故障。

2.根据权利要求1所述的方法,其特征在于,形成针对所述静态SR头节点的下一跳设备的路由感知表,包括:根据所述下一跳设备的标识遍历所述静态SR头节点当前的路由转发表,以获取经由所述下一跳设备的目的节点的标识;

将所述下一跳设备的标识和获取到的目的节点的标识形成为所述路由感知表。

3.根据权利要求1所述的方法,其特征在于,形成针对所述静态SR头节点的下一跳设备的路由感知表,包括:根据所述静态SR头节点上所建立的MPLS TE隧道,确定所述目的节点的标识,其中将所述MPLS TE隧道的目的地址作为所述目的节点的标识;

将所述下一跳设备的标识、所述静态SR头节点至所述下一跳设备的路径以及所述目的节点的标识形成为所述路由感知表。

4.根据权利要求1至3中任一项所述的方法,其特征在于,当感知所述路由感知表中的所述下一跳设备的标识发生改变时,包括:当感知所述下一跳设备发生故障时,感知所述路由感知表中的所述下一跳设备的标识发生改变。

5.根据权利要求1至3中任一项所述的方法,其特征在于,还包括:当确定经由所述下一跳设备至所述目的节点的路径发生故障时,则将所述路径切换为其它路径,其中所述其它路径是经由改变后的下一跳设备至所述目的节点的路径。

6.一种链路故障的处理装置,应用于多协议标签交换MPLS网络中的静态段路由SR头节点,其特征在于,所述装置包括:形成模块,用于形成针对所述静态SR头节点的下一跳设备的路由感知表,其中所述路由感知表包括所述下一跳设备的标识和与所述下一跳设备对应的目的节点的标识;

确定模块,用于当感知所述路由感知表中的所述下一跳设备的标识发生改变时,则确定经由所述下一跳设备至所述目的节点的路径发生故障。

7.根据权利要求6所述的装置,其特征在于,所述形成模块具体用于:根据所述下一跳设备的标识遍历所述静态SR头节点当前的路由转发表,以获取经由所述下一跳设备的目的节点的标识;

将所述下一跳设备的标识和获取到的目的节点的标识形成为所述路由感知表。

8.根据权利要求6所述的装置,其特征在于,所述形成模块具体用于:根据所述静态SR头节点上所建立的MPLS TE隧道,确定所述目的节点的标识,其中将所述MPLS TE隧道的目的地址作为所述目的节点的标识;

将所述下一跳设备的标识、所述静态SR头节点至所述下一跳设备的路径以及所述目的节点的标识形成为所述路由感知表。

9.根据权利要求6至8中任一项所述的装置,其特征在于,还包括:感知模块,用于当感知所述下一跳设备发生故障时,感知所述路由感知表中的所述下一跳设备的标识发生改变。

10.根据权利要求6至8中任一项所述的装置,其特征在于,还包括:切换模块,用于当确定经由所述下一跳设备至所述目的节点的路径发生故障时,则将所述路径切换为其它路径,其中所述其它路径是经由改变后的下一跳设备至所述目的节点的路径。

说明书 :

链路故障的处理方法及装置

技术领域

[0001] 本公开涉及通信技术领域,尤其涉及一种链路故障的处理方法及装置。

背景技术

[0002] MPLS(Multiprotocol Label Switching,多协议标签交换)是目前应用比较广泛的一种骨干网技术。MPLS在无连接的IP网络上引入面向连接的标签交换概念,将第三层路由技术和第二层交换技术相结合,充分发挥了IP路由的灵活性和二层交换的简洁性。
[0003] 图1是一种MPLS网络结构的示意图。如图1所示,该MPLS网络包括路由设备A至I,其中路由设备A至I均为MPLS网络的基本构成单元LSR(LabelSwitching Router,标签交换路由器),各LSR是具有标签分发能力和标签交换能力的设备。
[0004] 路由设备A是Ingress(入)节点,路由设备B、C、E和F是Transit(中间)节点,路由设备D是Egress(出)节点。路由设备A是报文的入口LSR并且负责为进入MPLS网络的报文添加标签。路由设备B-C和E-F是MPLS网络内部的LSR并且根据标签沿着由一系列LSR构成的LSP(Label Switched Paths,标签交换路径)将报文传送给路由设备D。路由设备D是报文的出口LSR并且负责剥离报文中的标签并将剥离了标签的报文转发给目的网络。

发明内容

[0005] 有鉴于此,本公开提出了一种链路故障的处理方法及装置。
[0006] 根据本公开的一方面,提供了一种链路故障的处理方法,应用于多协议标签交换MPLS网络中的静态段路由SR头节点,所述方法包括:
[0007] 形成针对所述静态SR头节点的下一跳设备的路由感知表,其中所述路由感知表包括所述下一跳设备的标识和与所述下一跳设备对应的目的节点的标识;
[0008] 当感知所述路由感知表中的所述下一跳设备的标识发生改变时,则确定经由所述下一跳设备至所述目的节点的路径发生故障。
[0009] 根据本公开的另一方面,提供了一种链路故障的处理装置,应用于多协议标签交换MPLS网络中的静态段路由SR头节点,所述装置包括:
[0010] 形成模块,用于形成针对所述静态SR头节点的下一跳设备的路由感知表,其中所述路由感知表包括所述下一跳设备的标识和与所述下一跳设备对应的目的节点的标识;
[0011] 确定模块,用于当感知所述路由感知表中的所述下一跳设备的标识发生改变时,则确定经由所述下一跳设备至所述目的节点的路径发生故障。
[0012] 本公开提供的技术方案可以包括以下有益效果:形成包括静态SR头节点的下一跳设备的标识和与该下一跳设备对应的目的节点的标识的路由感知表,根据是否感知到路由感知表中的下一跳设备的标识发生改变,确定经由下一跳设备至目的节点的路径是否发生故障,由此,能够根据下一跳设备的标识发生改变来及时地确定经由下一跳设备至目的节点的路径发生故障。
[0013] 在经由下一跳设备至目的节点的路径经过交换机设备的情况下,即使静态SR头节点无法感知到下一跳设备的出接口被关闭,也能够根据下一跳设备的标识发生改变来及时地确定经由下一跳设备至目的节点的路径发生故障。
[0014] 如果路由感知表中的某个下一跳设备的标识对应于多个目的节点的标识,则只要这多个目的节点的标识中首次出现下一跳设备的标识发生改变,则确定为经由下一跳设备至该首先出现下一跳设备发生改变的目的节点的路径发生故障。
[0015] 如果存在至这多个目的节点的备份路径,则将至这多个目的节点的路径切换为备份路径,如果不存在至这多个目的节点的备份路径,则停止将至这多个目的节点的流量转发至该下一跳设备,从而避免流量的丢失。
[0016] 根据下面参考附图对示例性实施例的详细说明,本公开的其它特征及方面将变得清楚。

附图说明

[0017] 包含在说明书中并且构成说明书的一部分的附图与说明书一起示出了本公开的示例性实施例、特征和方面,并且用于解释本公开的原理。
[0018] 图1是一种MPLS网络结构的示意图。
[0019] 图2是本公开实施例中的一种MPLS网络结构的示意图。
[0020] 图3是本公开实施例中的一种MPLS网络结构的示意图。
[0021] 图4示出根据本公开一实施例的链路故障的处理方法的流程图。
[0022] 图5是本公开实施例中的一种MPLS网络结构的示意图
[0023] 图6示出根据本公开一实施例的链路故障的处理装置的结构框图。
[0024] 图7是根据一示例性实施例示出的一种链路故障的处理装置的硬件结构框图。

具体实施方式

[0025] 以下将参考附图详细说明本公开的各种示例性实施例、特征和方面。附图中相同的附图标记表示功能相同或相似的元件。尽管在附图中示出了实施例的各种方面,但是除非特别指出,不必按比例绘制附图。
[0026] 在这里专用的词“示例性”意为“用作例子、实施例或说明性”。这里作为“示例性”所说明的任何实施例不必解释为优于或好于其它实施例。
[0027] 另外,为了更好的说明本公开,在下文的具体实施方式中给出了众多的具体细节。本领域技术人员应当理解,没有某些具体细节,本公开同样可以实施。在一些实例中,对于本领域技术人员熟知的方法、手段、元件和电路未作详细描述,以便于凸显本公开的主旨。
[0028] 为便于说明,以下首先对本公开涉及的部分概念进行解释说明。
[0029] SR(Segment Routing,段路由)采用源路径选择机制,预先在源节点封装好路径所要经过段的SID(Segment Identifier,段标识),当报文经过SR节点时,该节点根据报文的SID对报文进行转发。除SR头节点以外,其它节点无需维护路径状态。基于MPLS的SR是指在MPLS网络中使用SR时,将标签作为SID对报文进行转发,报文所经过的路径称为SRLSP(Segment Routing Label Switched Paths,基于段路由的LSP)。通常情况下,MPLS TE(MPLS Traffic Engineering,MPLS流量工程)隧道(Tunnel)由一条或一组CRLSP(Constraint-based Routed Label Switched Paths,基于约束路由的LSP)构成,SRLSP是一种特殊的CRLSP,基于SR建立。
[0030] SR头节点上创建的MPLS TE隧道由MPLS TE模式的Tunnel接口标识。当流量的出接口为Tunnel接口时,该流量将通过构成MPLS TE隧道的SRLSP来转发。
[0031] MPLS转发体系中使用入标签匹配和压入新标签进行交换,然而,对于广播以太网链路,出方向删除标签需要指定下一跳信息。
[0032] 例如,静态SR的思想是一台设备绑定一个标签,因此静态SR头节点绑定邻接中间节点表示静态SR头节点需要匹配一个入标签来标识该邻接中间节点,而该入标签的表项和邻接中间节点关联。在某些实施例中,静态SR头节点关联一个主邻居中间节点和一个备份邻居中间节点。图2是本公开实施例中的一种MPLS网络结构的示意图。如图2所示,MPLS网络包括路由设备R1至R4,R1为静态SR头节点并且R4为目的节点,假设R2为R1的主(main)邻居中间节点并且R3为R1的备份(backup)邻居中间节点,则经由下一跳设备R2到目的节点R4的路径为主LSP,经由下一跳设备R3到目的节点R4的路径为备份LSP。R1所配置的标签为100,R2所配置的标签为300,R3所配置的标签为200。
[0033] R2的接口地址为10.1.1.2的接口与R1的接口地址为10.1.1.1的接口相连接并且R3的接口地址为20.1.1.2的接口与R1的接口地址为20.1.1.1的接口相连接,3.3.3.3是R4的目的地址,G0/1是ARP(Address Resolution Protocol,地址解析协议)表或者路由表对应R2的出接口。
[0034] 对于主LSP,R1需要绑定入标签100、出标签300、以及下一跳设备R2的接口地址10.1.1.2,而对于备份LSP,R1需要绑定入标签100、出标签200、以及下一跳设备R3的接口地址20.1.1.2。因此,R2的标签转发表项的关键要素、即待匹配的入标签100、待转出的出标签
300、以及出接口G0/1已形成。
[0035] 由于R2主要负责匹配报文的入标签并删除标签、而无关IP路由前缀,因此R1只需要判断下一跳设备R2的接口地址10.1.1.2的可达性,并且判断方式为查找下一跳设备R2的接口地址10.1.1.2的32位掩码的路由、或者查找下一跳设备R2的接口地址10.1.1.2对应的ARP表项。如果查找到下一跳设备R2的接口地址10.1.1.2的32位掩码的路由或者查找到下一跳设备R2的接口地址10.1.1.2对应的ARP表项,则R1可以判断为下一跳设备R2的接口地址10.1.1.2可达,即R1可以判断为R2可用(未发生故障)。
[0036] 如果出接口G0/1链路发生故障或者R2故障重启致使出接口G0/1被关闭,则R1从本地ARP表中删除下一跳设备R2的接口地址10.1.1.2所对应的ARP表项,R1判断为下一跳设备R2的接口地址10.1.1.2不可达,即R1可以判断为R2不可用,因此R2的标签转发表项失效,R1将主LSP切换为备份LSP。
[0037] 然而,在某些情况下,例如在下一跳设备至目的节点的路径经过交换机设备的情况下,上述判断方式无法及时地判断出该路径发生故障。
[0038] 示例性的,图3是本公开实施例中的一种MPLS网络结构的示意图。如图3所示,MPLS网络包括控制器、路由设备R1至R4和交换机设备switch,其中R1为静态SR头节点(也是Ingress节点),R2和R3均为R1的中间节点,R4为出节点,控制器指定R1上的标签栈。R1所配置的标签为100,R2所配置的标签为300,R3所配置的标签为200。
[0039] R2的接口地址为10.1.1.2的接口与R1的接口地址为10.1.1.1的接口均通过网线连接于switch,R3的接口地址为20.1.1.2的接口与R1的接口地址为20.1.1.1的接口相连接,3.3.3.3是R4的目的地址并且R1根据该目的地址进行业务转发,G0/1是ARP表或者路由表对应R2的出接口。
[0040] 在R1上,到达目的节点R4的路由存在两条路径:一条为路径R1-switch-R2-R4,R1的下一跳设备为R2;另一条为路径R1-R3-R4,R1的下一跳设备为R3。
[0041] 假设R2为R1的主邻居中间节点并且R3为R1的备份邻居中间节点,则R1-switch-R2-R4对应的路径为主LSP,R1-R3-R4对应的路径为备份LSP。假设R2发生故障重启而关闭出接口G0/1,主LSP发生故障,主LSP不可用,R1迅速启用备份LSP,即将路径从R1-switch-R2-R4切换为R1-R3-R4。
[0042] 对于主LSP,R1需要绑定入标签100、出标签300、以及下一跳设备R2的接口地址10.1.1.2,而对于备份LSP,R1需要绑定入标签100、出标签200、以及下一跳设备R3的接口地址20.1.1.2。
[0043] 然而,当R2发生故障重启、即主LSP发生故障时,R2的出接口G0/1被关闭,但是R1无法感知到R2的出接口G0/1被关闭。并且R1的本地ARP表需要在自路径发生故障时起经过较长时间(为便于说明,以下将该时间称为“经过时间”)才会老化,例如几分钟或者十几分钟,因此在该本地ARP表中,R2的接口地址10.1.1.2在该经过时间内不会被删除,这使得R1在该经过时间内一直能够在本地ARP表中查找到R2的接口地址10.1.1.2对应的ARP表项,从而使R1在该经过时间内一直错误地判断为R2可用,从而错误地判断为主LSP没有发生故障。
[0044] 基于此,本公开实施例提出一种链路故障的处理方法及装置。
[0045] 为便于更清楚地描述本公开,以下以图3至图5为例对本公开实施例进行详细阐述。
[0046] 图4示出根据本公开一实施例的链路故障的处理方法的流程图。该处理方法应用于MPLS网络中的静态SR头节点,例如,该处理方法可应用于图3中的R1。如图4所示,该处理方法包括如下步骤。
[0047] 在步骤S910中,形成针对静态SR头节点的下一跳设备的路由感知表,其中该路由感知表包括下一跳设备的标识和与下一跳设备对应的目的节点的标识。
[0048] 本实施例中,静态SR头节点、下一跳设备和目的节点都可以是路由设备,路由设备可以是路由器,也可以是路由交换机等,本发明对此不作限定。并且静态SR头节点、下一跳设备和目的节点都具有能够唯一标识自身的标识,该标识包括但不限于地址,本公开对标识的表现形式不作具体限定。
[0049] 目的节点为经由下一跳设备的节点。由于可以经由一个下一跳设备到达一个或多个节点,因此目的节点的个数可以为一个或多个。因而,在路由感知表中,一个下一跳设备既可以与一个目的节点相对应,也可以与多个目的节点相对应。
[0050] 示例性的,对于图3所示的MPLS网络,由于R1的下一跳设备为R2,而如图3所示,经过R2的节点只有R4,因此,目的节点为R4。
[0051] 示例性的,图5是本公开实施例中的一种MPLS网络结构的示意图。如图5所示,MPLS网络包括控制器、路由设备R1至R7和交换机设备switch,其中R1为静态SR头节点(也是Ingress节点),R2、R3和R6均为R1的中间节点,R4、R5和R7为出节点。
[0052] R2的接口地址为10.1.1.2的接口与R1的接口地址为10.1.1.1的接口均通过网线连接于switch,R3的接口地址为20.1.1.2的接口与R1的接口地址为20.1.1.1的接口相连接,R6的接口地址为30.1.1.2的接口与R1的接口地址为30.1.1.1的接口相连接,3.3.3.3是R4的目的地址,4.4.4.4是R7的目的地址,5.5.5.5是R5的目的地址,G0/1是ARP表或者路由表对应R2的出接口。
[0053] 对于图5所示的MPLS网络,由于R1的下一跳设备为R2,而如图5所示,经过R2的节点有R4、R5和R7,因此,目的节点为R4、R5和R7。
[0054] 静态SR头节点可以根据接收到的报文的目的IP地址查找FIB表,并且根据该FIB表获取报文的下一跳设备的标识。
[0055] 需要说明的是,下一跳设备可以是主邻居中间节点,也可以是备份邻居中间节点,还可以是目的节点。其中在下一跳设备是目的节点的情况下,静态SR头节点直接将报文转发至目的节点而没有经过任何中间节点。
[0056] 为便于说明,以下一跳设备是主邻居中间节点为例对本实施例的处理方法进行阐述,下一跳设备是备份邻居中间节点或目的节点的处理方法可以参见下一跳设备是主邻居中间节点的处理方法,在此不再赘述。
[0057] 在图3所示的MPLS网络中,静态SR头节点形成的路由感知表可以如表1所示。
[0058] 表1
[0059]下一跳设备的标识 目的节点的标识
10.1.1.2 3.3.3.3
[0060] 在图5所示的MPLS网络中,静态SR头节点形成的路由感知表可以如表2所示。
[0061] 表2
[0062] 下一跳设备的标识 目的节点的标识10.1.1.2 3.3.3.3
10.1.1.2 4.4.4.4
10.1.1.2 5.5.5.5
[0063] 本实施例中,路由感知表所包括的信息包括但不限于下一跳设备的标识和目的节点的标识,例如,还可以包括诸如静态SR头节点的标识、路由信息、经由下一跳设备至目的节点的路径等其它信息。其中,路由信息可以包含目的节点的IP地址、出接口等信息。示例性的,在图3所示的MPLS网络中,静态SR头节点形成的路由感知表形成的路由感知表也可以如表3所示。
[0064] 表3
[0065]
[0066] 本实施例中,可以采用如下任意一种或多种方式来形成针对静态SR头节点的下一跳设备的路由感知表。
[0067] 方式一:根据下一跳设备的标识遍历静态SR头节点当前的路由转发表,以获取经由下一跳设备的目的节点的标识;将下一跳设备的标识和获取到的目的节点的标识形成为路由感知表。
[0068] 本实施例中,静态SR头节点查找存储的本地路由表(即,当前的路由转发表),本地路由表由路由表项组成,路由表项可以包括目的IP地址和下一跳设备的地址。
[0069] 静态SR头节点在本地路由表中查找下一跳设备的地址为静态SR头节点的下一跳设备的标识的路由表项,并且将查找到的路由表项中的目的IP地址确定为目的节点的标识。
[0070] 静态SR头节点将下一跳设备的标识和确定出的目的节点的标识形成为路由感知表。
[0071] 以下结合一种具体的应用场景,对上述方式一进行详细说明。如图3所示的MPLS网络,首先,R1查找到存储的本地路由表如表4所示。
[0072] 表4
[0073] 目的IP地址 下一跳设备的地址3.3.3.3 10.1.1.2
[0074] 然后,R1在表4中查找包括下一跳设备的地址为10.1.1.2的路由表项为表4中的第2行,并且将该行中的目的IP地址3.3.3.3确定为目的节点的标识。
[0075] 最后,R1将下一跳设备的标识10.1.1.2和确定出的目的节点的标识3.3.3.3形成为表5所示的路由感知表。
[0076] 表5
[0077]下一跳设备的标识 目的节点的标识
10.1.1.2 3.3.3.3
[0078] 以下结合另一种具体的应用场景,对上述方式一进行详细说明。如图5所示的MPLS网络,首先,R1查找到存储的本地路由表如表6所示。
[0079] 表6
[0080]目的IP地址 下一跳设备的地址
3.3.3.3 10.1.1.2
4.4.4.4 10.1.1.2
5.5.5.5 10.1.1.2
[0081] 然后,R1在表6中查找包括下一跳设备的地址为10.1.1.2的路由表项为表6中的第2至4行,并且将这些行中的目的IP地址3.3.3.3、4.4.4.4和5.5.5.5确定为目的节点的标识。
[0082] 最后,R1将下一跳设备的标识10.1.1.2和确定出的目的节点的标识3.3.3.3、4.4.4.4和5.5.5.5形成为表7所示的路由感知表。
[0083] 表7
[0084]下一跳设备的标识 目的节点的标识
10.1.1.2 3.3.3.3
10.1.1.2 4.4.4.4
10.1.1.2 5.5.5.5
[0085] 方式二:根据静态SR头节点上所建立的MPLS TE隧道,确定目的节点的标识,其中将MPLS TE隧道的目的地址作为目的节点的标识;将下一跳设备的标识、静态SR头节点至下一跳设备的路径以及目的节点的标识形成为路由感知表。
[0086] 本实施例中,静态SR头节点确定静态SR头节点上所建立的MPLS TE隧道。静态SR头节点将所建立的隧道的隧道目的地址(即,隧道的尾节点的目的地址)确定为目的节点的标识。静态SR头节点将下一跳设备的标识、静态SR头节点至下一跳设备的路径以及目的节点的标识形成为路由感知表。
[0087] 以下结合一种具体的应用场景,对上述方式二进行详细说明。如图3所示的MPLS网络,首先,R1可以确定所建立的隧道Tunnel 1:目的地址为3.3.3.3。然后,R1将目的地址3.3.3.3确定为目的节点的标识。最后,R1将下一跳设备的标识10.1.1.2、路径R1-R2以及目的节点的标识3.3.3.3形成为表8所示的路由感知表。
[0088] 表8
[0089]
[0090] 以下结合另一种具体的应用场景,对上述方式二进行详细说明。如图5所示的MPLS网络,R1可以确定所建立的隧道Tunnel 1:目的地址为3.3.3.3;Tunnel 2:目的地址为4.4.4.4;Tunnel 3:目的地址为5.5.5.5。R1将目的地址3.3.3.3、4.4.4.4和5.5.5.5确定为目的节点的标识。R1形成表9所示的路由感知表。
[0091] 表9
[0092]
[0093] 在步骤S930中,当感知路由感知表中的下一跳设备的标识发生改变时,则确定经由下一跳设备至目的节点的路径发生故障。
[0094] 本实施例中,由于静态SR头节点可以检测下一跳设备是否发生故障,并且在下一跳设备发生故障时改变下一跳设备,而在下一跳设备发生故障时,经由下一跳设备至目的节点的路径也发生故障,因此可以根据路由感知表中的下一跳设备的标识是否发生改变,快速感知经由下一跳设备至目的节点的路径是否发生故障。
[0095] 本实施例中,当静态SR头节点检测到下一跳设备发生故障时,静态SR头节点将路由感知表中的下一跳设备的标识改变为其它可用的下一跳设备的标识。因此,当静态SR头节点检测到下一跳设备发生故障时,静态SR头节点能够迅速地感知路由感知表中的下一跳设备的标识发生改变。因此静态SR头节点可以通过是否感知到下一跳设备发生故障,感知路由感知表中的下一跳设备的标识是否发生改变。
[0096] 在某些实施例中,静态SR头节点可以定期感知下一跳设备是否发生故障。当检测到下一跳设备没有发生故障时,静态SR头节点不改变路由感知表中的下一跳设备的标识,即,当检测到经由下一跳设备到达目的节点的路径正常时,静态SR头节点通过该路径进行业务转发,本公开不再赘述。
[0097] 相应地,当检测到下一跳设备发生故障时,静态SR头节点将路由感知表中的下一跳设备的标识改变为其它可用的下一跳设备的标识,即,当检测到经由下一跳设备到达目的节点的路径发生故障时,静态SR头节点通过经由其它可用的下一跳设备到达目的节点的路径进行业务转发。
[0098] 在某些实施例中,静态SR头节点可以根据预设的周期检测下一跳设备是否发生故障,该预设的周期可以为根据实际需要任意选择的周期。并且,静态SR头节点检测下一跳设备是否发生故障的方式包括但不限于:通过BFD技术或类似技术来检测下一跳设备是否发生故障,本公开不再赘述。
[0099] 在一种可能的实现方式中,当没有感知路由感知表中的下一跳设备的标识发生改变时,则确定经由下一跳设备至目的节点的路径没有发生故障。
[0100] 示例性的,针对上述表6或表8所示的路由感知列表,如果R1感知到表6或表8中的下一跳设备的标识发生改变,例如改变为20.1.1.2,则R1确定经由R2至R4的路径发生故障。
[0101] 相应地,如果R1感知到表6或表8中的下一跳设备的标识仍然为10.1.1.2,则R1确定经由R2至R4的路径没有发生故障。
[0102] 本实施例中,经由下一跳设备至目的节点的路径可以为主LSP,也可以为备份LSP,本发明对路径不作具体限定。
[0103] 因此,在本实施例中,形成包括静态SR头节点的下一跳设备的标识和与该下一跳设备对应的目的节点的标识的路由感知表,根据是否感知到路由感知表中的下一跳设备的标识发生改变,确定经由下一跳设备至目的节点的路径是否发生故障,由此,能够根据下一跳设备的标识发生改变来及时地确定经由下一跳设备至目的节点的路径发生故障。
[0104] 在经由下一跳设备至目的节点的路径经过交换机设备的情况下,即使静态SR头节点无法感知到下一跳设备的出接口被关闭,也能够根据下一跳设备的标识发生改变来及时地确定经由下一跳设备至目的节点的路径发生故障。
[0105] 如果路由感知表中的某个下一跳设备的标识对应于多个目的节点的标识,则只要这多个目的节点的标识中首次出现下一跳设备的标识发生改变,则确定为经由下一跳设备至该首先出现下一跳设备发生改变的目的节点的路径发生故障。
[0106] 如果存在至这多个目的节点的备份路径,则将至这多个目的节点的路径切换为备份路径,如果不存在至这多个目的节点的备份路径,则停止将至这多个目的节点的流量转发至该下一跳设备,从而避免流量的丢失。
[0107] 在一种可能的实现方式中,上述处理方法还可以包括:当确定经由下一跳设备至目的节点的路径发生故障时,则将路径切换为其它路径,其中其它路径是经由改变后的下一跳设备至目的节点的路径。
[0108] 本实施例中,当确定经由下一跳设备至目的节点的路径发生故障时,为了避免流量经由该故障路径被丢弃,静态SR头节点将路径切换为由改变后的下一跳设备至目的节点的路径。
[0109] 示例性的,以下结合一种具体的应用场景,对当确定经由下一跳设备至目的节点的路径发生故障时,则将路径切换为其它路径进行详细说明。如图3所示的MPLS网络,如果R1感知到表6或表8中的下一跳设备的标识发生改变,例如改变为20.1.1.2,则R1确定经由R2至R4的路径发生故障,R1将路径从R1-R2-R4切换为R1-R3-R4。
[0110] 如图5所示的MPLS网络,如果R1感知到表7或表9中的第二行中的下一跳设备的标识发生改变,例如改变为20.1.1.2,则R1确定经由R2至R4的路径发生故障,R1将至R4的路径切换为R1-R3-R4,并且将至R5的路径切换为R1-R6-R5,并且停止将至R7的流量转发至R2。
[0111] 因此,在本实施例中,当根据下一跳设备的标识发生改变来及时地确定经由下一跳设备至目的节点的路径发生故障时,将该路径切换为经由改变后的下一跳设备至目的节点的其它路径,因此静态SR头节点能够跟随下一跳设备的切换而及时地切换到达目的节点的路径。
[0112] 由此,不仅能够尽量保障MPLS链路和路由转发的同步,而且还能够避免由于在下一跳设备上找不到出接口而丢弃沿自静态SR头节点至该下一跳设备的流量,从而能够避免流量的丢失,提高MPLS网络的可靠性。
[0113] 图6是根据一示例性实施例示出的一种链路故障的处理装置的结构框图,该链路故障的处理装置可以应用于多协议标签交换MPLS网络中的静态段路由SR头节点。如图6所示,该处理装置1000可以包括形成模块1010和确定模块1030。
[0114] 其中,形成模块1010用于形成针对静态SR头节点的下一跳设备的路由感知表,其中路由感知表包括下一跳设备的标识和与下一跳设备对应的目的节点的标识。
[0115] 确定模块1030与形成模块1010连接,用于当感知路由感知表中的下一跳设备的标识发生改变时,则确定经由下一跳设备至目的节点的路径发生故障。
[0116] 在一种可能的实现方式中,形成模块1010具体用于:根据下一跳设备的标识遍历静态SR头节点当前的路由转发表,以获取经由下一跳设备的目的节点的标识;将下一跳设备的标识和获取到的目的节点的标识形成为路由感知表。
[0117] 在一种可能的实现方式中,形成模块1010具体用于:根据静态SR头节点上所建立的MPLS TE隧道,确定目的节点的标识,其中将MPLS TE隧道的目的地址作为目的节点的标识;将下一跳设备的标识、静态SR头节点至下一跳设备的路径以及目的节点的标识形成为路由感知表。
[0118] 在一种可能的实现方式中,该处理装置1000还可以包括:感知模块(未示出),用于当感知下一跳设备发生故障时,感知路由感知表中的下一跳设备的标识发生改变。
[0119] 在一种可能的实现方式中,该处理装置1000还可以包括:切换模块(未示出),用于当确定经由下一跳设备至目的节点的路径发生故障时,则将路径切换为其它路径,其中其它路径是经由改变后的下一跳设备至目的节点的路径。
[0120] 关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
[0121] 图7是根据一示例性实施例示出的一种链路故障的处理装置的硬件结构框图。参照图7,该装置1100可包括处理器1101、存储有机器可执行指令的机器可读存储介质1102。处理器1101与机器可读存储介质1102可经由系统总线1103通信。并且,处理器1101通过读取机器可读存储介质1102中与链路故障的处理逻辑对应的机器可执行指令以执行上文所述的链路故障的处理方法。
[0122] 本文中提到的机器可读存储介质1102可以是任何电子、磁性、光学或其它物理存储装置,可以包含或存储信息,如可执行指令、数据,等等。例如,机器可读存储介质可以是:RAM(Radom Access Memory,随机存取存储器)、易失存储器、非易失性存储器、闪存、存储驱动器(如硬盘驱动器)、固态硬盘、任何类型的存储盘(如光盘、dvd等),或者类似的存储介质,或者它们的组合。
[0123] 以上已经描述了本公开的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术的技术改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。