CN101350761B - 实现路径建立、计算的方法、装置及系统 - Google Patents

实现路径建立、计算的方法、装置及系统 Download PDF

Info

Publication number
CN101350761B
CN101350761B CN2007101303590A CN200710130359A CN101350761B CN 101350761 B CN101350761 B CN 101350761B CN 2007101303590 A CN2007101303590 A CN 2007101303590A CN 200710130359 A CN200710130359 A CN 200710130359A CN 101350761 B CN101350761 B CN 101350761B
Authority
CN
China
Prior art keywords
path
node
message
optional essential
optional
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.)
Active
Application number
CN2007101303590A
Other languages
English (en)
Other versions
CN101350761A (zh
Inventor
陈国义
李鉴
梁旭东
李振斌
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN2007101303590A priority Critical patent/CN101350761B/zh
Publication of CN101350761A publication Critical patent/CN101350761A/zh
Application granted granted Critical
Publication of CN101350761B publication Critical patent/CN101350761B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

本发明实施例公开了实现路径建立的方法、装置及系统,当建立路径时,将路径所需经过的特定位置处的至少两个节点确定为该位置的可选的必选节点,并将所确定的可选的必选节点信息随路径建立消息发送,当路径建立消息到达所述特定位置的上一条节点时,根据该消息中所携带的该位置的可选的必选节点信息,将该位置的可选的必选节点中的一个节点选择作为选定的必选节点,采用该选定的必选节点来进行路径的建立,并将对应该位置的剩余的可选的必选节点作为待选的必选节点保存,以便在所述选定的必选节点失效的情况下,能够利用所述待选的必选节点进行路径的建立。本发明实施例还公开了实现路径计算的方法、系统及装置。

Description

实现路径建立、计算的方法、装置及系统
技术领域
本发明涉及通信技术领域,尤其涉及实现路径建立、计算的方法、装置及系统。
背景技术
在通信技术领域中,当需要为数据传输建立相应路径时,传统的路由协议选择最短路径作为路由,而不考虑带宽等因素。由此导致的问题是:即使某条链路发生拥塞,流量也不会切换到其他没有拥塞的链路上去。在网络规模不大、流量少、业务紧急程度低的情况下,这一问题不是很严重;但随着网络规模的不断扩大,网络流量随之持续增加,这一问题就变得十分严重了。
为了解决上述问题,当前引入了流量工程(TE)来辅助实现路径的建立。流量工程关注整个网络性能的优化,其目标是优化网络中流量的分配情况,以提供高效、可靠的网络服务。通过利用流量工程进行链路的度量值调整,可以使得数据流量被合理的分配到各条链路上。但这种方式仍然具有很大的局限性,很难实现将整个网络的数据流量调整到理想的情况,同时,由于采用该方式会影响到网络中较多的链路,因此,在实际应用中,也比较难以权衡和把握。与此同时,多协议标签交换(MPLS)作为一种叠加模型,可以很方便的在物理拓扑上建立一个虚拟的拓扑,然后将流量映射到这个虚拟拓扑上。基于MPLS的上述特点,当前提出了基于多协议标签交换协议的流量工程(MPLS-TE),该MPLS-TE将MPLS技术和流量工程有机的结合在一起,从而很好的解决采用传统流量工程进行路径建立时所遇到的问题。
MPLS-TE一般采用基于流量工程的资源预留协议(RSVP-TE)作为标签分发、建立TE路径的信令协议;RSVP-TE中定义了显示路径对象(ERO)来指定TE路径需要经过的路由自治域(AS)、或者路由区域(Area)、或者直接指定需要经过的节点。除了ERO之外,在RSVP-TE中还定义了排除路径对象(XRO:Exclude Route Object)以及显示排除路径子对象(EXRS:Explicit ExcludeRoute Sub-object)。其中,XRO用来指定一条TE路径中应该排除哪些资源,该资源可以包括AS、Area、节点、链路、接口等;EXRS用来指定在ERO两个抽象节点之间应该排除哪些资源,该资源同样可以包括AS、Area、节点、链路、接口等。通过ERO、XRO、EXRS等的配合,可以比较灵活的描述出一条TE路径的相关约束信息,从而能够满足大多数场景下建立TE路径的需求。
上述基于MPLS-TE的技术虽然能够实现路径的建立,但是,仍然具有以下问题:
在上述建立路径的过程中,对于网络中的众多节点,只选定其中确定的某几个作为建立路径时所必须经过的节点,这些节点在建立路径过程中被称为必选节点;然而,在实际应用中,网络中通常会有多个节点可以作为可选节点来实现路径的建立,举例来说,假设两个区域之间的跨域有两个节点,分别为节点A和节点B,而对于建立一条路径来说,采用这两个节点中的任何一个节点均可以实现路径的建立,此时,采用如上所述的现有技术,则只能选择其中的一个节点作为所述的必选节点来实现路径的建立,而对于另一个节点而言,则无法被选择。由此带来的问题是:对于路径建立过程来说,建立方式过于单一,更为严重的是,如果在建立路径过程中所选择的必选节点实效,则无法选择网络中相应的可选节点作为替代节点来实现路径的建立,从而导致无法实现路径的建立。
除了上述描述的现有技术及现有技术缺点之外,当前还存在以下现有技术:
当前,随着IP网络技术的不断发展,IP技术已经逐渐成为各种通信技术的首选,随之带来的是,将所有数据都通过IP技术来传递的ALL IP技术的发展趋势十分迅猛,但是,IP技术自身在服务质量(QOS)方面的不足却对该ALL IP技术起到了相当大的限制作用。由此,当前提出了MPLS-TE技术,该技术作为一种能够对网络资源进行优化、对网络拥塞进行控制的技术,大大促进了网络QOS的提升。
在传统的MPLS-TE技术中,采用基于约束的最短路径算法(CSPF)来进行流量工程标签交换路径(TE-LSP)的计算,在该计算过程中,路由的计算由头节点(Head end)发起,且全网的路由器都有可能参与TE-LSP的计算,因此,不可避免的对MPLS-TE技术的可扩展性及部署的灵活性都造成了影响。
为了解决传统的MPLS-TE技术在计算路径时的上述问题,当前提出了一种用于路径计算的新模型,该模型中包括单独的路径计算单元(PCE),基于该PCE的路径计算模型将路径计算从路由器中分离出来,交由PCE来完成路径的计算,其具体实现为:所有需要建立路径的节点作为路径计算客户端(PCC)向PCE发起计算路径的请求,PCE收到请求并完成相应的计算后,将相应的计算结果告诉PCC节点,PCC节点根据得到的计算结果建立相应的TE-LSP路径。采用上述手段,由于PCE进行路径计算时仅仅会影响路径的计算,因此,不会造成对路径建立过程的影响。
其中,所述的PCE不但能够完成域内TE-LSP的计算,同时也能够进行域间TE-LSP的计算,对于一个域内的情况,所述PCE还能够完成端到端的TE-LSP计算。但是,对于跨越多个自治系统或路由区域的情况,一个PCE就很难完成整条路径的计算,需要多个PCE共同协作来完成一条路径的计算;同时,考虑到不同路由区域或自治系统间的安全性问题,往往一个PCE也只能看到自己所在区域内的相关流量工程信息数据(TED),由此也导致在计算跨越多个区域的路径时,需要多个PCE共同参与。
下面对上述采用PCE完成路径计算的过程加以简单介绍。
首先,头节点作为PCC向其默认的PCE发起路径计算请求,该路径计算请求中携带有对计算路径时的各种约束条件,如带宽、需要经过的节点、不能经过的节点等;PCE根据路径计算请求进行路径计算,其中,如果该PCE不能单独完成路径的计算,则向其他的PCE发送路径计算请求,请求协助进行路径的计算。PCC和PCE之间以及PCE和PCE之间通过路径计算通信协议(PCEP)进行通信。PCE完成路径计算后,将计算结果返回给PCC,PCC根据该计算结果通过RSVP-TE信令完成路径的建立。
其中,在如上所述的PCEP协议中,采用包含路径对象(IRO,Include RouteObject)来指示一条路径应该包含哪些节点,同时,该PCEP协议采用排除路径对象(XRO)以及显示排除路径子对象(EXRS)来指示一条路径应该排除哪些节点。如上所述的节点为抽象节点,可以为路由器,也可以为路由区域、自治系统或链路。由此,PCC可以通过PCEP携带的IRO、XRO、EXRS等这些约束条件来告知PCE一条路径应该包含哪些节点、或者应该排除哪些节点。通过这种方式,现有的PCEP协议能够满足大部分场景下计算路径的需求。
但是,在采用上述基于PCE计算路径的技术中,对于某个位置来说,PCC只能通过PCEP协议告诉PCE一条路径需要经过哪一个节点,在该位置具有多个节点都能实现路径建立的情况下,无法将其余节点也告知PCE,从而使得PCE在进行路径计算时,限制于PCC所告知的某个节点,无法针对网络中某个位置处存在多个可选节点均能实现路径建立的实际情况,灵活的完成路径的计算。
发明内容
本发明第一实施例所要解决的技术问题在于:提供实现路径建立的方法、装置和系统,以使得在路径建立过程中,能够充分考虑网络中所存在的可选节点,并进而保证在必选节点失效的情况下也能够实现路径的建立。
为实现上述发明目的,本发明实施例提供以下技术方案:
一种实现路径建立的方法,该方法包括:
确定步骤:对于待建立路径所需经过的特定位置,将能够实现该路径建立的至少两个节点确定作为所述特定位置的可选的必选节点,并将所确定的所述可选的必选节点信息添加到路径建立消息中;
发送步骤:逐跳发送所述路径建立消息,收到该路径建立消息的节点判断该路径建立消息所需发送的下一跳位置是否为所述特定位置,如果不是,返回本步骤,直至路径建立完毕,如果是,则执行选择步骤;
选择步骤:所述收到该路径建立消息的节点,通过分析所述路径建立消息得到所述下一跳位置的可选的必选节点信息,选择其中的一个节点作为路径建立消息下一跳发送的目的节点;以及,将未被选中的所述可选的必选节点的信息加以保存,然后返回所述逐跳发送的步骤,直至路径建立完毕。
一种实现路径建立的系统,该系统包括至少三个节点,在所述节点中:
待建立路径的入口节点用于:
将所述路径所需经过的特定位置处的至少两个节点确定为该位置的可选的必选节点,在将所确定的所述可选的必选节点信息添加到路径建立消息中后,将该路径建立消息发送出去;
收到路径建立消息的节点用于:
在判断得到该路径建立消息所需发送的下一跳位置有对应的可选的必选节点时,选择其中的一个节点作为路径建立消息中下一跳发送的目的节点来发送路径建立消息,以及将未被选中的所述可选的必选节点的信息加以保存;和,
在判断得到该路径建立消息所需发送的下一跳位置没有对应的可选的必选节点时,根据所述路径建立消息中所携带的节点信息,继续逐跳发送该路径建立消息;
待建立路径的出口节点用于:
在收到入口节点发送来的所述路径建立消息后,完成路径建立。
一种实现路径建立的装置,该装置包括:
确定单元,用于将所述路径所需经过的特定位置处的至少两个节点确定为该位置的可选的必选节点;
路径建立消息构建单元,用于构建路径建立消息,使得该消息中携带所确定的所述可选的必选节点信息;
发送单元,用于发送路径建立构建单元所构建的路径建立消息。
一种实现路径建立的装置,该装置包括:
判断单元,用于根据路径建立消息中携带的节点信息,判断该路径建立消息所需发送的下一跳位置是否有对应的可选的必选节点,并将判断结果发送给路径建立消息发送单元;
路径建立消息发送单元,用于在判断单元所发送来的判断结果为是时,选择下一跳位置对应的可选的必选节点中的一个节点作为路径建立消息中下一跳发送的目的节点来发送路径建立消息,并且,将未被选中的所述可选的必选节点的信息发送给保存单元;以及,在判断单元发送的判断结果为否时,继续逐跳发送该路径建立消息;
保存单元,用于保存所述未被选中的可选的必选节点的信息。
由此可见,由于在本发明实施例一所提供的技术方案中,通过在路径建立消息中携带可选的必选节点信息,从而使得能够根据多个可选的必选节点来实现路径建立,从而使得路径建立方式更加灵活,并且在某个节点失效的情况下,能够选择该节点所在位置的其他的可选的必选节点来实现路径建立,从而保证路径建立能够顺利实现,并可加速路径的收敛。
本发明第二实施例所要解决的技术问题在于:提供实现路径计算的方法、装置和系统,以使得在路径计算的过程中,能够充分考虑网络中某个位置处存在多个可选节点的情况,灵活的完成路径计算。
为实现上述发明目的,本发明实施例提供以下技术方案:
一种实现路径计算的方法,该方法包括:
对于待计算路径所需经过的特定位置,将能够实现路径建立的至少两个节点确定作为所述特定位置的可选的必选节点,并将所确定的所述特定位置的可选的必选节点信息作为路径计算的约束条件之一添加到路径计算请求消息中;
发送所述路径计算请求消息至路径计算单元PCE,接收到该请求消息的PCE计算其管辖区域内满足约束条件的路径片段,且在判断得到其管辖区域内包括所述特定位置时,根据所述特定位置的可选的必选节点信息,将与所述可选的必选节点相对应的路径片段计算成为所述满足约束条件的路径片段;
综合PCE确定的各个路径片段,计算出完整的路径。
一种实现路径计算的系统,该系统包括路径计算单元PCE以及至少三个节点,其中,在所述节点中,待计算路径的入口节点用于:
对于待计算路径所需经过的特定位置,将能够实现路径建立的至少两个节点确定作为所述特定位置的可选的必选节点,并将所确定的所述特定位置的可选的必选节点信息作为路径计算的约束条件之一添加到路径计算请求中并发送给相应的PCE;
接收到所述路径计算请求的PCE用于:
计算其管辖区域内满足约束条件的路径片段,且在判断得到其管辖区域内包括所述特定位置时,根据所述路径计算请求中所携带特定位置的可选的必选节点信息,将与所述可选的必选节点相对应的路径片段计算成为所述满足约束条件的路径片段;
待计算路径的入口节点对应的PCE还用于:
综合各个所述接收到所述路径计算请求的PCE计算得到的路径片段,计算得到完整的路径。
一种实现路径计算的装置,该装置包括:
确定单元,用于对于待计算路径所需经过的特定位置,将能够实现路径建立的至少两个节点确定作为所述特定位置的可选的必选节点;
路径计算请求消息构建单元,用于构建路径计算请求消息,并将所确定的所述特定位置的可选的必选节点信息作为路径计算的约束条件之一添加到路径计算请求消息中;
发送单元,用于将路径计算请求消息构建单元所构建的路径计算请求消息发送给相应的路径计算单元。
一种实现路径计算的装置,该装置包括:
计算单元,用于根据路径计算请求消息中携带的约束条件,计算该装置管辖区域中满足约束条件的路径片段;
特定位置路径计算单元:用于在判断得到该装置管辖的区域内包括所述特定位置时,根据所述路径计算请求中所携带特定位置的可选的必选节点信息,将与所述可选的必选节点相对应的路径片段计算成为所述满足约束条件的路径片段。
由此可见,由于在本发明实施例二所提供的方案中,将多个可选的必选节点信息告知路径计算单元,从而使得路径计算单元在进行路径计算时能够根据这些可选的必选节点来更加灵活的实现路径的计算,有效提高路径计算的成功率,并进一步加速路径建立过程的收敛速度。
附图说明
图1为本发明实施例一所提供的路径建立方法的流程图;
图2为本发明实施例一所应用的场景的示意图;
图3为本发明实施例一中路径建立方法更细化实例的流程图;
图4为本发明实施例一所应用的场景的示意图;
图5为本发明实施例一所应用的场景的示意图;
图6为本发明实施例二所提供的路径计算方法的流程图;
图7为本发明实施例二所应用的场景的示意图;
图8为本发明实施例二中路径计算方法更细化实例的流程图;
图9为本发明实施例二所应用的场景的示意图。
具体实施方式
为了描述方便,下面分别针对路径建立和路径计算,结合实施例一和实施例二分别加以描述。
一、实施例一:
在本发明实施例一中,当建立路径时,将路径所需经过的特定位置处的至少两个节点确定为该位置的可选的必选节点,并将所确定的可选的必选节点信息随路径建立消息发送,当路径建立消息到达所述特定位置的上一跳节点时,根据该消息中所携带的该位置的可选的必选节点信息,将该位置的可选的必选节点中的一个节点选择作为选定的必选节点,采用该选定的必选节点来进行路径的建立,并将对应该位置的剩余的可选的必选节点作为待选的必选节点保存,以便在所述选定的必选节点失效的情况下,能够利用所述待选的必选节点进行路径的建立。
下面结合附图,对本发明实施例一进行详细说明。
(一)首先,对本发明实施例一所提供的实现路径建立的方法加以详细说明:
参见图1,本发明实施例一所提供的实现路径建立的方法包括以下步骤:
步骤101:对于待建立路径所需经过的特定位置,将能够实现路径建立的至少两个节点确定作为所述特定位置的可选的必选节点,并将所确定的所述可选的必选节点信息添加到路径建立消息中;
步骤102:根据所述路径建立消息中所携带的节点信息逐跳发送该路径建立消息,收到该路径建立消息的节点判断该路径建立消息所需发送的下一跳位置是否有对应的可选的必选节点,如果有,则执行步骤103及其后续步骤,否则,返回本步骤;
步骤103:所述收到该路径建立消息的节点,通过分析所述路径建立消息得到所述下一跳位置对应的可选的必选节点信息,选择其中的一个节点作为本次路径建立中作为特定位置的所述下一跳位置的选定的必选节点,并将所述选定的必选节点的信息作为路径建立消息中下一跳发送的目的节点的信息;以及,将未被选中的所述可选的必选节点的信息作为所述下一跳位置的待选的必选节点的信息加以保存,然后返回步骤102,直至路径建立完毕。
在本发明优选实施例中,由于对于相应的特定位置来说,预先保存了待选的必选节点的信息,因此,可以在该特定位置的节点失效从而导致无法建立路径时,启用所述待选的必选节点,从而完成路径建立;由此,对应于该优选实施例,该方法还可以进一步包括:
步骤104:在判断得到在步骤103中所选择的所述特定位置的选定的必选节点发生失效问题时,将路径建立错误消息上报至路径建立已经经过的节点;
步骤105:所述路径建立已经经过的节点获得所述特定位置对应的待选的必选节点的信息,并从中选择一个节点作为所述特定位置的选定的必选节点,将选定的必选节点的信息添加到重新构建的路径建立消息中,然后返回步骤102,继续执行路径建立过程。
其中,在上述实施例中,在从多个可选的必选节点信息中选择一个节点的过程中,可以采用随机选取的方式选择节点,也可以根据各个节点所具有的不同优先级进行选取,或者也可采用其他机制完成节点的选取,并不影响本发明的实现。
在本发明实施例中,考虑到路径建立时的实际情况,可以将不同区域的边界位置,如不同路由区域(AB)之间的边界位置或者不同自治系统(AS)之间的边界位置,确定为如上所述的特定位置,也可以将域内的位置,如路由区域内或自治系统内的任意位置确定为如上所述的特定位置;此外,在一次建立路径的过程中,可以根据实际需要确定多个特定位置,且多个特定位置可以为不同的位置类型。为了描述方便,在以下叙述中均以边界位置作为特定位置为例进行说明,但本发明实施例的保护范围并不局限于此。
下面,结合更具体实施例,对本发明实施例一所提供的方法加以描述。
参见图2,图2中的区域1、区域0和区域2分别表示三个不同区域,B1、B2、B3、B4分别表示对应的区域边界路由器(ABR),A1表示入口路由器,C1表示出口路由器,A4表示区域内的路由器;参考图2,为了建立一条从A1到C1的跨路由区域的路径,需要图3所示的以下具体步骤:
步骤301:入口路由器A1通过配置、或者路径计算得知:如果建立从A1到C1的TE路径,对于该路径所经过的区域1和区域0的边界来说,可以通过B1由区域1到达区域0,也可以通过B2由区域1到达区域0,由此,对于区域1和区域0的边界,将B1和B2确定为该边界的可选的必选节点;
步骤302:所述入口路由器A1设置路径(Path)建立消息,以使得该消息携带所述可选的必选节点的信息;
其中,在本发明实施例中,可以采用如下两种方式,使得路径建立消息中携带所述可选的必选节点信息:
方式一:
所述入口路由器A1创建一个可选的必选节点对象(ARO-IncludeAlternative Route Object),在该ARO中保存所述可选的必选节点的信息,以及,设置ERO,使得该ERO中保存除所述可选的必选节点信息之外的其余用于路径建立的节点的信息;然后,将所述ERO和ARO合并,以该合并结果作为建立路径所需的节点信息携带在所述路径建立消息中;对应于本发明实施例,如果采用该方式一,则路径建立消息中所携带的信息的格式为:
设置后的ERO:{A4、B3、C1}、以及一个ARO:{B1|B2};
其中,ARO与ERO是并列的关系;
在上述方式一中,采用ARO表示可选的必选节点信息,该方式适用于当没有指定一条TE路径需要经过的哪些节点或者指定的路径节点比较抽象的情况,例如就知道要建立一条从A1到C1的TE路径,或者说要建立一条经过AS2从A1到C1的TE路径。
方式二:
所述入口路由器A1创建一个可选的必选节点子对象(EARS-ExplicitAlternative Route Sub-Object),在该EARS中保存所述可选的必选节点信息,以及,将该EARS中的可选的必选节点信息替换ERO中对应的必选节点信息,并将进行替换后的ERO作为建立路径所需的节点信息携带在所述路径建立消息中;或者,也可以将创建的EARS添加到ERO中;对应于本发明实施例,如果采用该方式二,则路径建立消息中所携带的信息的格式为:
设置后的ERO:{A4、B1|B2、B3、C1},其中,所述B1|B2为EARS所保存的可选的必选节点信息;
在上述方式二中,采用EARS表示可选的必选节点信息,该方式适用于对于待建立的TE路径已经指定了较为详细的路径的情况,此时,采用EARS来进一步限制此路径,即限制一个ERO中两个节点间需要经过由EARS指定的节点,该EARS包含在ERO中;例如一条TE路径的ERO为:A1->A2->B1…C3->C1,可以看到除了B1和C3之间需要经过的节点都已经明确,此时,就可以在B1和C3之间插入一个EARS,如B3|B4,用来限制这条TE路径。
步骤303:所述入口路由器A1根据路径建立消息中的节点信息,将路径建立消息发送给A4;
步骤304:A4节点收到携带有所述可选的必选节点信息的路径建立消息后,如果其支持这种可选的必选节点对象或子对象,则分析路径建立消息,判断该路径建立消息需要发送至的下一个节点是否就是可选必选节点,如果是,则执行步骤305及其后续步骤,否则,继续根据所述路径建立消息中所携带的节点信息逐跳发送该路径建立消息,直至完成路径建立;
在本发明实施例中,由于在路径建立消息所携带的节点信息中,B1|B2紧跟在A4之后,因此可以判断得到B1|B2就是路径建立消息需要发送至的下一个节点;
步骤305:所述A4从B1和B2中选择一个作为正真需要将路径建立消息发送至的节点,即选定的必选节点,例如选择B1,然后,A4修改路径建立消息中的ERO,将B1的节点信息作为选定必选节点信息设置在ERO中;在经过该设置后,ERO的内容如下:
{B1、B3、C1};
同时,在步骤305中,还需将未被选中的可选的必选节点信息保存起来,在本发明实施例中,由于作为可选的必选节点B2未被选择,因此,A4将该B2的信息保存起来,以便在B1失效时,能够启用该B2,以实现路径的建立;
步骤306:A4根据设置后的ERO,将路径建立消息发送给B1;B1收到这样一个路径建立消息后,其后续的处理就和现有的处理流程一样,逐跳将路径建立消息沿着ERO描述的路径发送到C1,直至建立起这样一条从A1到C1的TE路径。
在本发明上述优选实施例中,由于在A4中保存了未被选中的可选的必选节点信息,即B2的信息,因此,在B1失效从而导致无法建立从A1到C1的TE路径时,能够启用所述B2,从而完成路径的建立,其具体可以包括以下几种方式:
方式(一):
当选择的B1节点出现问题时,即从B1无法到达C1时,从B1不可达的错误消息由B1逐跳沿着路径建立消息的反方向发送给A4;
A4将其所保存的未被选中的可选的必选节点信息,也就是B2的信息,携带在所述错误消息中发送给A1;
所述A1收到错误消息后,根据该错误消息中所携带的未被选中的可选的必选节点的信息,重新生成新的路径建立消息,其中,该路径建立消息中的节点信息指示通过所述未被选中的可选的必选节点来进行所述路径建立;在本发明实施例中,A1根据所携带的B2的信息,重新生成新的路径建立消息,以指示在路径建立过程中,通过B2节点建立从A1到C1的TE路径;
所述A1将新生成的路径建立消息,按照其中的节点信息的指示在网络中逐跳发送,直至完成路径建立。
方式(二):
A4自动发现B1失效,然后由A4向A1发送错误消息;其中,在所述错误消息中携带有A4所保存的未被选中的可选的必选节点的信息,也就是B2的信息;
A1收到所述错误消息后,重新生成新的路径建立消息,并按照该路径建立消息中的指示在网络中逐跳发送该消息,直至完成路径的建立;该重新生成新的路径建立消息以及发送该消息的过程,与上述方式(一)所描述的过程相同,在此不再赘述。
在上述方式(一)和方式(二)中,均是由边界路由器的上一跳路由器将错误消息发送至入口路由器,并由入口路由器重新生成路径建立消息;在本发明其他实施例中,也可以直接由边界路由器的上一跳路由器根据其保存的未被选中的可选的必选节点信息,重新生成新的路径建立消息,并将该消息逐跳发送,并不影响本发明的实现。例如,在本发明实施例中,当错误消息由A4来处理时,A4生成新的路径建立消息,指示通过B2节点建立到C1的TE路径,这时A4发送给B2的路径建立消息中的ERO的内容为:{B2、B3、C1}。
在以上实施例中,均是以路径建立消息中只包括一组可选的必选节点信息为例进行说明,在本发明其他实施例中,在路径建立消息中也可以携带至少两组可选的必选节点信息。例如,参见图2所示,对于区域1和区域0的边界来说,具有两个可选的必选节点B1和B2,同样,对于区域0和区域2的边界来说,同样具有两个可选的必选节点B3和B4,此时,路径建立消息中可以携带两组可选的必选节点信息,其具体实现可以为:
如果采用ARO来携带可选的必选节点信息,则路径建立消息的ERO为{A1、A4、C1},ARO为{B1|B2、B3|B4};
如果采用EARS来携带可选的必选节点信息,则路径建立消息中的ERO为{A4、B1|B2、B3|B4、C1};
对于路径建立消息中携带至少两组可选的必选节点信息的情况,其实现路径建立的方式与如上所述实施例所描述的方式相同。当然,一组可选的必选节点信息中所包含的节点信息的数量也并不局限于两个,在对应于一个边界具有两个以上的节点能够实现路径建立时,所述的一组可选的必选节点信息中也可以包括两个以上节点的节点信息,在此情况下,本发明实施例所提供的实现路径建立的方法与上述实施例中所描述的一致。
本发明实施例所提供的方法,除了可以应用于图2所示的跨路由区域的情况,还可以应用图4所示的跨自治系统的情况,其实现过程完全一致。
此外,本发明实施例中所述的可选的必选节点可以为路由器节点、区域、自治系统、链路或上述不同类型节点的组合,具体实现建立路径的过程并不受节点类型的影响。以图5所示的情况为例,可以将路由区域AS0以及路由区域AS3分别整体作为可选的必选节点,此时,路径建立消息中的ERO可表示为:{A1、AS0|AS3、C3};或者,也可以将分别连接A3和AS3的两条链路LINK1和LINK2作为可选的必选节点,此时,路径建立消息中的ERO可表示为:{A1、LINK1|LINK2、C3}。
在本发明各个实施例中,可以采用RSVP-TE协议中的Path消息作为路径建立消息,且可以采用RSVP-TE信令实现建立TE路径的过程,其具体实现方式与如上所述实施例中描述的方式一致。
(二)对应于如上所提供的方法,本发明实施例一还提供了实现路径建立的系统,下面对该系统进行详细说明。
所述实现路径建立的系统包括至少三个节点,在所述节点中:
待建立路径的入口节点用于:
将所述路径所需经过的特定位置处的至少两个节点确定为该位置的可选的必选节点,在将所确定的所述可选的必选节点信息添加到路径建立消息中后,将该路径建立消息发送出去;
收到路径建立消息的节点用于:
在根据路径建立消息中携带的节点信息,判断得到该路径建立消息所需发送的下一跳位置有对应的可选的必选节点时,选择其中的一个节点作为路径建立消息中下一跳发送的目的节点来发送路径建立消息,以及将未被选中的所述可选的必选节点的信息加以保存;
在根据路径建立消息中携带的节点信息,判断得到该路径建立消息所需发送的下一跳位置没有对应的可选的必选节点时,根据所述路径建立消息中所携带的节点信息,继续逐跳发送该路径建立消息;
待建立路径的出口节点用于:
在收到入口节点发送来的所述路径建立消息后,完成路径建立。
为了能够实现在特定位置的选定节点失效时也能够完成路径建立,在本发明所提供的系统中,所述收到路径建立消息的节点进一步包括:
错误上报单元,用于在确认下一跳节点发生路径建立错误时,向所述入口节点上报错误信息,其中,在所述错误信息中携带有该节点所保存的下一跳位置未被选中的可选的必选节点的信息;
所述入口节点进一步包括:
路径建立消息重构单元,用于在收到所述错误信息后,根据该信息中所携带的未被选中的可选的必选节点的信息,从该未被选中的可选的必选节点中选择一个节点作为所述下一跳节点处完成路径建立的节点,将选定的必选节点的信息添加到重新构建的路径建立消息中,并将该消息发送出去。
同样,为了能够实现在特定位置的选定节点失效时也能够完成路径建立,在本发明所提供的系统中,还可以采用如下方式实现:
所述收到路径建立消息的节点进一步包括:
错误确认单元,用于确认下一跳节点是否发生路径建立错误,并在确认得到发生错误时,通知路径建立消息重构单元进行处理;
路径建立消息重构单元,用于在收到错误确认单元发送的通知后,根据该收到路径建立消息的节点所保存的未被选中的可选的必选节点的信息,从该未被选中的可选的必选节点中选择一个节点作为所述下一跳节点处完成路径建立的节点,将选定的必选节点的信息添加到重新构建的路径建立消息中,并将该消息发送出去。
其中,在上述系统中,所述节点可以为路由器、路由区域、自治系统或不同类型节点的组合。所述可选的必选节点除了可以为路由器、路由区域、自治系统或不同类型节点的组合之外,还可以为链路,并不影响本发明的实现。
当然,同上述方法实施例中描述相一致的是:所述可选的必选节点可以为三个或三个以上,在该系统中,也可以存在多个所述特定位置分别具有各自的可选的必选节点。
所述特定位置可以为不同区域的边界,如不同路由区域的边界、不同自治系统的边界,也可以为一个区域内的某个位置,如区域中容易发生故障的位置或重要等级较高的位置。
(三)本发明实施例一还提供了实现路径建立的装置,下面对该装置进行详细说明。
1、对应于如上系统中所述的待建立路径的入口节点,所述的实现路径建立的装置包括:
确定单元,用于将所述路径所需经过的特定位置处的至少两个节点确定为该位置的可选的必选节点;
路径建立消息构建单元,用于构建路径建立消息,使得该消息中携带所确定的所述可选的必选节点信息;
发送单元,用于发送路径建立构建单元所构建的路径建立消息。
其中,所述路径建立消息构建单元可以采用如下两种方式实现:
在第一种方式中,所述路径建立消息构建单元包括:
对象创建单元,用于创建一个可选的必选节点对象,在该可选的必选节点对象中保存所述可选的必选节点的信息;
设置单元,用于设置显示路径对象,使得该显示路径对象中保存除所述可选的必选节点信息之外其余用于路径建立的节点的信息;
合并单元,用于将所述可选的必选节点对象和设置后的显示路径对象合并,以该合并结果作为建立路径所需的节点信息携带在所述路径建立消息中。
在第二种方式中,所述路径建立消息构建单元包括:
子对象创建单元,用于创建一个可选的必选节点子对象,在该可选的必选节点子对象中保存所述可选的必选节点的信息;
替换/添加单元,用于将该可选的必选节点子对象中的可选的必选节点信息,替换所述路径建立消息所携带的显示路径对象中对应的必选节点信息;或者将该可选的必选节点子对象添加到所述显示路径对象中。
上述两种方式,分别对应于方法实施例描述时所述的方式一和方式二。
为了实现在节点失效时也能够完成路径建立,在本发明优选实施例中,该实现路径建立的装置还包括:
路径建立消息重构单元,用于在收到上报的错误信息后,根据该信息中所携带的未被选中的可选的必选节点的信息,从该未被选中的可选的必选节点中选择一个节点作为特定位置处完成路径建立的节点,将选定的必选节点的信息添加到重新构建的路径建立消息中,并将该消息发送出去。
以上实施例所提供的装置可以为路由器,也可以为其他类型的装置,并不影响本发明的实现。
2、对应于如上系统中所述的收到路径建立消息的节点,本发明实施例一中还提供了实现路径建立的装置,该装置包括:
判断单元,用于根据路径建立消息中携带的节点信息,判断该路径建立消息所需发送的下一跳位置是否有对应的可选的必选节点,并将判断结果发送给路径建立消息发送单元;
路径建立消息发送单元,用于在判断单元所发送来的判断结果为是时,选择下一跳位置对应的可选的必选节点中的一个节点作为路径建立消息中下一跳发送的目的节点来发送路径建立消息,并且,将未被选中的所述可选的必选节点的信息发送给保存单元;以及,在判断单元发送的判断结果为否时,根据所述路径建立消息中所携带的节点信息,继续逐跳发送该路径建立消息;
保存单元,用于保存所述未被选中的所述可选的必选节点的信息。
为了实现在节点失效时也能够完成路径建立,在本发明优选实施例中,该实现路径建立的装置还包括:
错误确认单元,用于确认下一跳节点是否发生路径建立错误,并在确认得到发生错误时,通知路径建立消息重构单元进行处理;
路径建立消息重构单元,用于在收到错误确认单元发送的通知后,根据所述保存单元所保存的未被选中的可选的必选节点的信息,从该未被选中的可选的必选节点中选择一个节点作为所述下一跳节点处完成路径建立的节点,将选定的必选节点的信息添加到重新构建的路径建立消息中,并将该消息发送出去。
该实施例所提供的装置可以为路由器,也可以为其他类型的装置,并不影响本发明的实现。
二、实施例二:
在本发明实施例二中,当计算路径时,将该路径所需经过的特定位置处能够实现路径建立的至少两个节点确定为该位置的可选的必选节点,并将所确定的可选的必选节点信息随路径计算请求发送给路径计算单元,所述路径计算单元根据路径计算请求中携带的包括可选的必选节点信息在内的约束条件,进行路径计算,并将计算结果返回给路径计算客户端。
下面结合附图,对本发明实施例二进行详细描述。
(一)首先,对本发明实施例二所提供的实现路径计算的方法加以详细说明:
参见图6,本发明实施例二所提供的实现路径计算的方法包括以下步骤:
步骤601:对于待计算路径所需经过的特定位置,将能够实现路径建立的至少两个节点确定作为所述特定位置的可选的必选节点,并将所确定的所述特定位置的可选的必选节点信息作为路径计算的约束条件之一添加到路径计算请求中;
步骤602:发送所述路径计算请求至路径计算单元(PCE),接收到该请求的PCE计算其管辖区域内满足约束条件的路径片段,且在判断得到其管辖区域内包括所述特定位置时,根据所述特定位置的可选的必选节点信息,将与所述可选的必选节点相对应的路径片段计算成为所述满足约束条件的路径片段;
步骤603:综合PCE确定的各个路径片段,计算出完整的路径。
在实际应用中,会出现待计算路径的所述特定位置由于无法满足约束条件而无法实现路径的建立,考虑到这种情况,在本发明优选实施例中,该方法还可进一步包括:
步骤604:在判断得到所述特定位置的各个可选的必选节点均由于无法满足约束条件而无法完成完整路径的计算时,向待计算路径的入口节点上报错误消息,其中,该错误消息中携带有所述特定位置的可选的必选节点信息;
步骤605:所述待计算路径的入口节点收到所述错误消息后,调整所述特定位置的路径计算约束条件,并返回步骤602。
在本发明实施例中,考虑到路径计算时的实际情况,可以将不同区域的边界位置,如不同路由区域(AB)之间的边界位置或者不同自治系统(AS)之间的边界位置,确定为如上所述的特定位置,也可以将域内的位置,如路由区域内或自治系统内的任意位置确定为如上所述的特定位置;此外,在一次路径计算的过程中,可以根据实际需要确定多个特定位置,且多个特定位置可以为不同的位置类型。为了描述方便,在以下叙述中均以边界位置作为特定位置为例进行说明,但本发明实施例的保护范围并不局限于此。
下面,结合更具体实施例,对本发明实施例二所提供的方法加以详细描述。
参见图7,图7中的区域1、区域0和区域2分别表示三个不同区域,B1、B2、B3、B4、B5分别表示对应的区域边界路由器(ABR),A1表示入口路由器,C1表示出口路由器,PCE1、PCE2、PCE3分别负责区域1、区域0和区域2的路径片段计算;参考图7,为了计算一条从A1到C1的跨路由区域的路径,需要图8所示的以下具体步骤:
步骤801:入口路由器A1作为PCC首先根据配置或其他方式获知:如果计算从A1到C1的路径,对于该路径所经过的区域1和区域0的边界来说,可以通过B1和B2这两个ABR中的任意一个实现由区域1到达区域0;同时,对于该路径所经过的区域0和区域2的边界来说,可以通过B4和B5这两个ABR中的任意一个实现由区域0到达区域2;由此,对于区域1和区域0的边界,将B1和B2确定为该边界的可选的必选节点,对于区域0和区域2的边界,将B4和B5确定为该边界的可选的必选节点;
步骤802:所述入口路由器A1设置路径计算请求(PCReq)消息,以使得该消息中携带所述可选的必选节点的信息;
其中,本发明实施例中,可以采用如下两种方式,使得PCReq消息中携带所述可选的必选节点信息:
方式一:
所述入口路由器A1创建一个可选的必选节点对象(ARO),在该ARO中保存所述可选的必选节点信息,以及,设置包含路径对象(IRO),使得该IRO中包含除所述可选的必选节点信息之外的其余用于路径计算的节点信息;然后,将所述ARO和设置后的IRO合并,并以该合并结果作为路径计算的约束条件之一携带在所述PCReq消息中;对应于本发明实施例,如果采用该方式一,则PCReq消息中携带的路径约束条件的格式为:
设置后的IRO:{A1、C1}、以及一个ARO:{B1|B2,B4|B5};
其中,ARO与IRO是并列的关系,B1|B2以及B4|B5分别表示两个必选的可选节点;
在上述方式一中,采用ARO表示可选的必选节点信息,该方式适用于当没有指定一条TE路径需要经过的哪些节点或者指定的路径节点比较抽象的情况,例如就知道要计算一条从A1到C1的TE路径,或者说要计算一条经过AS2从A1到C1的TE路径,此时,利用该方式一较为合适。
方式二:
所述入口路由器A1创建一个可选的必选节点子对象(EARS),在该EARS中保存所述可选的必选节点信息,以及,将该EARS中的可选的必选节点信息替换IRO中对应的必选节点信息,并将进行替换后的IRO作为路径计算的约束条件之一携带在PCReq消息中;或者,也可以将所述EARS添加到所述IRO中,然后将进行所述添加操作后的IRO作为路径计算的约束条件之一携带在PCReq消息中,对应于本发明实施例,如果采用该方式二,则PCReq消息中携带路径计算约束条件的格式为:
设置后的IRO:{A1、B1|B2、B4|B5、C1},其中,所述B1|B2和B4|B5为EARS所保存的可选的必选节点信息;
在上述方式二中,采用EARS表示可选的必选节点信息,该方式适用于对于待计算的TE路径已经指定了较为详细的路径的情况,此时,采用EARS来进一步限制此路径,即限制一个IRO中两个节点间需要经过由EARS指定的节点,该EARS包含在IRO中;例如一条TE路径的IRO为:A1->A2->B1…C3->C1,可以看到除了B1和C3之间需要经过的节点都已经明确,此时,就可以在B1和C3之间插入一个EARS,如B3|B4,用来限制这条TE路径。
步骤803:所述入口路由器A1将所述PCReq消息发送给其对应的PCE1;
步骤804:当前接收到所述PCReq消息的PCE根据该PCReq消息,完成对其管辖的区域的路径片段计算,且在计算过程中,当判断得到该区域中包括所述特定位置时,根据PCReq消息中携带的该特定位置的可选的必选节点信息完成路径片段的计算;
在本发明实施例中,PCE1首先收到PCReq消息,由于该PCE1所管辖的区域1中包括了如上所述的区域1和区域0的边界这一特定位置,因此,该PCE1根据PCReq中携带的B1|B2这一可选的必选节点的信息,计算出该区域1的路径片段为:A1-B1以及A1-B2;
同理,当PCE2、PCE3收到PCReq消息进行路径片段计算时,也会根据该PCReq消息中携带的可选的必选节点信息,分别计算区域0的路径片段为:B1-B4、B1-B5、B2-B4、B2-B5,区域2的路径片段为B4-C1、B5-C1。
步骤805:当前接收到所述PCReq消息的PCE根据其管辖区域以及已经完成了路径片段计算的区域,判断当前是否能够完成整条待计算路径的计算,如果是,则直接执行步骤806,否则,向管辖还未完成路径片段计算的区域的PCE,发送该PCReq消息,然后返回步骤804,直至对于该待计算路径所经过的各个区域均完成路径片段计算;
在本发明实施例中,由于PCE1仅管辖区域1,而待计算路径还需要经过区域0和区域2,因此,该PCE1判断出其无法独立完成整条路径的计算,将PCReq消息首先发送至PCE2,PCE2在完成对其关系区域0的路径片段计算后,基于同样的原因,也会将该PCReq消息再发送给PCE3,PCE3再完成对其管辖区域2的路径片段计算。从而,通过PCE1、PCE2、PCE3来共同完成路径的计算。
步骤806:综合待计算路径所经过的各个区域的路径片段计算结果,计算得出一条完整的路径。
其中,在本发明实施例中,PCE3将其计算的路径片段返回给PCE2,PCE2计算其管辖的路径片段并综合PCE3返回的路径片段,然后将综合后的路径片段返回给PCE1,PCE1也进行如PCE2一样的操作,然后将计算结果返回给发起路径计算的入口路由器A1,或者,也可以是:PCE3、PCE2分别将其各自的路径片段计算结果返回给PCE1,PCE1综合区域0、区域1和区域2的路径片段计算结果,计算得到一条完整的路径,并将计算得到的该路径的信息返回给发起路径计算的入口路由器A1;该入口路由器A1可根据收到的路径信息进一步完成路径的建立。
在上述实施例中,PCE可以参照互联网工程任务工作组提出的一种TE路径计算方法BRPC算法,来实现对其关系区域的路径片段计算,也可以采用其他方式完成路径片段的计算,并不影响本发明的实现。
此外,考虑到实际应用中,某个特定位置的各个可选的必选节点可能均无法满足路径计算时的约束条件从,本发明实施例所述的上述方法还需进一步向发起路径计算的路由器A1上报错误消息,并将该特定位置的可选的必选节点信息上报给该A1,以便A1根据该信息重新设定约束条件,并进行路径计算。假设在本发明实施例中,PCE3确定从B4或者B5均不能计算得到满足约束条件的路径,其后续的具体实现为:
PCE3向PCE2发送路径计算响应(PCRep)消息,该消息中携带无路径对象(NO-PATH Object)指示以及ARO{B4|B5},从而告知PCE2因为ARO{B4|B5}无法满足约束条件而不能完成建立一条到达目的路由器C1的路径;
PCE2将收到的该PCRep消息经由PCE1发送给PCC,即入口路由器A1;
入口路由器A1收到该PCRep消息后,根据其携带的(NO-PATH Object)指示以及ARO{B4|B5},重新调整B4|B5位置处的路径计算约束条件,并根据调整后的路径计算约束条件,重新发起路径计算请求。
当然,除了可以通过在PCReq消息中的ARO来携带无法满足路径计算约束条件的可选的必选节点信息之外,也可以采用EARS来携带该信息,并不影响本发明的实现。
在上述描述中,路径计算请求消息中携带两组可选的必选节点信息的情况,在本发明其他实施例中,也可携带一组或两组以上的该信息,其实现路径计算的方式与如上所述实施例所描述的方式相同。当然,一组可选的必选节点信息中所包含的节点信息的数量也并不局限于两个,在对应于一个边界具有两个以上的节点能够实现路径计算时,所述的一组可选的必选节点信息中也可以包括两个以上节点的节点信息,在此情况下,本发明实施例所提供的实现路径计算的方法与上述实施例中所描述的一致。
本发明实施例所提供的方法,除了可以应用于图7所示的跨路由区域的情况,还可以应用图9所示的跨自治系统的情况,其实现过程完全一致。
此外,本发明实施例中所述的可选的必选节点可以为路由器节点、区域、自治系统、链路或上述不同类型节点的组合,具体实现路径计算的过程并不受节点类型的影响。以图5所示的情况为例,可以将AS2以及AS4分别整体作为可选的必选节点,此时,路径计算请求消息中的IRO可表示为:{A1、AS2|AS4、C3};或者,也可以将分别连接A3和AS4的两条链路LINK1和LINK2作为可选的必选节点,此时,路径计算请求消息中的IRO可表示为:{A1、LINK1|LINK2、C3}。
在本发明各个实施例中,可以采用PCEP协议中的PCReq消息作为路径计算请求消息,所述PCE之间以及PCC和PCE之间的通信可以基于该PCEP协议加以实现。
(二)对应于如上所提供的方法,本发明实施例二还提供了实现路径计算的系统,下面对该系统进行详细说明。
所述实现路径计算的系统包括路径计算单元(PCE)以及至少三个节点,其中,在所述节点中,待计算路径的入口节点用于:
对于待计算路径所需经过的特定位置,将能够实现路径建立的至少两个节点确定作为所述特定位置的可选的必选节点,并将所确定的所述特定位置的可选的必选节点信息作为路径计算的约束条件之一添加到路径计算请求中并发送给相应的PCE;
接收到所述路径计算请求的PCE用于:
计算其管辖区域内满足约束条件的路径片段,且在判断得到其管辖区域内包括所述特定位置时,根据所述路径计算请求中所携带特定位置的可选的必选节点信息,将与所述可选的必选节点相对应的路径片段计算成为所述满足约束条件的路径片段;
待计算路径的入口节点对应的PCE还用于:
综合各个所述接收到所述路径计算请求的PCE计算得到的路径片段,计算得到完整的路径。
在实际应用中,考虑到待计算路径的所述特定位置由于无法满足约束条件而无法实现路径的建立的情况,在所述系统中,所述接收到所述路径计算请求的PCE还可进一步包括:
错误上报单元,用于在判断得到该PCE所管辖区域中的特定位置的各个可选的必选节点均由于无法满足约束条件而无法完成完整路径的计算时,向待计算路径的入口节点上报错误消息,其中,该错误消息中携带有所述特定位置的可选的必选节点信息;
所述待计算路径的入口节点进一步包括:
约束条件调整单元,用于根据所述错误消息中携带的所述特定位置的可选的必选节点信息,调整对该特定位置的路径计算约束条件,并重新发起路径计算请求。
其中,在上述系统中,所述节点可以为路由器、路由区域、自治系统或不同类型节点的组合。所述可选的必选节点除了可以为路由器、路由区域、自治系统或不同类型节点的组合之外,还可以为链路,并不影响本发明的实现。
当然,同上述方法实施例中描述相一致的是:所述可选的必选节点可以为三个或三个以上,在该系统中,也可以存在多个所述特定位置分别具有各自的可选的必选节点。
所述特定位置可以为不同区域的边界,如不同路由区域的边界、不同自治系统的边界,也可以为一个区域内的某个位置,如区域中容易发生故障的位置或重要等级较高的位置。
(三)本发明实施例二还提供了实现路径计算的装置,下面对该装置进行详细说明。
1、对应于如上系统中所述的待计算路径的入口节点,所述的实现路径计算的装置包括:
确定单元,用于对于待计算路径所需经过的特定位置,将能够实现路径建立的至少两个节点确定作为所述特定位置的可选的必选节点;
路径计算请求消息构建单元,用于构建路径计算请求消息,并将所确定的所述特定位置的可选的必选节点信息作为路径计算的约束条件之一添加到路径计算请求消息中;
发送单元,用于将路径计算请求消息构建单元所构建的路径计算请求消息发送给相应的路径计算单元。
其中,所述路径计算请求消息构建单元可以采用如下两种方式实现:
在第一种方式中,所述路径计算请求消息构建单元包括:
对象创建单元,用于创建一个可选的必选节点对象,在该对象中保存所述可选的必选节点的信息;
设置单元,用于设置包含路径对象,使得该包含路径对象中保存除所述可选的必选节点信息之外的其余用于路径计算的节点信息;
合并单元,用于将所述可选的必选节点对象和设置后的包含路径对象合并,以该合并结果作为路径计算的约束条件之一携带在所述路径计算请求消息中。
在第二种方式中,所述路径计算请求消息构建单元包括:
子对象创建单元,用于创建一个可选的必选节点子对象,在该子对象中保存所述可选的必选节点的信息;
替换/添加单元,用于将该可选的必选节点子对象中的可选的必选节点信息,替换所述路径计算请求消息所携带的包含路径对象中对应的必选节点信息,或将该可选的必选节点子对象添加到所述包含路径对象中。
上述两种方式,分别对应于实施例二的方法实施例所描述的方式一和方式二。
为了在路径计算失败的情况下,能够通过重新调整约束条件来实现路径计算,在本发明优选实施例中,该实现路径计算的装置还包括:
约束条件调整单元,用于根据接收到的错误消息中携带的特定位置的可选的必选节点信息,调整该特定位置的路径计算约束条件,并重新发起路径计算请求。
以上实施例所提供的装置可以为路由器,也可以为其他类型的装置,并不影响本发明的实现。
2、对应于如上系统中所述的待计算路径的PCE,所述的实现路径计算的装置包括:
计算单元,用于根据路径计算请求消息中携带的约束条件,计算该装置管辖区域中满足约束条件的路径片段;
特定位置路径计算单元:用于在判断得到该装置管辖的区域内包括所述特定位置时,根据所述路径计算请求中所携带特定位置的可选的必选节点信息,将与所述可选的必选节点相对应的路径片段计算成为所述满足约束条件的路径片段。
为了在路径计算失败的情况下,能够将路径计算失败的错误原因上报给路径计算的入口节点,以便在重新调整约束条件后重新进行路径计算,在本发明优选实施例中,该实现路径计算的装置还包括:
错误上报单元,用于在判断得到该装置所管辖区域中的特定位置的各个可选的必选节点均由于无法满足约束条件而无法完成完整路径的计算时,向待计算路径的入口节点上报错误消息,其中,该错误消息中携带有所述特定位置的可选的必选节点信息。
该实施例所提供的装置可以为路由器,也可以为其他类型的装置,并不影响本发明的实现。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

Claims (39)

1.一种实现路径建立的方法,其特征在于,该方法包括:
确定步骤:对于待建立路径所需经过的特定位置,将能够实现该路径建立的至少两个节点确定作为所述特定位置的可选的必选节点,并将所确定的所述可选的必选节点信息添加到路径建立消息中;
发送步骤:逐跳发送所述路径建立消息,收到该路径建立消息的节点判断该路径建立消息所需发送的下一跳位置是否为所述特定位置,如果不是,返回本步骤,直至路径建立完毕,如果是,则执行选择步骤;
选择步骤:所述收到该路径建立消息的节点,通过分析所述路径建立消息得到所述下一跳位置的可选的必选节点信息,选择其中的一个节点作为路径建立消息下一跳发送的目的节点;以及,将未被选中的所述可选的必选节点的信息加以保存,然后返回所述逐跳发送的步骤,直至路径建立完毕。
2.根据权利要求1所述的方法,其特征在于,所述将所确定的可选的必选节点信息添加到路径建立消息中的具体实现为:
创建一个可选的必选节点对象,在该对象中保存所述可选的必选节点的信息;
设置显示路径对象,使得该显示路径对象中保存除所述可选的必选节点信息之外其余用于路径建立的节点的信息,和
合并所述可选的必选节点对象以及设置后的显示路径对象,将该合并结果作为建立路径所需的节点信息携带在所述路径建立消息中。
3.根据权利要求1所述的方法,其特征在于,所述将所确定的可选的必选节点信息添加到路径建立消息中的具体实现为:
创建一个可选的必选节点子对象,在该对象中保存所述可选的必选节点信息;
将所述可选的必选节点子对象中的可选的必选节点信息替换显示路径对象中对应的必选节点信息,并将进行替换后的显示路径对象作为所述建立路径所需的节点信息携带在所述路径建立消息中;或者,将所述可选的必选节点子对象添加到所述显示路径对象中。
4.根据权利要求1所述的方法,其特征在于,该方法进一步包括:
在判断得到在所述选择步骤中所选择的节点发生失效问题时,将路径建立错误消息上报至路径建立已经经过的节点;
所述路径建立已经经过的节点获得所述的下一跳位置的未被选中的必选节点的信息,从中选择一个节点作为所述路径建立消息下一跳发送的目的节点,并将该选定的必选节点的信息添加到重新构建的路径建立消息中,然后返回所述发送步骤。
5.根据权利要求4所述的方法,其特征在于,所述判断得到节点发生失效的具体实现为:
由发生失效问题的节点将所述错误消息逐跳沿着路径建立消息的反方向发送给所述路径建立已经经过的节点;或者,
由所述路径建立已经经过的节点自动发现节点失效。
6.根据权利要求4所述的方法,其特征在于,所述路径建立已经经过的节点为路径建立的入口节点,或者,发生失效的节点的上一跳的节点。
7.根据权利要求1至6任意一项所述的方法,其特征在于,所述特定位置为:
不同区域间的边界位置或域内的任意位置。
8.根据权利要求1至6任意一项所述的方法,其特征在于,所述特定位置为至少两个,所述将所确定的所述可选的必选节点信息添加到路径建立消息中的具体实现为:
将至少两组的所述可选的必选节点信息添加到路径建立消息中。
9.根据权利要求1至6任意一项所述的方法,其特征在于,所述的可选的必选节点为:
路由器节点、区域、自治系统和/或链路。
10.根据权利要求1至6任意一项所述的方法,其特征在于,所述路径建立消息为:基于流量工程的资源预留协议RSVP-TE中的路径Path消息。
11.一种实现路径建立的系统,其特征在于,该系统包括至少三个节点,在所述节点中:
待建立路径的入口节点包括:
确定单元,用于将所述路径所需经过的特定位置处的至少两个节点确定为该位置的可选的必选节点;
路径建立消息构建单元,用于构建路径建立消息,使得该消息中携带所确定的所述可选的必选节点信息;
发送单元,用于发送路径建立消息构建单元所构建的路径建立消息;
收到路径建立消息的节点包括:
判断单元,用于根据路径建立消息中携带的节点信息,判断该路径建立消息所需发送的下一跳位置是否有对应的可选的必选节点,并将判断结果发送给路径建立消息发送单元;
路径建立消息发送单元,用于在判断单元所发送来的判断结果为是时,选择下一跳位置对应的可选的必选节点中的一个节点作为路径建立消息中下一跳发送的目的节点来发送路径建立消息,并且,将未被选中的所述可选的必选节点的信息发送给保存单元;以及,在判断单元发送的判断结果为否时,根据所述路径建立消息中所携带的节点信息,继续逐跳发送该路径建立消息;
保存单元,用于保存所述未被选中的所述可选的必选节点的信息;
待建立路径的出口节点用于:
在收到入口节点发送来的所述路径建立消息后,完成路径建立。
12.根据权利要求11所述的系统,其特征在于,所述收到路径建立消息的节点进一步包括:
错误上报单元,用于在确认下一跳节点发生路径建立错误时,向所述入口节点上报错误信息,其中,在所述错误信息中携带有该节点所保存的下一跳位置未被选中的可选的必选节点的信息;
所述入口节点进一步包括:
路径建立消息重构单元,用于在收到所述错误信息后,根据该信息中所携带的未被选中的可选的必选节点的信息,从该未被选中的可选的必选节点中选择一个节点作为所述下一跳节点处完成路径建立的节点,将选定的必选节点的信息添加到重新构建的路径建立消息中,并将该消息发送出去。
13.根据权利要求11所述的系统,其特征在于,所述收到路径建立消息的节点进一步包括:
错误确认单元,用于确认下一跳节点是否发生路径建立错误,并在确认得到发生错误时,通知路径建立消息重构单元进行处理;
路径建立消息重构单元,用于在收到错误确认单元发送的通知后,根据该收到路径建立消息的节点所保存的未被选中的可选的必选节点的信息,从该未被选中的可选的必选节点中选择一个节点作为所述下一跳节点处完成路径建立的节点,将选定的必选节点的信息添加到重新构建的路径建立消息中,并将该消息发送出去。
14.根据权利要求11至13任意一项所述的系统,其特征在于,所述节点为路由器、路由区域和/或自治系统,所述可选的必选节点为路由器、路由区域、自治系统和/或链路。
15.根据权利要求11至13任意一项所述的系统,其特征在于,所述特定位置为:
不同区域间的边界位置或域内的任意位置。
16.一种实现路径建立的装置,其特征在于,该装置包括:
确定单元,用于将所述路径所需经过的特定位置处的至少两个节点确定为该位置的可选的必选节点;
路径建立消息构建单元,用于构建路径建立消息,使得该消息中携带所确定的所述可选的必选节点信息;
发送单元,用于发送路径建立消息构建单元所构建的路径建立消息。
17.根据权利要求16所述的装置,其特征在于,所述路径建立消息构建单元包括:
对象创建单元,用于创建一个可选的必选节点对象,在该可选的必选节点对象中保存所述可选的必选节点的信息;
设置单元,用于设置显示路径对象,使得该显示路径对象中保存除所述可选的必选节点信息之外其余用于路径建立的节点的信息;
合并单元,用于将所述可选的必选节点对象和设置后的显示路径对象合并,以该合并结果作为建立路径所需的节点信息携带在所述路径建立消息中。
18.根据权利要求16所述的装置,其特征在于,所述路径建立消息构建单元包括:
子对象创建单元,用于创建一个可选的必选节点子对象,在该可选的必选节点子对象中保存所述可选的必选节点的信息;
替换/添加单元,用于将该可选的必选节点子对象中的可选的必选节点信息,替换所述路径建立消息所携带的显示路径对象中对应的必选节点信息;或者将该可选的必选节点子对象添加到所述显示路径对象中。
19.根据权利要求16至18任意一项所述的装置,其特征在于,该装置还包括:
路径建立消息重构单元,用于在收到上报的错误信息后,根据该信息中所携带的未被选中的可选的必选节点的信息,从该未被选中的可选的必选节点中选择一个节点作为特定位置处完成路径建立的节点,将选定的必选节点的信息添加到重新构建的路径建立消息中,并将该消息发送出去。
20.一种实现路径建立的装置,其特征在于,该装置包括:
判断单元,用于根据路径建立消息中携带的节点信息,判断该路径建立消息所需发送的下一跳位置是否有对应的可选的必选节点,并将判断结果发送给路径建立消息发送单元;
路径建立消息发送单元,用于在判断单元所发送来的判断结果为是时,选择下一跳位置对应的可选的必选节点中的一个节点作为路径建立消息中下一跳发送的目的节点来发送路径建立消息,并且,将未被选中的所述可选的必选节点的信息发送给保存单元;以及,在判断单元发送的判断结果为否时,继续逐跳发送该路径建立消息;
保存单元,用于保存所述未被选中的可选的必选节点的信息。
21.根据权利要求20所述的装置,其特征在于,该装置进一步包括:
错误确认单元,用于确认下一跳节点是否发生路径建立错误,并在确认得到发生错误时,通知路径建立消息重构单元进行处理;
路径建立消息重构单元,用于在收到错误确认单元发送的通知后,根据所述保存单元所保存的未被选中的可选的必选节点的信息,从该未被选中的可选的必选节点中选择一个节点作为所述下一跳节点,将该节点的信息添加到重新构建的路径建立消息中,并将该消息发送出去。
22.一种实现路径计算的方法,其特征在于,该方法包括:
对于待计算路径所需经过的特定位置,将能够实现路径建立的至少两个节点确定作为所述特定位置的可选的必选节点,并将所确定的所述特定位置的可选的必选节点信息作为路径计算的约束条件之一添加到路径计算请求消息中;
发送所述路径计算请求消息至路径计算单元PCE,接收到该请求消息的PCE计算其管辖区域内满足约束条件的路径片段,且在判断得到其管辖区域内包括所述特定位置时,根据所述特定位置的可选的必选节点信息,将与所述可选的必选节点相对应的路径片段计算成为所述满足约束条件的路径片段;
综合PCE确定的各个路径片段,计算出完整的路径。
23.根据权利要求22所述的方法,其特征在于,所述将所确定的所述特定位置的可选的必选节点信息作为路径计算的约束条件之一添加到路径计算请求消息中的具体实现为:
创建一个可选的必选节点对象ARO,在该ARO中保存所述可选的必选节点信息,以及,设置包含路径对象IRO,使得该IRO中包含除所述可选的必选节点信息之外的其余用于路径计算的节点信息;
将所述ARO和设置后的IRO合并,并以该合并结果作为路径计算的约束条件之一携带在所述路径计算请求消息中。
24.根据权利要求22所述的方法,其特征在于,所述将所确定的所述特定位置的可选的必选节点信息作为路径计算的约束条件之一添加到路径计算请求消息中的具体实现为:
创建一个可选的必选节点子对象EARS,在该EARS中保存所述可选的必选节点信息;
将该EARS中的可选的必选节点信息替换IRO中对应的必选节点信息,并将进行替换后的IRO作为路径计算的约束条件之一携带在路径计算请求消息中;或者,将所述EARS添加到所述IRO中,然后将进行所述添加操作后的IRO作为路径计算的约束条件之一携带在路径计算请求消息中。
25.根据权利要求22所述的方法,其特征在于,该方法进一步包括:
在判断得到所述特定位置的各个可选的必选节点均由于无法满足约束条件而无法完成完整路径的计算时,向待计算路径的入口节点上报错误消息,其中,该错误消息中携带有所述特定位置的可选的必选节点信息;
所述待计算路径的入口节点收到所述错误消息后,调整所述特定位置的路径计算约束条件,并返回所述发送所述路径计算请求消息的步骤。
26.根据权利要求22至25任意一项所述的方法,其特征在于,所述特定位置为:
不同区域间的边界位置或域内的任意位置。
27.根据权利要求22至25任意一项所述的方法,其特征在于,所述特定位置为至少两个。
28.根据权利要求22至25任意一项所述的方法,其特征在于,所述的可选的必选节点为:
路由器节点、区域、自治系统和/或链路。
29.根据权利要求22至25任意一项所述的方法,其特征在于,采用路径计算通信PCEP协议中的路径计算请求PCReq消息作为路径计算请求消息,所述PCE之间以及PCE和路径计算的入口节点之间的通信基于该PCEP协议加以实现。
30.一种实现路径计算的系统,其特征在于,该系统包括路径计算单元PCE以及至少三个节点,其中,在所述节点中,待计算路径的入口节点包括:
确定单元,用于对于待计算路径所需经过的特定位置,将能够实现路径建立的至少两个节点确定作为所述特定位置的可选的必选节点;
路径计算请求消息构建单元,用于构建路径计算请求消息,并将所确定的所述特定位置的可选的必选节点信息作为路径计算的约束条件之一添加到路径计算请求消息中;
发送单元,用于将路径计算请求消息构建单元所构建的路径计算请求消息发送给相应的PCE;
接收到所述路径计算请求的PCE包括:
计算单元,用于根据路径计算请求消息中携带的约束条件,计算该装置管辖区域中满足约束条件的路径片段;
特定位置路径计算单元,用于在判断得到该装置管辖的区域内包括所述特定位置时,根据所述路径计算请求中所携带特定位置的可选的必选节点信息,将与所述可选的必选节点相对应的路径片段计算成为所述满足约束条件的路径片段;
待计算路径的入口节点对应的PCE还用于:
综合各个所述接收到所述路径计算请求的PCE计算得到的路径片段,计算得到完整的路径。
31.根据权利要求30所述的系统,其特征在于,所述接收到所述路径计算请求的PCE进一步包括:
错误上报单元,用于在判断得到该PCE所管辖区域中的特定位置的各个可选的必选节点均由于无法满足约束条件而无法完成完整路径的计算时,向待计算路径的入口节点上报错误消息,其中,该错误消息中携带有所述特定位置的可选的必选节点信息;
所述待计算路径的入口节点进一步包括:
约束条件调整单元,用于根据所述错误消息中携带的所述特定位置的可选的必选节点信息,调整对该特定位置的路径计算约束条件,并重新发起路径计算请求。
32.根据权利要求30或31所述的系统,其特征在于,所述节点为路由器、路由区域和/或自治系统,所述可选的必选节点为路由器、路由区域、自治系统和/或链路。
33.根据权利要求30或31所述的系统,其特征在于,所述特定位置为:
不同区域间的边界位置或域内的任意位置。
34.一种实现路径计算的装置,其特征在于,该装置包括:
确定单元,用于对于待计算路径所需经过的特定位置,将能够实现路径建立的至少两个节点确定作为所述特定位置的可选的必选节点;
路径计算请求消息构建单元,用于构建路径计算请求消息,并将所确定的所述特定位置的可选的必选节点信息作为路径计算的约束条件之一添加到路径计算请求消息中;
发送单元,用于将路径计算请求消息构建单元所构建的路径计算请求消息发送给相应的路径计算单元。
35.根据权利要求34所述的装置,其特征在于,所述路径计算请求消息构建单元包括:
对象创建单元,用于创建一个可选的必选节点对象,在该对象中保存所述可选的必选节点的信息;
设置单元,用于设置包含路径对象,使得该包含路径对象中保存除所述可选的必选节点信息之外的其余用于路径计算的节点信息;
合并单元,用于将所述可选的必选节点对象和设置后的包含路径对象合并,以该合并结果作为路径计算的约束条件之一携带在所述路径计算请求消息中。
36.根据权利要求34所述的装置,其特征在于,所述路径计算请求消息构建单元包括:
子对象创建单元,用于创建一个可选的必选节点子对象,在该子对象中保存所述可选的必选节点的信息;
替换/添加单元,用于将该可选的必选节点子对象中的可选的必选节点信息,替换所述路径计算请求消息所携带的包含路径对象中对应的必选节点信息,或将该可选的必选节点子对象添加到所述包含路径对象中。
37.根据权利要求34至36任意一项所述的装置,其特征在于,该装置进一步包括:
约束条件调整单元,用于根据接收到的错误消息中携带的特定位置的可选的必选节点信息,调整该特定位置的路径计算约束条件,并重新发起路径计算请求。
38.一种实现路径计算的装置,其特征在于,该装置包括:
计算单元,用于根据路径计算请求消息中携带的约束条件,计算该装置管辖区域中满足约束条件的路径片段;
特定位置路径计算单元:用于在判断得到该装置管辖的区域内包括所述特定位置时,根据所述路径计算请求中所携带特定位置的可选的必选节点信息,将与所述可选的必选节点相对应的路径片段计算成为所述满足约束条件的路径片段。
39.根据权利要求38所述的装置,其特征在于,该装置进一步包括:
错误上报单元,用于在判断得到该装置所管辖区域中的特定位置的各个可选的必选节点均由于无法满足约束条件而无法完成完整路径的计算时,向待计算路径的入口节点上报错误消息,其中,该错误消息中携带有所述特定位置的可选的必选节点信息。
CN2007101303590A 2007-07-18 2007-07-18 实现路径建立、计算的方法、装置及系统 Active CN101350761B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2007101303590A CN101350761B (zh) 2007-07-18 2007-07-18 实现路径建立、计算的方法、装置及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2007101303590A CN101350761B (zh) 2007-07-18 2007-07-18 实现路径建立、计算的方法、装置及系统

Publications (2)

Publication Number Publication Date
CN101350761A CN101350761A (zh) 2009-01-21
CN101350761B true CN101350761B (zh) 2011-12-28

Family

ID=40269352

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2007101303590A Active CN101350761B (zh) 2007-07-18 2007-07-18 实现路径建立、计算的方法、装置及系统

Country Status (1)

Country Link
CN (1) CN101350761B (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012006785A1 (en) * 2010-07-15 2012-01-19 Huawei Technologies Co., Ltd. Method and apparatus for implementing p2mp path computation
CN102957677A (zh) * 2011-08-27 2013-03-06 华为技术有限公司 传递叶子节点信息的方法、装置和系统
CN103532849B (zh) * 2012-07-06 2018-10-23 中兴通讯股份有限公司 一种计算频谱时序通道的方法、路径计算单元与节点
US9001672B2 (en) * 2012-07-27 2015-04-07 Alcatel Lucent System, method and apparatus conforming path cost criteria across multiple ABRs
CN109889440B (zh) * 2019-02-20 2021-02-02 哈尔滨工程大学 一种基于最大生成树的纠删码失效节点重构路径选择方法
CN111787436A (zh) * 2020-07-02 2020-10-16 中国电子科技集团公司第三十四研究所 一种光网络通信路径自动搜索规划的方法
CN114915505B (zh) * 2022-07-18 2022-11-11 中国电子科技集团公司第三十研究所 一种基于多维度因子的传输链路选取方法及系统

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0859491A1 (en) * 1997-02-18 1998-08-19 Alcatel Method for rerouting in hierarchically structured networks
CN1705292A (zh) * 2004-05-31 2005-12-07 华为技术有限公司 一种实现跨域约束路由的选路方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0859491A1 (en) * 1997-02-18 1998-08-19 Alcatel Method for rerouting in hierarchically structured networks
CN1705292A (zh) * 2004-05-31 2005-12-07 华为技术有限公司 一种实现跨域约束路由的选路方法

Also Published As

Publication number Publication date
CN101350761A (zh) 2009-01-21

Similar Documents

Publication Publication Date Title
US9185040B2 (en) Flow label negotiation method, related device, and system
JP4960443B2 (ja) 複数ドメインルート計算の方法とシステム
US9716648B2 (en) System and method for computing point-to-point label switched path crossing multiple domains
US9363161B2 (en) Virtual connection route selection apparatus and techniques
US20180034730A1 (en) Using PCE as SDN controller
EP2549703B1 (en) Reoptimization triggering by path computation elements
CN100596102C (zh) 最小化路径抢占代价的标签交换路径建立方法
CN101483539B (zh) 一种获取路径的方法、路径计算单元和系统
CN101350761B (zh) 实现路径建立、计算的方法、装置及系统
CN102907051B (zh) 标记交换路径建立方法、数据转发方法及设备
JP2003032289A (ja) 通信コネクション迂回システム
US20080075008A1 (en) Transmission apparatus and path establishing method
WO2017193569A1 (zh) 一种路径建立方法及控制器
CN101610433A (zh) 一种支持策略解析的多约束条件路由选择方法
US7710883B2 (en) Path setting method and communication apparatus in communication network performing communications through a plurality of layers
WO2013188799A1 (en) Triggering controlled routing updates by a stateful path computation element
CN110099002B (zh) 一种路径计算方法及装置
US7042882B2 (en) Layer-structured path setup method and node apparatus for implementing same
CN100391154C (zh) 一种资源管理器中路由的选路方法
WO2016065635A1 (zh) 一种网络路径优化装置及方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant