有状态路径计算单元的处理方法及有状态路径计算单元的制作方法

文档序号:7764843阅读:770来源:国知局
专利名称:有状态路径计算单元的处理方法及有状态路径计算单元的制作方法
技术领域
本发明涉及通信领域,具体而言,涉及一种有状态路径计算单元(Path Computation Element,简称为PCE)的处理方法及有状态路径计算单元。
背景技术
为了解决多协议标记交换/通用多协议标记交换(Multi-Protocol Label Switching/Generalized Multi-Protocol Label Switching,简称为 MPLS/GMPLS)网络中多域路径计算以及复杂的约束路径问题,互联网工程任务组(Internet Engineering Task Force,简称为IETF)PCE工作组提出了路径计算单元。路径计算单元是网络中专门负责路径计算的功能实体,它基于已知的网络拓扑结构和约束条件,根据路径计算客户的请求计算出一条满足约束条件的最佳路径。PCE可以位于网络中的任何地方,可以集成在网络设备内部,如集成在标记交换路由器内部,或者集成在运行支撑系统内部,也可以是一个独立的设备。路径计算客户(Path Computation Clients,简称为PCC)和PCE之间以及PCE与 PCE之间通过专门的路径计算协议(PCE Communication Protocol,简称为PCEP)通信,提交路径计算请求并获得路径计算结果。PCC可以是MPLS/GMPLS网络中的标记交换路由器 (Switch Router,简称为LSR)或者是网络管理系统(Network Management System,简称为匪S)。在PCEP协议中,面向PCE的通知消息(PCEP通知消息,以下简称PCNtf消息)的格式如下<PCNtf Message): = 〈Common Header)<notify-list><notify-list>:: = <notify>[<notify-list>]<notify>:: = [<request_id_list>]<notification-list><request-id-list>:: = <RP>[<request-id-list>]〈notification-list〉 = 〈NOTIFICATION〉[〈notification-list〉] RP对象中包含了请求编号,格式如图1所示。NOTIFICATION对象格式如图2所示, 其中指定了标志位、通知类型、通知值、及可选的TLV。其中通知类型(Notification-type) 包含两类Notification-type = 1 取消路径计算请求。Notification-type = 2 :PCE |§@冑。根据IETF标准RFC 4655的定义,PCE可分为有状态和无状态2种。无状态的PCE 只使用流量工程数据库(Traffic Engineering Database,简称为TED)中的信息进行路径计算,而有状态的PCE在路径计算时不仅基于TED中的拓扑信息,还要利用网络中已有路径和已占用资源的信息。因而,有状态PCE可以很好的解决无状态PCE难以应付的问题,详见下述场景描述
场景1 批量建立引起资源冲突。场景1. 1 单域或多域下,网络故障多条LSP同时恢复。在PCE架构下,当网络中发生故障时,这时PCE在很短时间内收到大量的LSP计算请求,请求计算恢复LSP。例如,当节点故障时,经过此节点的及从此节点上下的所有LSP都将失效,此时这些失效的LSP都请求PCE重新计算新的恢复LSP的路由。这时这些请求在很短时间间隔内发送给PCE,先收到的请求计算完毕之后,PCE必须先锁定或预留住这些资源,否则后续的计算请求算路时认为这些资源是空闲的而同样使用这些资源,从而发生资源冲突。这种场景在单域或多域网络中计算恢复路径时同时存在。场景1. 2 执行批量路由计算。当PCE需要执行批量路由计算,而PCE不具有并发计算能力时,此时PCE需要串行执行多个计算。同上面的场景一样,发生资源冲突。场景2 多PCE协作时需要及时同步计算结果。场景2. 1 使用反向递归路径计算(Backward Recursive PCE-based Computation,简称为BRPC)的多PCE协作架构解决多域计算。采用多PCE协作和BRPC算法时,从目的节点所在域开始计算,每个域计算每个入口节点至目的节点的最优路径,然后将计算出来的路径集合传递给相邻的上游PCE;最后, 当首域计算后将生成一条端到端的最优路径。这样除首域之外的中间域和尾域,如果某域有N个入边界点,则该域计算完毕后有N条路径潜在路径返回给上游域,而最终端到端计算成功之后,只会取这N条路径中的一
^^ ο因而,当每个域计算完毕时如果不保存计算的结果,同样会发生资源冲突问题。场景2. 2 使用层次PCE的多PCE协作架构解决多域计算。采用层次PCE解决跨域或跨层计算时,多个子域(Domain)组成一个父域,子域分别有对应的PCE,父域PCE维护子域互联信息,用于计算域序列,父域中每个子域抽象成一个节点。各个子域的PCE需要与父域中的PCE建立会话,并上报与其他域的连通性。从而父域PCE可以得到所有子域的连通性,可以计算域序列。计算跨域路径时,父域收到计算请求,计算出域序列,然后将请求分别发给域序列中的各个子域,当所有子域计算完毕,父域收集齐所有子域的计算结果后,拼接生成端到端的路径结果,返回PCC。这样当其中部分子域计算成功时,需要保存计算结果,否则会发生资源冲突。并且当端到端计算完成后,需要通知参与计算的各PCE更新资源,否则仍然会有资源冲突发生。 因为可能存在部分域计算成功、部分域计算失败。场景2. 3 多域计算时,多个PCE间发生资源冲突。在多PCE协作解决跨域计算场景时,例如A、B两个域,每个域部署了各自的PCE。 A、B域内的PCE同时创建LSP,其中一条LSPl首节点在A域、尾节点在B域,另一条LSP2首节点在B域。如果LSP2可能发生资源冲突情况,发生在LSP在PCEl更新了资源,但更新 NOTIFY消息尚未发送到下游PCE,而LSP2在PCE3此时也在更新资源,则可能使用LSPl的资源。场景3 =PCE与网络资源同步。
当PCE完成路径计算之后,网络中的LSR在随后的信令过程中进行LSP的建立或删除,当LSP连接建立或删除成功后,需要立即通知PCE新的网络资源占用情况。如果不通知,则通过内部网关协议(Internal Gateway Protocol,简称为IGP)协议洪泛链路状态,在连接建立成功到整个网络中所有LSR中的TED通过洪泛完成同步这之间的时间,由于PCE 中TED数据库与网络中LSR节点中的TED数据库中数据不一致,仍然可能出现资源冲突。由以上的场景说明可以看出,由于有状态PCE不仅基于TED中的拓扑信息,还要利用网络中已有路径和已占用资源的信息进行路径计算,因此其可以避免出现资源冲突。但是,有状态PCE的计算准确性很大程度上取决于自身掌握的占用资源、计算结果等信息的准确性,而目前有状态PCE所掌握的信息量非常有限,即使采用有状态PCE进行路径计算仍然存在资源冲突的问题。

发明内容
本发明的主要目的在于提供一种有状态PCE的处理方法及有状态PCE,以至少解决上述问题。本发明的一个方面提供了一种有状态PCE的处理方法,包括有状态PCE完成自身的路径计算,对计算得到的路径需要使用的资源进行预留;所述有状态PCE接收第一通知消息,其中,所述第一通知消息用于将RSVP信令建立失败的路径或RSVP信令删除成功的路径通知所述有状态PCE ;所述有状态PCE将所述第一通知消息通知的路径需要使用的资源释放。进一步地,在多域路径计算的情况下,在所述有状态PCE接收第一通知消息之前, 还包括接收计算请求的首个PCE向参与计算的所有有状态PCE发送第二通知消息,其中, 所述第二通知消息用于通知端到端路径的计算结果;所述参与计算的所有有状态PCE在所述计算结果指示计算失败的情况下,释放本PCE中所有预留的对应于所述计算请求的资源。进一步地,在所述端到端路径的计算结果指示计算成功的情况下,所述方法还包括在采用BRPC方式进行多域路径计算的情况下,所述端到端路径的计算结果还用于指示计算成功的端到端路径,参与BRPC计算的所有PCE在收到所述第二通知消息的成功通知后,将各自预留的对应于所述多域路径计算的资源中除计算成功的端到端路径需要的资源之外的其他资源释放;在采用层次PCE方式进行多域路径计算的情况下,参与所述多域路径计算的父域有状态PCE及各子域有状态PCE保持预留的对应于所述多域路径计算的资源。进一步地,在采用BRPC方式进行多域路径计算的情况下,所述第一通知消息和所述第二通知消息由首域有状态PCE发送至PCE链上参与计算的所有有状态PCE。进一步地,在采用层次PCE方式进行多域路径计算的情况下,所述第一通知消息和所述第二通知消息由父域有状态PCE下发至所有参与计算的子域有状态PCE。进一步地,所述第二通知消息为PCNtf消息,在所述第二通知消息的通知 NOTIFICATION对象中配置通知类型为端到端路径计算结果,通知取值为成功或失败;在所述第二通知消息中配置路径(PATH),所述PATH中携带ER0,用于指示所述计算成功的端到端路径。
进一步地,所述PATH中还携带带宽对象(BANDWITH)和/或标签对象,用于指示所述计算成功的端到端路径需要使用的资源。进一步地,所述第一通知消息为PCNtf消息,在所述第一通知消息的通知 NOTIFICATION对象中配置通知类型为路径删除;在所述第一通知消息中配置路径(PATH), 所述PATH中携带ERO对象,用于指示所述建立失败的路径或所述删除成功的路径。进一步地,所述PATH中还携带带宽对象(BANDWITH)和/或标签对象,用于指示所述建立失败的路径或所述删除成功的路径需要使用的资源。进一步地,所述有状态PCE在流量工程数据库TED中对所述计算得到的路径需要使用的资源进行预留。进一步地,所述有状态PCE完成自身路径计算的情况下,还保存计算结果;在所述有状态PCE释放所述资源的情况下,还删除对应于使用所述释放的资源的路径的计算结^ ο本发明的另一个方面提供了一种有状态PCE,包括路径计算模块,用于完成所述有状态PCE自身的路径计算;资源预留模块,用于对计算得到的路径需要使用的资源进行预留;接收模块,用于接收第一通知消息,其中,所述第一通知消息用于在路径计算成功的情况下,将RSVP信令建立失败的路径或RSVP信令删除成功的路径通知所述有状态PCE ;资源释放模块,用于将所述第一通知消息通知的路径需要使用的资源释放。通过本发明,有状态PCE完成自身的路径计算时,对计算得到的路径需要使用的资源进行预留,并根据通知消息指示的建立失败的端到端路径或删除成功的端到端路径对预留的资源进行释放,解决了相关技术中有状态PCE路径计算不准确导致资源冲突的问题,提高了有状态PCE掌握的资源信息的实时性和准确性,提高了 PCE路径计算的准确性, 从而防止了资源的冲突问题。


此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中图1是根据相关技术的通知消息中RP对象的格式示意图;图2是根据相关技术的NOTIFICATION对象的格式示意图;图3是根据本发明实施例的有状态PCE的处理方法的流程图;图4是根据本发明实施例的有状态PCE的结构框图;图5是根据实施例2的单个PCE独立完成路径计算时有状态PCE的同步过程的流程图;图6是根据实施例3的多PCE协作完成端到端路径计算时,有状态PCE的同步过程的流程图;图7是根据实施例3的在跨域多PCE协作计算场景下,使用BRPC算法时的网络拓扑示意图;图8a是根据实施例3的PCE3计算得到的最小生成树结果示意图;图8b是根据实施例3的PCE2计算得到的最小生成树结果示意图;图9是根据实施例4的在跨域计算场景下,使用层次PCE计算跨域路径时的网络拓扑和PCE部署示意图;图10是根据实施例4的在跨域计算场景下,层次PCE跨域计算时各域之间的关系示意图;图11是根据本发明实施例的有状态PCE的处理方法的详细流程图。
具体实施例方式下文中将参考附图并结合实施例来详细说明本发明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。图3是根据本发明实施例的有状态PCE的处理方法的流程图,该方法包括步骤S302,有状态PCE完成自身的路径计算,对计算得到的路径需要使用的资源进行预留;步骤S304,有状态PCE接收第一通知消息,其中,第一通知消息用于将资源预留协议(Resource Reservation Protocol,简称为RSVP)信令建立失败的路径或RSVP信令删除成功的路径通知有状态PCE ;步骤S306,有状态PCE将第一通知消息通知的路径需要使用的资源释放。通过以上的方法,有状态PCE在完成自身的路径计算后,预留了计算的路径所需要的资源,防止下一次计算时使用该资源,在路径计算成功后,如果该路径在随后的RSVP 信令建立过程中失败,或RSVP信令中被删除,都将通过该通知消息告知PCE删除路径或连接,PCE将这些路径需要使用的资源释放,这样在后续的计算中仍然可以生成使用这些资源的路径计算结果。该方法提高了有状态PCE掌握的资源信息的实时性和准确性,提高了 PCE 路径计算的准确性,从而防止了资源的冲突问题。上述方法在集中式PCE和分布式PCE (多PCE协作计算跨域路径时,如BRPC和层次PCE等)场景下都适用。场景1、2都涉及到PCE计算完成时需要及时保存计算结果和预留(或锁定)资源, 场景2当多PCE协作解决跨域计算时,无论采用BRPC或层次PCE计算路由,除了每个域计算完后保存和锁定资源,还需要在端到端计算结束后通知各个域的PCE最终的计算结果以及时更新资源和业务状态。因此,在整条端到端链路计算失败的情况下,为了防止有状态PCE 仍然预留资源,导致该资源永远不能够被使用,可以在建立失败的情况下,释放掉预留的资源,图11是根据本发明实施例的有状态PCE的处理方法的详细流程图,如图11所示,具体过程包括步骤S1102,有状态PCE完成自身的路径计算,对计算得到的路径需要使用的资源进行预留;步骤Sl 104,接收计算请求的首个PCE向参与计算的所有有状态PCE发送第二通知消息,其中,第二通知消息用于通知端到端路径的计算结果;步骤S1106,参与计算的所有有状态PCE在计算结果指示计算失败的情况下,释放所有预留的对应于该计算请求的资源;在计算结果指示计算成功的情况下,保留预留的对应于该计算请求的资源;步骤S1108,有状态PCE接收第一通知消息,其中,第一通知消息用于将RSVP信令建立失败的路径或RSVP信令删除的路径通知有状态PCE ;
步骤S1110,有状态PCE将第一通知消息通知的路径需要使用的资源释放。在端到端路径的计算结果指示计算成功的情况下,可以采用以下的处理方式(1)在采用BRPC方式进行多域路径计算的情况下,端到端路径的计算结果还用于指示计算成功的端到端路径,参与BRPC计算的所有PCE在收到第二通知消息的成功通知后,将各自预留的对应于该多域路径计算的资源中,除计算成功的端到端路径需要的资源之外的其他资源释放;由于BRPC方式进行多域路径计算,每个域的有状态PCE计算产生的潜在最优路径可能有多条,因此,在整个端到端路径计算成功的情况之后,首域PCE立即通知PCE链上的各PCE端到端的最终计算结果。当端到端计算成功时,各有状态PCE维持预留计算成功的路径上使用的资源,同时释放除计算成功路径之外的其他潜在路径上的资源, 这部分资源就可以在后续计算中被使用。当端到端计算失败时,释放与该计算相关的所有计算结果和预留的资源(所有潜在路径上的资源),这部分资源就可以在后续计算中被使用。(2)在采用层次PCE方式进行多域路径计算的情况下,参与该多域路径计算的父域有状态PCE及各子域有状态PCE保持预留的对应于该多域路径计算的资源。在端到端路径计算成功的情况下,说明所有子域的PCE的计算都是成功的,则该PCE应当保留预留的资源,防止后续计算中使用该资源导致资源冲突。在端到端路径计算失败的情况下,父域有状态PCE及各个子域有状态PCE删除该计算,防止后续计算中使用该资源导致资源冲突。优选地,在采用BRPC方式进行多域路径计算的情况下,第一通知消息和第二通知消息由接受PCC的路径计算请求的首域有状态PCE发送至参与计算的PCE链上的其他有状态PCE。在采用层次PCE方式进行多域路径计算的情况下,第一通知消息和第二通知消息由父域有状态PCE下发至参与计算的各个子域的有状态PCE。以上的第二通知消息可以为PCNtf (PCEP通知)消息,为了能够将端到端路径的计算结果通知给该有状态PCE,可以采用以下的方式设置第二通知消息在第二通知消息的NOTIFICATION对象中配置通知类型为端到端路径计算结果,通知取值为成功或失败;在第二通知消息中配置路径(PATH),PATH中携带显示路由对象(Explicit Route Object, 简称为ER0),用于指示计算成功的端到端路径。优选地,PATH中还可以携带带宽对象 (BANDffITH)和/或标签对象,用于指示计算成功的端到端路径需要使用的资源。以上的第一通知消息可以为PCNtf消息,为了能够将端到端路径建立失败的信息或端到端路径删除成功的信息通知该有状态PCE,可以采用以下的方式设置第一通知消息 在第一通知消息的NOTIFICATION对象中配置通知类型为路径删除;在第一通知消息中配置路径(PATH),PATH中携带ERO对象,用于指示建立失败的路径或删除成功的路径。优选地,PATH中还携带带宽对象BANDWITH和/或标签对象,用于指示建立失败的路径或删除成功的路径需要使用的资源。优选地,有状态PCE可以在TED中对计算得到的路径需要使用的资源进行预留。有状态PCE完成自身路径计算的情况下,还可以保存路径计算的计算结果;在有状态PCE释放资源的情况下,有状态PCE还删除对应于使用释放的资源的路径的计算结果。图4是根据本发明实施例的有状态PCE的结构框图,如图4所示,该有状态PCE包括路径计算模块42,用于完成该有状态PCE自身的路径计算;资源预留模块44,用于对计算得到的路径需要使用的资源进行预留;接收模块46,用于接收第一通知消息,其中,第一通知消息用于在端到端路径计算成功的情况下,将RSVP信令建立失败的路径或RSVP信令删除成功的路径通知有状态PCE;资源释放模块48,用于将第一通知消息通知的路径需要使用的资源释放。以下描述的实施例1-3综合了上述多个优选实施例的技术方案。实施例1该实施例描述了通过扩展PCEP协议实现以上方法的处理过程。扩展的PCEP协议, 内容包括(1)扩展NOTIFICATION对象中通知类型,增加一种通知类型,用于多PCE协作计算多层多域路由时当端到端路径计算完毕后通知参与计算的各个PCE端到端路由计算结果。Notification-type = TBD 端到端路径计算结果;Notification-value = TBD 端到端计算成功;Notification-value = TBD 端到端计算失败。(2)扩展NOTIFICATION对象中通知类型,增加另一种类型通知,在单PCE或多PCE 协作方式计算路径时,当LSP建立成功或失败后、以及LSP删除成功后,向参与计算的一个或多个PCE通知LSP建立或删除结果,以便同步和更新PCE中TED的资源和数据信息。当一个计算请求中计算出多个PATH(连接)时,通知消息除了指定Requst ID外,还通过携带的PATH通知是其中哪条连接需要删除(可以通过结合下述扩展方式(3)来实现)。Notification-type = TBD :PATH删除,连接建立失败或连接删除成功时通知PCE 删除连接;Notification-value = TBD 删除 PATH。(3) PATH在RFC5440中的PCR印(路径计算结果)消息中已经有定义,扩展PCEP的通知消息PCNtf消息,在PCNtf通知消息中增加PCR印消息中已有的PATH定义。PCNtf通知消息经过扩展之后,可以用于描述本专利的扩展通知所对应的路径是什么。原因是PATH 中可以携带ERO等对象用于指示需要更新的路径,及BANDWITH、标签等对象用于指示路径上的资源。与上述扩展(1)结合,可以用于指定端到端计算成功或失败的具体路径信息,包括经过的路径和资源。与上述扩展(2)结合,可以用于指定需要删除的具体路径信息,包括经过的路径和资源。扩展后的Notification消息格式如下<PCNtfMessage>: = <Co_n Header)<notify-list><notify-list>: = <notify>[<notify-list>]<notify>:: = [<request_id_list>]〈notification-list〉<request-id-list>:: = <RP>[<path-list>] //新增[<request-id-list>]<path-list>:: = <path>[<path"list>] // § ±曾<path>:: = <ER0Xattribute-list>//新增
<notification-list>: = 〈NOTIFICATION〉[〈notification-list〉]结合以上的扩展PCNtf消息结构,实现有状态PCE的过程如下有状态的PCE在路径计算时不仅基于流量工程数据库(TED)中的拓扑信息,还要利用网络中已有路径和已占用资源的信息。也就是说PCE需要及时记录计算结果和使用到的资源,对计算结果路径中使用到的资源需要及时在PCE中的TED中预留。在跨域场景下,需要多PCE协作得到最终的路径计算结果,此时PCE之间需要及时同步路径计算结果和资源。当LSP信令过程完成后,也需要及时通知与该LSP相关的所有PCE更新资源状态,根据通知消息来保持预留资源或释放资源。本实施例为了实现有状态,PCE在完成每次计算之后在PCE中保存本PCE的完整计算结果,包括计算出来的路径、资源,同时在PCE的TED数据库中预留计算路径所使用到的资源,以避免被后续的计算请求使用,达到避免资源冲突的目的。在多PCE协作使用BRPC计算跨域路径时,每个域计算完毕后保存路径计算结果, 同时在PCE中预留所有潜在路径的资源,最后除源节点所在的首域PCE,完成端到端计算之后,在本域内保存计算结果和预留资源的同时,通过扩展的通知消息往PCE链上的其他域 (包括路径经过的中间域和目的节点所在的尾域)通知端到端计算结果是成功或失败,同时在通知消息中通过RP对象可以指定计算请求的ID,通过扩展的ERO对象包括了计算得到的端到端完整的路径信息。PCE链上的这些PCE收到成功通知后,将潜在路径中不在此ERO 路径内的其他潜在路径的资源释放。如果收到失败通知,则释放与此计算请求相关的所有资源,并删除保存的路径计算结果。同样在使用层次PCE计算跨域路径时,父域PCE收到计算请求,计算出域序列,然后将请求分别发给域序列中的各个子域PCE,每个子域PCE计算完毕将计算结果返回给父域PCE,同时将计算结果保存在PCE中,并在PCE的TED中预留计算路径使用的资源。当所有子域计算完毕,父域PCE收集齐所有子域的计算结果后,父域PCE拼接生成端到端的路径结果返回PCC,同时父域PCE通知各个子域PCE端到端计算结果,子域收到计算成功的通知继续保持预留的资源,收到计算失败的通知则释放预留的资源并删除保存的计算结果。端到端路径计算成功之后,将继续进行后续的信令过程建立LSP,当连接建立成功之后,通过PCEP通知消息通知PCE连接建立结果。如果收到连接建立成功通知,则PCE继续保持预留的资源,如果收到建立失败通知,则PCE删除保存的计算路径和资源等信息,并释放预留的资源。同样在多PCE协作的跨域场景下,使用BRPC时,此通知将首先发送给首域PCE,然后首域PCE沿PCE链将通知消息转发给沿途的PCE,各个PCE收到成功的通知则继续保持预留的资源,收到失败的通知,则删除保存的计算路径和资源等信息,并释放预留的资源。在多PCE协作的跨域场景下,使用H-PCE时,此通知将首先发送给父域PCE,然后父域PC将通知消息转发给各个子域PCE,每个PCE收到成功的通知则继续保持预留的资源,收到失败的通知,则删除保存的计算路径和资源等信息,并释放预留的资源。实施例2该实施例描述了单个PCE独立完成路径计算时有状态PCE的同步过程。图5是根据实施例2的单个PCE独立完成路径计算时有状态PCE的同步过程的流程图,该过程包括步骤1,PCE收到路径计算请求后,开始计算路径;
步骤2,判断路径计算是否成功,若成功,则进入步骤3,否则,结束处理;步骤3,PCE保留路径计算结果,在TED数据库中预留计算得到的路径所需要使用的资源;步骤4,通过RVSP信令,路径的起止点之间开始路径建立过程;步骤5,判断路径的建立是否成功,若成功,则进入步骤6,否则结束处理;步骤6,PCC发送通知给该PCE,通知PCE删除路径的相关信息及预留资源;步骤7,PCE释放预留的该路径的资源,删除与该路径相关的保存的信息。以下以图7中第一个域(PCE1所在域)为例说明如何实现有状态PCE的机制。例如需要计算A到E的路径,A发送计算请求PCReq消息到PCE1,PCEl计算出A到E的最优路径,计算成功,则PCEl在本地保存计算结果,并在本地的TED数据库中预留此最优路径在本域内的资源。PCEl通过PCR印消息返回计算结果给A。RSVP信令过程随后开始连接建立的过程,连接建立完成后A通过扩展的PCNtf消息向PCEl发送通知。如果建立失败,则PCEl删除本地保存的结算和资源等信息。实施例3图6是根据实施例3的多PCE协作完成端到端路径计算时,有状态PCE的同步过程的流程图,如图6所示,包括以下步骤步骤1,PCC发送跨域计算请求;步骤2,首个PCE (接受PCC的计算请求的PCE,对于BRPC算法,该PCE为首域PCE, 负责构建PCE链,请求沿PCE链发送到尾域PCE ;对于层次PCE算法,该PCE为父域PCE,负责计算域序列,并将请求发送各个子域PCE)将请求发送到协作的PCE ;步骤3,PCE进行路径计算;步骤4,判断计算是否成功,若是,则进入步骤5,否则结束处理;步骤5,PCE保存计算结果,并在本地的TED数据库中预留此潜在最优代价路径在本域内的资源;步骤6,PCE发送计算结果,对于BRPC算法,逐级发送到首域PCE,对于层次PCE算法,发送到父域PCE;步骤7,判断端到端计算是否完成,若是,则进入步骤8,否则,返回步骤3 ;步骤8,首个PE通过PCEP通知消息通知各个参与计算的PCE端到端计算结果;步骤9,各个协作PCE同步资源和路径状态。采用BRPC算法时,端到端计算成功则各PCE删除多余的潜在路径和资源,计算失败则各PCE删除与此计算所有相关的路径和资源;采用层次PCE计算时,端到端计算失败则各子PCE删除与此计算相关的路径段及对应的资源;步骤10,通过RVSP信令,路径的起止点之间开始路径建立过程;步骤11,判断路径建立是否成功,若是,则进入步骤12,否则结束处理;步骤12,PCC发送通知给PCE,通知删除路径;步骤13,PCE释放预留的该路径的资源,并删除保存的与该路径相关的信息。以下通过举例说明BRPC算法和层次PCE时的处理方式。图7是根据实施例3的在跨域多PCE协作计算场景下,使用BRPC算法时的网络拓扑示意图,图中每朵云表示一个AS,每个AS内部署了一个PCE,分别是PCEl、PCE2、PCE3。A V是各个域中的标签交换路由器LSR。当LSRA请求计算从A到V的路径,将计算请求发送本域内PCE,即PCEl,PCEl依据域序列将请求发送PCE2,再到PCE3,三个PCE构成域序列。PCE3收到后开始路径计算过程PCE3计算从入口 Q、R到目的地V的最小生成树VSPT QTV cost 2 ;QTSRV cost 4RSTV cost 3 ;RV cost 1图8a是根据实施例3的PCE3计算得到的最小生成树结果示意图,PCE3通过PCR印消息向PCE2提供这棵最小生成树,然后PCE3保存计算结果,并在本地的TED数据库中预留此潜在最优代价路径在本域内的资源,即Q到V,R到V的资源。PCE2收到PCE3的计算结果后,计算从域2入口 G、H到V的开销得到GMQ. . V cost 4 ;GIJLNPR. . V cost 7 ;GIJLNPQ. . V cost 8HIJLNPR. . V cost 7 ;HIGMQ. . V cost 6 ;HIJLNPQ. . V cost 8图8b是根据实施例3的PCE2计算得到的最小生成树结果示意图,PCE2通过PCR印消息向PCEl提供这棵最小生成树,然后PCE2保存计算结果,并在本地的TED数据库中预留此潜在最优代价路径上在本域内的资源,即G到Q,H到Q的的资源。PCEl收到PCE2的计算结果后,计算从A到V的开销得到ABCDEG. . V cost 9AFH. . V cost 8PCEl从中选择最优路径AFHIGMQTV,代价为8。然后PCEl保存计算结果,并在本地的TED数据库中预留此最优路径在本域内的资源,即A到F的资源。端到端计算完毕,PCEl向PCC(即LSR A)发送PCRep消息,告知端到端计算结果。同时PCEl沿PCE链向PCE2、PCE3发送PCNtf消息,通过扩展的消息类型,通知PCE2、 PCE3端到端连接计算结果,并在消息中通过ERO对象携带计算成功的端到端路径,及通过 BANDffITH等对象携带了端到端路径上使用的资源。如果计算成功,PCE2、PCE3收到端到端计算成功通知后,保持最优路径上的资源, 同时释放其他潜在最优路径的资源。例如PCE3查看端到端计算结果在本域内的路径是 QTV,因而释放另一条潜在最优路径RSV上的资源,只保持最优路径QTV上的资源。同样PCE2 也查看端到端计算结果在本域内的路径,只保持此最优路径上的资源,释放其他潜在最优路径上的资源。如果计算失败,PCE2、PCE3收到端到端计算成功通知后,释放与此计算相关的所有资源,并删除本地保存的计算请求和结果。例如PCE3释放所有潜在路径RSV、QTV上的资源。A到V的RSVP信令过程随后开始连接建立的过程,端到端连接建立完成后,如果建立成功,PCE1、PCE2、PCE3继续保持保存的信息和预留的资源。如果建立失败,则LSRA通过扩展的PCNtf消息向PCEl上报连接建立失败通知,同时PCEl沿PCE链向PCE2、PCE3发送 PCNtf消息,通知各PCE删除资源,PCE1、PCE2、PCE3删除本地预留的资源,并删除本地保存的与该计算相关的计算请求和结果数据。同样当删除连接时,LSRA也发送同上的通知,PCE1、PCE 2,PCE 3完成资源和数据的删除。图9是根据实施例4的在跨域计算场景下,使用层次PCE计算跨域路径时的网络拓扑和PCE部署示意图,如图9所示,层次PCE(H-PCE)可以提供端到端的跨域路径计算方法计算流程,包括域序列的选择,以及端到端的跨域路径。层次PCE技术中,父(上层)PCE 维护域拓扑地图,即将每个子域看作一个节点,并维护域之间的连接关系。子域中的子PCE 负责计算子域中的路径。这样,PCE之间就形成了层次关系。这种层次关系可以不仅仅是两层,可以包含多个层次。如图9所示,4个子域(Domain 1 Domain 4)组成一个父域(Domain 5)。各子域分别有相应的PCE计算域内路径。父域的PCE维护子域的互连信息,用于计算域序列。 PCE5中对每个子域抽象成一个节点,保存的拓扑信息如图10所示。各个子域的PCE需要与父域中的PCE5建立会话,并上报相应的域与其他域的连通性。从而PCE5可以得到所有子域的连通性,可以计算域序列。假设要计算节点S到节点D的路径,其过程如下S请求PCEl计算到D的路径;PCEl请求PCE5计算域序列;PCE5确定可能的域序列(域1-域2-域3,域1-域4-域3);PCE5请求PCE2计算边界节点(与域1相邻)到边界节点(与域3相邻)的路径, 并请求PCE4计算边界节点(与域1相邻)到边界节点(与域3相邻)的路径;PCE5请求 PCEl计算源节点到边界节点的路径;PCE5请求PCE3计算边界节点到目的节点的路径;PCEl 4各自计算本域内的最佳路径,通过PCR印消息返回给PCE5,同时各PCE 在本地保存计算结果,并在本地的TED数据库中预留此最优路径在本域内的资源。PCE5收集齐所有子域PCE路径计算结果后,确定端到端最优路径,同时PCE5在本地保存计算结果,并在本地的TED数据库中预留此最优路径在本域内的资源,通过PCRep消息返回端到端结果给PCE1。PCEl返回最终端到端结果给S。同时PCE5通过扩展的PCNtf 消息将端到端计算结果通知各个子域PCEl 4,并在消息中通过ERO对象携带计算成功的端到端路径,及通过BANDWITH等对象携带了端到端路径上使用的资源。如果计算成功,PCEl 4收到端到端计算成功通知后,保持计算结果路径上的资源。如果PCEl 4中部分子域计算成功,其他部分子域计算失败,则最终端到端计算结果为失败。则PCEl 4收到失败的通知后,若之间部分子域因为计算成功保存了计算结果和预留资源,则这些信息都删除并释放资源。RSVP信令过程随后开始连接建立的过程,端到端连接建立完成后,如果建立成功, PCEl 5继续保持保存的信息和预留的资源。如果建立失败,则LSR S通过扩展的PCNtf 消息向PCEl上报连接建立失败通知,同时PCEl向父域PCE5发送此PCNtf消息,父域PCE5 删除本地保存的结算和资源等信息,同时发送此PCNtf消息通知各子域PCEl 4删除资源,PCEl 4删除本地预留的资源,并删除本地保存的与该计算相关的计算请求和结果数据。同样当删除连接时,LSRA也发送同上的通知,流程同上。从以上实施例描述的方法中可以看出,有状态PCE在每次路径成功计算之后,马上在PCE访问的TED中预留与此路径相关的资源;在连接建立或删除后,PCC需要通过PCEP 协议通知有状态PCE进行资源和路径状态的同步。其中,有状态PCE计算的路径包括单域
14计算出的路径和多域计算出的路径。在跨域计算时,通过扩展的PCEP协议通知消息,通知路径计算时使用到的资源和标签信息,这对于WSON网络特别有用;在多个PCE协作计算端到端路径时,当端到端计算完成后,发起端到端路径计算的PCE,通过PCEP协议通知参与计算的各个协作PCE同步资源和路径状态;对于多个PCE协作计算端到端路径时,在得到计算结果之后,通过PCEP通知消息实现协作的各PCE之间的同步;并在随后的连接建立完成时,各PCE通过PCEP通知消息,实现在协作的各PCE与LSR之间进行资源同步。具体地(1)采用BRPC算法进行跨域路径计算时,当端到端计算成功后,发起端到端路径计算的PCE,通过PCEP协议通知参与计算的各个协作PCE同步资源和路径状态,各PCE删除多余的潜在路径和资源;采用BRPC算法进行跨域路径计算时,当端到端计算失败后,首域 PCE通过PCEP协议通知参与计算的各个协作PCE同步资源和路径状态,各PCE删除与此计算相关的路径和资源;(2)层次PCE计算跨域路径时,端到端计算失败后,父PCE通过PCEP协议通知参与计算的各个子PCE同步资源和路径状态,各子PCE删除与此计算相关的路径段及对应的资源。需要说明的是,也可以采用其他类似的PCEP消息通知方式来同步PCE之间或PCE 与LSR之间的路径信息和资源信息。对BRPC、层次PCE或其他跨域计算方法,不通知端到端计算结果,而仅仅通过通知连接建立成功、失败,或者通过PCEP通知消息通知删除失效的 LSP,也可以达到PCE与LSR同步的目的。综上所述,本发明实施例提供的方案通过实现了 PCE的有限有状态,提高了有状态PCE掌握的资源信息的实时性和准确性,提高了 PCE路径计算的准确性,从而防止了资源的冲突问题。显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
权利要求
1.一种有状态路径计算单元PCE的处理方法,其特征在于,包括有状态PCE完成自身的路径计算,对计算得到的路径需要使用的资源进行预留;所述有状态PCE接收第一通知消息,其中,所述第一通知消息用于将资源预留协议 RSVP信令建立失败的路径或RSVP信令删除成功的路径通知所述有状态PCE ;所述有状态PCE将所述第一通知消息通知的路径需要使用的资源释放。
2.根据权利要求1所述的方法,其特征在于,在多域路径计算的情况下,在所述有状态 PCE接收第一通知消息之前,还包括接收计算请求的首个PCE向参与计算的所有有状态PCE发送第二通知消息,其中,所述第二通知消息用于通知端到端路径的计算结果;所述参与计算的所有有状态PCE在所述计算结果指示计算失败的情况下,释放本PCE 中所有预留的对应于所述计算请求的资源。
3.根据权利要求2所述的方法,其特征在于,在所述端到端路径的计算结果指示计算成功的情况下,所述方法还包括在采用反向递归路径计算BRPC方式进行多域路径计算的情况下,所述端到端路径的计算结果还用于指示计算成功的端到端路径,参与BRPC计算的所有PCE在收到所述第二通知消息的成功通知后,将各自预留的对应于所述多域路径计算的资源中除计算成功的端到端路径需要的资源之外的其他资源释放;在采用层次PCE方式进行多域路径计算的情况下,参与所述多域路径计算的父域有状态PCE及各子域有状态PCE保持预留的对应于所述多域路径计算的资源。
4.根据权利要求3所述的方法,其特征在于,在采用BRPC方式进行多域路径计算的情况下,所述第一通知消息和所述第二通知消息由首域有状态PCE发送至PCE链上参与计算的所有有状态PCE。
5.根据权利要求3所述的方法,其特征在于,在采用层次PCE方式进行多域路径计算的情况下,所述第一通知消息和所述第二通知消息由父域有状态PCE下发至所有参与计算的子域有状态PCE。
6.根据权利要求3所述的方法,其特征在于,所述第二通知消息为路径计算单元协议通知PCNtf消息,在所述第二通知消息的通知NOTIFICATION对象中配置通知类型为端到端路径计算结果,通知取值为成功或失败;在所述第二通知消息中配置路径PATH,所述PATH 中携带显式路由对象ER0,用于指示所述计算成功的端到端路径。
7.根据权利要求6所述的方法,其特征在于,所述PATH中还携带带宽对象BANDWITH和 /或标签对象,用于指示所述计算成功的端到端路径需要使用的资源。
8.根据权利要求1所述的方法,其特征在于,所述第一通知消息为PCNtf消息,在所述第一通知消息的通知NOTIFICATION对象中配置通知类型为路径删除;在所述第一通知消息中配置路径PATH,所述PATH中携带ERO对象,用于指示所述建立失败的路径或所述删除成功的路径。
9.根据权利要求8所述的方法,其特征在于,所述PATH中还携带带宽对象BANDWITH和 /或标签对象,用于指示所述建立失败的路径或所述删除成功的路径需要使用的资源。
10.根据权利要求1所述的方法,其特征在于,所述有状态PCE在流量工程数据库TED 中对所述计算得到的路径需要使用的资源进行预留。
11.根据权利要求1至10中任一项所述的方法,其特征在于,所述有状态PCE完成自身路径计算的情况下,还保存计算结果;在所述有状态PCE释放所述资源的情况下,还删除对应于使用所述释放的资源的路径的计算结果。
12.—种有状态PCE,其特征在于,包括路径计算模块,用于完成所述有状态PCE自身的路径计算; 资源预留模块,用于对计算得到的路径需要使用的资源进行预留; 接收模块,用于接收第一通知消息,其中,所述第一通知消息用于在路径计算成功的情况下,将RSVP信令建立失败的路径或RSVP信令删除成功的路径通知所述有状态PCE ; 资源释放模块,用于将所述第一通知消息通知的路径需要使用的资源释放。
全文摘要
本发明公开了一种有状态路径计算单元的处理方法及有状态路径计算单元,该方法包括有状态PCE完成自身的路径计算,对计算得到的路径需要使用的资源进行预留;有状态PCE接收第一通知消息,其中,第一通知消息用于将RSVP信令建立失败的路径或RSVP信令删除成功的路径通知有状态PCE;有状态PCE将第一通知消息通知的路径需要使用的资源释放。本发明提高了有状态PCE掌握的资源信息的实时性和准确性,提高了PCE路径计算的准确性,从而防止了资源的冲突问题。
文档编号H04L12/56GK102469009SQ201010538250
公开日2012年5月23日 申请日期2010年11月9日 优先权日2010年11月9日
发明者汪学蓉, 鲍远林 申请人:中兴通讯股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1