CN113453262A - 一种双向转发检测bfd方法及装置 - Google Patents
一种双向转发检测bfd方法及装置 Download PDFInfo
- Publication number
- CN113453262A CN113453262A CN202110733151.8A CN202110733151A CN113453262A CN 113453262 A CN113453262 A CN 113453262A CN 202110733151 A CN202110733151 A CN 202110733151A CN 113453262 A CN113453262 A CN 113453262A
- Authority
- CN
- China
- Prior art keywords
- bfd
- segment
- list
- label stack
- matched
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000001514 detection method Methods 0.000 title claims abstract description 33
- 238000000034 method Methods 0.000 title claims abstract description 27
- 230000002457 bidirectional effect Effects 0.000 title claims abstract description 10
- 238000004364 calculation method Methods 0.000 claims description 6
- 238000010586 diagram Methods 0.000 description 12
- 230000006870 function Effects 0.000 description 5
- 238000004422 calculation algorithm Methods 0.000 description 4
- GNFTZDOKVXKIBK-UHFFFAOYSA-N 3-(2-methoxyethoxy)benzohydrazide Chemical compound COCCOC1=CC=CC(C(=O)NN)=C1 GNFTZDOKVXKIBK-UHFFFAOYSA-N 0.000 description 3
- FGUUSXIOTUKUDN-IBGZPJMESA-N C1(=CC=CC=C1)N1C2=C(NC([C@H](C1)NC=1OC(=NN=1)C1=CC=CC=C1)=O)C=CC=C2 Chemical compound C1(=CC=CC=C1)N1C2=C(NC([C@H](C1)NC=1OC(=NN=1)C1=CC=CC=C1)=O)C=CC=C2 FGUUSXIOTUKUDN-IBGZPJMESA-N 0.000 description 3
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000010187 selection method Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W24/00—Supervisory, monitoring or testing arrangements
- H04W24/04—Arrangements for maintaining operational condition
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W40/00—Communication routing or communication path finding
- H04W40/24—Connectivity information management, e.g. connectivity discovery or connectivity update
- H04W40/248—Connectivity information update
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本说明书提供一种双向转发检测方法及装置,所述方法包括:通过将BFD参数以及Segment‑list相同的路径对应的BFD会话进行合并,从而能够将BFD探测聚合,相同Segment‑list复用同一个BFD会话,大大减少了BFD报文的发送数量,节约了资源。
Description
技术领域
本说明书涉及通信技术领域,尤其涉及一种双向转发检测BFD方法及装置。
背景技术
在进行网络的设计规划时,通常使用冗余的备份链路来保护关键应用,从而可以在网络发生故障时,将流量切换至备份链路以加快网络收敛速度。那么如何在网络发生故障时,快速的检测出故障至关重要。传统的协议如开放式最短路径优先OSPF(OpenShortest Path First,缩写为OSPF)、中间系统到中间系统IS-IS(Intermediate System-to-Intermediate System,缩写为IS-IS)虽然有快速Fast Hello功能来加快检测速度,但是检测时间也只能达到1秒的精度,双向转发检测BFD(Bidirectional ForwardingDetection,缩写为BFD)可以让检测时间达到毫秒级,最大限度的减少用户业务流量的丢包。
SRv6-TE Policy是基于IPv6 SR的SR-TE Policy(Segment Routing TrafficEngineering Policy,段路由流量工程策略),它提供了灵活的转发路径选择方法,可以满足用户不同的转发需求。当段路由Segment Routing网络的源节点和目的节点之间存在多条路径时,合理利用SRv6-TE Policy选择转发路径,不仅可以方便管理员对网络进行管理和规划,还可以有效地减轻网络设备的转发压力。
在SRv6的应用场景下,如何利用BFD进行快速的链路故障检测称为亟待解决的问题。
发明内容
为克服相关技术中存在的问题,本说明书提供了一种BFD方法及装置。
根据本说明书实施例的第一方面,提供一种双向转发检测BFD方法,所述方法包括:
获取每一个段路由策略对应的段路由列表segment list标签栈以及BFD参数信息;
根据所述标签栈以及BFD参数信息计算摘要值;
针对每一个摘要值建立一个BFD会话,以对相同的标签栈以及BFD参数信息对应的BFD会话进行合并。
可选的,所述方法还包括:
若检测到该摘要值对应的标签栈的路径故障,则摘要值对应的所有段路由策略下与该标签栈对应的路径均上报故障事件。
可选的,所述方法还包括:
根据计算的摘要值在建立的BFD会话合并表中是否存在与该摘要值匹配的表项;
如果不存在,则在BFD会话合并表中记录所述计算的摘要值、所述段路由列表segment list标签栈以及BFD参数信息的对应关系;
如果存在,则将所述段路由列表segment list标签栈以及BFD参数信息记录至与BFD会话合并表中匹配到的摘要值对应的表项中。
可选的,所述BFD会话合并表中还记录有段路由策略对应的路径名称以及BFD配置模板的名称。
可选的,所述方法还包括:
接收到删除第一段路由策略的第一segment list的指令;
在BFD会话合并表中查询所述第一segment list标签栈对应的至少一个摘要值;
针对每一个摘要值对应的所述第一段路由策略以及第一segment list标签栈进行删除;
或者,
接收到删除第一段路由策略与BFD配置模板绑定关系的指令;
确定所述第一段路由策略对应的所有segment list标签栈;
针对每一个segment list标签栈确定对应的摘要值;
在BFD会话合并表中查找与所述摘要值匹配的表项;
删除该表项中对应的第一段路由策略;
或者,
接收到参数更新指令,所述参数更新包括:BFD模板参数的更新或者Segment list标签栈的更新;
确定需要更新的参数在BFD会话合并表中匹配的表项中是否仅存在待更新参数;
如果匹配的表项中还存在无需更新的参数,则根据该匹配的表项中合并的参数的数目对匹配到的表项进行拆分;
对拆分后的表项分别进行参数的更新,并删除拆分前匹配到的表项。
根据本说明书实施例的第一方面,提供一种双向转发检测BFD装置,包括:
获取模块,用于获取每一个段路由策略对应的段路由列表segment list标签栈以及BFD参数信息;
计算模块,用于根据所述标签栈以及BFD参数信息计算摘要值;
建立模块,用于针对每一个摘要值建立一个BFD会话,以对相同的标签栈以及BFD参数信息对应的BFD会话进行合并。
可选的,所述装置还包括:
上报模块,用于若检测到该摘要值对应的标签栈的路径故障,则摘要值对应的所有段路由策略下与该标签栈对应的路径均上报故障事件。
可选的,所述装置计算模块具体用于:
根据计算的摘要值在建立的BFD会话合并表中是否存在与该摘要值匹配的表项;
如果不存在,则在BFD会话合并表中记录所述计算的摘要值、所述段路由列表segment list标签栈以及BFD参数信息的对应关系;
如果存在,则将所述段路由列表segment list标签栈以及BFD参数信息记录至与BFD会话合并表中匹配到的摘要值对应的表项中。
可选的,所述BFD会话合并表中还记录有段路由策略对应的路径名称以及BFD配置模板的名称。
可选的,所述装置还包括:
接收模块,用于接收到删除第一段路由策略的第一segment list的指令;
查询模块,用于在BFD会话合并表中查询所述第一segment list标签栈对应的至少一个摘要值;
删除模块,用于针对每一个摘要值对应的所述第一段路由策略以及第一segmentlist标签栈进行删除;
或者,
所述接收模块还用于接收到删除第一段路由策略与BFD配置模板绑定关系的指令;
所述查询模块还用于确定所述第一段路由策略对应的所有segment list标签栈;
所述计算模块还用于针对每一个segment list标签栈确定对应的摘要值;
所述查询模块还用于在BFD会话合并表中查找与所述摘要值匹配的表项;
所述删除模块还用于删除该表项中对应的第一段路由策略;
或者,
所述接收模块还用于接收到参数更新指令,所述参数更新包括:BFD模板参数的更新或者Segment list标签栈的更新;
所述查询模块还用于确定需要更新的参数在BFD会话合并表中匹配的表项中是否仅存在待更新参数;如果匹配的表项中还存在无需更新的参数,则根据该匹配的表项中合并的参数的数目对匹配到的表项进行拆分;对拆分后的表项分别进行参数的更新,并删除拆分前匹配到的表项。
本说明书的实施例提供的技术方案可以包括以下有益效果:本实施例通过将BFD参数以及Segment-list相同的路径对应的BFD会话进行合并,从而能够将BFD探测聚合,相同Segment-list复用同一个BFD会话,大大减少了BFD报文的发送数量,节约了资源。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本说明书。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本说明书的实施例,并与说明书一起用于解释本说明书的原理。
图1是本说明书提供的SRv6-Policy的结构示意图;
图2是本说明书提供的网络架构示意图;
图3是本说明书提供的BFD方法的流程示意图;
图4是本说明书提供的BFD装置的结构示意图;
图5是本说明书提供的网络设备的结构示意图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本说明书相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本说明书的一些方面相一致的装置和方法的例子。
图1为SRv6-Policy的结构示意图,如图1所示,一个SRv6-Policy由多条具有不同优先级preference的候选路径(Candidate Path,图1中缩写为Cpath)组成,每个候选路径包括由段列表(Segment List,又称SID列表)标识的一条或多条转发路径。
其中,一个SRv6-Policy包含一条或多条候选路径。通过SRv6-Policy转发流量时,网络设备根据候选路径的优先级从多条候选路径中选择最优路径。不同SRv6-TE Policy不能共享同一条候选路径。
SID列表包含报文转发路径信息,由转发路径上各个节点的SID(IPv6地址)组成。候选路径由一个SID列表或者多个带权重的SID列表组成。SRv6-TE Policy选择某条候选路径后,会根据SID列表的权重,在候选路径的多个SID列表间进行负载分担。
软件定义网络SDN(Software Defined Network,SDN)中使用无缝SBFD(SeamlessBFD,缩写为SBFD),进行链路故障的探测,无缝BFD是一种单向的故障检测机制,其检测速度比BFD更快速,可以配合SRv6-TE Policy(或SR-TE Policy)来实现:网络设备侧检测到某个路径Down时将流量快速切换到可用路径或默认的逃生路径,达到最大限度的减少用户业务流量丢包的目的。
SRV6 Policy可以绑定多个候选路径,每个候选路径可以绑定多个Segment-list。网络设备针对每个Segment-list都会创建一份探测会话,每个探测会话直接按照对应Segment-list的标签栈进行转发。候选路径的一个Segment-list对应的路径探测Down,则网络设备就会将此Segment-list对应的路径置为Down,流量在剩余UP的Segment-list对应的路径中负载分担,如果候选路径中的所有Segment-list的探测会话都Down,则整个候选路径Down,选择其它UP的候选路径进行流量的转发,如果所有候选路径Down,则流量走路由转发。
在一个示例中,图2示出了一种网络架构示意图,如图2所示,网络中示出了两个网络侧边缘设备PE(Provider Edge,缩写为PE),两个边缘设备之间包括P1~P5所示的网络设备。若在PE1和PE2之间,用户有100个业务,这100个业务可以通过颜色color属性进行引流,引流至SRv6-policy上。图2的左上角示出了其中的一个SRv6 Policy的示例,实际上,控制器针对这100个SRv6Policy部署的Segment-list几乎一样(路径顺序和权重可能不同)。这样设备上就启动了100×5个SBFD探测会话,实际真正的转发路径就5个。产生了大量的重复探测,大大消耗了设备的转发资源,如果实现上能够将探测聚合,相同Segment-list复用同一个SBFD会话的话,按照本示例,SBFD的探测精度可以提升两个数量级,这样设备可以更快的检测到路径Down,最大程度减少业务流量的丢包。
实施例一
本说明书提供一种方法BFD检测方法,可以提升设备的业务通断探测感知能力,同等性能消耗下,可以更快的检测到路径的通断情况,最大程度的减少业务丢包。
在介绍本说明书提供的方法之前,对本说明书中可能涉及到的一些概念做简要的介绍。
每一个段路由策略SR Policy可以绑定一个BFD模板,每一个BFD模板包括模板名称以及BFD参数信息。不同的段路由策略对应的BFD模板的名称可能不同(当然也可以相同,即不同的段路由策略绑定同一个BFD模板),不同的BFD模板包括的BFD参数信息可以是相同的。
其中,BFD参数信息包括:最小发送间隔(min-transmit-interval)、最小接收间隔(min-receive-interval)、检测时间倍数(detect-multiplier)。
在一个示例中,BFD参数中最小发送间隔、最小接收间隔、检测时间倍数依次被配置为100ms、100ms、3倍,本实施例中将BFD参数记为(100,100,3)。
对于每一个段路由策略可以可以绑定多个候选路径,每个候选路径可以绑定多个Segment list。具体的,在进行配置时,段路由策略可以通过路径名称与Segment list建立绑定。
在一个示例中,给出了一种segment list的定义方式:
segment-list ADWAN-SRV6-PATH-0
index 1 ipv6 6000::1
index 2 ipv6 7000::1
index 3 ipv6 8000::1
segment-list ADWAN-SRV6-PATH-1
index 1 ipv6 6000::1
index 2 ipv6 7001::1
index 3 ipv6 8000::1
其中,ADWAN-SRV6-PATH-0、以及ADWAN-SRV6-PATH-1即为路径名称;Index表征SID标签栈的顺序,6000::1、7000::1等为SID。本说明书中将上述路径对应的各SID统称为segment list标签栈。
图3示出了本实施例提供的BFD检测方法的流程示意图,该方法可以应用于任意网络设备,网络设备可以为路由器、交换机等,如图3所示,该方法包括:
步骤301,获取每一个段路由策略对应的段路由列表segment list标签栈以及BFD参数信息。
在一个具体的示例中,在网络设备被下发的配置中:
SR policy1通过路径名称ADWAN-SRV6-PATH-0绑定了标签栈index 1ipv6 6000::1;index 2 ipv6 7000::1;index 3 ipv6 8000::1;SR policy1通过BFD模板名称SRV6-BFD-Template-1绑定的BFD参数为(100,100,3);
SR policy2通过路径名称ADWAN-SRV6-PATH-1也绑定了同样的标签栈index 1ipv6 6000::1;index 2 ipv6 7000::1;index 3 ipv6 8000::1;SR policy2通过BFD模板名称SRV6-BFD-Template-2绑定的BFD参数为(100,100,3);
SR policy3通过路径名称ADWAN-SRV6-PATH-2绑定了标签栈index 1ipv6 6000::1;index 2 ipv6 7001::1;index 3 ipv6 8000::1;SR policy3通过BFD模板名称SRV6-BFD-Template-3绑定的BFD参数为(100,100,3)。
那么网络设备可以获取到各个段路由策略的segment list标签栈以及BFD参数信息。
步骤303,根据所述标签栈以及BFD参数信息计算摘要值。
进一步的,可以对每一个SR策略绑定的标签栈和BFD参数计算摘要值。
具体的,计算摘要值可以采用现有的摘要算法进行计算,例如可以采用信息摘要算法MD5(message-digest algorithm 5)算法、安全散列算法等。本说明书中计算摘要值以MD5为例进行说明。
其中,由于SR policy1与SR policy2对应的segment list标签栈以及BFD参数信息是相同的,因此计算出的MD5值也是相同的。
步骤305,针对每一个摘要值建立一个BFD会话,以对相同的标签栈以及BFD参数信息对应的BFD会话进行合并。
此时可以记录SR policy1的segment list标签栈与SR policy2的segment list标签栈、SR policy1、SR policy2对应绑定的BFD参数信息以及MD5值之间的对应关系,进而对同一个摘要值对应的BFD会话进行合并,即同一个摘要值建立一个BFD会话,同一个摘要值对应的segment list标签栈所代表的路径发送一份BFD报文即可。由此大大节约了BFD检测所占用的资源。
在一个示例中,可以针对合并的BFD会话建立如下BFD会话合并表,该表用于记录摘要值、合并的Segment-list标签栈以及BFD参数的对应关系。
具体的,如表1所示:
表1
在另一种可选的实施例中,如表2所示,BFD会话合并表中还可以记录合并的标签栈对应的SR policy、BFD模板名称、segment list对应的路径名称。根据该表可以确定出具体有哪些SR policy的哪些segment list被合并,这样也方便后续在SR Policy被删除、或者BFD模板被删除或更改时,重新计算MD5。表2中,L为表项标识,表项标识与SR policy名称以及BFD Templates名称、Segment-lists路径名称一一对应。
表2
在上述实施例的基础上,该方法还包括:
若检测到存在摘要值对应的标签栈的路径故障,则该摘要值对应的所有段路由策略下的与该标签栈对应的路径均上报故障事件。
例如,若MD5值为2fe2f7c3776158b20825723e5b3e13b0对应的路径:index 16000::1->7000::1->8000::1通过BFD报文检测到存在故障,那么该MD5至对应的所有段路由策略SR policy1、SR policy2对应引用的路径ADWAN-SRV6-PATH-0、ADWAN-SRV6-PATH-1均要向上层协议上报down事件。
相应的,如果检测到摘要值对应的标签栈的路径正常up,则该摘要值对应的所有段路由策略下该标签栈对应的路径均上报up事件。
实施例二
在上述实施例的基础上,本说明书实施例二对于SR policy绑定的segment list标签栈、或segment list路径名称和BFD模板、BFD参数发生变更、或者删除等情况做进一步的说明。
(1)网络设备新下发了SR policy
针对新下发的SR policy执行步骤301以及步骤303;若计算出的MD5值为R1,那么进一步的,在BFD会话合并表中确定是否存在于R1匹配的MD5值。
若不存在与R1匹配的MD5值,则在BFD会话合并表中新增表项,在新增的表项中记录计算出的摘要值R1、以及段路由列表segment list标签栈以及BFD参数信息的对应关系。可选的,还可以进一步的记录SR policy名称、路径名称、BFD模板与摘要值的对应关系。新建BFD探测会话,执行BFD探测任务,BFD探测的通断结果联动该MD5的segment list对应的路径的UP或者DOWN;
如果存在与R1匹配的MD5值,则将段路由列表segment list标签栈以及BFD参数信息记录至与BFD会话合并表中匹配到的摘要值对应的表项中;可选的,还可以将SR policy名称、路径名称、BFD模板记录至BFD会话合并列表中。此时根据根据R1对应已经建立的BFD会话的通断结果联动该MD5值的segment list对应的路径的UP或者DOWN。
(2)网络设备接收到删除SR policy的指令
针对待删除的SR Policy绑定的每一个Segment-list标签栈执行以下操作:
在BFD会话合并表中查询Segment-list标签栈对应的MD5值Ri,查找与Ri匹配的表项,从该表项对应的SR Policy名称一列中删除该SR Policy;如果与BFD会话合并表匹配的Ri所得对应的SR Policy名称为空,则删除该表项,取消对应BFD探测会话。
(3)网络设备接收到删除SR Policy对应的某一segment list的指令删除单一segment list执行的步骤与(2)中类似,在此不再赘述。
(4)网络设备接收到删除SR policy的BFD配置模板绑定关系的指令针对SRPolicy绑定的每一个Segment-list标签栈执行以下操作:
在BFD会话合并表中查询Segment-list标签栈对应的MD5值Ri,查找Ri对应的表项,从该表项对应的SR Policy名称列中删除该SR Policy;如果SR Policy名称列为空,则删除该表项,并取消对应BFD探测会话。
(5)网络设备对BFD模板的更新
在BFD会话合并表中查找,BFD模板名称中是否仅存在需要修改的BFD模板,如果是,则执行步骤c,如果否(即除了需要修改的BFD模板外,MD5值对应的表项中还存在其他BFD模板)则执行步骤d;
步骤c)在BFD会话合并表中逐条更改需要修改的BFD模板对应的表项L1[i]的BFD参数值和MD5值;
在一个示例中,若修改的BFD模板为SRV6-BFD-Template-1,具体的,是将BFD参数由(100,100,3)修改为(200,200,5)。
其中,若SRV6-BFD-Template-2的BFD参数和SRV6-BFD-Template-1修改前的BFD参数相同。SR Policy1绑定SRV6-BFD-Template-1和ADWAN-SRV6-PATH-1,SR Policy2绑定SRV6-BFD-Template-2和ADWAN-SRV6-PATH2,SR Policy3绑定SRV6-BFD-Template-1和ADWAN-SRV6-PATH-3。
查询SRV6-BFD-Template-1获取到两条数据:L1[1]~L1[2],具体的如表3所示:
表3
其中,L1[2]对应的表项中,仅存在需要修改的BFD模板SRV6-BFD-Template-1,不存在其他的不需要修改的BFD模板,因此,可以直接在在BFD会话合并表中更改BFD参数和MD5值。
d)根据合并的BFD模板的数量W将相应的表项L1[2]拆分成W个(本实施例中以拆分成两个表项L3[2]、L4[2]为例进行说明),将需要修改的BFD模板以及使用该模板的SRPolicy以及这些SR Policy包含的所有Segment-lists路径名称,Segment-list标签栈,新的BFD参数,以及新的MD5值放到拆分后的表项L3[2]中,同时更新L3[2]表项中SR policy和对应Segment-lists路径的MD5值。表4中示出了,拆分出的表项的L3[2]的示意,其中BFD参数为修改后的BFD参数、MD5值为根据新的BFD参数更新的值。
表4
将拆分出的不需要修改的表项对应的BFD模板以及使用该模板的SR Policy以及这些SR Policy包含的所有Segment-lists路径名称,Segment-list标签栈,BFD参数,以及MD5值,放到L4[2]。
表5
在执行完步骤c或步骤d之后,将表3中的原存在修改的BFD模板的表项L1[1]和L1[2]删除。
(6)网络设备接收segment list标签栈的更新指令,更新指令中包括segmentlist的路径名称以及修改后的segment list标签栈;
以segment list路径名称作为关键字在BFD会话合并表中查找是否对应的表项中仅存在需要更新的segment list路径名称,如果是,则执行步骤f,如果否(即除了需要更新的segment list路径名称外,该表项中还存在其他segment list路径名称)则执行步骤g;
假设修改的路径定义为ADWAN-SRV6-PATH-1,其中ADWAN-SRV6-PATH-2的路径定义和更改前的ADWAN-SRV6-PATH-1相同。SR Policy1绑定SRV6-BFD-Template-1和ADWAN-SRV6-PATH-1,SR Policy2绑定SRV6-BFD-Template-2和ADWAN-SRV6-PATH2,SR Policy3绑定SRV6-BFD-Template-3和ADWAN-SRV6-PATH1。
步骤f)在BFD会话合并表中逐条更改需要修改的segment list标签栈和MD5值。
在一个示例中,若查询ADWAN-SRV6-PATH-1获取两行数据:L1[1]~L1[2],具体的,如表6所示:
表6
其中,L1[2]对应的表项中,仅存在需要更新的Segment-lists路径名称ADWAN-SRV6-PATH-3,不存在其他的不需要修改的Segment-lists路径名称,因此,可以直接在在BFD会话合并表中更改ADWAN-SRV6-PATH-3对应的Segment-lists标签栈和MD5值。
修改后的的L1[2]为表7所示:
表7
步骤g)根据合并的Segment-lists路径名称H将相应的表项L1[2]拆分成H个(本实施例中以拆分成两个表项L3[2]、L4[2]为例进行说明),将需要修改的Segment-list路径名称以及使用该Segment-list路径名称的SR Policy,新的Segment-list标签,BFD参数,以及新MD5值放到L3[2]。将不需要修改的Segment-list路径以及使用该Segment-list路径的SRPolicy以及这些SR Policy包含的所有Segment-lists路径名称,原Segment-list标签(老的),BFD参数,以及原MD5值,放到L4[2]。
在执行完步骤f或步骤g之后,将表7中需要进行segment list标签栈更新的表项L1[1]和L1[2]删除。
总结上述情况(5)和情况(6)可知,在本实施例所提供的方法中:
如果接收到参数更新指令,参数更新包括:BFD模板参数的更新(情况5)或者Segment list标签栈的更新(情况6);
确定需要更新的参数在BFD会话合并表中匹配的表项中是否仅存在待更新参数;
如果匹配的表项中还存在无需更新的参数,则根据该匹配的表项中合并的参数的数目对匹配到的表项进行拆分;
对拆分后的表项分别进行参数的更新,并删除拆分前匹配到的表项。
实施例三
在上述实施例的基础上,本实施例还提供一种双向转发检测装置,图4示出了该装置的结构示意图,如图4所示,该装置包括:
获取模块401,用于获取每一个段路由策略对应的段路由列表segment list标签栈以及BFD参数信息;
计算模块402,用于根据所述标签栈以及BFD参数信息计算摘要值;
建立模块403,用于针对每一个摘要值建立一个BFD会话,以对相同的标签栈以及BFD参数信息对应的BFD会话进行合并。
可选的,所述装置还包括:
上报模块(未示出),用于若检测到该摘要值对应的标签栈的路径故障,则摘要值对应的所有段路由策略下与该标签栈对应的路径均上报故障事件。
可选的,所述装置的计算模块具体用于:
根据计算的摘要值在建立的BFD会话合并表中是否存在与该摘要值匹配的表项;
如果不存在,则在BFD会话合并表中记录所述计算的摘要值、所述段路由列表segment list标签栈以及BFD参数信息的对应关系;
如果存在,则将所述段路由列表segment list标签栈以及BFD参数信息记录至与BFD会话合并表中匹配到的摘要值对应的表项中。
可选的,所述BFD会话合并表中还记录有段路由策略对应的路径名称以及BFD配置模板的名称。
可选的,所述装置还包括:
接收模块(未示出),用于接收到删除第一段路由策略的第一segment list的指令;
查询模块(未示出),用于在BFD会话合并表中查询所述第一segment list标签栈对应的至少一个摘要值;
删除模块(未示出),用于针对每一个摘要值对应的所述第一段路由策略以及第一segment list标签栈进行删除;
或者,
所述接收模块还用于接收到删除第一段路由策略与BFD配置模板绑定关系的指令;
所述查询模块还用于确定所述第一段路由策略对应的所有segment list标签栈;
所述计算模块还用于针对每一个segment list标签栈确定对应的摘要值;
所述查询模块还用于在BFD会话合并表中查找与所述摘要值匹配的表项;
所述删除模块还用于删除该表项中对应的第一段路由策略;
或者,
所述接收模块还用于接收到参数更新指令,所述参数更新包括:BFD模板参数的更新或者Segment list标签栈的更新;
所述查询模块还用于确定需要更新的参数在BFD会话合并表中匹配的表项中是否仅存在待更新参数;如果匹配的表项中还存在无需更新的参数,则根据该匹配的表项中合并的参数的数目对匹配到的表项进行拆分;对拆分后的表项分别进行参数的更新,并删除拆分前匹配到的表项。
本实施例提供的装置通过将BFD参数以及Segment-list相同的路径对应的BFD会话进行合并,从而能够将BFD探测聚合,相同Segment-list复用同一个BFD会话,大大减少了BFD报文的发送数量,节约了资源。
本公开还提供一种网络设备50,图5为本公开另一实施例提供的网络设备的结构示意图,如图5所示,该网络设备50包括处理器501和存储器502,
所述存储器502用于存储程序指令,所述处理器501用于调用所述存储器中的存储的程序指令,当所述处理器501执行所述存储器502存储的程序指令时,用于执行上述实施例一或实施例二的方法。另外,为了更好的说明本公开,在下文的具体实施方式中给出了众多的具体细节。本领域技术人员应当理解,没有某些具体细节,本公开同样可以实施。在一些实例中,对于本领域技术人员熟知的方法、手段、元件和电路未作详细描述,以便于凸显本公开的主旨。
在本公开所提供的实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本公开的实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
另外,在本公开各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个可读存储介质中。基于这样的理解,本公开的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个可读存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本公开各个实施例所述方法的全部或部分步骤。而前述的可读存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
Claims (10)
1.一种双向转发检测BFD方法,其特征在于,包括:
获取每一个段路由策略对应的段路由列表segment list标签栈以及BFD参数信息;
根据所述标签栈以及BFD参数信息计算摘要值;
针对每一个摘要值建立一个BFD会话,以对相同的标签栈以及BFD参数信息对应的BFD会话进行合并。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
若检测到该摘要值对应的标签栈的路径故障,则摘要值对应的所有段路由策略下与该标签栈对应的路径均上报故障事件。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
根据计算的摘要值在建立的BFD会话合并表中是否存在与该摘要值匹配的表项;
如果不存在,则在BFD会话合并表中记录所述计算的摘要值、所述段路由列表segmentlist标签栈以及BFD参数信息的对应关系;
如果存在,则将所述段路由列表segment list标签栈以及BFD参数信息记录至与BFD会话合并表中匹配到的摘要值对应的表项中。
4.根据权利要求1所述的方法,其特征在于,所述BFD会话合并表中还记录有段路由策略对应的路径名称以及BFD配置模板的名称。
5.根据权利要求1-4任一项所述的方法,其特征在于,所述方法还包括:
接收到删除第一段路由策略的第一segmentlist的指令;
在BFD会话合并表中查询所述第一segment list标签栈对应的至少一个摘要值;
针对每一个摘要值对应的所述第一段路由策略以及第一segment list标签栈进行删除;
或者,
接收到删除第一段路由策略与BFD配置模板绑定关系的指令;
确定所述第一段路由策略对应的所有segmentlist标签栈;
针对每一个segmentlist标签栈确定对应的摘要值;
在BFD会话合并表中查找与所述摘要值匹配的表项;
删除该表项中对应的第一段路由策略;
或者,
接收到参数更新指令,所述参数更新包括:BFD模板参数的更新或者Segmentlist标签栈的更新;
确定需要更新的参数在BFD会话合并表中匹配的表项中是否仅存在待更新参数;
如果匹配的表项中还存在无需更新的参数,则根据该匹配的表项中合并的参数的数目对匹配到的表项进行拆分;
对拆分后的表项分别进行参数的更新,并删除拆分前匹配到的表项。
6.一种双向转发检测BFD装置,其特征在于,包括:
获取模块,用于获取每一个段路由策略对应的段路由列表segment list标签栈以及BFD参数信息;
计算模块,用于根据所述标签栈以及BFD参数信息计算摘要值;
建立模块,用于针对每一个摘要值建立一个BFD会话,以对相同的标签栈以及BFD参数信息对应的BFD会话进行合并。
7.根据权利要求6所述的装置,其特征在于,所述装置还包括:
上报模块,用于若检测到该摘要值对应的标签栈的路径故障,则摘要值对应的所有段路由策略下与该标签栈对应的路径均上报故障事件。
8.根据权利要求6所述的装置,其特征在于,所述装置的计算模块具体用于:
根据计算的摘要值在建立的BFD会话合并表中是否存在与该摘要值匹配的表项;
如果不存在,则在BFD会话合并表中记录所述计算的摘要值、所述段路由列表segmentlist标签栈以及BFD参数信息的对应关系;
如果存在,则将所述段路由列表segment list标签栈以及BFD参数信息记录至与BFD会话合并表中匹配到的摘要值对应的表项中。
9.根据权利要求6所述的装置,其特征在于,所述BFD会话合并表中还记录有段路由策略对应的路径名称以及BFD配置模板的名称。
10.根据权利要求6-9任一项所述的装置,其特征在于,所述装置还包括:
接收模块,用于接收到删除第一段路由策略的第一segment list的指令;
查询模块,用于在BFD会话合并表中查询所述第一segment list标签栈对应的至少一个摘要值;
删除模块,用于针对每一个摘要值对应的所述第一段路由策略以及第一segment list标签栈进行删除;
或者,
所述接收模块还用于接收到删除第一段路由策略与BFD配置模板绑定关系的指令;
所述查询模块还用于确定所述第一段路由策略对应的所有segment list标签栈;
所述计算模块还用于针对每一个segmentlist标签栈确定对应的摘要值;
所述查询模块还用于在BFD会话合并表中查找与所述摘要值匹配的表项;
所述删除模块还用于删除该表项中对应的第一段路由策略;
或者,
所述接收模块还用于接收到参数更新指令,所述参数更新包括:BFD模板参数的更新或者Segmentlist标签栈的更新;
所述查询模块还用于确定需要更新的参数在BFD会话合并表中匹配的表项中是否仅存在待更新参数;如果匹配的表项中还存在无需更新的参数,则根据该匹配的表项中合并的参数的数目对匹配到的表项进行拆分;对拆分后的表项分别进行参数的更新,并删除拆分前匹配到的表项。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110733151.8A CN113453262B (zh) | 2021-06-29 | 2021-06-29 | 一种双向转发检测bfd方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110733151.8A CN113453262B (zh) | 2021-06-29 | 2021-06-29 | 一种双向转发检测bfd方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113453262A true CN113453262A (zh) | 2021-09-28 |
CN113453262B CN113453262B (zh) | 2023-10-20 |
Family
ID=77814325
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110733151.8A Active CN113453262B (zh) | 2021-06-29 | 2021-06-29 | 一种双向转发检测bfd方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113453262B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115277549A (zh) * | 2022-07-26 | 2022-11-01 | 中国电信股份有限公司 | 检测报文生成方法、装置、存储介质及电子设备 |
CN116264560A (zh) * | 2021-12-14 | 2023-06-16 | 中国移动通信有限公司研究院 | 路径规划方法及装置 |
Citations (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103188153A (zh) * | 2013-04-15 | 2013-07-03 | 杭州华三通信技术有限公司 | 一种广播网链路上bfd报文发送方法和设备 |
CN104040984A (zh) * | 2012-11-13 | 2014-09-10 | 华为技术有限公司 | 双向转发检测bfd会话协商方法、设备及系统 |
US9185170B1 (en) * | 2012-12-31 | 2015-11-10 | Juniper Networks, Inc. | Connectivity protocol delegation |
US20160285850A1 (en) * | 2013-12-13 | 2016-09-29 | Huawei Technologies Co., Ltd. | Security Authentication Method and Bidirectional Forwarding Detection BFD Device |
CN106100929A (zh) * | 2016-06-22 | 2016-11-09 | 杭州华三通信技术有限公司 | 双向转发检测认证安全切换的方法和装置 |
US20170302547A1 (en) * | 2014-12-31 | 2017-10-19 | Huawei Technologies Co., Ltd. | Method, Device and System for Performing Bidirectional Forwarding Detection on Aggregated Link |
CN107979501A (zh) * | 2016-10-21 | 2018-05-01 | 华为数字技术(苏州)有限公司 | 一种bfd会话协商的方法、装置及系统 |
CN110086689A (zh) * | 2019-04-22 | 2019-08-02 | 杭州迪普科技股份有限公司 | 一种双栈bfd检测方法以及系统 |
US20190363927A1 (en) * | 2018-05-25 | 2019-11-28 | Juniper Networks, Inc. | Forwarding detection of an aggregated interface |
WO2020154736A1 (en) * | 2019-01-25 | 2020-07-30 | Apple Inc. | Methods and systems for data transfer over non-access stratum (nas) control plane for cellular internet of things (ciot) in a 5g system (5gs) |
US20200322383A1 (en) * | 2019-04-04 | 2020-10-08 | Cisco Technology, Inc. | Systems and methods for securing network paths |
CN112118181A (zh) * | 2020-08-18 | 2020-12-22 | 新华三信息安全技术有限公司 | 一种流量调度方法及装置 |
CN112653699A (zh) * | 2020-12-22 | 2021-04-13 | 迈普通信技术股份有限公司 | 一种bfd认证方法、装置及电子设备 |
CN112737880A (zh) * | 2020-12-25 | 2021-04-30 | 北京华三通信技术有限公司 | 一种双向转发检测bfd报文的转发方法及网络设备 |
-
2021
- 2021-06-29 CN CN202110733151.8A patent/CN113453262B/zh active Active
Patent Citations (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104040984A (zh) * | 2012-11-13 | 2014-09-10 | 华为技术有限公司 | 双向转发检测bfd会话协商方法、设备及系统 |
US9185170B1 (en) * | 2012-12-31 | 2015-11-10 | Juniper Networks, Inc. | Connectivity protocol delegation |
CN103188153A (zh) * | 2013-04-15 | 2013-07-03 | 杭州华三通信技术有限公司 | 一种广播网链路上bfd报文发送方法和设备 |
US20160285850A1 (en) * | 2013-12-13 | 2016-09-29 | Huawei Technologies Co., Ltd. | Security Authentication Method and Bidirectional Forwarding Detection BFD Device |
US20170302547A1 (en) * | 2014-12-31 | 2017-10-19 | Huawei Technologies Co., Ltd. | Method, Device and System for Performing Bidirectional Forwarding Detection on Aggregated Link |
CN106100929A (zh) * | 2016-06-22 | 2016-11-09 | 杭州华三通信技术有限公司 | 双向转发检测认证安全切换的方法和装置 |
CN107979501A (zh) * | 2016-10-21 | 2018-05-01 | 华为数字技术(苏州)有限公司 | 一种bfd会话协商的方法、装置及系统 |
US20190363927A1 (en) * | 2018-05-25 | 2019-11-28 | Juniper Networks, Inc. | Forwarding detection of an aggregated interface |
WO2020154736A1 (en) * | 2019-01-25 | 2020-07-30 | Apple Inc. | Methods and systems for data transfer over non-access stratum (nas) control plane for cellular internet of things (ciot) in a 5g system (5gs) |
US20200322383A1 (en) * | 2019-04-04 | 2020-10-08 | Cisco Technology, Inc. | Systems and methods for securing network paths |
CN110086689A (zh) * | 2019-04-22 | 2019-08-02 | 杭州迪普科技股份有限公司 | 一种双栈bfd检测方法以及系统 |
CN112118181A (zh) * | 2020-08-18 | 2020-12-22 | 新华三信息安全技术有限公司 | 一种流量调度方法及装置 |
CN112653699A (zh) * | 2020-12-22 | 2021-04-13 | 迈普通信技术股份有限公司 | 一种bfd认证方法、装置及电子设备 |
CN112737880A (zh) * | 2020-12-25 | 2021-04-30 | 北京华三通信技术有限公司 | 一种双向转发检测bfd报文的转发方法及网络设备 |
Non-Patent Citations (1)
Title |
---|
黎奇迈;余发科;: "链路聚合在IP承载网中的应用及优化路径", 数字通信世界, no. 08 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116264560A (zh) * | 2021-12-14 | 2023-06-16 | 中国移动通信有限公司研究院 | 路径规划方法及装置 |
CN115277549A (zh) * | 2022-07-26 | 2022-11-01 | 中国电信股份有限公司 | 检测报文生成方法、装置、存储介质及电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CN113453262B (zh) | 2023-10-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US12120018B2 (en) | Method and apparatus for processing transmission path fault, and system | |
CN110535772B (zh) | 分段路由流量工程策略的发送及接收方法、装置和网元 | |
EP3429143B1 (en) | Packet forwarding method and apparatus | |
US9282030B2 (en) | Transport control server that calculates routing information | |
JP5919046B2 (ja) | パス計算方法 | |
CN107547243B (zh) | 一种报文转发方法及装置 | |
EP2974166B1 (en) | Method and apparatus for ip/mpls fast reroute | |
US20130308444A1 (en) | Method and apparatus for determining paths between source/destination pairs | |
CN111092813B (zh) | 一种等价多路径ecmp切换方法、网络设备及系统 | |
EP2541847B1 (en) | Method and system for establishing an associated bidirectional label-switched path | |
CN113453262B (zh) | 一种双向转发检测bfd方法及装置 | |
WO2017193966A1 (zh) | 一种存储系统中业务的链路切换方法和存储设备 | |
EP3713160B1 (en) | Packet transmission method and apparatus | |
CN102594657B (zh) | 一种路由迭代方法及路由交换设备 | |
WO2023040698A1 (zh) | 路径调整方法、路由设备、存储介质 | |
CN112350935A (zh) | 针对具有栈深约束的路径计算方法及装置 | |
CN101499960A (zh) | 一种流量路径切换的方法和装置 | |
CN117319343A (zh) | 策略路由实现方法、设备及存储介质 | |
CN106789664B (zh) | 一种路由聚合方法及装置 | |
US20170012869A1 (en) | Forwarding table management in computer networks | |
CN111130871B (zh) | 保护切换方法、装置和网络设备 | |
JP6307031B2 (ja) | ルートリフレクタおよびルートリフレクタの経路制御方法 | |
CN112437065A (zh) | Sdn环境下基于图形表示的策略冲突检测及解决方法 | |
CN115622937B (zh) | 一种基于不相交路径的路由保护方法及相关设备 | |
CN103338149A (zh) | 快速重路由方法、设备及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |