一种段路由处理方法、处理装置及发送装置的制造方法

文档序号:10515376阅读:206来源:国知局
一种段路由处理方法、处理装置及发送装置的制造方法
【专利摘要】本发明公开了一种段路由处理方法、处理装置及发送装置,在路径长度较长时,仍能保证报文的发送。所述段路由处理方法包括:计算源节点到目的节点的策略路径,为所述策略路径分配未使用的标识,将策略路径与所述标识的映射信息下发给转发节点,或者将策略子路径与所述标识的映射信息下发给转发节点。所述段路由处理装置包括构建模块和发送模块。所述段路由报文发送装置,包括接收模块和转发模块。本发明实施例通过在段列表中携带部分策略路径即策略子路径,并通过标识来指示后续节点的转发,使得当策略路径长度超过转发节点栈处理能力时,仍能够保证报文通过段路由转发至目的节点。
【专利说明】
-种段路由处理方法、处理装置及发送装置
技术领域
[0001] 本发明设及网络通信技术,尤指一种段路由处理方法、处理装置及发送装置。
【背景技术】
[0002] 段路由SR(Segment Routing)是一种基于源地址的路由的方法,通过在数据报文 外部叠加一串影响现有最短路径转发的节点信息,报文根据运些指定路径节点或链路信息 进行最短路径转发。图1所示为SR报文头(SR Header)格式,其中怯R1SR2'''S^}为段列 表(Segment list)用于携带指定SR节点路径信息,Ptr为指针,SI为SR ingress (入口) 节点,SE为SR egress(出口)节点。段列表即为一条显示的策略路径,指导数据报文沿策 略路径中的节点或链路信息进行转发。当包含段路由报文头的报文在SR网络域中进行传 输时,通过段路由头中携带的指定SR节点路径信息,网络设备(一般为路由器)根据段路 由报文头中的段操作指示进行相应的操作,该操作指示包括Push (推入),Next (下一个), Continue(继续)。当操作指示为化sh操作时,网络设备(一般为路由器)将SR Header 压入到IP报文中,或者在段路由报文头中增加其他的段指示;Next和Continue操作通过 Ptr的指针来表明,当判断出当前的段操作已经完毕,指针移到下一个段,指针所指的段表 明是用于转发下一跳的活动段(active segment) ;Continue操作为该段操作没有结束,指 针仍然停留在当前的段上。通过SR指定路径转发功能,可W非常便捷的实现网络的负载均 衡和流量工程,W及快速重路由等复杂网络功能。其中段操作指示也可W扩展实现基于业 务或者拓扑的路由指示,那么段路由也可W实现基于业务的网络虚拟化W及操作管理维护 (0AM)等方面的应用。
[0003] 段路由技术充分利用了现有的MPLS (Multiprotocol L油el Switching,多协议标 签交换)封装技术,现有的MPLS报文头或者IPv6报文头中携带段路由报文头,如图2所示 为MPLS报文头的格式,MPLS报文头由32bits(4个字节)组成,其中包括20bits的标签字 段,3bits的CoS (Class of Service,服务种类)字段,用于报文的优先级指示。化it的找 底标记(图中所示巧,用于MPLS的嵌套操作,8bits的TTLOlme To Live,生存时间)字 段,用于MPLS网络中的TTL计数。段路由技术可W完全兼容和继承了现有的MPLS转发数 据平面,不需要修改MPLS的报文头就可W实现对于段路由的转发。
[0004] 具体在MPLS数据封装中,SR化ader中的segment list通过标签找堆叠的形式实 现,其中SR Ptr指向的为当前执行的segment (active segment),对应于MPLS标签找中的 顶层标签;SR中包括为SR化ader定义的CONTINUE操作,对应MPLS中的标签交换(SWAP) 操作;通过本地SR转发表来进行携带同一标签值的入标签和出标签的SWAP操作;SR中还 包括为SR化ader定义的肥XT操作,对应MPLS中的标签POP操作;即弹出顶层标签;SR中 还包括为SR化ader定义的PU甜操作,对应MPLS中的PU甜操作,即压入标签。而如果标签 找中的标签堆叠个数超过转发设备的找处理能力(尤其是对报文执行压找操作的节点), 即路径过长,也即路径中指定的节点或链路信息个数过多,则转发设备无法进行处理,报文 将无法发送。

【发明内容】
阳〇化]本发明要解决的技术问题是提供一种段路由处理方法、处理装置及发送装置,在 路径长度较长时,仍能保证报文的发送。
[0006] 为了解决上述技术问题,本发明提供了一种段路由处理方法,包括:
[0007] 计算源节点到目的节点的策略路径,为所述策略路径分配未使用的标识,将策略 路径与所述标识的映射信息下发给转发节点,或者将策略子路径与所述标识的映射信息下 发给转发节点。
[000引进一步地,计算源节点到目的节点的策略路径后,所述方法还包括:判断所述策略 路径长度超过转发节点的找处理能力时,为所述策略路径分配未使用的标识。
[0009] 进一步地,所述将策略路径与所述标识的映射信息下发给转发节点,包括:根据所 述策略路径上各节点的找处理能力对所述策略路径进行分段,将所述策略路径分为两段或 两段W上的策略子路径,将所述策略路径的路径信息及所述标识发送给每个策略子路径的 首节点。
[0010] 进一步地,将所述策略路径的路径信息及所述标识发送给每个策略子路径的首节 点后,所述方法还包括:除源节点外的其他策略子路径的首节点根据自身找处理能力W及 接收到的策略路径的路径信息确定W自身为首节点的策略子路径,建立所述策略子路径与 所述标识的标识映射转发关系。
[0011] 进一步地,所述将策略子路径与所述标识的映射信息下发给转发节点,包括:根据 所述策略路径上各节点的找处理能力对所述策略路径进行分段,将所述策略路径分为两段 或两段W上的策略子路径,将每段策略子路径的路径信息及所述标识发送给对应的策略子 路径的首节点。
[0012] 进一步地,将每段策略子路径的路径信息及所述标识发送给对应的策略子路径的 首节点后,所述方法还包括:除源节点外的其他策略子路径的首节点根据接收到的策略子 路径的路径信息建立W自身为首节点的策略子路径与所述标识的标识映射转发关系。
[0013] 进一步地,所述方法还包括:除最后一条策略子路径首节点外的其他每个策略子 路径的首节点在发送报文时,在段路由报文头中携带W本节点为首节点的策略子路径的路 径信息W及所述标识,下一段策略子路径的首节点在识别所述标识后根据标识映射转发关 系转发报文,最后一条策略子路径首节点在发送报文时,在段路由报文头中携带W本节点 为首节点的策略子路径的路径信息。
[0014] 进一步地,所述下一段策略子路径的首节点在识别所述标识后根据标识映射转发 关系转发报文,包括:
[0015] 除最后一条策略子路径首节点外的其他策略子路径的首节点识别所述标识后,查 找标识映射转发关系,获得本首节点对应的策略子路径,本首节点在发送报文时,在段路由 报文头中携带本首节点对应的策略子路径的路径信息W及所述标识;最后一条策略子路径 首节点识别所述标识后,查找标识映射转发关系,获得本首节点对应的策略子路径,本首节 点在发送报文时,在段路由报文头中携带本首节点对应的策略子路径的路径信息。
[0016] 进一步地,所述根据策略路径上各节点的找处理能力对所述策略路径进行分段, 包括:
[0017] 由控制器根据所述策略路径上各节点的找处理能力对所述策略路径进行分段;所 述策略路径上各节点的找处理能力由策略路径上的各节点自动上报给所述控制器,或者由 所述控制器向策略路径上各个节点下发获取请求,策略路径上各节点收到请求后,将本节 点的找处理能力上报给所述控制器。
[0018] 进一步地,所述根据所述策略路径上各节点的找处理能力对所述策略路径进行分 段,包括:根据策略路径上各节点的找处理能力W及W下信息中的一种或多种对所述策略 路径进行分段:所述策略路径中是否有指定链路;所述段路由报文的报文头中是否需要携 带其他标签。
[0019] 进一步地,所述根据策略路径上各节点的找处理能力W及策略路径中是否有指定 链路对所述策略路径进行分段,包括:当所述策略路径有指定链路时,在根据策略路径上各 节点的找处理能力对所述策略路径进行分段时,需将指定链路与所述指定链路的起始节点 分在同一段策略子路径中。
[0020] 进一步地,所述根据策略路径上各节点的找处理能力W及所述段路由报文是否需 要携带其他标签对所述策略路径进行分段,包括:如果段路由报文需要携带私网标签或其 他策略标签,则根据策略路径上各节点的找处理能力对策略路径分段时,每段策略子路径 的长度应小于该段策略子路径的首节点能够处理的找深。
[0021] 进一步地,所述根据策略路径上各节点的找处理能力对所述策略路径进行分段, 包括:对所述策略路径分段时,每个策略子路径的长度不超过所述策略子路径的首节点能 够处理的找深。
[0022] 为了解决上述技术问题,本发明还提供了一种段路由处理装置,其特征在于,包括 构建模块和发送模块,其中:
[0023] 所述构建模块,用于计算源节点到目的节点的策略路径,为所述策略路径分配未 使用的标识;
[0024] 所述发送模块,用于将策略路径与所述标识的映射信息下发给转发节点,或者将 策略子路径与所述标识的映射信息下发给转发节点。
[00巧]进一步地,所述构建模块为所述策略路径分配未使用的标识,包括:所述构建模 块判断所述策略路径长度超过转发节点的找处理能力时,为所述策略路径分配未使用的标 识。
[00%] 进一步地,所述发送模块将策略路径与所述标识的映射信息下发给转发节点,包 括:所述发送模块根据所述策略路径上各节点的找处理能力对所述策略路径进行分段,将 所述策略路径分为两段或两段W上的策略子路径,将所述策略路径的路径信息及所述标识 发送给每个策略子路径的首节点。
[0027] 进一步地,所述发送模块将策略子路径与所述标识的映射信息下发给转发节点, 包括:所述发送模块根据所述策略路径上各节点的找处理能力对所述策略路径进行分段, 将所述策略路径分为两段或两段W上的策略子路径,将每段策略子路径的路径信息及所述 标识发送给对应的策略子路径的首节点。
[0028] 进一步地,所述装置还包括找处理能力获取模块,用于获取策略路径上的各节点 自动上报的找处理能力,或者用于向策略路径上各个节点下发找处理能力获取请求,并接 收策略路径上各节点上报的找处理能力。
[0029] 进一步地,所述发送模块根据所述策略路径上各节点的找处理能力对所述策略路 径进行分段,包括:所述发送模块根据策略路径上各节点的找处理能力W及W下信息中的 一种或多种对所述策略路径进行分段:所述策略路径中是否有指定链路;所述段路由报文 的报文头中是否需要携带其他标签。
[0030] 进一步地,所述发送模块根据策略路径上各节点的找处理能力W及策略路径中是 否有指定链路对所述策略路径进行分段,包括:所述发送模块判断所述策略路径有指定链 路时,在根据策略路径上各节点的找处理能力对所述策略路径进行分段时,将指定链路与 所述指定链路的起始节点分在同一段策略子路径中。
[0031] 进一步地,所述发送模块根据策略路径上各节点的找处理能力W及所述段路由报 文是否需要携带其他标签对所述策略路径进行分段,包括:所述发送模块判断如果段路由 报文需要携带私网标签或其他策略标签,则根据策略路径上各节点的找处理能力对策略路 径分段时,使每段策略子路径的长度小于该段策略子路径的首节点能够处理的找深。
[0032] 进一步地,所述发送模块根据策略路径上各节点的找处理能力对所述策略路径进 行分段,包括:所述发送模块对所述策略路径分段时,使每个策略子路径的长度不超过所述 策略子路径的首节点能够处理的找深。
[0033] 为了解决上述技术问题,本发明还提供了一种段路由报文的发送装置,包括接收 模块和转发模块,其中:
[0034] 所述接收模块,用于接收策略路径或策略子路径的路径信息W及为所述策略路径 分配的标识;
[0035] 所述转发模块,用于在本装置作为策略子路径首节点时,根据自身找处理能力W 及策略路径的路径信息确定W自身为首节点的策略子路径,建立所述策略子路径与所述标 识的标识映射转发关系,或者根据策略子路径的路径信息直接建立W自身为首节点的策略 子路径与所述标识的标识映射转发关系。
[0036] 进一步地,所述转发模块还用于在本装置作为策略子路径的首节点时,在本节点 发送报文时,在段路由报文头中携带W本节点为首节点的策略子路径的路径信息W及所述 标识;W及用于在本装置作为策略子路径的首节点时,在收到所述标识后,根据所述标识映 射转发关系转发报文。
[0037] 进一步地,所述转发模块根据所述标识映射转发关系转发报文,包括:所述转发模 块查找所述标识映射转发关系,获得本节点对应的策略子路径,在发送报文时,在段路由报 文头中携带本节点对应的策略子路径的路径信息W及所述标识。
[0038] 进一步地,所述装置还包括找处理能力上报模块,用于自动上报本节点的找处理 能力,或者用于在收到找处理能力获取请求后上报本节点的找处理能力。
[0039] 本发明实施例通过在段列表中携带部分策略路径即策略子路径,并通过标识来指 示后续节点的转发,使得当策略路径长度超过转发节点找处理能力时,仍能够保证报文通 过SR转发至目的节点。
[0040] 本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变 得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在说明书、权利 要求书W及附图中所特别指出的结构来实现和获得。
【附图说明】
[0041] 附图用来提供对本发明技术方案的进一步理解,并且构成说明书的一部分,与本 申请的实施例一起用于解释本发明的技术方案,并不构成对本发明技术方案的限制。
[0042] 图1为现有SR报文头格式示意图;
[0043] 图2为现有MPLS报文头格式示意图;
[0044] 图3为本发明实施例一流程图;
[0045] 图4为本发明实施例二装置结构示意图;
[0046] 图5为本发明实施例Ξ装置结构示意图;
[0047] 图6为应用示例一网络拓扑图;
[0048] 图7为应用示例二网络拓扑图; W例图8为应用不例二网络拓扑图。
【具体实施方式】
[0050] 为使本发明的目的、技术方案和优点更加清楚明白,下文中将结合附图对本发明 的实施例进行详细说明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中 的特征可W相互任意组合。
[0051] 在附图的流程图示出的步骤可W在诸如一组计算机可执行指令的计算机系统中 执行。并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可不同于此处的顺 序执行所示出或描述的步骤。 阳0巧 实施例1
[0053] 本实施例描述一种段路由处理方法,如图3所示,包括W下步骤:
[0054] 步骤110,计算源节点到目的节点的策略路径,为所述策略路径分配未使用的标 识;
[0055] 上述源节点和目的节点是指待转发的段路由报文的源节点和目的节点。
[0056] 计算策略路径的操作通常由控制器完成,该策略路径可W是根据策略或配置显 示指定的报文必须经过的节点或链路,默认情况下的路径为最短路径。超级路由器或者 服务器可W作为控制器。控制器通过南向接口获取到网络的拓扑信息及各节点及链路的 SID(段标识)信息,根据应用计算符合应用需求的策略路径。
[0057] 优选地,控制器计算源节点到目的节点的一条策略路径后,先判断该策略路径长 度(策略指定需要经过的节点或链路数目)是否超过转发节点的找处理能力,如果是,则为 该策略路径分配一个未使用的标识,如果未超过,则可W选择仍采用本实施例方法(例如 通过本实施例所述减少找深封装W减少报文头负载)或者也可W采用现有转发技术转发 报文。
[0058] 步骤120,将策略路径与所述标识的映射信息下发给转发节点,或者将策略子路径 与所述标识的映射信息下发给转发节点。
[0059] 将映射信息下发给转发节点用W使转发节点基于该映射信息转发段路由报文。
[0060] 优选地,控制器为一条策略路径分配一个未使用的标识(该标识可W是MPLS标签 或者是IPV6地址)。控制器下发的策略路径和标识的映射信息例如包括:标识和与该标识 映射的策略路径信息。控制器下发的策略子路径和标识的映射信息例如包括:标识和与该 标识映射的策略子路径信息。
[0061] 上述映射信息可通过南向接口协议下发给转发节点。南向接口协议包括但不限于 W下协议中任意一个:路径计算单元协议(PCE巧、边界网关协议-链路状态度GP-L巧、开放 流(Openflow)、网络配置(Netconf)。
[0062] 控制器在计算得到策略路径后,需根据策略路径上各节点的找处理能力对所述策 略路径进行分段,将所述策略路径分为两段或两段W上的策略子路径,控制器可直接将策 略路径与标识的映射信息下发给转发节点(方式一),也可W将策略子路径与标识的映射 信息下发给转发节点(方式二),具体地:
[0063] 对于方式一:优选地,控制器将该策略路径的路径信息及该策略路径对应的标识 发送给每个策略子路径的首节点。控制器也可W将映射信息发送给策略路径上所有节点, 但只有策略子路径首节点需要对该映射信息进行处理。
[0064] 除源节点外的其他策略子路径的首节点根据自身找处理能力W及接收到的策略 路径的路径信息确定W自身为首节点的策略子路径,建立所述策略子路径与所述标识的标 识映射转发关系。 阳0化]对于方式二:优选地,控制器将每段策略子路径的路径信息及该各策略路径对应 的标识发送给对应的策略子路径的首节点。控制器也可W为一条策略路径分配多个标识, 如果分配多个标识,则不同的子路径可对应不同的标识。
[0066] 除源节点外的其他策略子路径的首节点根据接收到的策略子路径的路径信息建 立W自身为首节点的策略子路径与所述标识的标识映射转发关系。
[0067] 为策略路径分配标识,并将标识和策略路径,或者标识和策略子路径的映射信息 发送给策略子路径的首节点的作用在于,使每个策略子路径的首节点在发送报文(数据 报文)时,在段路由报文头中携带W本节点为首节点的策略子路径的路径信息W及所述 标识,即在段路由报文头的段列表中除了携带路径信息外,还携带策略子路径对应的标识 (最后一条策略子路径的首节点可不必在段路由报文头的段列表中携带上述标识)。运样, 当该段策略子路径上的最后一个节点亦即下一段策略子路径上的首节点收到该报文后,解 析段列表获得所述标识,根据预先接收到的所述标识与策略子路径的映射关系,可W确定 下一段策略子路径亦即W本节点为首节点的策略子路径,基于该策略子路径构建新的报文 头并转发报文。构建新的报文头时在段路由报文头的段列表中携带表示W本节点为首节点 的策略子路径的路径信息,如果该段策略子路径的尾节点不是段路由的目标节点,则还需 要在段列表中携带下一段策略子路径对应的标识。
[0068] 上述控制器根据策略路径上各节点的找处理能力对所述策略路径进行分段,将所 述策略路径分为两段或两段W上的策略子路径,具体地:控制器对策略路径分段时,每段策 略子路径的长度不超过策略子路径的首节点能够处理的标签找找深(即找处理能力)。如 果所有策略子路径首节点的找处理能力相同,则每段策略子路径的长度也相同。例如各节 点的找处理能力为4,则一条经过10个节点的策略路径刚好可W被分为3个策略子路径 (一条策略子路径的尾节点与下一条策略子路径的首节点为同一节点)。如果策略子路径 首节点的找处理能力不同,则每段策略子路径的长度也不相同,例如一条经过8个节点的 策略路径,源节点(节点1)的找处理能力为4,则第一段策略子路径的长度可W为4(最大 为4,也可W小于4),节点4为第一段策略子路径的尾节点,亦即第二段策略子路径的首节 点,该节点4的找处理能力为3,则第二段策略子路径的长度可W为3(最大为3,也可W小 于3),节点6为第二段策略子路径的尾节点,亦即第Ξ段策略子路径的首节点,该节点6的 找处理能力为3,则第Ξ段策略子路径长度为3,则该策略路径刚好被分为3条策略子路径。
[0069] 除了根据策略路径上各节点的找处理能力对所述策略路径进行分段,对策略路径 分段时还可W参考W下信息中的一种或多种:
[0070] 1、所述策略路径中是否有指定链路;
[0071] 如果策略路径中有指定链路,则在根据策略路径上各节点的找处理能力对所述策 略路径进行分段时,需将指定链路与所述指定链路的起始节点分在同一段策略子路径中。 由于该指定链路的标签需占用标签找中的一个标签位置,如果将其与该链路起始节点分在 不同策略子路径中,则可能导致策略子路径首节点无法处理。
[0072] 2、所述段路由报文的报文头中是否需要携带其他标签。
[0073] 如果段路由报文需要携带私网标签或其他策略标签(例如源节点标签和/或目的 节点标签基于策略需要始终携带)等其他标签,则根据策略路径上各节点的找处理能力对 策略路径分段时,每段策略子路径的长度应小于该段策略子路径的首节点能够处理的标签 找找深。运里是指需要携带的私网标签或其他策略标签需要携带在段列表中,则由于携带 的标签需占用标签找中的一个标签位置,因此策略子路径长度会受到影响而必须缩短。
[0074] 控制器获取策略路径上各节点的找处理能力的方式可W有W下两种:由策略路径 上的各节点自动上报给控制器,或者由控制器向策略路径上各个节点下发获取请求,策略 路径上各节点收到请求后,将本节点的找处理能力上报给所述控制器。 阳0巧]实施例2
[0076] 本实施例描述一种段路由处理装置,如图4所示,包括构建模块和发送模块,其 中:
[0077] 所述构建模块210,用于计算源节点到目的节点的策略路径,为所述策略路径分配 未使用的标识;
[0078] 所述发送模块220,用于将策略路径与所述标识的映射信息下发给转发节点,或者 将策略子路径与所述标识的映射信息下发给转发节点。
[0079] 上述装置位于控制器侧,通过上述控制器侧的处理可W使转发节点基于上述映射 信息转发段路由报文(即数据报文),避免由于节点的找处理能力有限而导致的报文无法 转发。
[0080] 上述构建模块210为所述策略路径分配未使用的标识,包括:所述构建模块210判 断所述策略路径长度超过转发节点的找处理能力时,为所述策略路径分配未使用的标识。 该标识可W是一个未使用的MPLS标签也可W是一个IPv6地址。
[0081] 上述发送模块220通过南向接口协议将所述映射信息下发给转发节点。上所述南 向接口协议包括 PCEP、BGP-LS、openflow,Netconf 任意之一。
[0082] 优选地,所述发送模块220将策略路径与所述标识的映射信息下发给转发节点, 包括:发送模块220根据所述策略路径上各节点的找处理能力对所述策略路径进行分段, 将所述策略路径分为两段或两段W上的策略子路径,将所述策略路径的路径信息及所述标 识发送给每个策略子路径的首节点。
[0083] 优选地,所述发送模块220将策略子路径与所述标识的映射信息下发给转发节 点,包括:发送模块220根据所述策略路径上各节点的找处理能力对所述策略路径进行分 段,将所述策略路径分为两段或两段W上的策略子路径,将每段策略子路径的路径信息及 所述标识发送给对应的策略子路径的首节点。
[0084] 在一个优选实施例中,上述装置还可W包括找处理能力获取模块,用于获取策略 路径上的各节点自动上报的找处理能力,或者用于向策略路径上各个节点下发找处理能力 获取请求,并接收策略路径上各节点上报的找处理能力。
[00化]在一个优选实施例中,发送模块220根据策略路径上各节点的找处理能力对所述 策略路径进行分段时,使每个策略子路径的长度不超过所述策略子路径的首节点能够处理 的找深。
[0086] 发送模块220除了根据策略路径上各节点的找处理能力对所述策略路径进行分 段外,还可W参考W下信息中的一种或多种对策略路径进行分段:①策略路径中是否有指 定链路;②段路由报文的报文头中是否需要携带其他标签。
[0087] 发送模块220参考上述信息①对策略路径进行分段,具体包括:发送模块220判断 策略路径有指定链路时,在根据策略路径上各节点的找处理能力对所述策略路径进行分段 时,将指定链路与所述指定链路的起始节点分在同一段策略子路径中。
[0088] 发送模块220参考上述信息②对策略路径进行分段,具体包括:发送模块220判 断如果段路由报文需要携带私网标签或其他策略标签(例如段路由的源节点和/或目的节 点),则根据策略路径上各节点的找处理能力对策略路径分段时,使每段策略子路径的长度 小于该段策略子路径的首节点能够处理的找深。
[0089] 实施例3
[0090] 本实施例描述一种段路由报文的发送装置,如图5所示,包括接收模块310和转发 模块320,其中:
[0091] 所述接收模块310,用于接收策略路径或策略子路径的路径信息W及为所述策略 路径分配的标识;
[0092] 所述转发模块320,用于在本装置作为策略子路径首节点时,根据自身找处理能力 W及策略路径的路径信息确定W自身为首节点的策略子路径,建立所述策略子路径与所述 标识的标识映射转发关系,或者根据策略子路径的路径信息直接建立W自身为首节点的策 略子路径与所述标识的标识映射转发关系。
[0093] 本实施例装置位于转发设备即节点侧,对于所有策略子路径首节点可适用,优选 地,第一条策略子路径首节点即报文的源节点在收到策略路径或策略子路径的路径信息W 及为所述策略路径分配的标识后,可W不必建立标识映射转发关系,只根据接收到的策略 子路径的路径信息和标识构建段路由报文头,在段列表中填写路径信息和标识。
[0094] 上述转发模块320还用于在本装置作为策略子路径的首节点时,在本节点发送报 文时,在段路由报文头中携带W本节点为首节点的策略子路径的路径信息W及所述标识; W及用于在本装置作为策略子路径的首节点时,在识别所述标识后,根据所述标识映射转 发关系转发报文。具体地,转发模块320根据标识映射转发关系转发报文,具体包括:转发 模块查找标识映射转发关系,获得本节点对应的策略子路径,在发送报文时,在段路由报文 头中携带本节点对应的策略子路径的路径信息W及所述标识。
[00巧]在一个优选实施例中,上述装置还包括找深处理能力上报模块,用于自动上报本 节点的找处理能力,或者用于在收到找处理能力获取请求后上报本节点的找处理能力。
[0096] 应用示例一
[0097] 本示例通过扩展管理SRGB (段路由全局块),使用空闲的MPLS标签用W表示策略 子路径,如图6所示: 阳09引 图中包括10个设备,对应的节点标识(N孤E ID)分别为R1、R2、R3、R4、R5、R6、 R7、R8、R9和R10,为该10个设备分配的段标识(SID)分别为101、102、103、104、105、106、 107、108、109和110。SRGB块大小为100-200。待转发的段路由报文的源节点为R1,目的 节点为R10。在本示例中控制器指定的从源节点R1到目的节点R10的策略路径为:101-10 2-104-103-105-106-108-107-109-110。若控制器通过南向接口获知网络中各节点的找处理 能力均为4,即各节点的标签找只能处理4层标签,则将该策略路径分为3条策略子路径, 包括:策略子路径1 :101-102-104-103,策略子路径2 :103-105-106-108,策略子路径3 : 108-107-109-110。对策略路径的分段也可W理解为对段列表的分段或分片。具体处理包 括:
[0099] 1、控制器选择一未被分配的标签如100,采用标签100对该策略路径在控制器上 进行映射维护; 阳100] 标签未被分配或未被使用表示该标签不是节点的段标识,也不是链路的段标识。 阳101] 2、控制器通过南向接口协议(PCEP、BGP-LS、openflow或化tconf等)将策略子路 径与标签的映射信息下发给各策略子路径的首节点(策略子路径的首节点可W理解为需 要拼接报文头段列表的节点即LIST分段拼接节点): 阳102] 对于R1节点,控制器可直接下发102-104-103-100,表明R1节点在待转发报文的 报文头的段列表中需封装的内容为102-104-103-100(首节点的SID信息表示自身,在封装 及表项形成过程中没有必要出现),也可W下发102-104-103与100的映射,R1节点收到后 自动封装段列表内容为102, 104, 103, 100 ; 阳10引对于R3节点,控制器可直接下发100与105-106-108-100的映射,R3收到该映射 关系后可形成如表1所示的标签映射转发表,运样当R3节点发现入标签是100时,push上 多重标签,下一跳和出接口复制的是出标签中最外层标签一一标签105的转发表下一跳和 出接口。控制器也可W直接下发100与105-106-108的映射,R3操作同上。 阳104] 表1标签映射转发表 阳1化]
[0106] 对于R8节点,控制器可直接下发100与107-109-110的映射,R8形成转发表,发 现入标签是100时,push上多重标签,下一跳和出接口复制的是所述出标签中的最外层标 签的转发表中的下一跳和出接口。 阳107] 3、具体报文转发流程如下:
[0108] 数据报文到达R1节点,根据接收的映射信息,封装4层报文头 {102, 104, 103, 100},根据外层标签102查找转发表项,转发至节点R2 ; 阳109] R2收到携带报文头102-104-103-100的数据报文,发现最外层标签是自身的SID, 弹出102标签并依据104转发,转发至R4节点,R4如R2操作将报文转发至R3节点,R3节 点弹出自身103标签后,识别标签100,查找标签映射转发表,对报文进行重新封装,报文头 的段列表封装的内容为(105, 106, 108, 100};
[0110] 后续报文如上述步骤转发至R8节点,R8节点识别标签100,查找标签映射转发表, 对报文进行重新封装,报文头的段列表封装的内容为{107, 109, 110}。 阳111] 由此数据报文依据策略子路径W及标签的映射信息在无需改变转发设备的忍片 封装处理能力的情形下将报文转发至目的地址。
[0112] 当有多条流量即多个数据报文的策略路径均超过节点找处理能力时,则为运些 不同的策略路径分别指定不同的标签。上述的流量l(Flowl)的策略路径1为:101-102- 104-103-105-106-108-107-109-110,对应的标签为100,为流量2(Flow2)指定的策略路 径2为:101-103-104-106-105-107-108-110,对应的标签为200。Flowl的转发参照上述 过程实现。对于Flow2,将该策略路径2分为两个策略子路径分别为101-103-104-106和 106-105-107-108-110。控制器通过南向结构协议将策略子路径与标签200的映射信息下 发给各策略子路径的首节点,即R1和R6 :
[0113] 对于R1节点,下发映射信息:103-104-106-200 ; 阳114] 对于R6节点,下发200与105-107-108-110的映射,指导重新封装转发;
[0115] 化0W2具体报文转发流程如下:
[0116] 报文到达R1节点,根据对该流的策略封装4层报文头{103, 104, 106, 200}。根据 外层标签103查找转发表项,发现自己是103的次末跳节点,弹出103标签并转发至节点 R3。
[0117] R3收到携带报文头{104, 106,200}的数据报文,发现自己是104的次末跳节点,弹 出104标签并转发至节点R4,转发至R4节点,R4如R3操作将报文转发至R6节点,R6节点 识别出标签200,对报文进行重新封装,段列表为{105, 106, 108, 110};
[0118] 报文后续如上述步骤转发至R10节点。
[0119] 应用示例二
[0120] 上述示例中策略路径均覆盖的是节点SID,当路径需要指定严格的显示路径时,需 要设及到各节点的邻接SID (Adjacency SID),如图7所示,R3和R5之间有两条等价链路, 上面的链路指定的邻接SID为本地标签值,如上下两条链路分别为9001和9002,若指定的 显示路径一定要通过R3-R5的上面一条链路可达,则控制器计算出的策略路径为:101-102 -104-103-9001-105-106-108-107-109-110。参照示例1中的控制器操作,为所述该策略路 径分配的标签为199,非SRGB范围内的标签为保证流量的转发无误,则本地标签需要携带 在该设备的SID后,在有标签(199)的情况下,不能在SID和本地标签处进行分片,即如上 述所述,R1上携带4层标签,102-104-103-9001,则标签199无法携带,则: 阳121] 对于R1节点,控制器下发102-104-199,表明报文头所需封装的内容; 阳122] 对于R4节点,下发199与103-9001-105-199的映射,或199与103-9001-105的 映射,指导重新封装; 阳123] 对于R5节点,下发199与106-108-107-199的映射,或者199与106-108-107的 映射,指导重新封装; 阳124] 对于R7节点,下发199与109-110的映射,指导重新封装。
[01巧]具体报文转发流程如应用示例一所述,当报文到达R3时,R3上会将9001标签弹 出并将报文投递到9001的链路上转发。 阳1%] 应用示例Ξ
[0127] 段列表一般用于指导公网标签转发,若有流量进来需要携带私网标签发送到对 端,则私网标签如图8所示,FLOW 1从CE (用户网络边缘设备)侧发往对端CE,所经的策略 路径与应用示例一一致,但需始终携带的是Lv化油el vpn的标识),所述Lv始终需要携带 在找底,则在对策略路径分段时,需要根据嵌套能力减少一重标签来分段,即策略子路径长 度需要减 1。策略路径为:101-102-104-103-105-106-108-107-109-110,其中 101 和 110 是给阳1和PE2 (PE为运营商侧边缘路由器)分配的,该路径映射的标识是100。标签找深 的处理能力是4,但因为私网标签需要始终携带,所W留给SR的找深变为3,所述分段为: 阳12引对于R1节点,下发102-104-100-Lv,表示需要转发的报文的报文头中段列表所需 封装的内容; 阳129] 对于R4节点,下发100到103-105-100的映射,指导标签100的查找并指导报文 的拼接转发; 阳130] 对于R5节点,下发100到106-108-100的映射,指导标签100的查找并指导报文 的拼接转发; 阳13U 对于R8节点,下发100到107-109-110的映射,指导标签100的查找并指导报文 的拼接转发; 阳132] 同样,若有其它应用需求需要把策略路径的目的地址110始终携带在找底时,如 示减一层标签深度处理压找操作。 阳133] 应用示例四:
[0134] 如应用示例一所示的组网及配置:
[0135] 如图6所示,为图中各设备的NODE ID分配的SID分别为101-110, SRGB块大小 为 100-200,若控制器上指定的策略路径为 101-102-104-103-105-106-108-107-109-110, 控制器上通过南向接口获知现有设备的标签找找处理能力,如R1-R5的找处理能力为3, R6-R10的找处理能力为5,则需要根据找处理能力对策略路径进行相应分段,所述分段可 W如示实现:
[0136] 1、控制器上100的标签未被分配,采用100的标签对该策略路径在控制器上进行 的映射。(该标签100不是节点或链路的SID,仅用于表示映射。)
[0137] 2、控制器根据获取的节点找深处理能力及策略路径信息,将所述映射信息下发给 各策略子路径首节点,也即相应需要拼接SR报文头LIST封装的节点(根据获取到的找深 处理能力,知道分段会发生在R1、R4、贴、R8上,所述信息通过南向接口协议下发,如通过 PCEP、BGP-LS、openflow等协议的扩展下发):
[0138] 对于 R1 节点,下发的映射信息为:100 :101-102-104-103-105-106-108-107-109- 110 ;R1知道自己是源节点,本身的找深处理能力是3,则直接形成封装{102,104,100}加载 在报文头,下一跳沿102转发。
[0139] 对于 R4 节点,下发 100 :101-102-104-103-105-106-108-107-109-110 的映射,形 成转发表,发现入标签是100时,push上3重标签(103(为自身在list列表中的下一跳的 SID),105,100}(该段列表内容也可W理解为映射分片或列表分片),下一跳和出接口复制 的是所述映射分片的第一个SID 103的转发表的下一跳和出接口。
[0140]对于 R5 节点,下发 100 :101-102-104-103-105-106-108-107-109-110 的映射,形 成转发表,发现入标签是100时,push上3重标签(106(为自身在list列表中的下一跳的 SID),108,100},下一跳和出接口复制的是所述映射分片的第一个SID 106的转发表的下 一跳和出接口。 阳 141]对于 R8 节点,下发 100 :101-102-104-103-105-106-108-107-109-110 的映射,形 成转发表,发现入标签是100时,push上3重(运里的3重是因为list列表只剩下3跳了, 而自身的处理能力尽管有5重,但用不上5重封装,若list列表有多于5重的标签,则照5 重进行分片)标签(1〇7(为自身在list列表中的下一跳的SID),109,110},下一跳和出接 口复制的是所述映射分片的第一个SID 107转发表的下一跳和出接口。 阳142] 3、具体报文转发流程如下: 阳143] 报文到达R1节点,根据对该流的策略封装3层标签报文头102-104-100。根据外 层标签102查找转发表项,转发至节点R2 ; 阳144] R2收到携带报文头102-104-100的流量,发现最外层标签是自身的SID,弹出102 标签并依据104转发,转发至R4节点;
[0145] R4收到携带报文头104-100的流量,发现最外层标签是自身的SID,弹出104标签 并依据100转发,发现100的转发表需要封装3重标签103-105-100,下一跳及出接口是103 的下一跳及出接口,报文转发至R3 ; 阳146] R3收到携带报文头103-105-100的流量,发现最外层标签是自身的SID,弹出103 标签并依据105转发,转发至R5节点; 阳147] R5收到携带报文头105-100的流量,发现最外层标签是自身的SID,弹出105标签 并依据100转发,发现100的转发表需要封装3重标签106-108-100,下一跳及出接口是106 的下一跳及出接口,报文转发至R6 ; 阳148] R6收到携带报文头106-108-100的流量,发现最外层标签是自身的SID,弹出106 标签并依据108转发,转发至R8节点;
[0149] R8收到携带报文头108-100的流量,发现最外层标签是自身的SID,弹出108标签 并依据100转发,发现100的转发表需要封装3重标签107-109-110,下一跳及出接口是107 的下一跳及出接口,报文转发至R7 ;
[0150] R7收到携带报文头107-109-110的流量,发现最外层标签是自身的SID,弹出107 标签并依据109转发,转发至R9节点; 阳151] R9收到携带报文头109-110的流量,发现最外层标签是自身的SID,弹出109标签 并依据110转发,转发至R10节点; 阳152] R10收到携带报文头110的流量,发现最外层标签是自身的SID,弹出110标签, 恢复原始报文转发。 阳153] 由此报文依据路径策略信息在无需改变设备的忍片封装处理能力的情形下将报 文转发至目的地址。
[0154] 虽然本发明所掲露的实施方式如上,但所述的内容仅为便于理解本发明而采用的 实施方式,并非用W限定本发明。任何本发明所属领域内的技术人员,在不脱离本发明所掲 露的精神和范围的前提下,可W在实施的形式及细节上进行任何的修改与变化,但本发明 的专利保护范围,仍须w所附的权利要求书所界定的范围为准。
【主权项】
1. 一种段路由处理方法,其特征在于,包括: 计算源节点到目的节点的策略路径,为所述策略路径分配未使用的标识,将策略路径 与所述标识的映射信息下发给转发节点,或者将策略子路径与所述标识的映射信息下发给 转发节点。2. 根据权利要求1所述的方法,其特征在于, 计算源节点到目的节点的策略路径后,所述方法还包括:判断所述策略路径长度超过 转发节点的栈处理能力时,为所述策略路径分配未使用的标识。3. 根据权利要求1所述的方法,其特征在于, 所述映射信息下发给转发节点,包括:所述映射信息通过南向接口协议下发给转发节 点。4. 根据权利要求3所述的方法,其特征在于, 所述南向接口协议包括以下协议中任意一个:路径计算单元协议(PCEP)、边界网关协 议-链路状态(BGP-LS)、开放流(Openflow)、网络配置(Netconf)。5. 根据权利要求1所述的方法,其特征在于, 所述将策略路径与所述标识的映射信息下发给转发节点,包括: 根据所述策略路径上各节点的栈处理能力对所述策略路径进行分段,将所述策略路径 分为两段或两段以上的策略子路径,将所述策略路径的路径信息及所述标识发送给每个策 略子路径的首节点。6. 根据权利要求5所述的方法,其特征在于, 将所述策略路径的路径信息及所述标识发送给每个策略子路径的首节点后,所述方法 还包括:除源节点外的其他策略子路径的首节点根据自身栈处理能力以及接收到的策略路 径的路径信息确定以自身为首节点的策略子路径,建立所述策略子路径与所述标识的标识 映射转发关系。7. 根据权利要求1所述的方法,其特征在于, 所述将策略子路径与所述标识的映射信息下发给转发节点,包括: 根据所述策略路径上各节点的栈处理能力对所述策略路径进行分段,将所述策略路径 分为两段或两段以上的策略子路径,将每段策略子路径的路径信息及所述标识发送给对应 的策略子路径的首节点。8. 根据权利要求7所述的方法,其特征在于, 将每段策略子路径的路径信息及所述标识发送给对应的策略子路径的首节点后,所述 方法还包括:除源节点外的其他策略子路径的首节点根据接收到的策略子路径的路径信息 建立以自身为首节点的策略子路径与所述标识的标识映射转发关系。9. 根据权利要求5或7所述的方法,其特征在于, 所述方法还包括:除最后一条策略子路径首节点外的其他每个策略子路径的首节点在 发送报文时,在段路由报文头中携带以本节点为首节点的策略子路径的路径信息以及所述 标识,下一段策略子路径的首节点在识别所述标识后根据标识映射转发关系转发报文,最 后一条策略子路径首节点在发送报文时,在段路由报文头中携带以本节点为首节点的策略 子路径的路径信息。10. 根据权利要求9所述的方法,其特征在于, 所述下一段策略子路径的首节点在识别所述标识后根据标识映射转发关系转发报文, 包括: 除最后一条策略子路径首节点外的其他策略子路径的首节点识别所述标识后,查找标 识映射转发关系,获得本首节点对应的策略子路径,本首节点在发送报文时,在段路由报文 头中携带本首节点对应的策略子路径的路径信息以及所述标识;最后一条策略子路径首节 点识别所述标识后,查找标识映射转发关系,获得本首节点对应的策略子路径,本首节点在 发送报文时,在段路由报文头中携带本首节点对应的策略子路径的路径信息。11. 根据权利要求5或7所述的方法,其特征在于, 所述根据策略路径上各节点的栈处理能力对所述策略路径进行分段,包括: 由控制器根据所述策略路径上各节点的栈处理能力对所述策略路径进行分段;所述策 略路径上各节点的栈处理能力由策略路径上的各节点自动上报给所述控制器,或者由所述 控制器向策略路径上各个节点下发获取请求,策略路径上各节点收到请求后,将本节点的 栈处理能力上报给所述控制器。12. 根据权利要求5或7所述的方法,其特征在于, 所述根据所述策略路径上各节点的栈处理能力对所述策略路径进行分段,包括: 根据策略路径上各节点的栈处理能力以及以下信息中的一种或多种对所述策略路径 进行分段: 所述策略路径中是否有指定链路; 所述段路由报文的报文头中是否需要携带其他标签。13. 根据权利要求12所述的方法,其特征在于, 所述根据策略路径上各节点的栈处理能力以及策略路径中是否有指定链路对所述策 略路径进行分段,包括: 当所述策略路径有指定链路时,在根据策略路径上各节点的栈处理能力对所述策略路 径进行分段时,需将指定链路与所述指定链路的起始节点分在同一段策略子路径中。14. 根据权利要求12所述的方法,其特征在于, 所述根据策略路径上各节点的栈处理能力以及所述段路由报文是否需要携带其他标 签对所述策略路径进行分段,包括: 如果段路由报文需要携带私网标签或其他策略标签,则根据策略路径上各节点的栈处 理能力对策略路径分段时,每段策略子路径的长度应小于该段策略子路径的首节点能够处 理的栈深。15. 根据权利要求5或7或13或14所述的方法,其特征在于, 所述根据策略路径上各节点的栈处理能力对所述策略路径进行分段,包括: 对所述策略路径分段时,每个策略子路径的长度不超过所述策略子路径的首节点能够 处理的栈深。16. -种段路由处理装置,其特征在于,包括构建模块和发送模块,其中: 所述构建模块,用于计算源节点到目的节点的策略路径,为所述策略路径分配未使用 的标识; 所述发送模块,用于将策略路径与所述标识的映射信息下发给转发节点,或者将策略 子路径与所述标识的映射信息下发给转发节点。17. 根据权利要求16所述的装置,其特征在于, 所述构建模块为所述策略路径分配未使用的标识,包括:所述构建模块判断所述策略 路径长度超过转发节点的栈处理能力时,为所述策略路径分配未使用的标识。18. 根据权利要求16所述的装置,其特征在于, 所述发送模块通过南向接口协议将所述映射信息下发给转发节点。19. 根据权利要求18所述的装置,其特征在于, 所述南向接口协议包括以下协议中任意一个:路径计算单元协议(PCEP)、边界网关协 议-链路状态(BGP-LS)、开放流(Openflow)、网络配置(Netconf)。20. 根据权利要求16所述的装置,其特征在于, 所述发送模块将策略路径与所述标识的映射信息下发给转发节点,包括: 所述发送模块根据所述策略路径上各节点的栈处理能力对所述策略路径进行分段,将 所述策略路径分为两段或两段以上的策略子路径,将所述策略路径的路径信息及所述标识 发送给每个策略子路径的首节点。21. 根据权利要求16所述的装置,其特征在于, 所述发送模块将策略子路径与所述标识的映射信息下发给转发节点,包括: 所述发送模块根据所述策略路径上各节点的栈处理能力对所述策略路径进行分段,将 所述策略路径分为两段或两段以上的策略子路径,将每段策略子路径的路径信息及所述标 识发送给对应的策略子路径的首节点。22. 根据权利要求20或21所述的装置,其特征在于, 所述装置还包括栈处理能力获取模块,用于获取策略路径上的各节点自动上报的栈处 理能力,或者用于向策略路径上各个节点下发栈处理能力获取请求,并接收策略路径上各 节点上报的栈处理能力。23. 根据权利要求20或21所述的装置,其特征在于, 所述发送模块根据所述策略路径上各节点的栈处理能力对所述策略路径进行分段,包 括: 所述发送模块根据策略路径上各节点的栈处理能力以及以下信息中的一种或多种对 所述策略路径进行分段: 所述策略路径中是否有指定链路; 所述段路由报文的报文头中是否需要携带其他标签。24. 根据权利要求23所述的装置,其特征在于, 所述发送模块根据策略路径上各节点的栈处理能力以及策略路径中是否有指定链路 对所述策略路径进行分段,包括: 所述发送模块判断所述策略路径有指定链路时,在根据策略路径上各节点的栈处理能 力对所述策略路径进行分段时,将指定链路与所述指定链路的起始节点分在同一段策略子 路径中。25. 根据权利要求23所述的装置,其特征在于, 所述发送模块根据策略路径上各节点的栈处理能力以及所述段路由报文是否需要携 带其他标签对所述策略路径进行分段,包括: 所述发送模块判断如果段路由报文需要携带私网标签或其他策略标签,则根据策略路 径上各节点的栈处理能力对策略路径分段时,使每段策略子路径的长度小于该段策略子路 径的首节点能够处理的栈深。26. 根据权利要求20或21或24或25所述的装置,其特征在于, 所述发送模块根据策略路径上各节点的栈处理能力对所述策略路径进行分段,包括: 所述发送模块对所述策略路径分段时,使每个策略子路径的长度不超过所述策略子路 径的首节点能够处理的栈深。27. -种段路由报文的发送装置,包括接收模块和转发模块,其中: 所述接收模块,用于接收策略路径或策略子路径的路径信息以及为所述策略路径分配 的标识; 所述转发模块,用于在本装置作为策略子路径首节点时,根据自身栈处理能力以及策 略路径的路径信息确定以自身为首节点的策略子路径,建立所述策略子路径与所述标识的 标识映射转发关系,或者根据策略子路径的路径信息直接建立以自身为首节点的策略子路 径与所述标识的标识映射转发关系。28. 根据权利要求27所述的装置,其特征在于, 所述转发模块还用于在本装置作为策略子路径的首节点时,在本节点发送报文时,在 段路由报文头中携带以本节点为首节点的策略子路径的路径信息以及所述标识;以及用于 在本装置作为策略子路径的首节点时,在收到所述标识后,根据所述标识映射转发关系转 发报文。29. 根据权利要求28所述的装置,其特征在于, 所述转发模块根据所述标识映射转发关系转发报文,包括: 所述转发模块查找所述标识映射转发关系,获得本节点对应的策略子路径,在发送报 文时,在段路由报文头中携带本节点对应的策略子路径的路径信息以及所述标识。30. 根据权利要求27所述的装置,其特征在于, 所述装置还包括栈处理能力上报模块,用于自动上报本节点的栈处理能力,或者用于 在收到栈处理能力获取请求后上报本节点的栈处理能力。
【文档编号】H04L12/723GK105871721SQ201510026561
【公开日】2016年8月17日
【申请日】2015年1月19日
【发明人】廖婷, 马汝胜, 周蕙菁, 祝沈财
【申请人】中兴通讯股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1