拓扑变化响应方法、路径计算客户端及路径计算系统与流程

文档序号:16513494发布日期:2019-01-05 09:29阅读:394来源:国知局
拓扑变化响应方法、路径计算客户端及路径计算系统与流程

本发明涉及数据网络通信领域,尤其是涉及到拓扑变化响应方法、路径计算客户端及路径计算系统。



背景技术:

在超大、跨域、多层网络中,流量工程扩展的多协议标签交换mplste(multiprotocollabelswitchingtrafficengineering)路径计算是非常复杂的,往往需要在不同网络域之间进行协作。为此,《一种基于路径计算单元(pce)的架构》(rfc4655)提出了一种基于路径计算单元(简称pce)的架构。pce是一种基于网络拓扑,使用约束条件,计算一条网络路径或路由的实体。pce可位于网络节点上,也可以是一个网络外的服务器等。pce可能通过访问流量工程数据库ted,按带宽和其它约束条件,计算流量工程多协议标签交换telsp(labelswitchedpath)的路径。

路径计算客户端(pathcomputeclient,简称pcc)通过路径计算通信协议(pathcomputationelementcommunicationprotocol,简称pcep)协议向pce发起路径计算请求,pce通过pcep应答计算出来的算路结果或者计算失败的原因。

在《路径计算通信协议》(rfc5440)中具体描述了pcc与pce之间的路径计算交互过程。pcc如果需要计算一条或多条路径,首先需要选择一个或多个pce来请求路径计算。在pcep会话建立完成之后,pcc使用路径计算请求消息(pathcomputationrequest,简称pcreq)向pce请求路径计算-由请求id和pcc-pce地址对唯一标识路径计算请求。pce收到pcc发送的pcreq消息之后,触发路径计算过程。pce向pcc发送路径计算响应消息(pathcomputationreply,简称pcrep),用于对pcreq消息进行响应,向pcc返回路径计算结果。如果pce计算出满足约束的路径,则利用pcrep消息中的ero(explicitrouteobject)对象携带各条路径,返回给pcc。如果pce计算路径失败,则pcrep消息中必须携带no-path对象,用于指示路径计算失败,并可以在该对象中指示失败原因。

在内部网关协议igp多拓扑的应用场景中,网络中开放式最短路径优先ospf,链路状态路由协议isis两种igp路由协议共存,并且都使能了流量工程(trafficengineering,简称te)功能。如附图1通过边界网关协议链路状态(bgp-linkstate,简称bgp-ls)进行拓扑收集,和sdn控制器连接的路由器设备pcc上同时运行igp和bgp协议。其中,igp是全局链路状态协议,支持泛洪链路状态信息,包括最大链路带宽、最大可预留带宽、当前预留带宽等,igp实例将这些链路状态信息和te信息同步给bgp-ls实例,bgp-ls实例通过设备pcc和sdn控制器建立的bgp邻居向控制器上报,sdn控制器通过bgp-ls功能搜集到网络拓扑信息。pce可以是sdn控制器中的一个组件也可以是一个功能模块。

在igp多拓扑的应用场景中,如附图2所示,pcc侧本地需要从r1建一条流量工程扩展的资源预留(resourcereservationprotocol-trafficengineering,简称rsvp-te)隧道到r3,使能向pce请求路径计算功能,但未授权给pce。所谓未授权是指pcc未将lsp的控制权交给pce,pce不可以根据当前算路或网络变化重新更新原有lsp。该rsvp-te隧道的头节点为r1,尾节点为r3。pce已与r1建立pcep会话,r1即为pcc。pce通过bgp-ls搜集到网络拓扑信息算路成功后发pcrep消息给pcc,pcc收到后,pcep进程通过进程间的可靠消息与资源预留协议rsvp进程交互,rsvp进程通过信令建立te隧道up。

当网络拓扑中发生ospf/isis实例删除、接口去使能igparea/level、ospf/isis实例去使能te等变化时pcc侧的本地rsvp-te隧道没有响应这些拓扑变化最终无法快速收敛。

针对相关技术中内部网关协议动态拓扑变化导致拓扑不收敛的问题,现有技术还未提出有效的解决方案。



技术实现要素:

本发明提供了拓扑变化响应方法、路径计算客户端及路径计算系统,解决了内部网关协议动态拓扑变化导致拓扑不收敛的问题。

根据本发明的一个方面,提供一种拓扑变化方法,包括确定路径计算单元pce进行路径计算使用的第一内部网关协议igp类型;在igp拓扑发生变化,且发生变化的第二igp类型与该第一igp类型相同的情况下,向该pce发起算路请求以更新当前路径计算结果。

进一步地,在确定该pce为该pcc计算路径使用的该第一igp类型之后,该方法还包括:在igp拓扑发生变化,且发生变化的第二igp类型与该第一igp类型不同的情况下,维持当前路径计算结果不变。

进一步地,该确定该pce为该pcc计算路径使用的该第一igp类型包括:获取该pce发送的路径计算响应消息pcrep,其中,该pcrep报文用于该pce响应该pcc发生的路径计算请求消息pcreq;根据该pcrep中携带的igp类型确定该第一igp类型。

进一步地,该pcrep携带标签交换路径lsp对象,该lsp对象中携带至少一类型长度值tlv,该tlv包括字段类型、字段长度和字段值,该字段值为该igp类型。

进一步地,该确定该pce为该pcc计算路径使用的该第一igp类型包括:向该pce发送路径计算请求消息pcreq,其中,该pcreq用于指示该pce按照该pcreq携带的igp类型计算路径并返回路径计算结果;根据该pcreq中携带的igp类型确定该第一igp类型。

进一步地,该pcreq携带标签交换路径lsp对象,该lsp对象中携带至少一类型长度值tlv,该tlv包括字段类型、字段长度和字段值,该字段值为该igp类型。

进一步地,该第一igp类型包括链路状态路由协议isis和开放式最短路径优先ospf,该第二igp类型包括链路状态路由协议isis和开放式最短路径优先ospf。

进一步地,在该第二igp类型为isis的情况下,该拓扑变化至少包括以下之一:isis实例删除、isis实例下去使能流量工程te、接口去使能isis。

进一步地,在该第二igp类型为ospf的情况下,该拓扑变化至少包括以下之一:ospf实例删除、ospf区域删除、ospf实例下去使能te。

根据本发明的另一个方面,提供一种路径计算客户端,包括处理器和存储器,该处理器被配置为执行该存储器中的程序指令,该指令包括:确定路径计算单元pce进行路径计算使用的第一内部网关协议igp类型;在igp拓扑发生变化,且发生变化的第二igp类型与该第一igp类型相同的情况下,向该pce发起算路请求以更新当前路径计算结果。

根据本发明的另一个方面,提供一种路径计算系统,包括路径计算单元pce和路径计算客户端pcc,包括:该pce使用第一内部网关协议igp类型进行路径计算,并将路径计算结果发送给该pcc;该pcc确定该第一igp类型;在igp拓扑发生变化,且发生变化的第二igp类型与该第一igp类型相同的情况下,该pcc向该pce发起算路请求以更新当前路径计算结果。

通过本发明,采用在拓扑变化相关的内部网关协议类型与pce算路采用的内部网关协议类型相同的情况下更新当前路径计算结果的技术方案,解决了相关技术中部网关协议动态拓扑变化导致拓扑不收敛的问题,保证在内部网关协议动态拓扑变化情况下拓扑快速收敛。

附图说明

此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:

图1是相关技术中bgp-ls拓扑收集的示意图;

图2是相关技术中igp多拓扑场景下路径创建示意图;

图3是根据本发明实施例的拓扑变化响应方法的流程图;

图4是根据本发明实施例的路径计算客户端的结构框图;

图5是根据本发明实施例的路径计算系统的结构框图;

图6是根据相关技术中pcep协议中lsp对象格式示意图;

图7是根据本发明实施例的lsp对象中新增的igp-typetlv示意图;

图8是根据本发明优选实施例的响应ospf-te相关拓扑变化的流程图;

图9是根据本发明优选实施例的响应isis-te相关拓扑变化的流程图。

具体实施方式

下文中将参考附图并结合实施例来详细说明本发明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。

在本实施例中提供了一种拓扑变化响应方法及路径计算客户端,图3是根据本发明实施例的拓扑变化响应方法的流程图,如图3所示,该流程包括如下步骤:

步骤s302,确定路径计算单元pce进行路径计算使用的第一内部网关协议igp类型;

优选地,在确定该pce为该pcc计算路径使用的该第一igp类型之后,在igp拓扑发生变化,且发生变化的igp类型与该第一igp类型不同的情况下,维持当前路径计算结果不变。

一种可行的实施方式为通过获取该pce发送的路径计算响应消息pcrep的方式来确定该pce为该pcc计算路径使用的该第一igp类型。该pcrep报文用于该pce响应该pcc发生的路径计算请求消息pcreq;根据该pcrep中携带的igp类型确定该第一igp类型。

进一步地,该pcrep携带标签交换路径lsp对象,该lsp对象中携带至少一类型长度值tlv,该tlv包括字段类型、字段长度和字段值,该字段值为该igp类型。

另一种可行的实施方式为通过向该pce发送路径计算请求消息pcreq的方式来确定该pce为该pcc计算路径使用的该第一igp类型。该pcreq用于指示该pce按照该pcreq携带的igp类型计算路径并返回路径计算结果;根据该pcreq中携带的igp类型确定该第一igp类型。

进一步地,该pcreq携带标签交换路径lsp对象,该lsp对象中携带至少一类型长度值tlv,该tlv包括字段类型、字段长度和字段值,该字段值为该igp类型。

步骤s304,在igp拓扑发生变化,且发生变化的第二igp类型与该第一igp类型相同的情况下,向该pce发起算路请求以更新当前路径计算结果。

可选地,该第一igp类型包括链路状态路由协议isis和开放式最短路径优先ospf,该第二igp类型包括链路状态路由协议isis和开放式最短路径优先ospf。

可选地,在该第二igp类型为isis的情况下,该拓扑变化可以为isis实例删除、isis实例下去使能流量工程te、接口去使能isis。

可选地,在该第二igp类型为ospf的情况下,该拓扑变化可以为ospf实例删除、ospf区域删除、ospf实例下去使能te。

图4是根据本发明实施例的路径计算客户端的结构框图,如图4所示,该装置包括:

处理器42和存储器44,该处理器42被配置为执行该存储器44中的程序指令,该指令包括:确定路径计算单元pce进行路径计算使用的第一内部网关协议igp类型;在igp拓扑发生变化,且发生变化的第二igp类型与该第一igp类型相同的情况下,向该pce发起算路请求以更新当前路径计算结果。

图5是根据本发明实施例的路径计算系统的结构框图,如图5所示,该装置包括:

路径计算单元pce52和路径计算客户端pcc54,包括:该pce52使用第一内部网关协议igp类型进行路径计算,并将路径计算结果发送给该pcc54;该pcc54确定该第一igp类型;在igp拓扑发生变化,且发生变化的第二igp类型与该第一igp类型相同的情况下,该pcc54向该pce52发起算路请求以更新当前路径计算结果。

下面结合具体实施例对本发明进行进一步说明。

针对pcc侧本地rsvp-te隧道选择一个pce请求路径计算成功隧道up,但没有响应igp动态拓扑变化最终无法快速收敛的问题,本发明提供了一种在pce算路结果pcrep消息的lsp对象中新增tlv携带igp类型的方法来加速动态rsvp-te隧道的收敛。上述pcc未授权pce根据当前算路或网络变化重新更新原有lsp。

本发明的技术方案包括下列步骤:

第一步,需要在附图6原有的lsp对象中新增一个igp-typetlv。本发明中新增的igp-typetlv见附图7。pce向pcc发送的pcrep消息中携带lsp对象,lsp对象中有本发明新增的igp-typetlv。

具体的,pce根据pcc发起的算路请求pcreq消息中指定路径的源ip地址、目的ip地址、带宽、建立优先级等信息进行路径计算,如果pce计算出满足路径约束的路径,则通过pcrep消息将路径返回给pcc,这里的pcrep消息需要在lsp对象里面增加一个igp-typetlv表示计算路径所用的igp类型。

第二步,pcc收到pce回复的pcrep消息,通过进程间可靠消息交互,rsvp进程得知pce计算路径的igp类型,lsp建立后pcc通过pcrpt向pce上报lsp状态。上述lsp状态包括lsp对象、ero(explicitrouteobject)等。

pcc收到pce路径计算应答的pcrep消息后通过进程间的可靠消息交互,rsvp进程得知pce计算路径的igp类型,并发起rsvp信令的lsp创建过程,lspup后pcc向pce发送pcrpt消息,用于上报当前lsp状态。上述lsp状态包括lsp对象、ero(explicitrouteobject)等。其中,pcrpt消息里面的lsp对象表明lsp当前操作状态,该操作状态包括up、down等,ero对象表明了当前lsp的显示路径。

第三步,通过pce算路建立好的rsvp-te隧道正确响应igp动态拓扑变化。

本地rsvp-te隧道请求pce路径计算但未授权给pce的场景中,需要本地rsvp正确响应igp动态拓扑变化来加速rsvp-te隧道的快速收敛。

通过上述三个步骤,在pcc未授权给pce的情况下,本地rsvp-te隧道可根据pce算路成功返回的pcrep消息中携带的igp类型来正确响应igp动态拓扑变化而加速rsvp-te隧道的快速收敛。

具体实施例一

如附图2所示,r1上某业务需要创建一条rsvp-te隧道(使能向pce请求路径计算,但无授权功能),头节点为r1,尾节点为r3。pce已与r1建立pcep会话,r1即为pcc。rsvp进程通过进程间可靠信息交互向pcep进程发起算路请求,pcc请求pce来进行计算路径。在pcreq消息中需要携带te这些算路约束(带宽、优先级等),以便pce在算路时,能计算出安全,可靠的链路。pce收到pcc发送的pcreq消息之后,进行路径计算,如果pce计算出满足路径约束的路径r1-r2-r3,则通过pcrep消息中的ero对象携带各条路径,将路径返回给pcc,pcrep消息中的lsp对象中新增一个igp-typetlv来表示pce计算路径时具体使用的igp类型。

pcc收到pce路径计算应答的pcrep消息后通过进程间的可靠消息交互,rsvp进程得知pce计算路径的igp类型,并发起rsvp信令的lsp创建过程,lspup后pcc向pce发送pcrpt消息,用于上报当前lsp状态(lsp对象包含lsp操作状态up等和ero显示路径等)。

假如pce算路成功返回的igp类型为ospf,pcc本地rsvp-te隧道响应拓扑变化的处理流程见附图8。当发生如下ospf-te相关的拓扑变化时-比如ospf实例删除、接口去使能ospf、ospf去使能te等,本地rsvp-te隧道须响应igp动态拓扑变化,加速rsvp-te隧道的快速收敛,对该rsvp-te隧道进行拆除重建,重新向pce发起路径计算请求。而当发生isis-te相关的拓扑变化时比如isis实例删除、isis实例下去使能te、接口去使能isis等,该rsvp-te隧道不响应无关的拓扑变化,不影响rsvp-te隧道状态。

假如pce算路成功返回的igp类型为isis,pcc本地rsvp-te隧道响应拓扑变化的处理流程见附图9,当发生如下isis-te相关的拓扑变化-比如isis实例删除、isis实例下去使能te、接口去使能isis等,本地rsvp-te隧道须响应igp动态拓扑变化,加速rsvp-te隧道的快速收敛,对该rsvp-te隧道进行拆除重建,重新向pce发起路径计算请求。而当发生ospf-te相关的拓扑变化时比如ospf实例去使能te、ospf实例删除、接口去使能ospf等,该rsvp-te隧道不响应无关的拓扑变化,不影响rsvp-te隧道状态。

具体实施例二

优选地,pcc可以指定pce为其算路使用的igp类型。

具体而言,在ospf\isis共存的多拓扑场景中,如果pcc向pce发起算路请求的时候期望pce使用具体的某种igp类型来计算路径时,可以在pcc发起算路请求pcreq消息的lsp对象中增加本发明新增的igp-typetlv。通过识别igp-type(t)字段不同的值来表示pcc期望pce使用ospf-te的数据信息来计算路径还是期望pce使用isis-te的数据库信息来计算路径。上述pcreq消息中携带lsp对象与pcrep消息中携带lsp对象的方式相同,上述pcreq消息中igp-typetlv的格式与pcrep消息中igp-typetlv的格式相同,在此处不再说明。

显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。

以上该仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包括在本发明的保护范围之内。

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