一种路径建立方法及控制器的制造方法

文档序号:10473625阅读:288来源:国知局
一种路径建立方法及控制器的制造方法
【专利摘要】一种路径建立方法及控制器,包括:当检测到用于建立P2MP TE的路径建立请求时,使用路径建立请求包括的头节点信息和尾节点信息计算P2MP TE路径,P2MP TE路径包括至少一个分叉节点和至少两个尾节点;识别P2MP TE路径中的目标分叉节点,并获取目标分叉节点的标签,目标分叉节点是至少一个分叉节点中的分叉节点;当头节点信息对应的第三节点与目标分叉节点不是同一节点时,向第三节点发送第一信息,并向目标分叉节点发送第二信息,第一信息用于指示第三节点接收到报文时将路径信息和标签封装在报文中,路径信息用于指示第三节点将封装后的报文按照路径信息进行转发,第二信息用于指示目标分叉节点生成组播转发表项。本发明实施例,可以降低P2MP TE路径建立的复杂度。
【专利说明】
一种路径建立方法及控制器
技术领域
[0001 ]本发明涉及通信技术领域,尤其涉及一种路径建立方法及控制器。
【背景技术】
[0002]点到多点流量工程(Point-to-MultipointTraffic Engineering,P2MP TE)通过建立一条由一个头节点(即入节点)到多个尾节点(即出节点)的“树形”路径(即隧道)来实现组播业务,可见,路径的建立是P2MP TE实现组播业务必不可少的过程。目前,P2MP TE中的节点支持资源预留协议(Resource ReSerVat1n Protocol ,RSVP),因此,在建立路径时,头节点需要通过RSVP中的refresh消息收集P2MP TE网络中所有节点的信息,当存在节点的信息发生变化时,头节点需要将改变的信息通过refresh消息通知P2MP TE网络中所有节点,这种建立P2MP TE的方式使得路径建立过程复杂,并且不利于网络的管理和维护。

【发明内容】

[0003]本发明实施例公开了一种路径建立方法及控制器,用于降低P2MP TE路径建立的复杂度。
[0004]第一方面,公开一种路径建立方法,该方法应用于管理至少三个节点的控制器,这至少三个节点中每个节点具有多协议标签交换(Mult1-Protocol Label Switching,MPLS)转发功能和分段路由(Segment Routing,SR)功能,当检测到包括头节点信息和尾节点信息的用于建立P2MP TE的路径建立请求时,使用头节点信息和尾节点信息计算P2MP TE路径,即计算从一个头节点到多个尾节点的路径,之后识别P2MP TE路径中的目标分叉节点,并获取目标分叉节点的标签,当头节点信息对应的第三节点与目标分叉节点不是同一节点时,向第三节点发送第一信息,以及向目标分叉节点发送第二信息。其中,P2MP TE路径包括至少一个分叉节点和至少两个尾节点,目标分叉节点至少与第一节点和第二节点连接,第一节点是第一尾节点或者目标分叉节点与第一尾节点间的节点,第二节点是第二尾节点或者目标分叉节点与第二尾节点间的节点,第一尾节点和第二尾节点是这至少两个尾节点中的节点,目标分叉节点是这至少一个分叉节点中的任一分叉节点,第一信息可以包括目标分叉节点的标签和P2MP TE路径中由第三节点到目标分叉节点的路径信息,第一信息可以指示第三节点接收到第一报文时将路径信息和目标分叉节点的标签封装在第一报文中,该路径信息可以指示第三节点将封装后的第一报文按照该路径信息进行转发,第二信息可以指示目标分叉节点生成第一组播转发表项,第一组播转发表项可以包括P2MP TE路径中由目标分叉节点到尾节点信息对应的节点的路径的信息,第一组播转发表项可以在目标分叉节点接收到包括目标分叉节点的标签的第一报文时将第一报文按照第一组播转发表项进行转发。
[0005]在一个实施例中,当头节点信息对应的第三节点与目标分叉节点为同一节点时,控制器将向目标分叉节点发送第三信息和目标分叉节点的标签,目标分叉节点的标签可以指示目标分叉节点根据第三信息生成第二组播转发表项,第二组播转发表项可以包括P2MPTE路径中由目标分叉节点到尾节点信息对应的节点的路径的信息,第二组播转发表项用于当目标分叉节点接收到第二报文时将第二报文按照第二组播转发表项进行转发,可以使不论分叉节点在路径中的那儿都能建立P2MP TE路径。
[0006]在一个实施例中,为分叉节点预先分配好的标签可以存储在分叉节点中,计算得至IJP2MP TE路径之后,控制器将向目标分叉节点发送标签获取请求消息,之后将会接收到目标分叉节点发送的包含标签的响应消息,该标签获取请求消息可以指示目标分叉节点从存储的至少一个标签中为需要建立的P2MP TE路径中的目标分叉节点分配一个标签,可以避免不同的协议使用相同的标签导致转发冲突。
[0007]在一个实施例中,为分叉节点预先分配好的标签可以存储在控制器中,计算得到P2MP TE路径之后,控制器可以从存储的至少一个标签中为需要建立的P2MP TE路径中的目标分叉节点分配一个标签,可以提高控制器的控制能力。
[0008]在一个实施例中,可以使用约束最短路径优先(Constrained Shortest PathFi r s t,CSPF)算法计算头节点信息对应的第三节点与尾节点信息对应的节点间的最优P2MPTE路径,可以使P2MP TE路径满足业务转发需要。
[0009]在一个实施例中,路径建立请求还可以包括所需带宽,可以从头节点信息对应的第三节点与尾节点信息对应的节点间的路径中选取带宽容量大于或等于所需带宽的P2MPTE路径,可以建立满足带宽要求的P2MP TE路径。
[0010]在一个实施例中,路径建立请求还可以包括所需最大时延,可以从头节点信息对应的第三节点与尾节点信息对应的节点间的路径中选取时延不大于所需最大时延的路径,可以建立满足时延要求的P2MP TE路径。
[0011]在一个实施例中,路径建立请求还可以包括链路的亲和属性,可以从头节点信息对应的第三节点与尾节点信息对应的节点间的路径中选取亲和属性满足链路的亲和属性的路径,可以建立满足链路的亲和属性要求的P2MP TE路径。
[0012]第二方面,公开一种控制器,该控制器包括用于执行第一方面或第一方面的任一种可能实现方式所公开的路径建立方法的单元。
[0013]第三方面,公开一种控制器,所述控制器管理至少三个节点,所述控制器包括处理器、存储器和收发器,其中;
[0014]存储器中存储有一组程序代码,处理器用于调用存储器中存储的程序代码执行以下操作:
[0015]当检测到用于建立P2MPTE的路径建立请求时,使用所述路径建立请求包括的头节点信息和尾节点信息计算P2MP TE路径,所述P2MP TE路径包括至少一个分叉节点和至少两个尾节点;
[0016]识别所述P2MPTE路径中的目标分叉节点,并获取所述目标分叉节点的标签,所述目标分叉节点至少与第一节点和第二节点连接,所述第一节点是第一尾节点,或者所述第一节点为所述目标分叉节点与第一尾节点间的节点,所述第二节点是第二尾节点,或者所述第二节点为所述目标分叉节点与第二尾节点间的节点,所述第一尾节点和所述第二尾节点是所述至少两个尾节点中的节点,所述目标分叉节点是所述至少一个分叉节点中的任一分叉节点;
[0017]所述收发器,用于当所述头节点信息对应的第三节点与所述目标分叉节点不是同一节点时,向所述第三节点发送第一信息,以及向所述目标分叉节点发送第二信息,所述第一信息包括所述标签和所述P2MP TE路径中由所述第三节点到所述目标分叉节点的路径信息,所述第一信息用于指示所述第三节点接收到第一报文时,将所述路径信息和所述标签封装在所述第一报文中,所述路径信息用于指示所述第三节点将封装后的所述第一报文按照所述路径信息进行转发,所述第二信息用于指示所述目标分叉节点生成第一组播转发表项,所述第一组播转发表项包括所述P2MP TE路径中由所述目标分叉节点到所述尾节点信息对应的节点的路径的信息,所述第一组播转发表项用于所述目标分叉节点接收到包括所述标签的第一报文时,将所述第一报文按照所述第一组播转发表项进行转发。
[0018]第四方面公开一种可读存储介质,该可读存储介质存储了控制器用于执行第一方面或第一方面的任一种可能实现方式所公开的路径建立方法的程序代码。
[0019]本发明实施例中,在建立P2MP TE路径时,控制器只需要向P2MP TE路径中的头节点和分叉节点发送信息,而不需要向P2MP TE路径中的所有节点发送信息,可以降低P2MPTE路径建立过程的复杂度,便于网络的管理和维护。
【附图说明】
[0020]为了更清楚地说明本发明实施例中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
[0021]图1是本发明实施例公开的一种网络架构示意图;
[0022]图2是本发明实施例公开的一种路径建立方法的流程示意图;
[0023]图3是本发明实施例公开的一种控制器的结构示意图;
[0024]图4是本发明实施例公开的另一种控制器的结构示意图;
[0025]图5是本发明实施例公开的一种路径建立系统的结构示意图;
[0026]图6是本发明实施例公开的一种PCLRresvmessage格式的示意图;
[0027]图7是本发明实施例公开的一种PCLRresv message格式中的LABEL-NUMBER格式的示意图;
[0028]图8是本发明实施公开的一种PCLabelUpd Message格式的示意图;
[0029]图9是本发明实施例公开的一种PCLabelUpd Message格式中的LABEL格式的示意图;
[0030]图10是本发明实施例公开的一种PCLabelUpd Message格式中的LABEL-ATACK格式的不意图;
[0031 ] 图11是本发明实施例公开的一种label stack sub-TLV的示意图。
【具体实施方式】
[0032]下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0033]本发明实施例公开了一种路径建立方法及控制器,用于降低P2MP TE路径建立的复杂度。以下分别进行详细说明。
[0034]为了更好地理解本发明实施例公开的一种路径建立方法及控制器,下面先对本发明实施例使用的网络架构进行描述。请参阅图1,图1是本发明实施例公开的一种网络架构示意图。如图1所示,该路径建立网络架构可以包括控制器101和多个节点102,例如:该多个节点102包括图1中的节点Rl,R2,R3,R4,R5和R6等,该多个节点102具有MPLS转发功能和SR功能。该多个节点102中存在至少一个分叉节点(branch node) 102,以及至少两个尾节点(egress node) 102。此外,该多个节点102中可以存在一个头节点(ingress node) 102,此时,头节点和分叉节点是两个不同的节点,控制器101与头节点和分叉节点之间建立网络连接,此时分叉节点与至少三个节点建立网络连接,如图1左边的图所示。该多个节点102中头节点和分叉节点也可以为同一节点,控制器1I与头节点或分叉节点建立网络连接,分叉节点与至少两个节点通过网络连接,如图1右边的图所示。控制器101用于检测P2MP TE的路径建立请求,并响应P2MP TE的路径建立请求,计算P2MP TE路径,并将P2MP TE路径的相关信息发送给P2MP TE中的头节点和/或分叉节点,以便P2MP TE路径中节点根据这些信息转发报文。其中,P2MP TE的路径建立请求可以是头节点发送给控制器101的,也可以是控制器101生成的,还可以是除P2MP TE网络中节点102和控制器101之外的设备发送给控制器101的,本发明实施例不作限定。
[0035]基于图1所示的网络架构,请参阅图2,图2是本发明实施例公开的一种路径建立方法的流程示意图。其中,本发明实施例是从控制器101的角度来描述的。如图2所示,该路径建立方法可以包括以下步骤。
[0036]201、当检测到用于建立P2MP TE的路径建立请求时,使用该路径建立请求包括的头节点信息和尾节点信息计算P2MP TE路径。
[0037]本实施例中,控制器(controller)可以预先通过内部网关协议(InternalGateway Protocol,IGP)或边界网关协议(Border Gateway Protocol,BGP)获取到网络中节点之间的拓扑结构,以及可以预先通过路径计算通信协议(Path Computat1n ElementCommunicat1n Protocol,PCEP)获取网络中节点之间的标签交换路径(Label SwitchPath,LSP)。因此,当控制器检测到包括头节点信息和尾节点信息的用于建立P2MP TE的路径建立请求时,可以根据该头节点信息、尾节点信息、节点之间的拓扑结构和节点之间的LSP计算P2MP TE路径,S卩计算头节点信息对应的节点到尾节点信息对应的节点间的路径。例如:头节点为图1左边的图中的Rl,以及尾节点为图1左边的图中的R5和R6,计算的P2MPTE路径可以为R1-R2-R3-R4-R5以及R1-R2-R3-R6。其中,计算的P2MP TE路径可以包括至少一个分叉节点和至少两个尾节点。
[0038]作为一种可能的实施方式,控制器可以使用CSPF算法计算头节点信息对应的节点与尾节点信息对应的节点间的最优路径,可以使报文传输路径最优。
[0039]作为一种可能的实施方式,路径建立请求还可以包括所需带宽、所需最大时延、链路的亲和属性等信息,控制器计算P2MP TE路径时,可以从头节点信息对应的节点到尾节点信息对应的节点的路径中选取满足所需带宽、所需最大时延、链路的亲和属性等信息中至少一种的路径,以便使计算的P2MP TE路径满足业务要求,可以实现业务报文的传输。
[0040]202、识别P2MP TE路径中的目标分叉节点,并获取目标分叉节点的标签。[0041 ] 本实施例中,计算得到P2MP TE路径之后,需要识别P2MP TE路径中的目标分叉节点,即识别P2MP TE路径从哪个节点开始分路,这个节点即为分叉节点。其中,可以是控制器向目标分叉节点发送标签获取请求,以便目标分叉节点为P2MP TE路径返回分配的标签,也可以是控制器为P2MP TE路径分配标签,本实施例不作限定。其中,目标分叉节点至少与第一节点和第二节点连接,第一节点是第一尾节点,或者第一节点为目标分叉节点与第一尾节点间的节点,第二节点是第二尾节点,或者第二节点为目标分叉节点与第二尾节点间的节点,第一尾节点和第二尾节点是至少两个尾节点中的节点,目标分叉节点是这至少一个分叉节点中的任一分叉节点。
[0042]本实施例中,目标分叉节点的标签可以为该目标分叉节点自己分配的,在这种情况下,控制器可以通过扩展路径计算通信协议(Path Computat1n ElementCommunicat1n Protocol ,PCEP),新增PCLRResv消息(message)用来请求目标分叉节点的标签。请参阅图6,图6是本发明实施例公开的一种PCLRresv message格式的示意图。请参阅图7,图7是本发明实施例公开的一种PCLRresv message格式中的LABEL-NUMBER格式的示意图。其中,LABEL-NUMBER格式中的label type用于指示是全局标签还是局部标签,当labeltype为I时可以表明标签为局部标签,当label type为2时可以表明标签为全局标签;LABEL-NUMBER格式中的LabeI number用于指示需要的标签个数;LABEL-NUMBER格式中的F用于指示是申请标签还是返回标签,当F设置为O时,表明是申请标签,当F flag设置为I时,表明是返回标签;LABEL-NUMBER格式中的Label 1-n value是目标分叉节点返回给控制器的标签值。
[0043]203、当头节点信息对应的第三节点与目标分叉节点不是同一节点时,向第三节点发送第一信息,以及向目标分叉节点发送第二信息。
[0044]本实施例中,控制器可以扩展PCEP协议,新增一个PCLabelUpd消息用来向第三节点下发第一信息,以及向目标分叉节点下发第二信息。请参阅图8,图8是本发明实施公开的一种PCLabelUpd Message格式的示意图。请参阅图9,图9是本发明实施例公开的一种PCLabelUpd Message格式中的LABEL格式的示意图。其中,LABEL格式中的O位用于指示标签的类型,当该标志位设置为I时,表明该标签是出标签,当该标志位设置为非I时,表明该标签是入标签。请参阅图10,图10是本发明实施例公开的一种PCLabeIUpd Message格式中的LABEL-ATACK格式的示意图。其中,LABEL-ATACK格式中的stacks number用于指示标签栈的数据。请参阅图11,图11是本发明实施例公开的一种label stack sub_TLV的示意图。其中,label stack sub_TLV中的index用于指示第几个标签桟。
[0045]本实施例中,获取到目标分叉节点的标签之后,当头节点信息对应的第三节点与目标分叉节点不是同一节点,即头节点不是分叉节点时,将向第三节点发送第一信息,第一信息可以包括目标分叉节点的标签和P2MP TE路径中由第三节点到目标分叉节点的路径信息,第一信息可以指示第三节点在接收到第一报文时,将该路径信息和目标分叉节点的标签封装在第一报文中,目标分叉节点的标签在封装后的第一报文中处于路径信息之后,路径信息可以指示第三节点将封装后的第一报文按照路径信息进行转发。第一信息可以以标签栈的方式发送给第三节点,例如:图1左边的图中控制器发送给头节点Rl的标签栈可以为{L12 L23 L3N},其中,L3N是分叉节点R3的标签,L12和L23可以表示P2MP TE路径中由头节点Rl到分叉节点R3的路径,即报文转发路径为节点Rl-节点R2-节点R3。也向目标分叉节点发送第二信息,第二信息可以指示目标分叉节点生成第一组播转发表项,第一组播转发表项可以包括P2MP TE路径中由目标分叉节点到尾节点信息对应的节点的路径的信息,第一组播转发表项可以当目标分叉节点接收到包括目标分叉节点的标签的第一报文时,将第一报文按照第一组播转发表项进行转发,即将第一报文复制第一组播转发表项中包括的路径数量的份数,并每份第一报文按照第一组播转发表项包括的一条路径进行转发,例如:从节点R3到尾节点R5和节点R6分别各一条路径,因此,节点R3接收到包括L3N的报文后,可以将该报文复制两份,之后按照R3-R4-R5转发给节点R5,以及按照R3-R6转发给节点R6。其中,第一信息和第二信息是通过PCLabelUpd消息分别下发给第三节点和目标分叉节点的。
[0046]204、当头节点信息对应的第三节点与目标分叉节点为同一节点时,向目标分叉节点发送第三信息和目标分叉节点的标签。
[0047]本实施例中,当头节点信息对应的第三节点与目标分叉节点为同一节点时,将目标分叉节点的标签和第三信息通过PCLabelUpd消息下发给目标分叉节点,目标分叉节点的标签可以指示目标分叉节点根据第三信息生成第二组播转发表项,第二组播转发表项可以包括P2MP TE路径中由目标分叉节点到尾节点信息对应的节点的路径的信息,第二组播转发表项可以当目标分叉节点接收到第二报文时,将第二报文按照第二组播转发表项进行转发,即将第二报文复制第二组播转发表项中包括的路径数量的份数,并每份第二报文按照第二组播转发表项包括的一条路径进行转发。第三信息还可以包括用于指示目标分叉节点为入节点的信息,可以表明目标分叉节点即入节点。
[0048]在图2所描述的路径建立方法中,当检测到用于建立P2MPTE的路径建立请求时,使用路径建立请求包括的头节点信息和尾节点信息计算P2MP TE路径,识别P2MP TE路径中的目标分叉节点,并获取目标分叉节点的标签,当头节点信息对应的第三节点与目标分叉节点不是同一节点时,向第三节点发送第一信息,以及向目标分叉节点发送第二信息,当头节点信息对应的第三节点与目标分叉节点为同一节点时,向目标分叉节点发送第三信息和目标分叉节点的标签,可见,在建立P2MP TE路径时,控制器只需要向P2MP TE路径中的头节点和/或分叉节点发送信息,而不需要向P2MP TE路径中的所有节点发送信息,可以降低P2MP TE路径建立过程的复杂度,便于网络的管理和维护。
[0049]基于图1所示的网络架构,请参阅图3,图3是本发明实施例公开的一种控制器的结构示意图。该控制器可以为图2所示实施例中的控制器。如图3所示,该控制器可以包括:
[0050]计算单元301,用于当检测到用于建立P2MP TE的路径建立请求时,使用路径建立请求包括的头节点信息和尾节点信息计算P2MP TE路径,P2MP TE路径包括至少一个分叉节点和至少两个尾节点;
[0051]识别单元302,用于识别计算单元301计算的P2MPTE路径中的目标分叉节点,目标分叉节点至少与第一节点和第二节点连接,第一节点是第一尾节点,或者第一节点为目标分叉节点与第一尾节点间的节点,第二节点是第二尾节点,或者第二节点为目标分叉节点与第二尾节点间的节点,第一尾节点和第二尾节点是至少两个尾节点中的节点,目标分叉节点是至少一个分叉节点中的任一分叉节点;
[0052]获取单元303,用于获取识别单元302识别的目标分叉节点的标签;
[0053]发送单元304,用于当头节点信息对应的第三节点与目标分叉节点不是同一节点时,向第三节点发送第一信息,以及向识别单元302识别的目标分叉节点发送第二信息,第一信息包括获取单元303获取的标签和计算单元计算的P2MP TE路径中由第三节点到目标分叉节点的路径信息,第一信息用于指示第三节点接收到第一报文时,将路径信息和目标分叉节点的标签封装在第一报文中,路径信息用于指示第三节点将封装后的第一报文按照路径信息进行转发,第二信息用于指示目标分叉节点生成第一组播转发表项,第一组播转发表项包括P2MP TE路径中由目标分叉节点到尾节点信息对应的节点的路径的信息,第一组播转发表项用于目标分叉节点接收到包括目标分叉节点的标签的第一报文时,将第一报文按照第一组播转发表项进行转发。
[0054]作为一种可能的实施方式,发送单元304,还用于当头节点信息对应的第三节点与目标分叉节点为同一节点时,向识别单元302识别的目标分叉节点发送第三信息和获取单元303获取的目标分叉节点的标签,目标分叉节点的标签用于指示目标分叉节点根据第三信息生成第二组播转发表项,第二组播转发表项包括计算单元计算的P2MP TE路径中由目标分叉节点到尾节点信息对应的节点的路径的信息,第二组播转发表项用于当目标分叉节点接收到第二报文时,将第二报文按照第二组播转发表项进行转发。
[0055]作为一种可能的实施方式,获取单元303具体用于:
[0056]向目标分叉节点发送标签获取请求消息,标签获取请求消息用于指示目标分叉节点为P2MP TE路径分配标签;
[0057]接收目标分叉节点发送响应消息,该响应消息包含标签。
[0058]作为一种可能的实施方式,获取单元303,具体用于为目标分叉节点分配标签。
[0059]作为一种可能的实施方式,计算单元301,具体用于使用约束最短路径优先CSPF算法计算头节点信息对应的第三节点与尾节点信息对应的节点间的P2MP TE路径。
[0060]在图3所描述的控制器中,当检测到用于建立P2MPTE的路径建立请求时,使用路径建立请求包括的头节点信息和尾节点信息计算P2MP TE路径,识别P2MP TE路径中的目标分叉节点,并获取目标分叉节点的标签,当头节点信息对应的第三节点与目标分叉节点不是同一节点时,向第三节点发送第一信息,以及向目标分叉节点发送第二信息,当头节点信息对应的第三节点与目标分叉节点为同一节点时,向目标分叉节点发送第三信息和目标分叉节点的标签,可见,在建立P2MP TE路径时,控制器只需要向P2MP TE路径中的头节点和/或分叉节点发送信息,而不需要向P2MP TE路径中的所有节点发送信息,可以降低P2MP TE路径建立过程的复杂度,便于网络的管理和维护。
[0061]基于图1所示的网络架构,请参阅图4,图4是本发明实施例公开的另一种控制器的结构示意图。该控制器可以为图2所示实施例中的控制器。如图4所示,该控制器可以包括:处理器401、存储器402和收发器403。其中:
[0062]存储器402中存储有一组程序代码,处理器401用于调用存储器402中存储的程序代码执行以下操作:
[0063]当检测到用于建立点到多点流量工程P2MPTE的路径建立请求时,使用路径建立请求包括的头节点信息和尾节点信息计算P2MP TE路径,P2MP TE路径包括至少一个分叉节点和至少两个尾节点;
[0064]识别P2MPTE路径中的目标分叉节点,并获取目标分叉节点的标签,目标分叉节点至少与第一节点和第二节点连接,第一节点是第一尾节点,或者第一节点为目标分叉节点与第一尾节点间的节点,第二节点是第二尾节点,或者第二节点为目标分叉节点与第二尾节点间的节点,第一尾节点和第二尾节点是至少两个尾节点中的节点,目标分叉节点是至少一个分叉节点中的任一分叉节点;
[0065]收发器403,用于当头节点信息对应的第三节点与目标分叉节点不是同一节点时,向第三节点发送第一信息,以及向目标分叉节点发送第二信息,第一信息包括目标分叉节点的标签和P2MP TE路径中由第三节点到目标分叉节点的路径信息,第一信息用于指示第三节点接收到第一报文时,将路径信息和目标分叉节点的标签封装在第一报文中,路径信息用于指示第三节点将封装后的第一报文按照路径信息进行转发,第二信息用于指示目标分叉节点生成第一组播转发表项,第一组播转发表项包括P2MP TE路径中由目标分叉节点到尾节点信息对应的节点的路径的信息,第一组播转发表项用于目标分叉节点接收到包括目标分叉节点的标签的第一报文时,将第一报文按照第一组播转发表项进行转发。
[0066]作为一种可能的实施方式,收发器503,还用于当头节点信息对应的第三节点与目标分叉节点为同一节点时,向目标分叉节点发送第三信息和目标分叉节点的标签,目标分叉节点的标签用于指示目标分叉节点根据第三信息生成第二组播转发表项,第二组播转发表项包括P2MP TE路径中由目标分叉节点到尾节点信息对应的节点的路径的信息,第二组播转发表项用于当目标分叉节点接收到第二报文时,将第二报文按照第二组播转发表项进行转发。
[0067]作为一种可能的实施方式,处理器401获取目标分叉节点的标签包括:
[0068]收发器403向目标分叉节点发送标签获取请求消息,标签获取请求消息用于指示目标分叉节点为P2MP TE路径分配标签;
[0069]收发器403接收目标分叉节点发送响应消息,响应消息包含标签。
[0070]作为一种可能的实施方式,处理器401获取目标分叉节点的标签包括:
[0071 ] 处理器401为目标分叉节点分配标签。
[0072]作为一种可能的实施方式,处理器401使用路径建立请求包括的头节点信息和尾节点信息计算P2MP TE路径包括:
[0073]处理器401使用约束最短路径优先CSPF算法计算头节点信息对应的第三节点与尾节点信息对应的节点间的P2MP TE路径。
[0074]其中,步骤201和202可以由控制器中的处理器401调用存储器402中存储的程序代码执行,步骤203和步骤204可以由控制器中的收发器403执行。
[0075]其中,计算单元301、识别单元302和获取单元303可以由控制器中的处理器401和存储器402来实现,发送单元304可以由控制器中的收发器403来实现。
[0076]在图4所描述的控制器中,当检测到用于建立P2MPTE的路径建立请求时,使用路径建立请求包括的头节点信息和尾节点信息计算P2MP TE路径,识别P2MP TE路径中的目标分叉节点,并获取目标分叉节点的标签,当头节点信息对应的第三节点与目标分叉节点不是同一节点时,向第三节点发送第一信息,以及向目标分叉节点发送第二信息,当头节点信息对应的第三节点与目标分叉节点为同一节点时,向目标分叉节点发送第三信息和目标分叉节点的标签,可见,在建立P2MP TE路径时,控制器只需要向P2MP TE路径中的头节点和/或分叉节点发送信息,而不需要向P2MP TE路径中的所有节点发送信息,可以降低P2MP TE路径建立过程的复杂度,便于网络的管理和维护。
[0077]基于图1所示的网络架构,请参阅图5,图5是本发明实施例公开的一种路径建立系统的结构示意图。如图5所示,该路径建立系统包括控制器501和至少三个节点502,其中:
[0078]控制器501,用于当检测到用于建立P2MP TE的路径建立请求时,使用路径建立请求包括的头节点信息和尾节点信息计算P2MP TE路径,识别P2MP TE路径中的目标分叉节点,并获取目标分叉节点的标签,P2MP TE路径包括至少一个分叉节点和至少两个尾节点,目标分叉节点至少与第一节点和第二节点连接,第一节点是第一尾节点,或者第一节点为目标分叉节点与第一尾节点间的节点,第二节点是第二尾节点,或者第二节点为目标分叉节点与第二尾节点间的节点,第一尾节点和第二尾节点是至少两个尾节点中的节点,目标分叉节点是至少一个分叉节点中的任一分叉节点;
[0079]控制器501,还用于当头节点信息对应的第三节点与目标分叉节点不是同一节点时,向第三节点发送第一信息,以及向目标分叉节点发送第二信息,第一信息包括目标分叉节点的标签和P2MP TE路径中由第三节点到目标分叉节点的路径信息。
[0080]第三节点502,用于接收第一信息,接收第一报文,将路径信息和目标分叉节点的标签封装在第一报文中,以及将封装后的第一报文按照路径信息转发至目标分叉节点,目标分叉节点的标签在封装后的第一报文中处于路径信息之后;
[0081 ]目标分叉节点502,用于接收第二信息,生成组第一播转发表项,接收包括目标分叉节点的标签的第一报文,将该第一报文按照第一组播转发表项包括的P2MP TE路径中由目标分叉节点到尾节点信息对应的节点的路径的信息进行转发。
[0082]作为一种可能的实施方式,控制器501,还用于当头节点信息对应的第三节点与目标分叉节点为同一节点时,向目标分叉节点发送第三信息和分叉节点的标签;
[0083]目标分叉节点502,还用于在目标分叉节点的标签的指示下根据第三信息生成第二组播转发表项,接收第二报文,将第二报文按第二照组播转发表项包括P2MP TE路径中由目标分叉节点到尾节点信息对应的节点的路径的信息进行转发。
[0084]作为一种可能的实施方式,控制器501获取目标分叉节点的标签包括:
[0085]控制器501向目标分叉节点502发送标签获取请求消息;
[0086]目标分叉节点502为P2MPTE路径分配标签并发送给控制器501;
[0087]控制器501接收目标分叉节点502发送的标签。
[0088]作为一种可能的实施方式,控制器501获取目标分叉节点502的标签包括:
[0089]为目标分叉节点502分配标签。
[0090]作为一种可能的实施方式,控制器501使用路径建立请求包括的头节点信息和尾节点信息计算P2MP TE路径包括:
[0091]使用约束最短路径优先CSPF算法计算头节点信息对应的第三节点与尾节点信息对应的节点间的P2MP TE路径。
[0092]其中,头节点用虚线框,可以表示头节点可以与分叉节点为同一节点,也可以为不同的节点。
[0093]在图5所描述的控制器中,当检测到用于建立P2MPTE的路径建立请求时,使用路径建立请求包括的头节点信息和尾节点信息计算P2MP TE路径,识别P2MP TE路径中的目标分叉节点,并获取目标分叉节点的标签,当头节点信息对应的第三节点与目标分叉节点不是同一节点时,向第三节点发送第一信息,以及向目标分叉节点发送第二信息,当头节点信息对应的第三节点与目标分叉节点为同一节点时,向目标分叉节点发送第三信息和目标分叉节点的标签,可见,在建立P2MP TE路径时,控制器只需要向P2MP TE路径中的头节点和/或分叉节点发送信息,而不需要向P2MP TE路径中的所有节点发送信息,可以降低P2MP TE路径建立过程的复杂度,便于网络的管理和维护。
[0094]在一个实施例中,一种可读存储介质,该可读存储介质存储了命令分发装置用于执行本发明实施例图2所对应的路径建立方法的程序代码。
[0095]本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:闪存盘、只读存储器(read-only memory,ROM)、随机存取器(random accessmemory,RAM)、磁盘或光盘等。
[0096]以上对本发明实施例公开的路径建立方法及控制器进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在【具体实施方式】及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
【主权项】
1.一种路径建立方法,其特征在于,所述方法应用于管理至少三个节点的控制器,所述方法包括: 当所述控制器检测到用于建立点到多点流量工程P2MP TE的路径建立请求时,使用所述路径建立请求包括的头节点信息和尾节点信息计算P2MP TE路径,所述P2MP TE路径包括至少一个分叉节点和至少两个尾节点; 所述控制器识别所述P2MP TE路径中的目标分叉节点,并获取所述目标分叉节点的标签,所述目标分叉节点至少与第一节点和第二节点连接,所述第一节点是第一尾节点,或者所述第一节点为所述目标分叉节点与第一尾节点间的节点,所述第二节点是第二尾节点,或者所述第二节点为所述目标分叉节点与第二尾节点间的节点,所述第一尾节点和所述第二尾节点是所述至少两个尾节点中的节点,所述目标分叉节点是所述至少一个分叉节点中的任一分叉节点; 当所述头节点信息对应的第三节点与所述目标分叉节点不是同一节点时,所述控制器向所述第三节点发送第一信息,以及向所述目标分叉节点发送第二信息,所述第一信息包括所述标签和所述P2MP TE路径中由所述第三节点到所述目标分叉节点的路径信息,所述第一信息用于指示所述第三节点接收到第一报文时,将所述路径信息和所述标签封装在所述第一报文中,所述路径信息用于指示所述第三节点将封装后的所述第一报文按照所述路径信息进行转发,所述第二信息用于指示所述目标分叉节点生成第一组播转发表项,所述第一组播转发表项包括所述P2MP TE路径中由所述目标分叉节点到所述尾节点信息对应的节点的路径的信息,所述第一组播转发表项用于所述目标分叉节点接收到包括所述标签的第一报文时,将所述第一报文按照所述第一组播转发表项进行转发。2.根据权利要求1所述的方法,其特征在于,所述方法还包括: 当所述头节点信息对应的第三节点与所述目标分叉节点为同一节点时,所述控制器向所述目标分叉节点发送第三信息和所述标签,所述标签用于指示所述目标分叉节点根据所述第三信息生成第二组播转发表项,所述第二组播转发表项包括所述P2MP TE路径中由所述目标分叉节点到所述尾节点信息对应的节点的路径的信息,所述第二组播转发表项用于当所述目标分叉节点接收到第二报文时,将所述第二报文按照所述第二组播转发表项进行转发。3.根据权利要求1或2所述的方法,其特征在于,所述控制器获取所述目标分叉节点的标签包括: 所述控制器向所述目标分叉节点发送标签获取请求消息,所述标签获取请求消息用于指示所述目标分叉节点为所述P2MP TE路径分配标签; 所述控制器接收所述目标分叉节点发送响应消息,所述响应消息包含所述标签。4.根据权利要求1或2所述的方法,其特征在于,所述控制器获取所述目标分叉节点的标签包括: 所述控制器为所述目标分叉节点分配标签。5.根据权利要求1-4任一项所述的方法,其特征在于,所述控制器使用所述路径建立请求包括的头节点信息和尾节点信息计算P2MP TE路径包括: 所述控制器使用约束最短路径优先CSPF算法计算所述头节点信息对应的第三节点与所述尾节点信息对应的节点间的P2MP TE路径。6.一种控制器,其特征在于,所述控制器管理至少三个节点,所述控制器包括: 计算单元,用于当检测到用于建立点到多点流量工程P2MP TE的路径建立请求时,使用所述路径建立请求包括的头节点信息和尾节点信息计算P2MP TE路径,所述P2MP TE路径包括至少一个分叉节点和至少两个尾节点; 识别单元,用于识别所述计算单元计算的P2MP TE路径中的目标分叉节点,所述目标分叉节点至少与第一节点和第二节点连接,所述第一节点是第一尾节点,或者所述第一节点为所述目标分叉节点与第一尾节点间的节点,所述第二节点是第二尾节点,或者所述第二节点为所述目标分叉节点与第二尾节点间的节点,所述第一尾节点和所述第二尾节点是所述至少两个尾节点中的节点,所述目标分叉节点是所述至少一个分叉节点中的任一分叉节占.V , 获取单元,用于获取所述识别单元识别的目标分叉节点的标签; 发送单元,用于当所述头节点信息对应的第三节点与所述目标分叉节点不是同一节点时,向所述第三节点发送第一信息,以及向所述识别单元识别的目标分叉节点发送第二信息,所述第一信息包括所述获取单元获取的标签和所述计算单元计算的P2MP TE路径中由所述第三节点到所述目标分叉节点的路径信息,所述第一信息用于指示所述第三节点接收到第一报文时,将所述路径信息和所述标签封装在所述第一报文中,所述路径信息用于指示所述第三节点将封装后的所述第一报文按照所述路径信息进行转发,所述第二信息用于指示所述目标分叉节点生成第一组播转发表项,所述第一组播转发表项包括所述P2MP TE路径中由所述目标分叉节点到所述尾节点信息对应的节点的路径的信息,所述第一组播转发表项用于所述目标分叉节点接收到包括所述标签的第一报文时,将所述第一报文按照所述第一组播转发表项进行转发。7.根据权利要求6所述的控制器,其特征在于,所述发送单元,还用于当所述头节点信息对应的第三节点与所述目标分叉节点为同一节点时,向所述识别单元识别的目标分叉节点发送第三信息和所述获取单元获取的标签,所述标签用于指示所述目标分叉节点根据所述第三信息生成第二组播转发表项,所述第二组播转发表项包括所述计算单元算的P2MPTE路径中由所述目标分叉节点到所述尾节点信息对应的节点的路径的信息,所述第二组播转发表项用于当所述目标分叉节点接收到第二报文时,将所述第二报文按照所述第二组播转发表项进行转发。8.根据权利要求6或7所述的控制器,其特征在于,所述获取单元具体用于: 向所述目标分叉节点发送标签获取请求消息,所述标签获取请求消息用于指示所述目标分叉节点为所述P2MP TE路径分配标签; 接收所述目标分叉节点发送响应消息,所述响应消息包含所述标签。9.根据权利要求6或7所述的控制器,其特征在于,所述获取单元,具体用于为所述目标分叉节点分配标签。10.根据权利要求6-9任一项所述的控制器,其特征在于,所述计算单元,具体用于使用约束最短路径优先CSPF算法计算所述头节点信息对应的第三节点与所述尾节点信息对应的节点间的P2MP TE路径。
【文档编号】H04L12/761GK105827529SQ201610307327
【公开日】2016年8月3日
【申请日】2016年5月10日
【发明人】王凤梅, 龙勇, 陈霞
【申请人】华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1