配置无缝双向转发检测SBFD机制的方法和装置与流程

文档序号:17320510发布日期:2019-04-05 21:31阅读:3677来源:国知局
配置无缝双向转发检测SBFD机制的方法和装置与流程

本申请涉及计算机领域,并且更具体地,涉及一种配置无缝双向转发检测sbfd机制的方法和装置。



背景技术:

段路由(segmentrouting,sr)是基于源路由理念而设计的在网络上转发数据包的一种协议。sr多协议标签交换(multi-protocollabelswitch,mpls)是指基于mpls转发平面的segmentrouting。分段路由流量工程(segmentrouting-trafficengineering,sr-te)是使用sr作为控制协议的一种新型的te隧道技术。sr-te是指基于te的约束属性,利用sr协议创建的隧道。控制器负责计算隧道的转发路径,并将与路径严格对应的标签栈下发给转发器。在sr-te隧道的入节点上,转发器根据标签栈,即可控制报文在网络中的传输路径。

sr-te由于没有协议建立,只要标签栈下发,链路状态包(link-statepacket,lsp)就会建立成功,且除了撤销标签栈之外,lsp不会出现协议down的情况。所以sr-telsp故障检测需要依靠部署双向转发检测(bidirectionalforwardingdetection,bfd)检测,通过bfd故障检测切换备份lsp。无缝双向转发检测(seamlessbfd,sbfd)简化了bfd的状态机,缩短了协商时间,提高了整个网络的灵活性,能够支撑sr隧道检测。目前采用sbfd对sr策略(policy)业务提供保护。但是,sbfd目前仅支持在转发器上静态配置,通过静态配置sbfd实例和参数为已经创建好的srpolicy隧道提供端到端故障检测,无法及时动态地提供隧道保护。



技术实现要素:

有鉴于此,本申请提供一种配置无缝双向转发检测sbfd机制的方法和装置,能够实现sbfd的动态部署,有助于及时提供隧道保护。

第一方面,提供了一种配置无缝双向转发检测sbfd机制的方法,所述方法应用于支持分段路由流量工程sr-te的网络,所述网络包括控制器和多个转发节点,所述方法包括:控制器根据所述多个转发节点中的第一转发节点的sbfd机制配置状态,确定sbfd配置信息,sbfd配置信息中包括:配置与段路由sr业务相关联的sbfd实例所需要的信息;控制器向第一转发节点发送边界网关协议bgp报文,bgp报文中携带所述sbfd配置信息,即控制器可以为转发节点动态配置sbfd实例,不需要用户为转发节点静态配置sbfd实例,能够实现更灵活的动态部署,有助于及时提供隧道保护。

可选地,sr业务是srpolicy业务。

在一种可能的实现方式中,所述控制器根据所述多个转发节点中的第一转发节点的sbfd机制配置状态,确定sbfd配置信息,包括:在所述第一转发节点中没有配置sbfd机制的情况下,所述sbfd配置信息中包括用于所述第一转发节点创建sbfd实例所需的信息;在所述第一转发节点中配置了sbfd机制的情况下,所述sbfd配置信息中包括用于调整所述第一转发节点中已配置的sbfd的配置参数的信息。因此,不论第一转发节点中是否配置了sbfd机制,控制器均可以为第一转发节点生成相应的sbfd配置信息,使得第一转发节点基于sbfd配置信息进行sbfd实例的建立或调整,以满足转发节点的需求。

在一种可能的实现方式中,所述bgp报文中还携带所述sr业务的信息。因此,控制器还可以在bgp报文中携带sr业务的信息,使得转发节点创建与sbfd实例相关联的sr业务。

在一种可能的实现方式中,所述sbfd配置信息与多个所述sr业务相关联。

在一种可能的实现方式中,所述第一转发节点是所述多个转发节点中的头节点,或者,所述第一转发节点是所述多个转发节点中的尾节点。

在一种可能的实现方式中,所述sbfd配置信息中包括以下内容中的一项或多项:用于指示所述第一转发节点的收发端类型的字段、用于指示所述sbfd配置信息是否是sbfd的字段、所述第一转发节点的本端区分符资源池的字段、所述第一转发节点的对端区分符资源池的字段。

可选地,所述sbfd配置信息中还可以包括可选字段。

第二方面,提供了一种配置无缝双向转发检测sbfd机制的方法,所述方法应用于支持分段路由流量工程sr-te的网络,所述网络包括控制器和多个转发节点,所述方法包括:所述多个转发节点中的第一转发节点接收所述控制器发送的边界网关协议bgp报文,所述bgp报文中携带sbfd配置信息,所述sbfd配置信息中包括:配置与段路由sr业务相关联的sbfd实例所需要的信息;所述第一转发节点根据所述sbfd配置信息,配置与所述sr业务相关联的sbfd实例;在所述sr业务相关联的sbfd实例配置成功后,所述第一转发节点与所述第一转发节点对应的对端节点进行sbfd协商。因此,第一转发节点可以基于控制器下发的sbfd配置信息动态配置sbfd实例,不需要用户为第一转发节点静态配置sbfd实例,能够实现更灵活的动态部署,有助于及时提供隧道保护。

可选地,sr业务是srpolicy业务。

在一种可能的实现方式中,在所述第一转发节点中没有配置sbfd机制的情况下,所述sbfd配置信息中包括用于所述第一转发节点创建sbfd实例所需的信息;所述第一转发节点基于所述sbfd配置信息,新建与所述sr业务相关联的sbfd实例。因此,第一转发节点可以基于控制器下发的sbfd配置信息,创建与sr业务相关联的sbfd实例。

在一种可能的实现方式中,在所述第一转发节点中配置了sbfd机制的情况下,所述sbfd配置信息中包括用于调整所述第一转发节点中已配置的sbfd的配置参数的信息;所述第一转发节点基于所述sbfd配置信息,对已配置的sbfd的配置参数进行调整。因此,第一转发节点可以基于控制器下发的sbfd配置信息,调整与sr业务相关联的sbfd实例。

在一种可能的实现方式中,所述bgp报文中还携带所述sr业务的信息。因此,第一转发节点可以基于控制器在bgp报文中携带sr业务的信息,同时创建与sbfd实例相关联的sr业务。

在一种可能的实现方式中,所述sbfd配置信息与多个所述sr业务相关联。

在一种可能的实现方式中,所述第一转发节点是所述多个转发节点中的头节点,或者,所述第一转发节点是所述多个转发节点中的尾节点。

在一种可能的实现方式中,所述sbfd配置信息中包括以下内容中的一项或多项:用于指示所述第一转发节点的收发端类型的字段、用于指示所述sbfd配置信息是否是sbfd的字段、所述第一转发节点的本端区分符资源池的字段、所述第一转发节点的对端区分符资源池的字段。

可选地,所述sbfd配置信息中还可以包括可选字段。

第三方面,提供了一种控制器,该控制器包括用于执行上述第一方面或第一方面的任意可能的实现方式中的方法的模块。

第四方面,提供了一种转发节点,该转发节点包括用于执行上述第二方面或第二方面的任意可能的实现方式中的方法的模块。

第五方面,提供了一种网络,该网络包括控制器和多个转发节点,其中,该控制器用于执行上述第一方面或第一方面的任意可能的实现方式中的方法;该多个转发节点中的第一转发节点用于执行上述第二方面或第二方面的任意可能的实现方式中的方法。

可选地,该第一转发节点是头节点,与该第一转发节点对应的对端节点是尾节点;或者,该第一转发节点是尾节点,与该第一转发节点对应的对端节点是头节点。

可选地,该网络可以是支持分段路由流量工程sr-te的网络,比如,sdn网络。

第六方面,提供了一种计算机可读存储介质,该计算机可读存储介质存储有程序,该程序使得控制器执行上述第一方面,及其各种实现方式中的任一种配置无缝双向转发检测sbfd机制的方法。

第七方面,提供了一种计算机可读存储介质,该计算机可读存储介质存储有程序,该程序使得转发节点执行上述第二方面,及其各种实现方式中的任一种配置无缝双向转发检测sbfd机制的方法。

第八方面,本申请还提供一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述各方面中的配置无缝双向转发检测sbfd机制的方法。

第九方面,提供了一种配置无缝双向转发检测sbfd机制的装置,该装置包括处理器、存储器和收发器。处理器与存储器和收发器连接。存储器用于存储指令,处理器用于执行该指令,收发器用于在处理器的控制下与其他网元进行通信。该处理器执行该存储器存储的指令时,该执行使得该处理器执行上述各方面中的配置无缝双向转发检测sbfd机制的方法。

附图说明

图1是应用本申请实施例的网络场景示意图;

图2是sbfd机制进行可达性检测的一种示例图;

图3是根据本申请实施例的配置无缝双向转发检测sbfd机制的方法的示意图;

图4是根据本申请实施例的配置无缝双向转发检测sbfd机制的装置的示意框图;

图5是根据本申请另一实施例的配置无缝双向转发检测sbfd机制的装置的示意框图;

图6是根据本申请实施例的配置无缝双向转发检测sbfd机制的装置的示意结构图;

图7是根据本申请另一实施例的配置无缝双向转发检测sbfd机制的装置的示意结构图。

具体实施方式

下面将结合附图,对本申请中的技术方案进行描述。

本申请实施例的技术方案适用于支持段路由(segmentrouting,sr)技术或srpolicy技术的网络其中,该网络中包括控制器和多个转发节点。比如,网络可以是sdn网络。转发节点之间建立的隧道可以是分段路由流量工程(segmentrouting-trafficengineering,sr-te)隧道。转发节点支持srpolicy业务。应理解,在本申请实施例中,转发节点可以是交换机,路由器,也可以是其他支持转发报文或数据的设备或网元,本申请实施例,对此不作限定。

srpolicy技术是在sr技术基础上发展的一种新的隧道引流技术。sr-te算路按照代表业务隧道服务级别协议(servicelevelagreement,sla)要求的color属性计算隧道路径。业务网络头结点通过扩展的业务路由color团体属性和网络远端节点信息来匹配对应的隧道实现业务流量转发。通过srpolicy技术可以实现对具有特定sla要求的业务定制sr隧道路径,实现应用级的业务转发网络细分。srpolicy的进一步详细描述可以参见现有技术的介绍,这里不作赘述。

为了便于理解和描述本申请实施例提出的方法,首先结合图1描述srpolicy业务建立流程。图1示出了应用本申请实施例的网络场景示意图。如图1所示,该网络包括控制器(或网管)和转发节点(比如,转发节点包括头节点rt1、中间节点rt2和尾节点rt3)。控制器可以将srpolicy报文下发给头节点rt1和尾节点rt3,以便在该网络中部署srpolicy业务。节点标签和邻接标签由任意一个转发节点通过igp路由预分配。控制器通过边界网关链路状态协议(bordergatewayprotocollinkstate,bgp-ls)报文收集网络拓扑和标签空间信息。控制器提供界面;用户为特定私网用户规划vpn业务源宿节点(rt1-rt3)、引流策略(color与隧道服务级别协议sla算路约束对应关系)。控制器计算出从头节点rt1到尾节点rt3的srpolicy隧道路径,将计算出的隧道路径转换成标签栈;控制器通过bgpsrpolicy地址族的会话,将路径标签栈封装在srpolicy边界网关协议(bordergatewayprotocol,bgp)会话报文中,下发给头节点rt1。尾节点rt3给特定用户私网路由注入color扩展团体属性,下发bgp路由策略。尾节点rt3将携带color团体属性的bgp路由发布给头节点rt1。头节点rt1存储尾节点rt3下发的bgp路由,生成bgp路由表。头节点rt1基于存储的bgp路由与控制器下发的srpolicybgp会话报文进行匹配,在匹配成功后建立srpolicy隧道,将路由下一跳挂接到srpolicy隧道,入口特定用户流量根据路由表下一跳匹配bsid30027将流量引导到srpolicy隧道上转发。

头节点rt1是指流量入口节点。尾节点rt3是指流量出口节点。

下面对本申请实施例涉及到的一些术语或概念作介绍。

sbfd是一种快速检测协议。sbfd通过快速不间断地发布协议报文做到可达性检测的目的。如图2所示,sbfd机制分为发起端和反射端,在链路检测之前,发起端和反射端通过互相发送sbfd控制报文(sbfdcontrolpacket)通告sbfd描述符(discriminator)等信息。在链路检测时,发起端主动发送sbfdecho报文,反射端根据本端情况环回此报文,发起端根据反射报文决定本端状态。sbfd应用到sr场景检测时,主要有sbfdforsrlsp和sbfdforsr-telsp两种场景。在sbfd检测sr场景,sbfd发起端到反射端路径走mpls标签转发,反射端向发起端回程路径走多跳ip路径。

发起端作为检测端,有sbfd状态机机制和检测机制。发起端状态机只有up和down状态,发出的报文也只有up和down状态,只能接收up或admindown状态报文。sbfd报文由发起端向反射端发送,报文初始状态为down,报文目的端口号为7784。sbfd的进一步详细描述可以参见现有技术的介绍,这里不作赘述。

应理解,本申请实施例中,不应将头尾节点,与发起反射端混为一谈。其中,头节点与尾节点是从网络中隧道的流量的出入口的角度来区分的;而发起端和反射端是sbfd机制中作报文可达性检测的角度来区分的。比如,在sbfd机制中,头节点可以是发起端,对应的尾节点可以是反射端;或者,头节点可以是反射端,对应的尾节点可以是发起端。

在现有技术中,转发节点中的sbfd实例都是用户静态配置的,不支持基于业务动态有选择地进行管理,不够灵活。本申请实施例拟提出一种配置无缝双向转发检测sbfd机制的方法,为转发节点动态配置sbfd实例,能够实现更灵活的动态部署。

图3示出了根据本申请实施例的配置无缝双向转发检测sbfd机制的方法300的示意图。所述方法300应用于支持分段路由流量工程sr-te的网络,所述网络包括控制器和多个转发节点。如图3所示,所述方法300包括:

s310,控制器根据所述多个转发节点中的第一转发节点的sbfd机制配置状态,确定sbfd配置信息,所述sbfd配置信息中包括:配置与段路由sr业务相关联的sbfd实例所需要的信息。

其中,sr业务可以是srpolicy业务。srpolicy业务的相关配置流程可以参见上文描述。

可选地,所述sbfd配置信息中包括以下内容中的一项或多项:用于指示所述第一转发节点的收发端类型的字段、用于指示所述sbfd配置信息是否是sbfd的字段(比如,字段取值为1时表示sbfd,字段取值为0时表示普通bfd)、所述第一转发节点的本端区分符资源池的字段、所述第一转发节点的对端区分符资源池的字段、预留字段。

控制器可以对bgp协议扩展地址族,增加上述sbfd配置信息。比如,控制器基于bgpsr-policy多协议扩展地址族,新增一种bfd扩展团体(extendcommunity)属性,用于携带上述sbfd配置信息。也就是说,控制器可以通过bgpsr-policy地址族路由发布上述sbfd配置信息。可选地,所述sbfd配置信息中包括以下内容中的一项或多项:用于指示所述第一转发节点的收发端类型的字段、用于指示所述sbfd配置信息是否是sbfd的字段、所述第一转发节点的本端区分符资源池的字段、所述第一转发节点的对端区分符资源池的字段等字段。比如,用于指示所述第一转发节点的收发端类型的字段可以是flags字段,以指示第一转发节点是发起端还是反射端;用于指示所述sbfd配置信息是否是sbfd的字段可以是type字段,以指示该sbfd配置信息的类型(类型可以包括普通bfd或者sbfd等类型);所述第一转发节点的本端区分符资源池的字段可以是localdiscriminatiors字段;所述第一转发节点的对端区分符资源池的字段等字段可以是remotediscriminatiors字段。

可选地,所述sbfd配置信息中还可以包括其他可选字段,比如optionalpara(variable),具体可以包括:用于指示控制报文的最小发送间隔的字段(min-tx-interval字段)、用于指示控制报文的最小接收间隔的字段(min-rx-interval字段)、用于指示检测bfd会话的本地检测倍数的字段(detect-multiplier字段)、用于指示鉴权数据(秘钥)部分的长度信息的字段(authlenth字段)、用于指示控制报文的鉴权类型的字段(authtype字段)和用于指示鉴权数据的字段(authenticationdata字段)等等。应理解,这里的控制报文可以是bfd控制报文,也可以是sbfd控制报文,对此不作具体限定,具体是什么控制报文可以基于控制器需要配置哪种bfd机制(比如sbfd机制或者普通bfd机制或链路捆绑linkbandlebfd机制)来决定。应理解,本申请实施例对所述sbfd配置信息中包括的字段不作具体限定,可以基于实际需求而定,比如,所述sbfd配置信息中包括的字段可以是上述字段中的一项或多项,也可以包括其他字段。

例如,可以对bgp协议作如下扩展,使得bgp中携带所述sbfd配置信息,bgp协议新增扩展团体属性的一个格式的例子具体如下所示:

基于上述内容,扩展后的bgp报文中携带type字段、flag字段、保留字段、本端区分符localdiscriminatior字段、远端区分符remotediscriminatior字段、可选参数optionalpara或变量(variable)字段等。

type字段用于标识bfd的类型,比如,type=0x00表示携带普通bfd(比如,rfc5880)配置信息,type=0x01表示携带sbfd配置信息。可选地,若需要同时部署多种类型的bfd时,需要携带多个bfd扩展团体属性。

其中,flags字段格式如下:

在flags字段中,r比特位表示reflector,用于指示sbfd的反射端或发起端。比如,当r置1时,表示sbfd的反射端;当r置0时,表示sbfd的发起端。

在flags字段中,p比特位表示passive,用于指示bfd的反射端或发起端。置1则表示为普通bfd的反射端,置0时表示为普通bfd的发起端。

当r比特为置0时,表示sbfd的发起端,此时,本端区分符localdiscriminatior字段携带创建sbfd或bfd所需的本端区分符,长度为4字节;远端区分符remotediscriminatior字段携带创建sbfd或bfd所需的远端区分符。特别地,当localdiscriminatior字段为时,表示不特定指定创建sbfd或bfd的本段区分符,可以由转发节点本地配置或自动生成。特别地,当remotediscriminatior字段为时,表示不特定指定创建sbfd实例的远端区分符,可以由转发节点本地配置或自动生成。

当r比特为置1时,表示sbfd的反射端,此时,本端区分符localdiscriminatior字段携带创建sbfd或bfd所需的反射端区分符(reflectordiscriminatior),remotediscriminatior字段在默认置零。

其中,optionalpara字段格式如下:

示例性地,本申请实施例可以通过min-tx-interval字段携带bfd控制报文的最小发送间隔,单位为微秒。应理解,上述“min-tx-interval字段”中涉及的“bfd控制报文”只是一种示例,本申请实施例对bfd的类型不作限定,可以是普通bfd,也可以是sbfd,这取决于控制器给转发节点配置哪种bfd机制。也就是说,“可选字段”中涉及的“bfd控制报文”也可以替换为“sbfd控制报文”。下面的可选字段中涉及的“bfd控制报文”也可以做类似解释,下文不再赘述。

本申请实施例可以通过min-rx-interval字段携带bfd控制报文的最小接收间隔,单位为微秒。本申请实施例可以通过detect-multiplier字段携带bfd会话的本地检测倍数。本申请实施例可以通过authtype字段携带bfd控制报文的鉴权类型,有如下几种取值:

0-reserved

1-simplepassword

2-keyedmd5

3-meticulouskeyedmd5

4-keyedsha1

5-meticulouskeyedsha1

6-255-reservedforfutureuse

也就是说,本申请实施例可以为每个加密算法分配一个type值,以指代相应的鉴权类型。应理解,上述7种取值可以分别对应业界标准中的加密算法,加密算法的相关解释或描述可以参见现有技术的描述,在此对加密算法的描述不作详细展开。

本申请实施例可以通过authlenth字段携带鉴权数据(秘钥)部分的长度信息。

本申请实施例可以通过authenticationdata字段携带鉴权数据(秘钥)信息。

在本申请实施例中,控制器可以判断转发节点中sbfd的配置状态,然后基于转发节点中是否配置了sbfd机制,为转发节点确定相应的sbfd配置信息。

以第一转发节点为例描述,在所述第一转发节点中没有配置sbfd机制的情况下,控制器为第一转发节点确定的sbfd配置信息中包括用于第一转发节点sbfd实例所需的信息,以便于第一转发节点创建sbfd实例;在所述第一转发节点中配置了sbfd机制的情况下,控制器为所述第一转发节点确定的sbfd配置信息包括用于调整已配置的sbfd的配置参数的信息。其中,“调整已配置的sbfd的配置参数”可以解释为“补充、更新或删除已配置的sbfd的配置参数”等操作。

s320,所述控制器向所述第一转发节点发送bgp报文,所述bgp报文中携带所述sbfd配置信息。对应地,第一转发节点接收所述bgp报文,得到所述sbfd配置信息。

这里,控制器可以通过bgp报文向第一转发节点发送所述sbfd配置信息。第一转发节点在收到所述bgp报文后,基于所述bgp报文中携带的sbfd配置信息,来配置sbfd实例。第一转发节点可以是头节点,也可以是尾节点,对此不作限定。

第一转发节点在接收到所述sbfd配置信息,配置与所述sr业务相关联的sbfd实例;在所述sr业务相关联的sbfd实例配置成功后,所述第一转发节点与所述第一转发节点对应的对端节点进行sbfd协商。第一转发节点对应的对端节点是指需要与第一转发节点建立sbfd协商的节点。比如,第一转发节点是头节点,第一转发节点对应的对端节点是尾节点;或者,第一转发节点是尾节点,第一转发节点对应的对端节点是头节点,对此不作具体限定。

可选地,所述sbfd配置信息可以单独下发,也可以与sbfd配置信息相关联的sr业务一起下发,对此不作限定。

可选地,控制器可以为sbfd配置信息中的flag字段的r比特、p比特、本端区分符localdiscriminatior字段、对端区分符remotediscriminatior字段赋予不同的取值,来区分头节点或者尾节点的sbfd配置信息。

举例来说,若上述第一转发节点是头节点,那么头节点收到的sbfd配置信息在bgpsr-policy路由中的格式可以如下所示:

其中,flags字段的具体格式如下:

在上述头节点接收到的sbfd配置信息中,type字段设置为0x01,表示当前使用的是sbfd类型保护;flag字段r比特位为0,表示头节点为sbfd的发起端;localdiscriminatior字段可以设置为本端区分符资源池中某一特定值,特别地,当设置为0时由转发节点本地配置或者自动生成。

remotediscriminatior字段设置为对端区分符资源池中某一特定值,特别地,当设置为0时,由转发器本地配置或通过其他方式获取。这里,对端指的是头节点的对端,比如尾节点。

头结点可以使用localdiscriminatior和remotediscriminatior进行匹配,来建立sbfd实例。

若头节点收到的上述sbfd配置信息对应的字段的总长度大于12字节,则表示头节点需要读取optionalpara(可选参数)字段取。

例如,optionalpara字段格式如下:

可选地,控制器可以通过上述optionalpara字段,为头节点指定报文最小发送/接收间隔,检测时间周期和鉴权加密算法。

头节点在收到控制器发送的sbfd配置信息后,可以基于sbfd配置信息的具体内容进行sbfd实例的创建或调整。

举例来说,若上述第一转发节点是尾节点,那么尾节点收到的sbfd配置信息在bgpsr-policy路由中的格式可以如下所示:

其中,flags字段格式如下:

type字段设置为0x01,表示当前使用的是sbfd类型保护;flag字段中的r比特位置1,标识rt3是sbfd反射端;flag字段中的p比特位置0,表示不需要配置为bfd反射端;localdiscriminatior字段设置为与头节点中的remotediscriminatior字段相同的值。

类似地,若尾节点收到的上述sbfd配置信息对应的字段的总长度大于12字节,表示尾节点需要读取可选参数(optionalpara)字段。可选地,控制器可以通过上述optionalpara字段,为尾节点指定报文最小发送/接收间隔,检测时间周期和鉴权加密算法。

尾节点在收到控制器发送的sbfd配置信息后,可以基于sbfd配置信息的具体内容进行sbfd实例的创建或调整。

在本申请实例中,如果头结点和尾节点均收到了控制器下发的bfd扩展团体属性,并且,头节点和尾节点根据属性中携带的上述sbfd配置信息完成业务部署后,头结点和尾节点进行sbfd业务协商。头节点和尾节点协商成功,则sbfdforsr-policy业务创建成功。

下面将对第一转发节点中是否配置了sbfd机制的情形进行分别描述。不论第一转发节点中是否配置了sbfd机制,本申请实施例的技术方案均适用。

第一种实现方式:

如果第一转发节点上没有配置sbfd机制,所述sbfd配置信息中包括用于所述第一转发节点创建sbfd实例所需的信息;

其中,所述第一转发节点根据所述sbfd配置信息,配置与所述sr业务相关联的sbfd实例,包括:

所述第一转发节点基于所述sbfd配置信息,新建与所述sr业务相关联的sbfd实例。

如果第一转发节点中没有配置sbfd机制,控制器可以通过bgp报文将sbfd配置信息单独下发给第一转发节点,或者,也可以通过bgp报文同时下发创建sr业务的信息和sbfd配置信息。这里,由于第一转发节点中没有配置sbfd,sbfd配置信息中需要包含创建sbfd的全部必要信息。

具体而言,对于第一转发节点是头节点的情形,头节点在收到控制器下发的bgp报文中同时创建sr业务的信息和sbfd配置信息时,可以先基于bgp报文中创建sr业务的信息创建sr-policy业务,在sr-policy业务建立后立即创建与sr-policy业务相关联的sbfd实例。对于第一转发节点是尾节点的情形,在双向隧道的场景下,尾节点在收到控制器下发的创建sr业务的信息和sbfd配置信息后,可以先基于报文中创建sr业务的信息创建sr-policy业务,在sr-policy业务建立后立即创建与sr-policy业务相关联的sbfd实例的反射端的配置,在创建sbfd实例后,等待与头节点进行sbfd协商。或者,在建立单向隧道的场景下,当尾节点不需要控制器下发的用于创建sr-policy业务的信息时,尾节点接收到的sr业务的网络层可达信息(networklayerreachableinformation,nlri)中的endpoint将置零(置零的意思是指控制器下发给尾节点的bgp报文中将不携带用于创建sr-policy业务的信息)。

应理解,本申请实施例对第一转发节点先创建sr-policy业务还是先创建sbfd实例的先后顺序不作具体限定,可以基于实际需求而定。

在头节点和尾节点中的sbfd实例都创建完成后,头节点与尾节点可以进行sbfd协商,并将sbfd实例与sr-policy业务形成关联,为sr业务提供故障检测。

第二种实现方式:

如果第一转发节点上配置了sbfd机制,所述sbfd配置信息中包括用于调整所述第一转发节点中已配置的sbfd的配置参数的信息,其中,所述第一转发节点根据所述sbfd配置信息,配置与所述sr业务相关联的sbfd实例,包括:

所述第一转发节点基于所述sbfd配置信息,对已配置的sbfd的配置参数进行调整。

具体而言,如果第一转发节点中配置了sbfd机制,那么控制器无需在bgp报文中携带创建sbfd实例的所有信息。第一转发节点可以使用原有静态配置的sbfd的基础配置,比如本地静态配置或者自动生成的配置值。这里,在控制器向第一转发节点发送的sbfd配置信息中,可以携带sbfd中的部分信息,作为对sbfd配置对应的绑定策略和/或参数补充。比如,所述sbfd配置信息中包括的字段中,可以对localdiscriminatior和remotediscriminatior置零,对localdiscriminatior和remotediscriminatior置零是指:不携带localdiscriminatior和remotediscriminatior的信息,而其余的字段可以是控制器为第一转发节点新配置的(可以参考前文描述)。

举例来说,第一转发节点收到的sbfd配置信息在bgpsr-policy路由中的格式可以如下所示:

对于上述sbfd配置信息在bgpsr-policy路由中的字段,控制器将localdiscriminatior字段置0,将remotediscriminatior字段置0,即表示这两个字段使用第一转发节点中静态配置的值。特别地,如果这两个字段是非0值,第一转发节点也存在静态配置的情况,则应使用sbfd配置信息中携带的值来新建sbfd实例,并与sr-policy业务进行关联。

因此,在第二种实现方式中,控制器下发的sbfd配置信息中,可以携带部分信息,以使得第一转发节点可以对sbfd基础配置的参数进行调整。

在第二种实现方式中,第一转发节点可以对sbfd实例进行更新。如果第一转发节点中的sr业务已经关联了sbfd实例,但是需要变更关联关系,那么控制器给第一转发节点下发的sbfd配置信息中,可以是新的sbfd实例的配置信息。第一转发节点基于新的sbfd实例的配置信息,对sr业务已经关联的sbfd实例进行刷新。

在本申请实施例中,控制器向第一转发节点发送的bgp报文中可以携带sr业务以及与sr业务相关联的sbfd实例的配置信息。特别地,当需要删除与sr业务相关联的sbfd实例时,即sr业务不再与该sbfd实例关联时,控制器向第一转发节点下发的bgp报文中携带了sr业务的信息,而不再携带sbfd配置信息。这样,第一转发节点在收到该bgp报文时,可以删除或解绑定该sbfd实例与sr业务的关联关系。

可选地,作为一种实现方式,第一转发节点可以删除已经创建的sbfd实例,能够释放资源,有助于减少对转发节点及网络资源的占用。

例如,若第一转发节点初始不存在sbfd静态配置,在采用本申请实施例的方法为第一转发节点配置了与某一sr业务相关联的sbfd实例后,如果第一转发节点后续收到了需要撤销或删除该sr业务的bgp报文,且该sr业务已经全部撤销,那么可以将该sr业务相关联的sbfd实例也删除,以便于节约资源。

可选地,本申请实施例中的sbfd配置信息可以与多个sr业务相关联。控制器在向转发节点下发bgp报文时,可以向第一转发节点下发多个sr业务对应的多个bgp报文,其中,每个bgp报文都携带相同的sbfd配置信息。第一转发节点在收到此类bgp报文时,可以将sbfd配置信息复用给多个不同的sr业务。

或者,控制器在向第一转发节点下发bgp报文时,可以向第一转发节点下发一个bgp报文,该一个bgp报文中携带多个sr业务的配置信息,以及同一个sbfd配置信息。第一转发节点在收到该bgp报文时,可以将sbfd配置信息复用给多个不同的sr业务。

应理解,本申请实施例的配置无缝双向转发检测sbfd机制的方法是以配置sbfd为例进行说明的,本申请实施例的技术方案同样适用于普通bfd、linkbandlebfd或其他bfd的动态部署,对此不作限定。例如,可以将普通bfd的配置信息扩展在bgp其他业务地址族中,或者新增专门的bfd控制地址族。

还应理解,本申请实施例中出现的各个字段的格式的举例均不对本申请实施例构成限定,本领域技术人员基于上述举例可以做等价变换或者调整,这些等价变换或者调整都应落入本申请实施例的保护范围。

上文结合图1至图3详细描述了根据本申请实施例的配置无缝双向转发检测sbfd机制的方法。下面将结合图4至图7描述根据本申请实施例的配置无缝双向转发检测sbfd机制的装置。应理解,方法实施例所描述的技术特征同样适用于以下装置实施例。

图4示出了根据本申请实施例的配置无缝双向转发检测sbfd机制的装置400的示意框图。可选地,装置400可以是控制器。如图4所示,该装置400包括:

确定模块410,用于根据所述多个转发节点中的第一转发节点的sbfd机制配置状态,确定sbfd配置信息,所述sbfd配置信息中包括:配置与段路由sr业务相关联的sbfd实例所需要的信息;

收发模块420,用于向所述第一转发节点发送bgp报文,所述bgp报文中携带所述sbfd配置信息。

在一种可能的实现方式中,所述确定模块410用于根据所述多个转发节点中的第一转发节点的sbfd机制配置状态,确定sbfd配置信息,具体包括:

在所述第一转发节点中没有配置sbfd机制的情况下,所述sbfd配置信息中包括用于所述第一转发节点创建sbfd实例所需的信息;

在所述第一转发节点中配置了sbfd机制的情况下,所述sbfd配置信息中包括用于调整所述第一转发节点中已配置的sbfd的配置参数的信息。

在一种可能的实现方式中,所述bgp报文中还携带所述sr业务的信息。

在一种可能的实现方式中,所述sbfd配置信息与多个sr业务相关联。

在一种可能的实现方式中,所述第一转发节点是所述多个转发节点中的头节点,或者,所述第一转发节点是所述多个转发节点中的尾节点。

在一种可能的实现方式中,所述sbfd配置信息中包括以下内容中的一项或多项:用于指示所述第一转发节点的收发端类型的字段、用于指示所述sbfd配置信息是否是sbfd的字段、所述第一转发节点的本端区分符资源池的字段、所述第一转发节点的对端区分符资源池的字段。

应理解,根据本申请实施例的装置400可对应于前述方法实施例中控制器侧的方法,并且装置400中的各个模块的上述和其它管理操作和/或功能分别为了实现前述各个方法的相应步骤,因此也可以实现前述方法实施例中的有益效果,为了简洁,这里不作赘述。

图5示出了根据本申请实施例的配置无缝双向转发检测sbfd机制的装置500的示意性结构图。如图5所示,所述装置500包括:

处理器501、存储器502和收发器503。

处理器501、存储器502和收发器503之间通过内部连接通路互相通信,传递控制和/或数据信号。在一个可能的设计中,处理器501、存储器502和收发器503可以通过芯片实现。该存储器502可以存储程序代码,处理器501调用存储器502存储的程序代码,以实现该终端设备的相应功能。

所述处理器501用于,根据所述多个转发节点中的第一转发节点的sbfd机制配置状态,确定sbfd配置信息,所述sbfd配置信息中包括:配置与段路由sr业务相关联的sbfd实例所需要的信息;所述收发器503用于,向所述第一转发节点发送bgp报文,所述bgp报文中携带所述sbfd配置信息。

可选地,图4中的确定模块410可以对应图5中的处理器501,收发模块420可以对应图5中的收发器503。另一种实施方式中,收发器可以分为接收器和发送器两个部件实现。

图6示出了根据本申请实施例的配置无缝双向转发检测sbfd机制的装置600的示意框图。所述装置600应用于支持分段路由流量工程sr-te的网络,所述网络包括控制器和多个转发节点。可选地,所述装置600是所述多个转发节点中的第一转发节点。如图6所示,该装置600包括:

收发模块610,用于接收所述控制器发送的bgp报文,所述bgp报文中携带sbfd配置信息,所述sbfd配置信息中包括:配置与段路由sr业务相关联的sbfd实例所需要的信息;

处理模块620,用于根据所述sbfd配置信息,配置与所述sr业务相关联的sbfd实例;

所述处理模块620还用于,在所述sr业务相关联的sbfd实例配置成功后,与所述第一转发节点对应的对端节点进行sbfd协商。

在一种可能的实现方式中,在所述第一转发节点中没有配置sbfd机制的情况下,所述sbfd配置信息中包括用于所述第一转发节点创建sbfd实例所需的信息;

其中,所述处理模块620用于根据所述sbfd配置信息,配置与所述sr业务相关联的sbfd实例,具体包括:

所述第一转发节点基于所述sbfd配置信息,新建与所述sr业务相关联的sbfd实例。

在一种可能的实现方式中,在所述第一转发节点中配置了sbfd机制的情况下,所述sbfd配置信息中包括用于调整所述第一转发节点中已配置的sbfd的配置参数的信息;其中,所述处理模块620用于根据所述sbfd配置信息,配置与所述sr业务相关联的sbfd实例,具体包括:

基于所述sbfd配置信息,对已配置的sbfd的配置参数进行调整。

可选地,所述bgp报文中还携带所述sr业务的信息。

可选地,所述sbfd配置信息与多个sr业务相关联。

可选地,所述第一转发节点是所述多个转发节点中的头节点,或者,所述第一转发节点是所述多个转发节点中的尾节点。

可选地,所述sbfd配置信息中包括以下内容中的一项或多项:用于指示所述第一转发节点的收发端类型的字段、用于指示所述sbfd配置信息是否是sbfd的字段、所述第一转发节点的本端区分符资源池的字段、所述第一转发节点的对端区分符资源池的字段。

应理解,根据本申请实施例的装置600可对应于前述方法实施例中转发节点侧的方法,并且装置600中的各个模块的上述和其它管理操作和/或功能分别为了实现前述各个方法的相应步骤,因此也可以实现前述方法实施例中的有益效果,为了简洁,这里不作赘述。

图7示出了根据本申请实施例的配置无缝双向转发检测sbfd机制的装置700的示意性结构图。如图7所示,所述装置700包括:

处理器701、存储器702和收发器703。

处理器701、存储器702和收发器703之间通过内部连接通路互相通信,传递控制和/或数据信号。在一个可能的设计中,处理器701、存储器702和收发器703可以通过芯片实现。该存储器702可以存储程序代码,处理器701调用存储器702存储的程序代码,以实现该终端设备的相应功能。

所述收发器703用于接收所述控制器发送的bgp报文,所述bgp报文中携带sbfd配置信息,所述sbfd配置信息中包括:配置与段路由sr业务相关联的sbfd实例所需要的信息;所述处理器701用于根据所述sbfd配置信息,配置与所述sr业务相关联的sbfd实例;在所述sr业务相关联的sbfd实例配置成功后,与所述第一转发节点对应的对端节点进行sbfd协商。

可选地,图6中的处理模块620可以对应图7中的处理器701,收发模块610可以对应图7中的收发器703。另一种实施方式中,收发器可以分为接收器和发送器两个部件实现。

本申请还提供了一种网络,该网络包括控制器、多个转发节点。控制器可以执行前文所述的由控制器执行的方法。多个转发节点中可以包括第一转发节点。第一转发节点可以是一个srpolicy隧道的头节点,或者,第一转发节点可以是一个srpolicy隧道的尾节点。

上述本申请实施例揭示的方法可以应用于处理器中,或者由处理器实现。处理器可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法实施例的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器可以是通用处理器、数字信号处理器(digitalsignalprocessor,dsp)、专用集成电路(applicationspecificintegratedcircuit,asic)、现成可编程门阵列(fieldprogrammablegatearray,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件,还可以是系统芯片(systemonchip,soc),还可以是中央处理器(centralprocessorunit,cpu),还可以是网络处理器(networkprocessor,np),还可以是数字信号处理电路(digitalsignalprocessor,dsp),还可以是微控制器(microcontrollerunit,mcu),还可以是可编程控制器(programmablelogicdevice,pld)或其他集成芯片。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法的步骤。

可以理解,本申请实施例中的存储器可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(read-onlymemory,rom)、可编程只读存储器(programmablerom,prom)、可擦除可编程只读存储器(erasableprom,eprom)、电可擦除可编程只读存储器(electricallyeprom,eeprom)或闪存。易失性存储器可以是随机存取存储器(randomaccessmemory,ram),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的ram可用,例如静态随机存取存储器(staticram,sram)、动态随机存取存储器(dynamicram,dram)、同步动态随机存取存储器(synchronousdram,sdram)、双倍数据速率同步动态随机存取存储器(doubledataratesdram,ddrsdram)、增强型同步动态随机存取存储器(enhancedsdram,esdram)、同步连接动态随机存取存储器(synchlinkdram,sldram)和直接内存总线随机存取存储器(directrambusram,drram)。应注意,本文描述的系统和方法的存储器旨在包括但不限于这些和任意其它适合类型的存储器。

本申请的各个方面或特征可以实现成方法、装置或使用标准编程和/或工程技术的制品。本申请中使用的术语“制品”涵盖可从任何计算机可读器件、载体或介质访问的计算机程序。例如,计算机可读介质可以包括,但不限于:磁存储器件(例如,硬盘、软盘或磁带等),光盘(例如,压缩盘(compactdisc,cd)、数字通用盘(digitalversatiledisc,dvd)等),智能卡和闪存器件(例如,可擦写可编程只读存储器(erasableprogrammableread-onlymemory,eprom)、卡、棒或钥匙驱动器等)。另外,本文描述的各种存储介质可代表用于存储信息的一个或多个设备和/或其它机器可读介质。术语“机器可读介质”可包括但不限于,无线信道和能够存储、包含和/或承载指令和/或数据的各种其它介质。

本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。

所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。

在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。

所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器rom、随机存取存储器ram、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。

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