CN110677341A - 一种数据转发方法、装置、电子设备及存储介质 - Google Patents
一种数据转发方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN110677341A CN110677341A CN201910857698.1A CN201910857698A CN110677341A CN 110677341 A CN110677341 A CN 110677341A CN 201910857698 A CN201910857698 A CN 201910857698A CN 110677341 A CN110677341 A CN 110677341A
- Authority
- CN
- China
- Prior art keywords
- node
- equipment
- node device
- node equipment
- transmission path
- 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.)
- Pending
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/24—Multipath
-
- 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/12—Shortest path evaluation
-
- 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]
- H04L45/507—Label distribution
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明实施例提供了一种数据转发方法、装置、电子设备及存储介质,用以在大规模网络应用中实现SRv6数据转发。所述数据转发方法,包括:获取节点设备的属性信息和节点设备之间的拓扑信息,所述属性信息包括链路状态信息和SR能力信息;基于节点设备的属性信息、节点设备之间的拓扑信息以及预先存储的不可用路径数据库,确定从源节点设备到终点设备之间的最短传输路径;基于所述节点设备之间的拓扑信息和所述SR能力信息,在所述最短传输路径包括的节点设备中确定中间过渡节点设备;生成包括分别为所述源节点设备和所述中间过渡节点设备配置的SR策略的路径转发信息,并向所述源节点设备通知所述路径转发信息。
Description
技术领域
本发明涉及通信技术领域,尤其涉及一种数据转发方法、装置、电子设备及存储介质。
背景技术
随着5G、云计算、物联网等新业务技术的蓬勃发展,将带来海量的终端接入和爆发式的网络流量。传统的IPv4协议面临网络地址消耗殆尽且服务质量难以保证的问题,海量终端的接入也必将加速IPv6的发展进程。
IPv6其实不仅仅是地址的扩展能力,其IP头简单、灵活、高效、易扩展的特性,可以提供更智能、灵活的业务部署能力。而且传统网络连接需要配置多种协议,来支撑业务的承载,网络实现复杂,灵活性差,运维效率低,难以适应业务的不断变化,亟需一张简单、灵活的网络来匹配业务的发展。
SR(Segment Routing,分段路由)策略应运而生,SR策略是一种源路由协议,由源网络节点来为要转发的数据报文指定转发路径,并将转发路径中经过的SR设备节点的段标识列表信息封装到报文头中,转发路径中的中间节点设备只需要根据报文头部中指定转发路径中各自的段标签转发信息对经过的SR流量进行转发。
SRv6(Segment Routing IPv6,分段IPv6路由),是IPv6与SR技术的结合,通过在源网络节点为要转发的数据报文选择一个转发路径,并将转发路径中经过的SR设备节点的段标识列表信息以逆序方式组成段标签列表插入到数据报文IPv6头部中,形成SRH(SegmentRouting Header,分段IPv6头部),其他网络节点根据数据报文所携带的段标签列表来执行对应的转发指令来进行转发。
在转发过程中由源网络节点所封装的SRv6段标签列表会一直在数据报文的SRH头部中,通过改变SL(segments left,分段IPv6头部中字段名)字段来决定采用哪个SRv6段标签来进行转发。因此对于源端点设备,中间设备及终点设备都需要识别SRH头部中SRv6段标签列表。
实际应用中,在大规模网络中需要更多的SRv6段标签来确定转发路径,但是中间设备所能识别的SRv6段标签列表深度是有限的,因此SRv6在大规模网络应用上存在较大限制。
发明内容
本发明实施例提供了一种数据转发方法、装置、电子设备及存储介质,用以在大规模网络应用中实现SRv6数据转发。
第一方面,本发明实施例提供了一种数据转发方法,该方法包括:
获取节点设备的属性信息和节点设备之间的拓扑信息,属性信息包括链路状态信息和SR能力信息;
基于节点设备的属性信息、节点设备之间的拓扑信息以及预先存储的不可用路径数据库,确定从源节点设备到终点设备之间的最短传输路径;
基于节点设备之间的拓扑信息和SR能力信息,在最短传输路径包括的节点设备中确定中间过渡节点设备,中间过渡节点设备与相邻特殊节点设备之间的数据转发次数小于或等于中间过渡节点设备与相邻特殊节点设备之间的传输路径上每个节点设备所能识别的段标签深度,特殊节点设备包括以下一种或多种:源节点设备、终点设备和其它中间过渡节点设备;
生成包括分别为源节点设备和中间过渡节点设备配置的SR策略的路径转发信息,并向源节点设备通知路径转发信息。
本发明实施例提供的数据转发方法,由于中间过渡节点设备与特殊节点设备(源节点设备、终点设备或者其它中间过渡节点设备)之间的数据转发次数小于或等于中间过渡节点设备与特殊节点设备之间的传输路径上每个节点设备所能识别的段标签深度,因此,通过在最短传输路径上确定中间过渡节点设备,并生成分别为源节点设备和中间过渡节点设备配置的SR策略的路径转发信息,该路径转发消息可以在中间过渡节点设备处进行SR策略的替换,从而使得每个SR策略中的SRv6段标签深度均不超过中间过渡节点设备与特殊节点设备之间的节点设备所能识别的SRv6段标签列表深度,保证数据在中间过渡节点设备与特殊节点设备之间的转发,进而实现数据在大规模网络应用中的转发。
可选的,基于节点设备的属性信息、节点设备之间的拓扑信息以及预先存储的不可用路径数据库,确定从源节点设备到终点设备之间的最短传输路径,包括:
创建第一集合和第二集合,将源节点设备的标识加入第一集合中,将其它节点设备的标识加入第二集合中;
基于节点设备的属性信息和节点设备之间的拓扑信息,在第二集合中,确定与源节点设备的传输距离最短、且传输路径不在预先存储的不可用路径数据库中的转发节点设备的标识,将转发节点设备的标识添加到第一集合中,并在第二集合中删除转发节点设备的标识,重新在第二集合中确定转发节点设备,直至确定出的转发节点设备为终点设备,将终点设备的标识添加到第一集合中;
将第一集合中源节点设备和终点设备之间路径上的所有转发节点设备的标识对应的转发节点设备组成的路径确定为最短传输路径。
可选的,创建第一集合和第二集合,将源节点设备的标识加入第一集合中,将其它节点设备的标识加入第二集合中,包括:
创建第一集合和第二集合,将源节点设备的标识加入第一集合中,将其它节点设备中支持分段IPv6路由SRv6的节点设备的标识加入第二集合中。
可选的,基于节点设备之间的拓扑信息和SR能力信息,在最短传输路径包括的节点设备中确定中间过渡节点设备,包括:
基于节点设备之间的拓扑信息,从源节点设备后的第一个节点设备开始,在最短传输路径上,确定满足预设条件的第一目标节点设备;
在确定查找出的第一目标节点设备非终点设备时,基于最短传输路径上各节点设备的SR能力信息,从第一目标节点设备到源节点设备后的第一个节点设备之间的传输路径包括的节点设备中,查找支持SR策略的节点设备,若查找到支持SR策略的节点设备,则将查找到的节点设备确定为第一临时过渡节点设备;
基于节点设备之间的拓扑信息,从第一临时过渡节点设备后的第一个节点设备开始,在最短传输路径上,确定满足预设条件的第二目标节点设备;
在确定查找出的第二目标节点设备非终点设备时,循环执行下述步骤A和步骤B,直至确定出的目标节点设备为终点设备时,将所有临时过渡节点设备确定为中间过渡节点设备:
步骤A,基于最短传输路径上各节点设备的SR能力信息,从当前目标节点设备到前一临时过渡节点设备后的第一个节点设备之间的传输路径包括的节点设备中,查找支持SR策略的节点设备,若查找到支持SR策略的节点设备,则将查找到的节点设备确定为下一临时过渡节点设备;
步骤B,基于节点设备之间的拓扑信息,从下一临时过渡节点设备后的第一个节点设备开始,在最短传输路径上,确定满足预设条件的下一目标节点设备。
可选的,该方法还包括:
从当前目标节点设备到前一临时过渡节点设备后的第一个节点设备之间的传输路径包括的节点设备中,查找支持SR策略的节点设备,若未查找到支持SR策略的节点设备,将当前目标节点设备确定为备选失败节点;
在前一临时过渡节点设备到前一临时过渡节点设备的上一临时过渡节点设备之间的传输路径包括的节点设备中,继续查找支持SR策略的节点设备:
若查找到支持SR策略的节点设备,则将查找到的节点设备确定为新的前一中间过渡节点设备,并从新的前一中间过渡节点设备开始,在最短传输路径上,重新确定满足预设条件的目标节点设备,在确定重新确定出的目标节点设备非终点设备时,循环执行下述步骤A和步骤B,直至确定出的目标节点设备为终点设备时,将所有临时过渡节点设备确定为中间过渡节点设备;
若未查找到支持SR策略的节点设备,则将备选失败节点设备与源节点设备之间的传输路径确定为不可用路径,并将确定出的不可用路径添加到预先存储的不可用路径数据库中。
可选的,该方法还包括:
从第一目标节点设备到源节点设备后的第一个节点设备之间的传输路径包括的节点设备中,查找支持SR策略的节点设备,若未查找到支持SR策略的节点设备,则将第一目标节点设备与源节点设备之间的传输路径确定为不可用路径,并将确定出的不可用路径添加到预先存储的不可用路径数据库中。
可选的,确定满足预设条件为同时满足以下条件一和条件二:
条件一、待确定节点设备与源节点设备或者前一临时过渡节点设备之间的数据转发次数小于或等于待确定节点设备与源节点设备或者前一临时过渡节点设备之间传输路径上所有节点设备所能识别的段标签深度;
条件二、最短传输路径上待确定节点设备的后一节点设备,与源节点设备或者前一临时过渡节点设备之间的数据转发次数大于待确定节点设备的后一节点设备与源节点设备或者前一临时过渡节点设备之间传输路径上所有节点设备所能识别的段标签深度。
可选的,在将确定出的不可用路径添加到预先存储的不可用路径数据库中之后,该方法还包括:
重新基于节点设备的属性信息、节点设备之间的拓扑信息以及预先存储的不可用路径数据库,确定从源节点设备到终点设备之间的最短传输路径。
可选的,生成包括分别为源节点设备和中间过渡节点设备配置的SR策略的路径转发信息,包括:
为最短传输路径中的每一节点设备分配段标签;
基于源节点设备与源节点设备后第一个中间过渡节点之间的第一子传输路径和第一子传输路径中每一节点设备的段标签,配置源节点设备的SR策略;
基于每一中间过渡节点设备与后一中间过渡节点设备或者终点设备之间的第二子传输路径和第二子传输路径中每一节点设备的段标签,配置每一中间过渡节点设备的SR策略;
基于为源节点设备配置的SR策略和为每一中间过渡节点设备配置的SR策略生成路径转发消息。
第二方面,本发明实施例提供一种数据转发装置,该装置包括:
获取单元,用于获取节点设备的属性信息和节点设备之间的拓扑信息,属性信息包括链路状态信息和SR能力信息;
路径确定单元,用于基于节点设备的属性信息、节点设备之间的拓扑信息以及预先存储的不可用路径数据库,确定从源节点设备到终点设备之间的最短传输路径;
处理单元,用于基于节点设备之间的拓扑信息和SR能力信息,在最短传输路径包括的节点设备中确定中间过渡节点设备,中间过渡节点设备与特殊节点设备之间的数据转发次数小于或等于中间过渡节点设备与特殊节点设备之间的传输路径上每个节点设备所能识别的段标签深度,特殊节点设备包括以下一种或多种:源节点设备、终点设备和其它中间过渡节点设备;
配置单元,用于生成包括分别为源节点设备和中间过渡节点设备配置的SR策略的路径转发信息,并向源节点设备通知路径转发信息。
可选的,路径确定单元,具体用于:
创建第一集合和第二集合,将源节点设备的标识加入第一集合中,将其它节点设备的标识加入第二集合中;
基于节点设备的属性信息和节点设备之间的拓扑信息,在第二集合中,确定与源节点设备的传输距离最短、且传输路径不在预先存储的不可用路径数据库中的转发节点设备的标识,将转发节点设备的标识添加到第一集合中,并在第二集合中删除转发节点设备的标识,重新在第二集合中确定转发节点设备,直至确定出的转发节点设备为终点设备,将终点设备的标识添加到第一集合中;
将第一集合中源节点设备和终点设备之间路径上的所有转发节点设备的标识对应的转发节点设备组成的路径确定为最短传输路径。
可选的,路径确定单元,具体用于:
创建第一集合和第二集合,将源节点设备的标识加入第一集合中,将其它节点设备中支持分段IPv6路由SRv6的节点设备的标识加入第二集合中。
可选的,处理单元,具体用于:
基于节点设备之间的拓扑信息,从源节点设备后的第一个节点设备开始,在最短传输路径上,确定满足预设条件的第一目标节点设备;
在确定查找出的第一目标节点设备非终点设备时,基于最短传输路径上各节点设备的SR能力信息,从第一目标节点设备到源节点设备后的第一个节点设备之间的传输路径包括的节点设备中,查找支持SR策略的节点设备,若查找到支持SR策略的节点设备,则将查找到的节点设备确定为第一临时过渡节点设备;
基于节点设备之间的拓扑信息,从第一临时过渡节点设备后的第一个节点设备开始,在最短传输路径上,确定满足预设条件的第二目标节点设备;
在确定查找出的第二目标节点设备非终点设备时,循环执行下述步骤A和步骤B,直至确定出的目标节点设备为终点设备时,将所有临时过渡节点设备确定为中间过渡节点设备:
步骤A,基于最短传输路径上各节点设备的SR能力信息,从当前目标节点设备到前一临时过渡节点设备后的第一个节点设备之间的传输路径包括的节点设备中,查找支持SR策略的节点设备,若查找到支持SR策略的节点设备,则将查找到的节点设备确定为下一临时过渡节点设备;
步骤B,基于节点设备之间的拓扑信息,从下一临时过渡节点设备后的第一个节点设备开始,在最短传输路径上,确定满足预设条件的下一目标节点设备。
可选的,处理单元,还用于:
从当前目标节点设备到前一临时过渡节点设备后的第一个节点设备之间的传输路径包括的节点设备中,查找支持SR策略的节点设备,若未查找到支持SR策略的节点设备,将当前目标节点设备确定为备选失败节点;
在前一临时过渡节点设备到前一临时过渡节点设备的上一临时过渡节点设备之间的传输路径包括的节点设备中,继续查找支持SR策略的节点设备:
若查找到支持SR策略的节点设备,则将查找到的节点设备确定为新的前一中间过渡节点设备,并从新的前一中间过渡节点设备开始,在最短传输路径上,重新确定满足预设条件的目标节点设备,在确定重新确定出的目标节点设备非终点设备时,循环执行下述步骤A和步骤B,直至确定出的目标节点设备为终点设备时,将所有临时过渡节点设备确定为中间过渡节点设备;
若未查找到支持SR策略的节点设备,则将备选失败节点设备与源节点设备之间的传输路径确定为不可用路径,并将确定出的不可用路径添加到预先存储的不可用路径数据库中。
可选的,处理单元,还用于:
从第一目标节点设备到源节点设备后的第一个节点设备之间的传输路径包括的节点设备中,查找支持SR策略的节点设备,若未查找到支持SR策略的节点设备,则将第一目标节点设备与源节点设备之间的传输路径确定为不可用路径,并将确定出的不可用路径添加到预先存储的不可用路径数据库中。
可选的,确定满足预设条件为同时满足以下条件一和条件二:
条件一、待确定节点设备与源节点设备或者前一临时过渡节点设备之间的数据转发次数小于或等于待确定节点设备与源节点设备或者前一临时过渡节点设备之间传输路径上所有节点设备所能识别的段标签深度;
条件二、最短传输路径上待确定节点设备的后一节点设备,与源节点设备或者前一临时过渡节点设备之间的数据转发次数大于待确定节点设备的后一节点设备与源节点设备或者前一临时过渡节点设备之间传输路径上所有节点设备所能识别的段标签深度。
可选的,路径确定单元,还用于:
在处理单元将确定出的不可用路径添加到预先存储的不可用路径数据库中之后,重新基于节点设备的属性信息、节点设备之间的拓扑信息以及预先存储的不可用路径数据库,确定从源节点设备到终点设备之间的最短传输路径。
可选的,配置单元,具体用于:
为最短传输路径中的每一节点设备分配段标签;
基于源节点设备与源节点设备后第一个中间过渡节点之间的第一子传输路径和第一子传输路径中每一节点设备的段标签,配置源节点设备的SR策略;
基于每一中间过渡节点设备与后一中间过渡节点设备或者终点设备之间的第二子传输路径和第二子传输路径中每一节点设备的段标签,配置每一中间过渡节点设备的SR策略;
基于为源节点设备配置的SR策略和为每一中间过渡节点设备配置的SR策略生成路径转发消息。
第三方面,本发明实施例提供一种电子设备,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,处理器被配置为可执行指令,以实现本发明实施例第一方面提供的数据转发方法。
第四方面,本发明实施例还提供一种存储介质,当存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行本发明实施例第一方面提供的数据转发方法。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例中所需要使用的附图作简单地介绍,显而易见地,下面所介绍的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种数据转发方法的示意流程图;
图2为本发明实施例提供的SR能力TLV示意图;
图3为本发明实施例提供的确定最短传输路径的示意流程图;
图4为本发明实施例提供的确定第一个中间过渡节点设备的示意流程图;
图5为本发明实施例提供的确定第二个中间过渡节点设备的示意流程图;
图6为本发明示例性实施例提供的包含控制器和节点设备A-I的网络拓扑图;
图7为本发明示例性实施例提供的节点设备A-I的SR能力信息列表示意图;
图8为本发明示例性实施例提供的建立的节点设备A到节点设备I的SRv6的路径示意图;
图9为本发明实施例提供的一种数据转发装置的结构示意图;
图10为本发明实施例提供的又一种电子设备的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整的描述。
有鉴于现有SRv6技术方案中,由于实际设备芯片所能识别的SRv6段标签深度限制,而导致SRv6无法应用到大规模网络应用的问题,本发明实施例提供了一种数据转发方案,用以在大规模网络应用中实现SRv6数据转发。
下面结合附图以及具体实施例,对本发明实施例提供的数据转发方案进行详细说明。
如图1所示,本发明实施例提供的一种数据转发方法,其可以包括以下步骤:
步骤101,获取节点设备的属性信息和节点设备之间的拓扑信息,属性信息包括链路状态信息和SR能力信息。
具体实施时,通过标准BGP LS(BGP Link-State Distribution,BGP链路状态信息分发)协议从设备上获取节点设备的链路状态信息、SR能力信息和节点设备之间的拓扑信息。采集到节点设备的链路状态信息、SR能力信息和节点设备之间的拓扑信息之后,可以将三类信息分别存储到对应的数据库中。例如,将节点设备的链路状态信息存储到预先建立的链路数据库中,将SR能力信息存储到预先建立的SR能力数据库中,将节点设备之间的拓扑信息存储到预先建立的拓扑数据库中。
其中,链路状态信息主要包括链路的IGP Metric(Interior Gateway ProtocolMetric,内部网关协议距离度量值)等信息;节点设备之间的拓扑信息主要包括节点设备之间的连接关系等信息;SR能力信息主要包括设备是否支持SRv6,设备所能识别的SRv6段标签深度,设备是否支持SR策略,设备所能分配SRv6段标签地址的范围。
需要说明的是,采集设备的SR能力信息时,需要在原有BGP LS协议的基础上扩展SR能力的TLV(Type-length-value,一种类型,长度和值的编码格式),如图2所示,在SR能力的TLV中:
Type表示SR能力TLV的类型值;Length表示SR能力TLV的长度;V表示是否支持SRv6,1表示支持,0表示不支持;P表示是否支持SR策略,1表示支持,0表示不支持;Depth表示所能识别的SRv6段标签深度;Prefix Length表示设备所能分配SRv6段标签地址的前缀长度;IPv6 address:设备所能分配SRv6段标签地址的IPv6地址。
步骤102,基于节点设备的属性信息、节点设备之间的拓扑信息以及预先存储的不可用路径数据库,确定从源节点设备到终点设备之间的最短传输路径。
其中,不可用路径数据库可以是预先建立的,用于存储不可用路径,不可用路径数据库在建立时为空。需要说明的是,不可用路径,是指路径中数据转发次数大于路径中至少一个节点设备所能识别的SRv6段标签深度的路径。
具体实施时,如图3所示,基于节点设备的属性信息、节点设备之间的拓扑信息以及预先存储的不可用路径数据库,确定从源节点设备到终点设备之间的最短传输路径的过程,包括以下步骤:
步骤S1021,根据SR能力信息,排除掉不支持SRv6的节点设备。
步骤S1022,创建第一集合S和第二集合U,将源节点设备的标识加入第一集合S,其它节点设备的标识加入第二集合U。
步骤S1023,基于节点设备的属性信息和节点设备之间的拓扑信息,从第二集合U中选取出一个距离源节点设备最近,并且最短路径不在不可用路径数据库中的节点设备k。
具体实施时,基于节点设备的属性信息和节点设备之间的拓扑信息,确定节点设备之间的距离,可以采用现有技术中的方式,本发明实施例对此不做限定。
需要说明的是,在基于第二集合U中节点设备与源节点设备之间的距离确定最短路径时,初始情况下,只有与源节点设备相邻的节点设备才有对应的距离值,非相邻节点设备(不与源节点设备相邻的节点设备)与源节点设备的距离值为无穷大。
步骤S1024,判断节点设备k是否为终点设备,若是,执行步骤1025,否则,执行步骤1026。
步骤S1025,将节点设备k的标识加入第一集合S,将第一集合S中所有节点设备的标识对应的节点设备组成的路径确定为最短传输路径。
步骤1026,将节点设备k的标识加入第一集合S,并从第二集合U中移除节点设备k的标识,并返回执行步骤1023。
步骤103,基于节点设备之间的拓扑信息和SR能力信息,在最短传输路径包括的节点设备中确定中间过渡节点设备,中间过渡节点设备与特殊节点设备之间的数据转发次数小于或等于中间过渡节点设备与特殊节点设备之间的传输路径上每个节点设备所能识别的段标签深度,特殊节点设备包括以下一种或多种:源节点设备、终点设备和其它中间过渡节点设备。
需要说明的是,具体实施时,确定中间过渡节点,包括:基于节点设备之间的拓扑信息,从源节点设备后的第一个节点设备开始,在最短传输路径上,确定满足预设条件的第一目标节点设备;
在确定查找出的第一目标节点设备非终点设备时,基于最短传输路径上各节点设备的SR能力信息,从第一目标节点设备到源节点设备后的第一个节点设备之间的传输路径包括的节点设备中,查找支持SR策略的节点设备,若查找到支持SR策略的节点设备,则将查找到的节点设备确定为第一临时过渡节点设备;
基于节点设备之间的拓扑信息,从第一临时过渡节点设备后的第一个节点设备开始,在最短传输路径上,确定满足预设条件的第二目标节点设备;
在确定查找出的第二目标节点设备非终点设备时,循环执行下述步骤A和步骤B,直至确定出的目标节点设备为终点设备时,将所有临时过渡节点设备确定为中间过渡节点设备:
步骤A,基于最短传输路径上各节点设备的SR能力信息,从当前目标节点设备到前一临时过渡节点设备后的第一个节点设备之间的传输路径包括的节点设备中,查找支持SR策略的节点设备,若查找到支持SR策略的节点设备,则将查找到的节点设备确定为下一临时过渡节点设备;
步骤B,基于节点设备之间的拓扑信息,从下一临时过渡节点设备后的第一个节点设备开始,在最短传输路径上,确定满足预设条件的下一目标节点设备。
其中,确定满足预设条件为同时满足以下条件一和条件二:
条件一、待确定节点设备与源节点设备或者前一临时过渡节点设备之间的数据转发次数小于或等于待确定节点设备与源节点设备或者前一临时过渡节点设备之间传输路径上所有节点设备所能识别的段标签深度;
条件二、最短传输路径上待确定节点设备的后一节点设备,与源节点设备或者前一临时过渡节点设备之间的数据转发次数大于待确定节点设备的后一节点设备与源节点设备或者前一临时过渡节点设备之间传输路径上所有节点设备所能识别的段标签深度。
下面结合图4,以步骤102中确定出的最短传输路径所经过的节点设备使用0,1,2,3....n来标记为例,源节点设备记为节点0,源节点设备后的第一个节点设备记为节点1,以此类推,终点设备记为节点n,对确定中间过渡节点设备的过程进行详细说明。
如图4所示,基于节点设备之间的拓扑信息和SR能力信息,在最短传输路径包括的节点设备中确定第一个中间过渡节点设备的步骤,包括:
步骤S1031,从节点1开始查找第一个备选中间过渡节点k1。
第一个备选中间过渡节点k1需同时满足以下条件一和条件二:
条件一、节点k1到节点0的跳数HN[0,k1]小于等于节点0到节点k1中所有节点设备所能识别的最小SRv6段标签深度LMin[0,k1];
条件二、节点k1+1到节点0的跳数HN[0,k1+1]大于节点0到节点k1+1中所有节点设备所能识别的最小SRv6段标签深度LMin[0,k1+1]。
步骤S1032,判断节点k1是否为终点设备,若是,则结束查找,否则,执行步骤1033。
步骤S1033,查找节点k1到节点1之间的传输路径包括的节点设备中,是否存在支持SR策略的节点设备,若是,执行步骤S1034,否则,执行步骤S1035。
步骤S1034,将查找到的第一个支持SR策略的节点设备确定为第一个中间过渡节点设备m1,并继续查找其它中间过渡节点设备。
步骤S1035,标记节点0到节点k1的路径为不可用路径,并添加到不可用路径数据库中,然后重新确定源节点设备和终点设备之间的最短传输路径。
上述步骤S1034中确定第一个中间过渡节点设备m1之后,继续查找其它中间过渡节点设备的过程与上述步骤S1031-步骤S1035的过程类似,下面以查找第二个中间过渡节点设备的过程为例进行详细说明。
如图5所示,查找第二个中间过渡节点设备的步骤,可以包括:
步骤S1051,从节点m1+1开始查找第二个备选中间过渡节点k2。
第二个备选中间过渡节点k2需同时满足以下条件一和条件二:
条件一、节点k2到节点m1的跳数HN[m1,k2]小于等于节点m1到节点k2中所有节点设备所能识别的最小SRv6段标签深度LMin[m1,k2];
条件二、节点k2+1到节点m1的跳数HN[m1,k2+1]大于节点m1到节点k2+1中所有节点设备所能识别的最小SRv6段标签深度LMin[m1,k2+1]。
步骤S1052,判断节点k2是否为终点设备,若是,则结束查找,否则,执行步骤S1053。
步骤S1053,查找节点k2到节点m1+1之间的传输路径包括的节点设备中,是否存在支持SR策略的节点设备,若是,执行步骤S1054,否则,执行步骤S1055。
步骤S1054,将查找到的第一个支持SR策略的节点设备确定为第二个中间过渡节点设备m2,并继续查找其它中间过渡节点设备。
步骤S1055,标记节点k2为第一备选失败节点。
步骤S1056,判断节点m1-1到节点1之间的传输路径包括的节点设备中,是否存在支持SR策略的节点,若是,执行步骤S1057,否则,执行步骤S1058。
步骤S1057,将节点m1-1到节点1之间第一个支持SR策略的节点确定为第一个中间过渡节点设备m1,并以此类推,继续查找其它中间过渡节点设备。
步骤S1058,标记节点0到第一备选失败节点k2的路径为不可用路径,并添加到不可用路径数据库中,然后重新确定源节点设备和终点设备之间的最短传输路径。
通过上述查找过程,查找出一组中间过渡节点设备集合,标记为{m1,m2....mh},源节点设备标记为m0。
步骤104,生成包括分别为源节点设备和中间过渡节点设备配置的SR策略的路径转发信息,并向源节点设备通知路径转发信息。
具体实施时,为最短传输路径中的每一节点设备分配段标签,基于源节点设备与源节点设备后第一个中间过渡节点之间的第一子传输路径和第一子传输路径中每一节点设备的段标签,配置源节点设备的SR策略,基于每一中间过渡节点设备与后一中间过渡节点设备或者终点设备之间的第二子传输路径和第二子传输路径中每一节点设备的段标签,配置每一中间过渡节点设备的SR策略,基于为源节点设备配置的SR策略和为每一中间过渡节点设备配置的SR策略生成路径转发消息。
具体来说,根据SR能力信息在最短传输路径上所有设备节点分配SRv6段标签(记为SID)。对于非中间过渡节点设备,SRv6段标签的出接口为到达下一个节点设备的链路接口,对于源节点和中间过渡节点设备,SRv6段标签的出接口为一个SR策略。
对于源节点设备,所分配的SR策略SP-0定义的SRv6段标签列表为,从节点1到达第一中间过渡节点设备m1或终点设备(不存在中间过渡节点的情况)的所有段标签,即[SID(1)....SID(m1)]。
对于第一中间过渡节点设备m1,所分配的SR策略SP-m1定义的SRv6段标签列表为,从节点m1+1到第二中间过渡节点设备m2的所有段标签,即[SID(m1+1)....SID(m2)],并将第一中间节点所分配的SRv6段标签SID(m1)的出口设置为SP-m1,以此类推其他的中间过渡节点设备。
对于最后一个中间过渡节点mh,所分配的SR策略SP-mh定义的SRv6段标签列为,从节点mh+1到终点设备n的所有段标签,即[SID(mh)....SID(n)],并将最后一个中间过渡节点所分配的SRv6段标签SID(mh)的出口设置为SP-mh。
生成包含SR策略路径转发信息之后,向最短传输路径上节点设备通告相应的转发信息,具体向节点设备安装转发信息的实现方式并不限制,例如可通过BGP协议或Netconf(Network Configuration Protocol,网络配置协议)等,本发明实施例对此不作具体限定。
其中,针对源节点设备,通告所分配的SR策略SP-0信息,并且将相应业务流量引入此SR策略中;针对中间过渡节点设备,通告所分配的SRv6段标签SID及对应的出口SR策略;针对非中间过渡节点设备,通告所分配的SRv6段标签SID,出口为到达下一个节点的链路接口。
下面结合具体示例,以网络拓扑图为例,对本发明实施例提供的数据转发方案进行更为详细的解释说明。
在一个示例中,如图6所示,图6示出了包含控制器和节点设备A-I的网络拓扑图。
控制器通过标准BGP LS协议获取节点设备A-I的链路状态信息、SR能力信息和节点设备之间的拓扑信息。
在一个示例中,控制器获取到的SR能力信息如图7所示。
根据图7获取到的SR能力信息,以控制器建立节点设备A到节点设备I的SRv6路径为例来说明。
控制器在节点A到节点I的SRv6路径上进行最短传输路径的查找。首先排除不支持SRv6的节点设备,根据图7所示的SR能力信息,排除节点设备H。
由于此时不可用路径数据库为空,采用标准SPF算法计算最短传输路径,计算出来的最短传输路径为A->F->G->I。
控制器在最短传输路径A->F->G->I上查找中间过渡节点设备。
首先查找节点设备F,节点设备F到节点设备A的跳数为1,小于等于节点设备F所能识别的SRv6段标签深度3,并且下一个节点设备G到节点设备A的跳数为2,大于节点设备G所能识别的SRv6段标签深度1,因此暂定节点设备F为第一备选中间过渡节点设备。
根据SR能力信息,判断节点设备F是否支持SR策略。由SR能力信息可知,节点设备F不支持SR策略,所以标记A->F->G->I路径为不可用路径,更新到不可用路径数据库中,然后重新进行最短传输路径查找。
控制器重新在节点A到节点I之间进行最短路径计算。首先排除不支持SRv6的节点,根据图6所示的SR能力信息,排除节点设备H。由于此时不可用路径数据库中存在一条不可用路径A->F,采用扩展标准SPF算法计算最短设备路径。
初始化集合S包含节点设备A的标识,初始化集合U包含其它未被排除的节点设备B的标识、节点设备C的标识、节点设备D的标识、节点设备E的标识、节点设备F的标识、节点设备G的标识、节点设备I的标识。集合U中节点到达集合S中的最短距离分别为:B:10,C:-,D:-,F:-,G:-,I:-,其中-代表无穷大,由于路径A->F为不可用路径,所以节点设备F到达集合S的最短距离为无穷大。
从集合U中选取一个到达集合S最短距离最近的节点设备B的标识加入集合S,并将节点B的标识从集合U中删除。
更新集合U中所有节点到达集合S的最短距离分别为:C:20,D:-,F:-,G:-,I:-。以此类推,不断在集合U中查找到达集合S最短距离最近的节点,直到终点设备I的标识加入集合S,则查找结束。
本次所查找到的符合要求的最短传输路径为A->B->C->D->E->I。
控制器在最短传输路径A->B->C->D->E->I上查找中间过渡节点设备。首先查找节点设备B,节点设备B到节点设备A的跳数为1,小于节点设备A到节点设备B之间所能识别的最小SRv6段标签深度3。继续查找节点设备C,节点设备C到节点设备A的跳数为2,小于节点设备A到节点设备B之间所能识别的最小SRv6段标签深度3。继续查找节点设备D,节点设备D到节点设备A的跳数为3,大于节点设备A到节点设备D之间所能识别的最小SRv6段标签深度2。因此暂定节点设备C为第一备选中间过渡节点设备。根据SR能力信息,判断节点设备C支持SR策略,因此暂定节点设备C为第一中间过渡节点设备。
查找节点设备D,节点设备D到第一中间过渡节点设备C的跳数为1,小于节点设备C到节点设备D之间所能识别的最小SRv6段标签深度2。继续查找节点设备E,节点设备E到节点设备C的跳数为2,等于节点设备C到节点设备E之间所能识别的最小SRv6段标签深度2。继续查找节点设备I,节点设备I到节点设备C的跳数为3,大于节点设备C到节点设备I之间所能识别的最小SRv6段标签深度2。因此暂定节点设备E为第二备选中间过渡节点设备。根据SR能力信息,判断节点设备E支持SR策略,因此暂定节点设备E为第二中间过渡节点。
查找节点设备I,节点设备I到第二中间过渡节点设备E的跳数为1,小于节点设备E到节点设备I之间所能识别的最小SRv6段标签深度3,到达终点,查找结束。查找到的中间过渡节点设备分别为第一中间过渡节点设备C,第二中间过渡节点设备E。
控制器根据SR能力信息所指定可分配的SRv6段标签范围在最短传输路径上除源节点设备之外的其他节点设备分配SRv6段标签,对于源节点设备和中间过渡节点设备,SRv6段标签的出接口为一个SR策略。
在一个示例中,各节点所分配的SRv6段标签值分别为:B(1001::1),C(1002::1),D(1003::1),E(1004::1),I(1008::1)。控制器对于源节点设备和中间过渡节点设备分配SR策略。
对于源节点设备A,分配一个SR策略SP-A,SRv6段标签列表分别为节点B,C的SRv6段标签,即[1001::1,1002::1]。
对于第一中间过渡节点设备C,分配一个SR策略SP-C,SRv6段标签列表分别为节点设备D,E的SRv6段标签,即[1003::1,1004::1]。
对于第二中间过渡节点设备E,分配一个SR策略SP-E,SRv6段标签列表分别为节点I的SRv6段标签,即[1008::1]。
生成相关路径转发信息的SR策略之后,控制器向最短传输路径上设备节点通告相应的转发信息。
对于源节点设备A:安装SR策略SP-A,SRv6段标签列表为[1001::1,1002::1]。
对于非中间过渡节点的设备:安装所分配的SRv6段标签,其出口为最短路径上下一个节点设备链路的接口。节点设备B;SRv6段标签1001::1,出口为与C设备相连链路的接口;节点设备D:SRv6段标签1003::1,出口为与E设备相连链路的接口。节点设备I:SRv6段标签1008::1,执行弹出SRv6头部,继续转发。
对于中间过渡节点设备:安装所分配的SRv6段标签,其出口为对应的SR策略。
C:SRv6段标签1002::1,出口为SR策略SP-C,SP-C的段标签列表为[1003::1,1004::1]。
E:SRv6段标签1004::1,出口为SR策略SP-E,SP-E的段标签列表为[1008::1]。
建立的节点设备A到节点设备I的SRv6的路径,如图8所示,在此路径上进行数据流量的转发。
源节点设备A:通过SR策略SP-A在数据报文中添加SRH头部,其中SRv6段标签列表中包含[1002::1,1001::1],segment left(简称SL)值为1。
中间节点设备B:根据报文SRH头部中的1001::1来转发,并将SL减1设置为0。
中间过渡设备C:根据报文SRH头部中的1002::1来转发,并将SRH头部替换为SR策略SR-C的段标签列表[1004::1,1003::1],并将SL设置为1。
中间节点设备D:根据报文SRH头部中的1003::1来转发,并将SL减1设置为0。
中间过渡设备E:根据报文SRH头部中的1004::1来转发,并将SRH头部替换为SR策略SR-C的段标签列表[1008::1],并将SL设置为0。
终点设备I:根据报文SRH头部中的1008::1来转发,到达终点设备。
基于相同的发明构思,本发明实施例还提供了一种数据转发装置。
如图9所示,本发明实施例所提供的数据转发装置,包括:
获取单元901,用于获取节点设备的属性信息和节点设备之间的拓扑信息,属性信息包括链路状态信息和SR能力信息;
路径确定单元902,用于基于节点设备的属性信息、节点设备之间的拓扑信息以及预先存储的不可用路径数据库,确定从源节点设备到终点设备之间的最短传输路径;
处理单元903,用于基于节点设备之间的拓扑信息和SR能力信息,在最短传输路径包括的节点设备中确定中间过渡节点设备,中间过渡节点设备与特殊节点设备之间的数据转发次数小于或等于中间过渡节点设备与特殊节点设备之间的传输路径上每个节点设备所能识别的段标签深度,特殊节点设备包括以下一种或多种:源节点设备、终点设备和其它中间过渡节点设备;
配置单元904,用于生成包括分别为源节点设备和中间过渡节点设备配置的SR策略的路径转发信息,并向源节点设备通知路径转发信息。
可选的,路径确定单元902,具体用于:
创建第一集合和第二集合,将源节点设备的标识加入第一集合中,将其它节点设备的标识加入第二集合中;
基于节点设备的属性信息和节点设备之间的拓扑信息,在第二集合中,确定与源节点设备的传输距离最短、且传输路径不在预先存储的不可用路径数据库中的转发节点设备的标识,将转发节点设备的标识添加到第一集合中,并在第二集合中删除转发节点设备的标识,重新在第二集合中确定转发节点设备,直至确定出的转发节点设备为终点设备,将重点设备的标识添加到第一集合中;
将第一集合中源节点设备和终点设备之间路径上的所有转发节点设备的标识对应的转发节点设备组成的路径确定为最短传输路径。
可选的,路径确定单元902,具体用于:
创建第一集合和第二集合,将源节点设备的标识加入第一集合中,将其它节点设备中支持分段IPv6路由SRv6的节点设备的标识加入第二集合中。
可选的,处理单元903,具体用于:
基于节点设备之间的拓扑信息,从源节点设备后的第一个节点设备开始,在最短传输路径上,确定满足预设条件的第一目标节点设备;
在确定查找出的第一目标节点设备非终点设备时,基于最短传输路径上各节点设备的SR能力信息,从第一目标节点设备到源节点设备后的第一个节点设备之间的传输路径包括的节点设备中,查找支持SR策略的节点设备,若查找到支持SR策略的节点设备,则将查找到的节点设备确定为第一临时过渡节点设备;
基于节点设备之间的拓扑信息,从第一临时过渡节点设备后的第一个节点设备开始,在最短传输路径上,确定满足预设条件的第二目标节点设备;
在确定查找出的第二目标节点设备非终点设备时,循环执行下述步骤A和步骤B,直至确定出的目标节点设备为终点设备时,将所有临时过渡节点设备确定为中间过渡节点设备:
步骤A,基于最短传输路径上各节点设备的SR能力信息,从当前目标节点设备到前一临时过渡节点设备后的第一个节点设备之间的传输路径包括的节点设备中,查找支持SR策略的节点设备,若查找到支持SR策略的节点设备,则将查找到的节点设备确定为下一临时过渡节点设备;
步骤B,基于节点设备之间的拓扑信息,从下一临时过渡节点设备后的第一个节点设备开始,在最短传输路径上,确定满足预设条件的下一目标节点设备。
可选的,处理单元903,还用于:
从当前目标节点设备到前一临时过渡节点设备后的第一个节点设备之间的传输路径包括的节点设备中,查找支持SR策略的节点设备,若未查找到支持SR策略的节点设备,将当前目标节点设备确定为备选失败节点;
在前一临时过渡节点设备到前一临时过渡节点设备的上一临时过渡节点设备之间的传输路径包括的节点设备中,继续查找支持SR策略的节点设备:
若查找到支持SR策略的节点设备,则将查找到的节点设备确定为新的前一中间过渡节点设备,并从新的前一中间过渡节点设备开始,在最短传输路径上,重新确定满足预设条件的目标节点设备,在确定重新确定出的目标节点设备非终点设备时,循环执行下述步骤A和步骤B,直至确定出的目标节点设备为终点设备时,将所有临时过渡节点设备确定为中间过渡节点设备;
若未查找到支持SR策略的节点设备,则将备选失败节点设备与源节点设备之间的传输路径确定为不可用路径,并将确定出的不可用路径添加到预先存储的不可用路径数据库中。
处理单元903,还用于:
从第一目标节点设备到源节点设备后的第一个节点设备之间的传输路径包括的节点设备中,查找支持SR策略的节点设备,若未查找到支持SR策略的节点设备,则将第一目标节点设备与源节点设备之间的传输路径确定为不可用路径,并将确定出的不可用路径添加到预先存储的不可用路径数据库中。
可选的,确定满足预设条件为同时满足以下条件一和条件二:
条件一、待确定节点设备与源节点设备或者前一临时过渡节点设备之间的数据转发次数小于或等于待确定节点设备与源节点设备或者前一临时过渡节点设备之间传输路径上所有节点设备所能识别的段标签深度;
条件二、最短传输路径上待确定节点设备的后一节点设备,与源节点设备或者前一临时过渡节点设备之间的数据转发次数大于待确定节点设备的后一节点设备与源节点设备或者前一临时过渡节点设备之间传输路径上所有节点设备所能识别的段标签深度。
可选的,路径确定单元902,还用于:
在处理单元903将确定出的不可用路径添加到预先存储的不可用路径数据库中之后,重新基于节点设备的属性信息、节点设备之间的拓扑信息以及预先存储的不可用路径数据库,确定从源节点设备到终点设备之间的最短传输路径。
可选的,配置单元904,具体用于:
为最短传输路径中的每一节点设备分配段标签;
基于源节点设备与源节点设备后第一个中间过渡节点之间的第一子传输路径和第一子传输路径中每一节点设备的段标签,配置源节点设备的SR策略;
基于每一中间过渡节点设备与后一中间过渡节点设备或者终点设备之间的第二子传输路径和第二子传输路径中每一节点设备的段标签,配置每一中间过渡节点设备的SR策略;
基于为源节点设备配置的SR策略和为每一中间过渡节点设备配置的SR策略生成路径转发消息。
基于上述本发明实施例相同构思,图10是根据一示例性实施例示出的电子设备的框图。如图10所示,本发明实施例提供的电子设备1000,包括:
处理器1010;
用于存储处理器1010可执行指令的存储器1020;
其中,处理器1010被配置为执行指令,以实现本公开实施例中数据转发方法。
在示例性实施例中,还提供了一种包括指令的存储介质,例如包括指令的存储器1020,上述指令可由电子设备1000的处理器1010执行以完成上述方法。可选地,存储介质可以是非临时性计算机可读存储介质,例如,非临时性计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
另外,在示例性实施例中,本发明实施例还提供了一种存储介质,当存储介质中的指令由上述电子设备的处理器执行时,使得上述电子设备能够实现本发明实施例中的数据转发方法。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。
Claims (12)
1.一种数据转发方法,其特征在于,所述方法包括:
获取节点设备的属性信息和节点设备之间的拓扑信息,所述属性信息包括链路状态信息和SR能力信息;
基于节点设备的属性信息、节点设备之间的拓扑信息以及预先存储的不可用路径数据库,确定从源节点设备到终点设备之间的最短传输路径;
基于所述节点设备之间的拓扑信息和所述SR能力信息,在所述最短传输路径包括的节点设备中确定中间过渡节点设备,所述中间过渡节点设备与相邻特殊节点设备之间的数据转发次数小于或等于所述中间过渡节点设备与相邻特殊节点设备之间的传输路径上每个节点设备所能识别的段标签深度,所述特殊节点设备包括以下一种或多种:所述源节点设备、所述终点设备和其它中间过渡节点设备;
生成包括分别为所述源节点设备和所述中间过渡节点设备配置的SR策略的路径转发信息,并向所述源节点设备通知所述路径转发信息。
2.根据权利要求1所述的方法,其特征在于,所述基于节点设备的属性信息、节点设备之间的拓扑信息以及预先存储的不可用路径数据库,确定从源节点设备到终点设备之间的最短传输路径,包括:
创建第一集合和第二集合,将所述源节点设备的标识加入所述第一集合中,将所述其它节点设备的标识加入所述第二集合中;
基于所述节点设备的属性信息和所述节点设备之间的拓扑信息,在所述第二集合中,确定与所述源节点设备的传输距离最短、且传输路径不在所述预先存储的不可用路径数据库中的转发节点设备的标识,将所述转发节点设备的标识添加到所述第一集合中,并在所述第二集合中删除所述转发节点设备的标识,重新在所述第二集合中确定转发节点设备,直至确定出的转发节点设备为所述终点设备,将所述终点设备的标识添加到所述第一集合中;
将所述第一集合中所述源节点设备和所述终点设备之间路径上的所有转发节点设备的标识对应的转发节点设备组成的路径确定为所述最短传输路径。
3.根据权利要求2所述的方法,其特征在于,所述创建第一集合和第二集合,将所述源节点设备的标识加入所述第一集合中,将所述其它节点设备的标识加入所述第二集合中,包括:
创建第一集合和第二集合,将所述源节点设备的标识加入所述第一集合中,将所述其它节点设备中支持分段IPv6路由SRv6的节点设备的标识加入所述第二集合中。
4.根据权利要求1所述的方法,其特征在于,所述基于所述节点设备之间的拓扑信息和所述SR能力信息,在所述最短传输路径包括的节点设备中确定中间过渡节点设备,包括:
基于所述节点设备之间的拓扑信息,从所述源节点设备后的第一个节点设备开始,在所述最短传输路径上,确定满足预设条件的第一目标节点设备;
在确定查找出的第一目标节点设备非终点设备时,基于所述最短传输路径上各节点设备的SR能力信息,从所述第一目标节点设备到所述源节点设备后的第一个节点设备之间的传输路径包括的节点设备中,查找支持SR策略的节点设备,若查找到支持SR策略的节点设备,则将查找到的节点设备确定为第一临时过渡节点设备;
基于所述节点设备之间的拓扑信息,从所述第一临时过渡节点设备后的第一个节点设备开始,在所述最短传输路径上,确定满足所述预设条件的第二目标节点设备;
在确定查找出的第二目标节点设备非终点设备时,循环执行下述步骤A和步骤B,直至确定出的目标节点设备为终点设备时,将所有临时过渡节点设备确定为中间过渡节点设备:
步骤A,基于所述最短传输路径上各节点设备的SR能力信息,从当前目标节点设备到前一临时过渡节点设备后的第一个节点设备之间的传输路径包括的节点设备中,查找支持SR策略的节点设备,若查找到支持SR策略的节点设备,则将查找到的节点设备确定为下一临时过渡节点设备;
步骤B,基于所述节点设备之间的拓扑信息,从下一临时过渡节点设备后的第一个节点设备开始,在所述最短传输路径上,确定满足所述预设条件的下一目标节点设备。
5.根据权利要求4所述的方法,其特征在于,所述方法还包括:
从当前目标节点设备到前一临时过渡节点设备后的第一个节点设备之间的传输路径包括的节点设备中,查找支持SR策略的节点设备,若未查找到支持SR策略的节点设备,将当前目标节点设备确定为备选失败节点;
在前一临时过渡节点设备到所述前一临时过渡节点设备的上一临时过渡节点设备之间的传输路径包括的节点设备中,继续查找支持SR策略的节点设备:
若查找到支持SR策略的节点设备,则将查找到的节点设备确定为新的前一中间过渡节点设备,并从新的前一中间过渡节点设备开始,在所述最短传输路径上,重新确定满足所述预设条件的目标节点设备,在确定重新确定出的目标节点设备非终点设备时,循环执行下述步骤A和步骤B,直至确定出的目标节点设备为终点设备时,将所有临时过渡节点设备确定为中间过渡节点设备;
若未查找到支持SR策略的节点设备,则将所述备选失败节点设备与所述源节点设备之间的传输路径确定为不可用路径,并将确定出的不可用路径添加到所述预先存储的不可用路径数据库中。
6.根据权利要求4所述的方法,其特征在于,所述方法还包括:
从所述第一目标节点设备到所述源节点设备后的第一个节点设备之间的传输路径包括的节点设备中,查找支持SR策略的节点设备,若未查找到支持SR策略的节点设备,则将所述第一目标节点设备与所述源节点设备之间的传输路径确定为不可用路径,并将确定出的不可用路径添加到所述预先存储的不可用路径数据库中。
7.根据权利要求4所述的方法,其特征在于,所述确定满足预设条件为同时满足以下条件一和条件二:
条件一、待确定节点设备与所述源节点设备或者前一临时过渡节点设备之间的数据转发次数小于或等于所述待确定节点设备与所述源节点设备或者前一临时过渡节点设备之间传输路径上所有节点设备所能识别的段标签深度;
条件二、所述最短传输路径上所述待确定节点设备的后一节点设备,与所述源节点设备或者前一临时过渡节点设备之间的数据转发次数大于所述待确定节点设备的后一节点设备与所述源节点设备或者前一临时过渡节点设备之间传输路径上所有节点设备所能识别的段标签深度。
8.根据权利要求5或6所述的方法,其特征在于,在将确定出的不可用路径添加到所述预先存储的不可用路径数据库中之后,所述方法还包括:
重新基于节点设备的属性信息、节点设备之间的拓扑信息以及预先存储的不可用路径数据库,确定从源节点设备到终点设备之间的最短传输路径。
9.根据权利要求1所述的方法,其特征在于,所述生成包括分别为所述源节点设备和所述中间过渡节点设备配置的SR策略的路径转发信息,包括:
为所述最短传输路径中的每一节点设备分配段标签;
基于所述源节点设备与所述源节点设备后第一个中间过渡节点之间的第一子传输路径和所述第一子传输路径中每一节点设备的段标签,配置所述源节点设备的SR策略;
基于每一中间过渡节点设备与后一中间过渡节点设备或者终点设备之间的第二子传输路径和所述第二子传输路径中每一节点设备的段标签,配置所述每一中间过渡节点设备的SR策略;
基于为所述源节点设备配置的SR策略和为每一中间过渡节点设备配置的SR策略生成所述路径转发消息。
10.一种数据转发装置,其特征在于,所述装置包括:
获取单元,用于获取节点设备的属性信息和节点设备之间的拓扑信息,所述属性信息包括链路状态信息和SR能力信息;
路径确定单元,用于基于节点设备的属性信息、节点设备之间的拓扑信息以及预先存储的不可用路径数据库,确定从源节点设备到终点设备之间的最短传输路径;
处理单元,用于基于所述节点设备之间的拓扑信息和所述SR能力信息,在所述最短传输路径包括的节点设备中确定中间过渡节点设备,所述中间过渡节点设备与特殊节点设备之间的数据转发次数小于或等于所述中间过渡节点设备与特殊节点设备之间的传输路径上每个节点设备所能识别的段标签深度,所述特殊节点设备包括以下一种或多种:所述源节点设备、所述终点设备和其它中间过渡节点设备;
配置单元,用于生成包括分别为所述源节点设备和所述中间过渡节点设备配置的SR策略的路径转发信息,并向所述源节点设备通知所述路径转发信息。
11.一种电子设备,其特征在于,包括:
处理器;
用于存储所述处理器可执行指令的存储器;
其中,所述处理器被配置为执行所述指令,以实现如权利要求1至权利要求9中任一项所述的数据转发方法。
12.一种存储介质,其特征在于,当所述存储介质中的指令由电子设备的处理器执行时,使得所述电子设备能够执行如权利要求1至权利要求9中任一项所述的数据转发方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910857698.1A CN110677341A (zh) | 2019-09-09 | 2019-09-09 | 一种数据转发方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910857698.1A CN110677341A (zh) | 2019-09-09 | 2019-09-09 | 一种数据转发方法、装置、电子设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110677341A true CN110677341A (zh) | 2020-01-10 |
Family
ID=69077932
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910857698.1A Pending CN110677341A (zh) | 2019-09-09 | 2019-09-09 | 一种数据转发方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110677341A (zh) |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111405515A (zh) * | 2020-03-25 | 2020-07-10 | 杭州一鸣惊人网络科技有限公司 | 一种基于5g通信的物联网 |
CN112688872A (zh) * | 2021-03-22 | 2021-04-20 | 中国人民解放军国防科技大学 | 一种联合多域及基于联合多域的低时延路径传输方法 |
CN112787926A (zh) * | 2021-01-05 | 2021-05-11 | 北京信息科技大学 | 用于对兴趣包进行分段路由的装置、方法和系统 |
CN113162852A (zh) * | 2021-03-25 | 2021-07-23 | 烽火通信科技股份有限公司 | 一种sr粘连节点配置的方法和装置 |
WO2021180077A1 (zh) * | 2020-03-09 | 2021-09-16 | 中国移动通信有限公司研究院 | 路径建立方法、数据传输方法、装置、网络节点及存储介质 |
CN113489646A (zh) * | 2021-07-01 | 2021-10-08 | 北京网聚云联科技有限公司 | 基于vxlan的分段路由传输方法、服务器、源节点及存储介质 |
CN113824632A (zh) * | 2021-09-03 | 2021-12-21 | 比威网络技术有限公司 | 安全分级多径路由中的途径点压缩方法和装置 |
WO2022052731A1 (zh) * | 2020-09-10 | 2022-03-17 | 华为技术有限公司 | 传输数据的方法和电子设备 |
WO2022266905A1 (zh) * | 2021-06-23 | 2022-12-29 | 新华三技术有限公司 | 一种转发路径生成方法、装置、网络设备及存储介质 |
CN115866071A (zh) * | 2023-02-28 | 2023-03-28 | 中信云网有限公司 | 初始设备属性信息的上报路径确定方法及装置 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105871721A (zh) * | 2015-01-19 | 2016-08-17 | 中兴通讯股份有限公司 | 一种段路由处理方法、处理装置及发送装置 |
US20170346720A1 (en) * | 2014-12-23 | 2017-11-30 | Telefonaktiebolaget Lm Ericsson (Publ) | Path computation in a segment routing network |
CN109039903A (zh) * | 2018-10-18 | 2018-12-18 | 新华三技术有限公司 | 路由确定方法、装置及机器可读存储介质 |
CN109067652A (zh) * | 2018-09-25 | 2018-12-21 | 盛科网络(苏州)有限公司 | 一种IPv6分段路由中节约段标识开销的方法及装置 |
US20180375763A1 (en) * | 2017-06-27 | 2018-12-27 | Cisco Technology, Inc. | Ethernet Virtual Private Network (EVPN) using an Internet Protocol Version 6 Segment Routing (SRv6) Underlay Network and SRv6-enhanced Border Gateway Protocol (BGP) Signaling |
CN109863725A (zh) * | 2016-08-15 | 2019-06-07 | 瑞典爱立信有限公司 | 基于最大分段标识符深度的分段路由 |
-
2019
- 2019-09-09 CN CN201910857698.1A patent/CN110677341A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170346720A1 (en) * | 2014-12-23 | 2017-11-30 | Telefonaktiebolaget Lm Ericsson (Publ) | Path computation in a segment routing network |
CN105871721A (zh) * | 2015-01-19 | 2016-08-17 | 中兴通讯股份有限公司 | 一种段路由处理方法、处理装置及发送装置 |
CN109863725A (zh) * | 2016-08-15 | 2019-06-07 | 瑞典爱立信有限公司 | 基于最大分段标识符深度的分段路由 |
US20180375763A1 (en) * | 2017-06-27 | 2018-12-27 | Cisco Technology, Inc. | Ethernet Virtual Private Network (EVPN) using an Internet Protocol Version 6 Segment Routing (SRv6) Underlay Network and SRv6-enhanced Border Gateway Protocol (BGP) Signaling |
CN109067652A (zh) * | 2018-09-25 | 2018-12-21 | 盛科网络(苏州)有限公司 | 一种IPv6分段路由中节约段标识开销的方法及装置 |
CN109039903A (zh) * | 2018-10-18 | 2018-12-18 | 新华三技术有限公司 | 路由确定方法、装置及机器可读存储介质 |
Non-Patent Citations (1)
Title |
---|
C. FILSFILS等: "Segment Routing Architecture" * |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2021180077A1 (zh) * | 2020-03-09 | 2021-09-16 | 中国移动通信有限公司研究院 | 路径建立方法、数据传输方法、装置、网络节点及存储介质 |
CN111405515A (zh) * | 2020-03-25 | 2020-07-10 | 杭州一鸣惊人网络科技有限公司 | 一种基于5g通信的物联网 |
WO2022052731A1 (zh) * | 2020-09-10 | 2022-03-17 | 华为技术有限公司 | 传输数据的方法和电子设备 |
CN112787926A (zh) * | 2021-01-05 | 2021-05-11 | 北京信息科技大学 | 用于对兴趣包进行分段路由的装置、方法和系统 |
CN112688872A (zh) * | 2021-03-22 | 2021-04-20 | 中国人民解放军国防科技大学 | 一种联合多域及基于联合多域的低时延路径传输方法 |
CN113162852A (zh) * | 2021-03-25 | 2021-07-23 | 烽火通信科技股份有限公司 | 一种sr粘连节点配置的方法和装置 |
CN113162852B (zh) * | 2021-03-25 | 2022-03-25 | 烽火通信科技股份有限公司 | 一种sr粘连节点配置的方法和装置 |
WO2022266905A1 (zh) * | 2021-06-23 | 2022-12-29 | 新华三技术有限公司 | 一种转发路径生成方法、装置、网络设备及存储介质 |
CN113489646A (zh) * | 2021-07-01 | 2021-10-08 | 北京网聚云联科技有限公司 | 基于vxlan的分段路由传输方法、服务器、源节点及存储介质 |
CN113824632A (zh) * | 2021-09-03 | 2021-12-21 | 比威网络技术有限公司 | 安全分级多径路由中的途径点压缩方法和装置 |
CN115866071A (zh) * | 2023-02-28 | 2023-03-28 | 中信云网有限公司 | 初始设备属性信息的上报路径确定方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110677341A (zh) | 一种数据转发方法、装置、电子设备及存储介质 | |
CN107070798B (zh) | 网络区域划分方法、网络设备和系统 | |
CN107968752B (zh) | 一种sid获取方法和装置 | |
CN112422430B (zh) | QoS队列调度方法、装置、电子设备及存储介质 | |
EP2441220B1 (en) | Routing-based proximity for communication networks | |
CN111385207B (zh) | 一种业务数据的转发方法、网络设备及网络系统 | |
US7782882B2 (en) | Method and apparatus for distributing dynamic auto-summarization of internet protocol reachable addresses | |
CN109218197B (zh) | 分段路由中的冲突解决方法及路由器 | |
EP2892188B1 (en) | Method for determining packet forwarding path, network device and control device | |
CN112491707B (zh) | 一种转发路径的确定方法及装置 | |
EP2198571B1 (en) | Method and apparatus for network routing between a tactical network and a satellite network | |
WO2021004277A1 (zh) | 路由管理方法、装置、网络设备和可读存储介质 | |
CN105594167A (zh) | 转发报文的方法、控制器、转发设备和网络系统 | |
EP3310010B1 (en) | Method for allocating global label, method for acquiring global label and related device | |
CN101155119B (zh) | 一种确定自治系统边界节点的方法、装置及路径计算方法 | |
CN102546596B (zh) | 一种用于目标地址请求重定向的方法和设备 | |
WO2003084147A1 (en) | Method for automatically allocating address prefixes | |
EP2725751A1 (en) | Routing table updating | |
WO2012064428A1 (en) | Prioritization of routing information updates | |
CN106572016B (zh) | 路径计算方法及装置 | |
US10469369B2 (en) | Simple hierarchical label-switched paths | |
US9819573B2 (en) | Method for scalable computer network partitioning | |
CN104038419B (zh) | 用于在由多个网络节点组成的数据网络中传输数据分组的方法 | |
CN106034075B (zh) | 一种为vpn路由分配标签的方法及装置 | |
EP3198807A1 (en) | Method for end point identification in computer networks |
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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20200110 |
|
RJ01 | Rejection of invention patent application after publication |