CN110519168B - 一种创建srte隧道的方法及相关设备 - Google Patents
一种创建srte隧道的方法及相关设备 Download PDFInfo
- Publication number
- CN110519168B CN110519168B CN201910797458.7A CN201910797458A CN110519168B CN 110519168 B CN110519168 B CN 110519168B CN 201910797458 A CN201910797458 A CN 201910797458A CN 110519168 B CN110519168 B CN 110519168B
- Authority
- CN
- China
- Prior art keywords
- node
- label
- message
- adhesion
- sticky
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/50—Routing or path finding of packets in data switching networks using label swapping, e.g. multi-protocol label switch [MPLS]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/14—Session management
- H04L67/141—Setup of application sessions
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种创建SRTE隧道的方法及相关设备,该方法包括:第一节点确定第二节点为粘连节点;第一节点向粘连节点发送第一报文,第一报文包括目标标签栈信息,用于指示粘连节点申请粘连标签;第一节点从粘连节点接收第二报文,第二报文包括粘连标签;第一节点根据第二报文建立端到端的段路由流量工程SRTE隧道。该第一节点通过该粘连节点就可以建立端到端的SRTE隧道,不受标签栈的栈深限制。
Description
技术领域
本发明涉及通信领域,具体涉及一种创建SRTE隧道的方法及相关设备。
背景技术
分段路由是一种多协议标签交换(multi-protocol label switching,MPLS)隧道技术,该技术可以根据首节点的MPLS标签栈即可控制整个报文在网络中的传输路径。段路由流量工程(segment routing-traffic engineering,SRTE)主要是基于控制器算路,并将计算好的标签栈下发给路由器。
由于目前各厂商生产的路由器支持的标签栈的栈深都是有一定上限的,当标签栈的栈深超过上限时,无法创建端到端的SRTE隧道。如,某品牌转发器支持的标签栈的栈深最大为10层。若标签栈的栈深超过10层时,则无法创建端到端的SRTE隧道。
发明内容
本发明提供了一种创建SRTE的方法及相关设备,该方法可以使得创建端到端的SRTE隧道,不受标签栈的栈深限制。
本发明第一方面提供了一种创建SRTE隧道的方法,该方法包括:第一节点确定第二节点为粘连节点;第一节点向粘连节点发送第一报文,第一报文包括目标标签栈信息,用于指示粘连节点请求粘连标签;第一节点从粘连节点接收第二报文,第二报文包括粘连标签;第一节点根据第二报文建立端到端的段路由流量工程SRTE隧道。当标签栈的栈深超过路由器支持的最大栈深时,该第一节点也可以建立端到端的SRTE隧道,从而本发明第一方面提供的这种创建SRTE隧道的方法可以不受标签栈的栈深限制。
可选的,结合第一方面,在第一方面的第一种可能的实现方式中,第一节点向粘连节点发送第一报文之后,该方法还包括:第一节点从第二节点接收第三报文,第三报文用于指示第二节点申请粘连标签失败;第一节点向第二节点发送第四报文,第四报文用于指示第二节点在预设的标签池里申请粘连标签并生成转发表项。在第一方面的第一种可能的实现方式中,该若该第二节点申请粘连标签失败,该第一节点可以通过第四报文指示第二节点再次申请粘连标签。这样可以增强方案的灵活性。
可选的,结合第一方面,在第一方面的第二种可能的实现方式中,第一节点向粘连节点发送第一报文之后,该方法还包括:第一节点从第二节点接收第三报文,第三报文用于指示第二节点申请粘连标签失败;第一节点确定第三节点为粘连节点,第三节点为不同于第二节点的一个节点;第一节点向第三节点发送第五报文,第五报文包括目标标签栈信息,用于请求粘连标签;第一节点从粘连节点接收第二报文包括:第一节点从第三节点接收第二报文。在第一方面的第二种可能的实现方式中,若第二节点申请粘连标签失败,该第一节点可以取消第二节点的粘连节点的身份,重新确定第三节点为粘连节点。然后第一节点指示第三节点在预设的标签池里申请粘连标签。这样可以增强方案的稳定性。
本发明第二方面提供了一种创建SRTE隧道的方法,该方法包括:第二节点从第一节点接收第一报文,第一报文包括目标标签栈信息,用于请求粘连标签;第二节点根据第一报文在预设的标签池里申请粘连标签并生成转发表项;第二节点向第一节点发送第二报文,第二报文包括粘连标签,第二报文用于指示第一节点建立端到端的段路由流量工程SRTE隧道。因此,本发明第二方面提供的这种创建SRTE隧道的方法可以不受标签栈的栈深限制。
可选的,结合第二方面,在第二方面的第一种可能的实现方式中,第二节点从第一节点接收第一报文之后,方法还包括:当第二节点在预设的标签池里申请粘连标签失败时,第二节点向第一节点发送第三报文,第三报文用于指示第二节点申请粘连标签失败;第二节点从第一节点接收第四报文,第四报文用于指示第二节点在预设的标签池里申请粘连标签并生成转发表项。在第二方面的第一种可能的实现方式中,第二节点在申请粘连标签失败时,可以根据第一节点的第四报文在预设的标签池里再次申请粘连标签。这样可以增加方案的多样性。
可选的,结合第二方面,在第二方面的第二种可能的实现方式中,第二节点在预设的标签池里申请粘连标签并生成转发表项包括:当第二节点在预设的标签池里申请粘连标签失败时,第二节点在预设时长之后在预设的标签池里申请粘连标签并生成转发表项。在第二方面的第二种可能的实现方式中,第二节点在申请粘连标签失败时,可以在预设时长之后再次在预设的标签池里申请粘连标签,然后生成转发表项。可以增强方案的稳定性。
本发明第三方面提供了一种装置,该装置包括:处理单元,用于确定第二节点为粘连节点;发送单元,用于向粘连节点发送第一报文,第一报文包括目标标签栈信息,用于指示粘连节点请求粘连标签;接收单元,用于从粘连节点接收第二报文,第二报文包括粘连标签;处理单元,用于根据第二报文建立端到端的段路由流量工程SRTE隧道。这种创建SRTE隧道的装置可以不受标签栈的栈深限制,创建SRTE隧道。
可选的,结合第三方面,在第三方面的第一种可能的实现方式中,接收单元,还用于从第二节点接收第三报文,第三报文用于指示第二节点申请粘连标签失败;发送单元,还用于向第二节点发送第四报文,第四报文用于指示第二节点在预设的标签池里申请粘连标签并生成转发表项。
可选的,结合第三方面,在第三方面的第二种可能的实现方式中,接收单元,还用于从第二节点接收第三报文,第三报文用于指示第二节点申请粘连标签失败;处理单元,还用于确定第三节点为粘连节点,第三节点为不同于第二节点的一个节点;发送单元,还用于向第三节点发送第五报文,第五报文包括目标标签栈信息,用于请求粘连标签;接收单元,还用于从第三节点接收第二报文。
本发明第四方面提供了一种装置,该装置包括:接收单元,用于从第一节点接收第一报文,第一报文包括目标标签栈信息,用于请求粘连标签;处理单元,用于根据第一报文在预设的标签池里申请粘连标签并生成转发表项;发送单元,用于向第一节点发送第二报文,第二报文包括粘连标签,第二报文用于指示第一节点建立端到端的段路由流量工程SRTE隧道。这种装置可以不受标签栈的栈深限制,创建SRTE隧道。
可选的,结合第四方面,在第四方面的第一种可能的实现方式中,发送单元,还用于当处理单元在预设的标签池里申请粘连标签失败时,向第一节点发送第三报文,第三报文用于指示处理单元申请粘连标签失败;接收单元,还用于从第一节点接收第四报文,第四报文用于指示第二节点在预设的标签池里申请粘连标签并生成转发表项。
可选的,结合第四方面,在第四方面的第二种可能的实现方式中,处理单元,还用于当申请粘连标签失败时,在预设时长之后在预设的标签池里申请粘连标签并生成转发表项。
本发明实施例提供了一种创建SRTE隧道的方法及相关设备,该方法包括:第一节点确定第二节点为粘连节点;第一节点向粘连节点发送第一报文,第一报文包括请求粘连标签和目标标签栈信息;第一节点从粘连节点接收第二报文,第二报文包括粘连标签;第一节点根据第二报文建立端到端的段路由流量工程SRTE隧道。该第一节点通过该粘连节点就可以建立端到端的SRTE隧道,不会受到标签栈的栈深限制。
附图说明
图1是本申请实施例提供的一种网络拓扑示意图;
图2是本申请实施例提供的一种创建SRTE隧道的方法一个实施例示意图;
图3是本申请实施例提供的一种创建SRTE隧道的方法的另一个实施例示意图;
图4是本申请实施例提供的一种创建SRTE隧道的方法的另一个实施例示意图;
图5是本申请实施例提供的一种创建SRTE隧道的装置的一个实施例示意图;
图6是本申请实施例提供的一种创建SRTE隧道的装置的另一个实施例示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本申请中出现的术语“和/或”,可以是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本申请中字符“/”,一般表示前后关联对象是一种“或”的关系。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或模块的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或模块,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或模块。
分段路由是一种多协议标签交换(multi-protocol label switching,MPLS)隧道技术,该技术可以根据首节点的MPLS标签栈即可控制整个报文在网络中的传输路径。段路由流量工程(segment routing-traffic engineering,SRTE)主要是基于控制器算路,并将计算好的标签栈下发给路由器。
由于目前各厂商生产的路由器支持的标签栈的栈深都是有一定上限的,当标签栈的栈深超过上限时,无法创建端到端的SRTE隧道。例如,某品牌路由器支持的标签栈的栈深最大为10层。若标签栈的栈深超过10层时,则无法创建端到端的SRTE隧道。如图1所示,在图1所示的路径中,设置有12个路由器(图1中的R1至R12),每个路由器为路径中的一个节点。在该节点中,配置有SRTE隧道(tunnel)的节点为头节点。该路径中最深的标签栈为:{1001-1002-1003-1004-1005-1006-1007-1008-1009-1010-1011},该标签栈的栈深为11层,显然超过了该品牌路由器支持的最大栈深。在这种情况下,无法创建端到端的SRTE隧道。
当标签栈的栈深超过路由器支持的最大栈深时,可以通过控制器来建立SRTE隧道。控制器通过边界路由协议链路状态(border gateway protocol link-state,BGP-LS)协议手机网络拓扑中各个节点的标签,基于全网拓扑进行路径计算之后,计算出一个SRTE标签栈,使用路径计算单元通信协议(path computation element communicationprotocol,PCEP)把SRTE标签栈发给头节点。
当控制器发给头节点的SRTE标签栈超过路由器支持的最大栈深时,控制器会在路径中确定一个节点作为粘连节点,然后将通过路径计算初始化请求(path computationelement communication protocol initiate request,PCInitiate)将粘连标签的信息和目标标签栈的信息发送给粘连节点。该目标标签栈可以为粘连节点与路径中最后一个节点之间形成的标签栈。该目标标签栈的栈深不超过路由器支持的最大栈深。
粘连节点从标签池里动态申请粘连标签,再通过路径计算通告(PathComputation Label switching path state report,PCRpt)消息将粘连标签发送给控制器。控制器再将携带有粘连标签的SRTE标签栈通过路径计算更新(Path computationlabel switching path update request,PCUpd)消息下发给头节点。
该头节点上的标签栈与目标标签栈的栈深均不超过路由器支持的最大栈深。示例性的,如图1所示,若路由器支持标签栈的最大栈深为10层,则控制器可以确定R2为粘连节点,则目标标签栈为{1002-1003-1004-1005-1006-1007-1008-1009-1010-1011},该目标标签栈层数为10,不超过路由器支持的最大栈深。该粘连节点上从标签池里动态申请的粘连标签为100,该粘连标签100可以代表目标标签栈,则该头节点上的标签栈可以表示为{1001-100},所以该头节点上标签栈的最大栈深为2,不超过该路由器支持的最大栈深。
在上述方案中,是通过控制器来计算标签栈的,可以实现转控分离。但是在该场景下的部署必须依赖控制器,若控制器故障,头节点就无法收到算路结果,当SRTE标签栈的栈深超过路由器支持的最大栈深,则无法建立端到端的SRTE隧道。
本发明提供了一种SRTE隧道的方法,该方法不依赖控制器计算标签栈,可以由头节点算路。当头节点计算出的SRTE标签栈超出路由器支持的最大栈深时,本发明在用户数据报协议(user datagram protocol,UDP)上层扩展一种私有协议,该私有协议可以命名为标签自动粘连协议,通过该标签自动粘连协议可以实现头节点SRTE标签栈的自动粘连,而不需要控制器。该标签自动粘连协议需要占用特定的端口号,示例性的,可以占用7735端口号。
该标签自动粘连协议头部的格式可以为如下:
其中,该标签自动粘连协议可以包含4中类型的参数:Ver(3比特)、Flags(5比特)、Message-Type(8比特)和Message-Length(16比特)。其中,Ver代表粘连标签的版本号,当前可以设置为1。Flags当前没有定义,为预留字段,当前可以置为0。Message-Length包含头部,粘连消息的总长度,单位为字节。
Message-Type可以包含以下4种类型的消息:
1)绑定标签请求(binding label request,BLReq):
BLReq消息是头节点向粘连节点发送的,用来向粘连节点请求粘连标签,同时把标签栈的信息带给粘连节点,粘连标签头部消息类型为1。
BLReq消息中携带两个对象:绑定标签对象(binding-label object),用来携带粘连标签,在此处设置为0;标签栈对象(label-stack object),用来携带标签栈信息。若其中一个对象丢失,则接收该消息的粘连节点需要给头节点发送BLErr消息。
BLReq消息格式可以为如下所示:
<BLReq Message>::=<Common Header>
<Binding-Label>
<Label-Stack>
2)绑定标签回复(binding label reply,BLRep):
BLRep消息是粘连节点向头节点发送的,该BLRep消息中携带一个标签栈对象,用来携带标签栈信息,粘连标签头部消息类型为2。该粘连节点通过BLRep消息将标签栈信息发送给头节点。
BLRep消息格式如下:
<BLRep Message>::=<Common Header>
<Binding-Label>
3)绑定标签删除(binding label delete,BLDel):
BLDel消息是头结点向粘连节点发送的,用来通知粘连节点删除粘连标签,在粘连标签头部消息类型字段为3。
这个消息里携带1个对象:Binding-label object,用来通告要删除的粘连标签。
BLDel消息格式如下:
<BLDel Message>::=<Common Header>
<Binding-Label>
4)绑定标签错误(binding label error,BLErr):
BLErr消息是粘连节点向头节点发送的,该粘连节点可以在以下几种情况发送:
1.粘连节点收到头节点的BLReq消息中没有携带绑定标签对象和标签栈对象。
2.粘连节点无粘连能力。例如,有的型号的路由器不具备粘连能力,此时该粘连节点向头节点发送该BLErr消息。
3.粘连节点申请粘连标签失败。例如,该资源池里没有多余的粘连标签,该粘连节点申请粘连标签失败。
Error消息在粘连标签头部消息类型字段为4。Error消息里携带1个对象:bindinglabel error object,用来通告错误类型。
BLErr消息格式如下:
<BLErr Message>::=<Common Header>
<Error>
在上述4中消息类型中,涉及到3种对象,该3种对象的报文格式可以为如下:
1、binding-label object
携带在BLReq,BLRep,BLDel消息里。
Binding-Label Object-Class is 15,占8位。
Binding-Label Object-Type is 1,占8位。
Binding-Label TLV格式如下所示:
Type(16bits):the type is 31
Length(16bits):TLV的总长度,单位字节
Binding-Label(32bits):粘连标签(头节点向粘连节点请求粘连标签时置为0)。
2.label-stack object
携带在BLReq消息里,头节点通过此对象把标签栈信息带给粘连节点。
Label-stack Object-Class is 16,占8位。
Label-stack Object-Type is 1,占8位。
The format of the Label-stack object body is as follows:
MPLS Label Stack:在[RFC3032]中定义
3.binding label error object
携带在BLErr消息里。
Binding Label Error Object-Class is 17,占8位。
Binding Label Error Object-Type is 1,占8位。
The format of the Binding Label Error Object Body is as follows:
Reserved(8bits):当前置为0。
Flags(8bits):当前置为0。
Error-Type(8bits):defines the class of error.
Error-value(8bits):provides additional details about the error.
Optional TLVs:作为未来扩展使用。
参见上述定义,本发明实施例一提供了一种创建SRTE隧道的方法,参见图2,本发明实施例一包括:
201、第一节点确定第二节点为粘连节点。
第一节点确定第二节点为粘连节点。该第一节点为配置有SRTE隧道的节点。示例性的,如图1所示,图1以路径中设置有12个节点为例,R1为头节点。假设路由器支持的最大栈深为10层,该路径中最深的标签栈为:{1001-1002-1003-1004-1005-1006-1007-1008-1009-1010-1011},该标签栈的栈深为11层,超过了路由器支持的最大栈深。
该第二节点可以为图1中的R2,为该第一节点从标签栈中从最后一个标签向前数第十个标签1002,该第一节点从流量工程数据库(traffic engineering database,TEDB)中确定该1002标签对应R2节点,R2到R12之间的标签栈为{1002-1003-1004-1005-1006-1007-1008-1009-1010-1011},该标签栈为目标标签栈。该第一节点也可以确定R3至R11之间的任意一个节点作为粘连节点,此处不视为限制。该目标标签栈的栈深不超过路由器支持的最大栈深。目标标签栈为粘连节点至尾节点之间形成的标签栈。
202、第一节点向第二节点发送第一报文。
第一节点和第二节点建立一个点到点的UDP连接。第一节点向第二节点发送第一报文,该第一报文为上述BLReq消息。该第一报文包括步骤101所述的目标标签栈,该第一报文用于指示该第二节点申请粘连标签。
该第一报文格式可以为如下:
203、第二节点在预设的标签池里申请粘连标签并生成转发表项。
第二节点根据第一报文在预设的标签池里申请粘连标签,根据需要产品适配生成转发表项,该转发表项包括粘连标签和目标标签栈的对应关系。例如,该第二节点申请的粘连标签为100,则该转发表项可以为:
{100,1002-1003-1004-1005-1006-1007-1008-1009-1010-1011};
204、第二节点向第一节点发送第二报文。
第二节点向第一节点发送第二报文,该第二报文为上述BLRep消息。该第二报文中携带有粘连标签。该第二报文可以为如下:
205、第一节点根据第二报文建立端到端的SRTE隧道。
第一节点接收到该第二报文之后,取出粘连标签100,然后将粘连标签下给带约束最短路径优先(constraint shortest path first,CSPF),第一节点可以使用该CSPD本地算路计算出SRTE标签栈{1001,100}。则SRTE端到端隧道建立成功。
此时,如步骤101所述,目标标签栈的栈深不超过路由器的最大栈深,该头节点上的标签栈为{1001-100},所以该头节点上标签栈的最大栈深为2,不超过该路由器支持的最大栈深的栈深也不超过路由器支持的最大栈深。
需要说明的是,该第一节点可以确定多个粘连节点,每一个粘连节点对应一个目标标签栈。当标签栈超过路由器支持的最大栈深的两倍时,可以采用嵌套的方式建立SRTE端到端的隧道。
示例性的:若栈深最深的标签栈为{1001-1002-1003……-1028-1029-1030},该标签栈的栈深为30层,该第一节点可以确定倒数第10个路由器R21为第一个粘连节点,R21对应的目标标签栈为{1021-1022-1023-1024-1025-1026-1027-1028-1029-1030}。若该R21对应的粘连标签为100,则该R21的转发表项为{100,1021-1022-1023-1024-1025-1026-1027-1028-1029-1030}。该第一节点可以继续确定倒数第19个路由器R12为第二个粘连节点,R12对应的目标标签栈为:{1012-1013-1014-1015-1016-1017-1018-1019-1020-100}。若该R12对应的粘连标签为200,则该R12的转发表项为{200,1012-1013-1014-1015-1016-1017-1018-1019-1020-100}。该第一节点可以确定第3个路由器R3为第三个粘连节点,该R3对应的目标标签栈为:{1003-1004-1005-1006-1007-1008-1009-1010-1011-200}。若该R3对应的粘连标签为300,则该R3的转发表项为{300,1003-1004-1005-1006-1007-1008-1009-1010-1011-200}。该第一节点上的标签栈为{1001-1002-300}。这样无论标签栈的栈深有多少层,该第一节点可以确定多个粘连标签,通过嵌套的方式建立起SRTE端到端的隧道。
本发明实施例一提供了一种创建SRTE隧道的方法及相关设备,该方法包括:第一节点确定第二节点为粘连节点;第一节点向粘连节点发送第一报文,第一报文包括目标标签栈信息,用于指示粘连节点请求粘连标签;第一节点从粘连节点接收第二报文,第二报文包括粘连标签;第一节点根据第二报文建立端到端的段路由流量工程SRTE隧道。该第一节点通过该粘连节点就可以建立端到端的SRTE隧道,不会受到标签栈的栈深限制。
在实施例一中,若第二节点在预设的标签池里申请粘连标签失败时,该第一节点可以继续将第二节点当做粘连标签也可以重新确定一个粘连节点。实施例二提供了一种方法,当第二节点在预设的标签池里申请粘连标签失败时,该第二节点继续作为粘连节点在预设的标签池里申请粘连标签。参见图3,实施例二包括:
301、第一节点确定第二节点为粘连节点。
参见实施例一的步骤201,此处不再赘述。
302、第一节点向第二节点发送第一报文。
参见实施例一的步骤202,此处不再赘述。
303、第二节点在标签池里申请粘连标签失败。
第二节点在标签池里申请粘连标签失败,失败的原因可以包括如下:
1.第一报文中没有携带Binding-label object或Label-Stack object;
2.第二节点无粘连能力;
3.资源池中无可被分配的粘连标签。
304、第二节点在标签池里申请粘连标签并生成转发表项。
在一种可能的实施方式中,该第二节点申请粘连标签失败之后,该第二节点可以等待预设时长,然后再在预设的标签池里申请粘连标签。该预设时长具体不做限定。若又申请失败,可以每隔一个预设时长申请一次,直到申请到粘连标签为止。
在另一种可能的实施方式中,在该第二节点申请粘连标签失败之后,该第二节点可以向第一节点发送第三报文,该第三报文用于指示第二节点申请粘连标签失败。该第一节点接收到该第三报文之后,向第二节点发送第四报文,该第四报文用于指示第二节点继续在预设标签池里申请粘连标签并生成转发表项。
该第三报文可以为如下:
(BLErr)Message格式如下:
305、第二节点向第一节点发送第二报文。
参见实施例一的步骤204,此处不再赘述。
306、第一节点根据第二报文建立端到端的SRTE隧道。
参见实施例一的步骤205,此处不再赘述。
若第二节点在预设的标签池里申请粘连标签失败时,该第二节点向第一节点发送第三报文之后,该第一节点可以取消第二节点的粘连节点身份,重新确定第三节点为粘连节点。参见图4,实施例三包括:
401、第一节点确定第二节点为粘连节点。
参见实施例一的步骤201,此处不再赘述。
402、第一节点向第二节点发送第一报文。
参见实施例一的步骤202,此处不再赘述。
403、第二节点在标签池里申请粘连标签失败。
参加实施例二的步骤303,此处不再赘述。
404、第二节点向第一节点发送第三报文。
第二节点向第一节点发送第三报文,该第三报文用于指示第二节点申请粘连标签失败。该第三报文可以如实施例二的步骤304所述,此处不再赘述。
405、第一节点确定第三节点为粘连节点。
第一节点确定第三节点为粘连节点。如图1所示,该第三节点可以为R3至R11之间任意一个节点。该第三节点不同于第二节点,假设R3为第三节点,则该目标标签栈为{1003-1004-1005-1006-1007-1008-1009-1010-1011}。该目标标签栈的栈深不超过路由器支持的最大栈深。
406、第一节点向第三节点发送第五报文。
该第一节点和第三节点建立UDP连接。第一节点向第三节点发送第五报文,该第五报文为BLReq消息。该第五报文包括步骤305中所述的目标标签栈,该第五报文用于指示第三节点申请粘连标签。
该第五报文的格式可以参照实施例一的步骤202,此处不再赘述。
407、第三节点在标签池里申请粘连标签并生成转发表项。
第三节点根据第五报文在预设的标签池里申请粘连标签,根据需要产品适配生成转发表项,该转发表项包括粘连标签和目标标签栈的对应关系。例如,该第三节点申请的粘连标签为200,则该转发表项可以为:
{200,1003-1004-1005-1006-1007-1008-1009-1010-1011};
408、第三节点向第一节点发送第二报文。
第三节点向第二节点发送第二报文,该第二报文为BLRep消息。该第二报文中携带有粘连标签。该第二报文如实施例一中的步骤204所述,此处不再赘述。
409、第一节点根据第二报文建立端到端的SRTE隧道。
可以参照实施例一的步骤205,此处不再赘述。
需要说明的是,在实施例一至实施例三中,当创建好的端到端的SRTE隧道变down时,第一节点发送BLDel消息给粘连节点。该BLDel消息可以为如下:
值得注意的是,若一个粘连节点只是对应一个配置了SRTE隧道的第一节点,该粘连节点在接收到该第一节点发送的BLDel消息之后就删除该粘连标签。若存在多个配置了SRTE隧道的节点都与该粘连节点对应,则需要所有与该粘连节点对应的配置了SRTE隧道的节点都向该粘连节点发送BLDel消息之后,该粘连节点才删除该粘连标签。
该实施例一与实施例三所述的方法还可以应用于网络拓扑中配置了控制器,但是控制器无法工作的场景。
本发明实施例第四方面提供了一种装置50,该装置50可以为实施例一至实施例三任一的第一节点。
如图5所示,该装置50可以包括:
处理单元501,用于确定第二节点为粘连节点。可以参照实施例一的步骤201、实施例二的步骤301以及实施例三的步骤401进行理解,此处不再赘述。
该处理单元501,还用于根据第二报文建立端到端的段路由流量工程SRTE隧道。可以参照实施例一的步骤205、实施例二的步骤306以及实施例三的步骤409进行理解,此处不再赘述。
该处理单元501,还用于确定第三节点为粘连节点,第三节点为不同于第二节点的一个节点。可以参照实施例三的步骤405进行理解,此处不再赘述
发送单元502,用于向粘连节点发送第一报文,第一报文包括目标标签栈信息,用于指示粘连节点申请粘连标签。可以参照实施例一的步骤202、实施例二的步骤302以及实施例三的步骤402进行理解,此处不再赘述。
该发送单元502,还用于向第二节点发送第四报文,第四报文用于指示第二节点在预设的标签池里申请粘连标签并生成转发表项。可以参照实施例二的步骤304进行理解,此处不再赘述。
该发送单元502,还用于向第三节点发送第五报文,第五报文包括目标标签栈信息,用于指示粘连节点申请粘连标签。可以参照实施例三的步骤406进行理解,此处不再赘述。
接收单元503,用于从粘连节点接收第二报文,第二报文包括粘连标签。可以参照实施例一的步骤204、实施例二的步骤305以及实施例三的步骤408进行理解,此处不再赘述。
该接收单元503,还用于从第二节点接收第三报文,第三报文用于指示第二节点申请粘连标签失败。可以参照实施例二的步骤304和实施例三的步骤404进行理解,此处不再赘述。
本发明实施例第五方面提供了一种装置60,该装置60可以为实施例一至实施例三任意的第二节点。
如图6所示,该装置60可以包括:
接收单元601,用于从第一节点接收第一报文,第一报文包括目标标签栈信息,用于指示粘连节点申请粘连标签。可以参照实施例一的步骤202、实施例二的步骤302以及实施例三的步骤402进行理解,此处不再赘述。
该接收单元601,还用于从第一节点接收第四报文,第四报文用于指示第二节点在预设的标签池里申请粘连标签并生成转发表项。可以参照实施例二的步骤304进行理解,此处不再赘述。
处理单元602,用于根据第一报文在预设的标签池里申请粘连标签并生成转发表项。可以参照实施例一的步骤203以及实施例二的步骤304进行理解,此处不再赘述。
该处理单元602,还用于当申请粘连标签失败时,在预设时长之后在预设的标签池里申请粘连标签并生成转发表项。可以参照实施例二的步骤304进行理解,此处不再赘述。
发送单元603,用于向第一节点发送第二报文,第二报文包括粘连标签,第二报文用于指示第一节点建立端到端的段路由流量工程SRTE隧道。可以参照实施例一的步骤204、实施例二的步骤305进行理解,此处不再赘述。
该发送单元603,还用于当处理单元在预设的标签池里申请粘连标签失败时,向第一节点发送第三报文,第三报文用于指示处理单元申请粘连标签失败。请参照实施例二的步骤304和实施例三的步骤404进行理解,此处不再赘述。
以上对本发明实施例所提供的一种创建SRTE隧道的方法及相关设备进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。
Claims (16)
1.一种创建段路由流量工程SRTE隧道的方法,其特征在于,所述方法包括:
第一节点确定第二节点为粘连节点;
所述第一节点向所述粘连节点发送第一报文,所述第一报文包括目标标签栈信息,用于指示所述粘连节点申请粘连标签,所述目标标签栈信息为所述粘连节点与路径中最后一个节点之间形成的标签栈的信息,所述路径为所述粘连节点所处的路径;
所述第一节点从所述粘连节点接收第二报文,所述第二报文包括所述粘连标签;
所述第一节点根据所述第二报文中的所述粘连标签建立端到端的段路由流量工程SRTE隧道。
2.根据权利要求1所述的方法,其特征在于,所述第一节点向所述粘连节点发送第一报文之后,所述方法还包括:
所述第一节点从所述第二节点接收第三报文,所述第三报文用于指示所述第二节点申请所述粘连标签失败;
所述第一节点向所述第二节点发送第四报文,所述第四报文用于指示所述第二节点在预设的标签池里申请所述粘连标签并生成转发表项。
3.根据权利要求1所述的方法,其特征在于,所述第一节点向所述粘连节点发送第一报文之后,所述方法还包括:
所述第一节点从所述第二节点接收第三报文,所述第三报文用于指示所述第二节点申请所述粘连标签失败;
所述第一节点确定第三节点为粘连节点,所述第三节点为不同于所述第二节点的一个节点;
所述第一节点向所述第三节点发送第五报文,所述第五报文包括目标标签栈信息,用于指示所述粘连节点申请粘连标签;
所述第一节点从所述粘连节点接收第二报文包括:
所述第一节点从所述第三节点接收第二报文。
4.一种创建段路由流量工程SRTE隧道的方法,其特征在于,所述方法包括:
第二节点从第一节点接收第一报文,所述第一报文包括目标标签栈信息,用于指示所述第二节点申请粘连标签,所述目标标签栈信息为所述第二节点与路径中最后一个节点之间形成的标签栈的信息,所述路径为所述第二节点所处的路径;
所述第二节点根据所述第一报文在预设的标签池里申请所述粘连标签并生成转发表项;
所述第二节点向所述第一节点发送第二报文,所述第二报文包括所述粘连标签,所述第二报文用于指示所述第一节点根据所述粘连标签建立端到端的段路由流量工程SRTE隧道。
5.根据权利要求4所述的方法,其特征在于,所述第二节点从第一节点接收第一报文之后,所述方法还包括:
当所述第二节点在所述预设的标签池里申请所述粘连标签失败时,所述第二节点向所述第一节点发送第三报文,所述第三报文用于指示所述第二节点申请所述粘连标签失败;
所述第二节点从所述第一节点接收第四报文,所述第四报文用于指示所述第二节点在预设的标签池里申请粘连标签并生成转发表项。
6.根据权利要求4所述的方法,其特征在于,所述第二节点在预设的标签池里申请粘连标签并生成转发表项包括:
当所述第二节点在所述预设的标签池里申请所述粘连标签失败时,所述第二节点在预设时长之后在预设的标签池里申请所述粘连标签并生成转发表项。
7.一种创建段路由流量工程SRTE隧道的装置,其特征在于,所述装置包括:
处理单元,用于确定第二节点为粘连节点;
发送单元,用于向所述粘连节点发送第一报文,所述第一报文包括目标标签栈信息,用于指示所述粘连节点申请粘连标签,所述目标标签栈信息为所述粘连节点与路径中最后一个节点之间形成的标签栈的信息,所述路径为所述粘连节点所处的路径;
接收单元,用于从所述粘连节点接收第二报文,所述第二报文包括所述粘连标签;
所述处理单元,用于根据所述第二报文中的所述粘连标签建立端到端的段路由流量工程SRTE隧道。
8.根据权利要求7所述的装置,其特征在于,
所述接收单元,还用于从所述第二节点接收第三报文,所述第三报文用于指示所述第二节点申请所述粘连标签失败;
所述发送单元,还用于向所述第二节点发送第四报文,所述第四报文用于指示所述第二节点在预设的标签池里申请所述粘连标签并生成转发表项。
9.根据权利要求7所述的装置,其特征在于,
所述接收单元,还用于从所述第二节点接收第三报文,所述第三报文用于指示所述第二节点申请所述粘连标签失败;
所述处理单元,还用于确定第三节点为粘连节点,所述第三节点为不同于所述第二节点的一个节点;
所述发送单元,还用于向所述第三节点发送第五报文,所述第五报文包括目标标签栈信息,用于指示所述粘连节点申请粘连标签;
所述接收单元,还用于从所述第三节点接收第二报文。
10.一种创建段路由流量工程SRTE隧道的装置,其特征在于,应用于第二节点,所述第二节点为粘连节点,所述装置包括:
接收单元,用于从第一节点接收第一报文,所述第一报文包括目标标签栈信息,用于指示所述粘连节点申请粘连标签,所述目标标签栈为所述粘连节点与路径中最后一个节点之间形成的标签栈的信息,所述路径为所述粘连节点所处的路径;
处理单元,用于根据所述第一报文在预设的标签池里申请所述粘连标签并生成转发表项;
发送单元,用于向所述第一节点发送第二报文,所述第二报文包括所述粘连标签,所述第二报文用于指示所述第一节点根据所述粘连标签建立端到端的段路由流量工程SRTE隧道。
11.根据权利要求10所述的装置,其特征在于,
所述发送单元,还用于当所述处理单元在所述预设的标签池里申请所述粘连标签失败时,向所述第一节点发送第三报文,所述第三报文用于指示所述处理单元申请所述粘连标签失败;
所述接收单元,还用于从所述第一节点接收第四报文,所述第四报文用于指示所述第二节点在预设的标签池里申请粘连标签并生成转发表项。
12.根据权利要求10所述的装置,其特征在于,
所述处理单元,还用于当申请所述粘连标签失败时,在预设时长之后在预设的标签池里申请所述粘连标签并生成转发表项。
13.一种创建段路由流量工程SRTE隧道的装置,其特征在于,包括:
处理器,存储器和收发器,所述存储器用于存储计算机程序;所述处理器用于执行所述存储器中存储的计算机指令,以使得所述装置执行权利要求1至权利要求3任一所述的方法。
14.一种创建段路由流量工程SRTE隧道的装置,其特征在于,包括:
处理器,存储器和收发器,所述存储器用于存储计算机程序;所述处理器用于执行所述存储器中存储的计算机指令,以使得所述装置执行权利要求4至权利要求6任一所述的方法。
15.一种计算机可读存储介质,存储计算机程序,所述计算机程序可被处理器执行以实现权利要求1至3中任一项所述的方法。
16.一种计算机可读存储介质,存储计算机程序,所述计算机程序可被处理器执行以实现权利要求4至6中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910797458.7A CN110519168B (zh) | 2019-08-27 | 2019-08-27 | 一种创建srte隧道的方法及相关设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910797458.7A CN110519168B (zh) | 2019-08-27 | 2019-08-27 | 一种创建srte隧道的方法及相关设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110519168A CN110519168A (zh) | 2019-11-29 |
CN110519168B true CN110519168B (zh) | 2022-03-11 |
Family
ID=68628226
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910797458.7A Active CN110519168B (zh) | 2019-08-27 | 2019-08-27 | 一种创建srte隧道的方法及相关设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110519168B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112118179B (zh) * | 2020-08-10 | 2022-01-14 | 中盈优创资讯科技有限公司 | 创建端到端分段路由sr路径的方法及装置 |
CN112615914B (zh) * | 2020-12-10 | 2022-07-05 | 中国电信股份有限公司江苏分公司 | 一种利用边界网关协议传递组播热备表项的方法 |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102420759A (zh) * | 2011-11-30 | 2012-04-18 | 福建星网锐捷网络有限公司 | 标签交换路径建立方法、装置及系统、以及相应设备 |
CN102907051A (zh) * | 2012-07-16 | 2013-01-30 | 华为技术有限公司 | 标记交换路径建立方法、数据转发方法及设备 |
CN105871721A (zh) * | 2015-01-19 | 2016-08-17 | 中兴通讯股份有限公司 | 一种段路由处理方法、处理装置及发送装置 |
US9979629B2 (en) * | 2015-08-21 | 2018-05-22 | Cisco Technology, Inc. | Distribution of segment identifiers in network functions virtualization and software defined network environments |
US10182000B2 (en) * | 2016-08-03 | 2019-01-15 | Cisco Technology, Inc. | Loop detection and avoidance for segment routed traffic engineered paths |
CN109450793A (zh) * | 2018-12-18 | 2019-03-08 | 锐捷网络股份有限公司 | 一种业务流量调度的方法和装置 |
CN109525493A (zh) * | 2018-10-29 | 2019-03-26 | 中国联合网络通信集团有限公司 | 一种网络路径建立方法及装置 |
CN109587009A (zh) * | 2018-12-28 | 2019-04-05 | 北京华为数字技术有限公司 | 配置无缝双向转发检测sbfd机制的方法和装置 |
CN109587059A (zh) * | 2017-09-28 | 2019-04-05 | 华为技术有限公司 | Sr-be内层隧道标签的配置方法、设备及通信系统 |
CN109831382A (zh) * | 2019-02-13 | 2019-05-31 | 华为技术有限公司 | 一种路径计算方法、装置及设备 |
CN110061920A (zh) * | 2018-01-18 | 2019-07-26 | 中兴通讯股份有限公司 | 一种创建双向段路由隧道的方法、设备及存储介质 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10135716B2 (en) * | 2015-10-15 | 2018-11-20 | Cisco Technology, Inc. | Latency optimized segment routing tunnels |
-
2019
- 2019-08-27 CN CN201910797458.7A patent/CN110519168B/zh active Active
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102420759A (zh) * | 2011-11-30 | 2012-04-18 | 福建星网锐捷网络有限公司 | 标签交换路径建立方法、装置及系统、以及相应设备 |
CN102907051A (zh) * | 2012-07-16 | 2013-01-30 | 华为技术有限公司 | 标记交换路径建立方法、数据转发方法及设备 |
CN105871721A (zh) * | 2015-01-19 | 2016-08-17 | 中兴通讯股份有限公司 | 一种段路由处理方法、处理装置及发送装置 |
US9979629B2 (en) * | 2015-08-21 | 2018-05-22 | Cisco Technology, Inc. | Distribution of segment identifiers in network functions virtualization and software defined network environments |
US10182000B2 (en) * | 2016-08-03 | 2019-01-15 | Cisco Technology, Inc. | Loop detection and avoidance for segment routed traffic engineered paths |
CN109587059A (zh) * | 2017-09-28 | 2019-04-05 | 华为技术有限公司 | Sr-be内层隧道标签的配置方法、设备及通信系统 |
CN110061920A (zh) * | 2018-01-18 | 2019-07-26 | 中兴通讯股份有限公司 | 一种创建双向段路由隧道的方法、设备及存储介质 |
CN109525493A (zh) * | 2018-10-29 | 2019-03-26 | 中国联合网络通信集团有限公司 | 一种网络路径建立方法及装置 |
CN109450793A (zh) * | 2018-12-18 | 2019-03-08 | 锐捷网络股份有限公司 | 一种业务流量调度的方法和装置 |
CN109587009A (zh) * | 2018-12-28 | 2019-04-05 | 北京华为数字技术有限公司 | 配置无缝双向转发检测sbfd机制的方法和装置 |
CN109831382A (zh) * | 2019-02-13 | 2019-05-31 | 华为技术有限公司 | 一种路径计算方法、装置及设备 |
Non-Patent Citations (2)
Title |
---|
Advertising Segment Routing Policies in BGP draft-ietf-idr-segment-routing-te-policy-02;S.Previdi,ET all;《IETF Network Working Group》;20120302;全文 * |
MPLS Label Stack Encoding;E.Rosen,ET all;《IETF Network Working Group》;20010131;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN110519168A (zh) | 2019-11-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3643022B1 (en) | A method for establishing segment routing for ipv6 tunnel | |
CN109218189B (zh) | 跨域的路径的标识信息的确定方法、装置及存储介质 | |
US10218600B2 (en) | Path computation element hierarchical software defined network control | |
US11528220B2 (en) | Method and device for creating bi-directional segment routing tunnel and storage medium | |
EP3270546B1 (en) | Message processing method, device and system | |
JP6506475B2 (ja) | ビットインデックス付きエクスプリシットレプリケーションを実現する方法及びビット転送ルータ | |
EP2892188B1 (en) | Method for determining packet forwarding path, network device and control device | |
WO2020001309A1 (zh) | 一种传输路径故障的处理方法、装置及系统 | |
US11502937B2 (en) | Path establishment method and controller | |
CN109831382A (zh) | 一种路径计算方法、装置及设备 | |
EP2299637B1 (en) | Pseudo wire establishing method, device and system | |
US20160006614A1 (en) | Source Routing Using Path Computation Elements | |
EP3442175A1 (en) | System and method for computing point-to-point label switched path crossing multiple domains | |
WO2016131225A1 (zh) | 报文转发处理方法、装置、控制器及路由转发设备 | |
EP3787243A1 (en) | Data packet processing method and apparatus, storage medium, and electronic device | |
CN101878623B (zh) | 在要求路径建立的ip网络中增强路由优化 | |
CN110519168B (zh) | 一种创建srte隧道的方法及相关设备 | |
CN105323176A (zh) | 地址信息的发布方法及装置 | |
CN107968752A (zh) | 一种sid获取方法和装置 | |
CN104144122B (zh) | 建立标签交换路径的方法、设备及系统 | |
CN103825826B (zh) | 一种动态路由的实现方法和装置 | |
CN107623630B (zh) | 一种位索引显式复制信息传递方法和装置 | |
CN107294859B (zh) | 一种信息传递方法、装置及系统 | |
JP4455521B2 (ja) | マルチキャストmplsネットワーク構築方法及びマルチキャストmplsネットワークシステム及びルータ及びプログラム | |
CN111641561B (zh) | 报文转发方法、装置、隧道创建方法、装置及网络设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |