【技术实现步骤摘要】
一种基于网络前缀切分的多路径报文转发方法
本专利技术涉及计算机网络通信领域,尤其涉及一种基于网络前缀切分的多路径报文转发方法。
技术介绍
传统路由器的报文处理,是由控制平面形成的路由表、转发平面形成的转发表和ACL(AccessControlList,访问控制列表)策略表共同决策完成报文分组的转发。一般情况下,路由表与转发表是一致的。在多路径路由情况下,策略表通过限定源地址分布实现分流,因此转发过程中需要完成两次查表(查转发表与ACL策略表)才能决定不同报文的转发出口。然而两次查表会严重影响转发性能。传统多路径转发方法可以分为主备模式和并发模式。主备模式是指路由协议从学习到的多路径中选择一个作为主要路径,并下发到转发表中。当主要路径出现故障,可以迅速将备用路径下发到转发表,提高路由协议的可靠性,但其本质依然是提供单路径路由服务。并发模式是指转发表中存在多路径且都可用作转发路径,有利于提高网络吞吐量。并发模式的多路径路由相关研究可以分为逐跳路由和段路由。段路由是一种基于源路由的隧道技术,通过将数据转发路径信息保存在报文头部以控制包的路由。由于报文中包含了路径转发信息,可以根据需要控制报文沿任何路径转发,具有极强服务路径定制能力。多路径段路由生成源、目的对间的最优路径集合,在源节点为流量实现多路径转发。逐跳路由是指每个交换机为报文决定下一跳的转发出口。目前主要的研究方法可以分为分布式路由算法如MPA(MultiplePathAlgorithm)、MDVA(MultipathDistanceVectorAl ...
【技术保护点】
1.一种基于网络前缀切分的多路径报文转发方法,其特征在于包括以下步骤:/n第一步,修改传统商用交换机的控制软件,在控制软件中添加前缀切分子模块,修改路由表计算子模块、转发表下发模块;/n路由表计算子模块与IP路由表、路由协议软件和前缀切分子模块相连;路由表计算子模块根据路由协议软件发送的路由表项生成IP路由表项,IP路由表项包含路由协议类型、目的网络前缀、下一跳、度量值和出接口五个域,将IP路由表项写入IP路由表,并将IP路由表项发送给前缀切分子模块;/n前缀切分子模块属于路由表管理模块,前缀切分子模块与路由表计算子模块和转发表下发模块相连;前缀切分子模块从路由表计算子模块接收IP路由表项,对IP路由表项中的目的网络前缀进行切分,生成切分后的IP转发表项,将切分后的IP转发表项发送给转发表下发模块;/n转发表下发模块与前缀切分子模块和硬件转发表相连,转发表下发模块从前缀切分子模块接收切分后的IP转发表项,将IP转发表项下发到硬件转发表;/n第二步,路由交换设备运行修改后的控制软件;/n第三步,路由交换设备中路由协议软件、路由表管理模块、转发表下发模块、IP转发引擎并行工作,配合完成多路 ...
【技术特征摘要】
1.一种基于网络前缀切分的多路径报文转发方法,其特征在于包括以下步骤:
第一步,修改传统商用交换机的控制软件,在控制软件中添加前缀切分子模块,修改路由表计算子模块、转发表下发模块;
路由表计算子模块与IP路由表、路由协议软件和前缀切分子模块相连;路由表计算子模块根据路由协议软件发送的路由表项生成IP路由表项,IP路由表项包含路由协议类型、目的网络前缀、下一跳、度量值和出接口五个域,将IP路由表项写入IP路由表,并将IP路由表项发送给前缀切分子模块;
前缀切分子模块属于路由表管理模块,前缀切分子模块与路由表计算子模块和转发表下发模块相连;前缀切分子模块从路由表计算子模块接收IP路由表项,对IP路由表项中的目的网络前缀进行切分,生成切分后的IP转发表项,将切分后的IP转发表项发送给转发表下发模块;
转发表下发模块与前缀切分子模块和硬件转发表相连,转发表下发模块从前缀切分子模块接收切分后的IP转发表项,将IP转发表项下发到硬件转发表;
第二步,路由交换设备运行修改后的控制软件;
第三步,路由交换设备中路由协议软件、路由表管理模块、转发表下发模块、IP转发引擎并行工作,配合完成多路径报文转发,方法是:路由协议软件按3.1步的流程生成路由表项,并将路由表项传递给路由表管理模块中的路由表计算子模块;同时,路由表管理模块按第3.2步的流程进行路由计算和前缀切分,得到切分后的IP转发表项,将切分后的IP转发表项发送给转发表下发模块;同时,转发表下发模块按第3.3步的流程将IP转发表项下发到硬件转发表;同时,IP转发引擎按第3.4步的流程转发报文;具体方法是:
3.1,路由协议软件生成路由表项,将路由表项传递给路由表管理模块,方法是:
3.1.1路由协议软件判定是否从路由交换设备的邻居节点接收到路由协议交互报文,若接收到路由协议交互报文,转3.1.2;若未接收到,转3.1.1继续等待路由协议交互报文;
3.1.2路由协议软件提取出路由协议交互报文中的路由协议类型、目的网络前缀、下一跳和度量值,生成路由表项;
3.1.3路由协议软件将路由表项发送给路由表计算子模块,转3.1.1;
3.2,路由表计算子模块根据路由表项生成IP路由表项,将IP路由表项写入IP路由表,将IP路由表项发送给前缀切分子模块;前缀切分子模块切分IP路由表项的目的网络前缀,生成多条IP转发表项,将IP转发表项发送给转发表下发模块,方法是:
3.2.1路由表计算子模块判断是否从路由协议软件接收到路由表项,若收到路由表项,令接收的路由表项为Item_new,转3.2.2;若没收到路由表项,转3.2.1继续等待路由表项;
3.2.2路由表计算子模块根据Item_new生成IP路由表项,得到有出接口域OutInt的IP路由表项Item_new;
3.2.3路由表计算子模块将IP路由表项Item_new写入IP路由表中;
3.2.4路由表计算子模块将IP路由表项Item_new发送给前缀切分子模块;
3.2.5前缀切分子模块接收路由表计算子模块发送的IP路由表项Item_new,对Item_new的目的网络前缀进行切分;令Item_new的目的网络前缀为P,假设P的前缀长度为L;对于IPv4目的网络前缀,有1≤L≤32;对于IPv6目的网络前缀,有1≤L≤128;前缀切分子模块对目的网络前缀P进行切分的方法是:
3.2.5.1若Item_new的出接口域中仅存在一个出接口值,则不对Item_new进行网络前缀切分,前缀切分子模块使用Item_new的目的网络前缀域和出接口域的值直接生成IP转发表项,发送给转发表下发模块,转3.2.1;否则,Item_new的出接口域中存在多个出接口值,执行3.2.5.2;
3.2.5.2此时Item_new的出接口域存在多个出接口值,Item_new是等价多路径路由项,若目的网络前缀域的值P的前缀长度L=32或128,则不进行目的网络前缀切分,前缀切分子模块使用Item_new的目的网络前缀域的值和出接口域中随机选择的一个出接口值生成IP转发表项,发送给转发表下发模块,转3.2.1;否则,转3.2.5.3;
3.2.5.3前缀切分子模块按以下方法切分Item_new的目的网络前缀P:
3.2.5.3.1若Item_new的出接口域中出接口的数量NInt=2k,k是正整数,转3.2.5.3.2,否则转3.2.5.3.6;
3.2.5.3.2若P为IPv4目的网络前缀,前缀切分子模块取切分长度m1=min{k,(32-L)},转3.2.5.3.3;若P为IPv6目的网络前缀,前缀切分子模块取切分长度m1=min{k,(128-L)},转3.2.5.3.3;
3.2.5.3.3前缀切分子模块切分Item_new的目的网络前缀P,得到目的网络前缀P切分后的个目的网络前缀;
3.2.5.3.4前缀切分子模块将个目的网络前缀一对一随机分配给Item_new的出接口域中的个接口,组成个目的网络前缀和出接口对,转3.2.5.3.5;
3.2.5.3.5前缀切分子模块使用个网络前缀和出接口对,生成条IP转发表项,逐个发送给转发表下发模块,转3.2.1;
3.2.5.3.6此时等价多路径路由项Item_new的出接口域中出接口的数量NInt=2j+r,j、r为正整数,若P为IPv4目的网络前缀,前缀切分子模块取切分长度m2=min{j+1,(32-L)},转3.2.5.3.7;若P为IPv6目的网络前缀,前缀切分子模块取切分长度m2=min{j+1,(128-L)},转3.2.5.3.7;
3.2.5.3.7前缀切分子模块二次切分Item_new的目的网络前缀P,得到个目的网络前缀;
3.2.5.3.8若说明目的网络前缀P切分后的目的网络前缀数量大于Item_new的出接口域中出接口的数量,转3.2.5.3.9,否则转3.2.5.3.13;
3.2.5.3.9前缀切分子模块从个目的网络前缀中任意挑选NInt个目的网络前缀,生成目的网络前缀集合Part1_P,前缀切分子模块将剩余的个目的网络前缀生成目的网络前缀集合Part2_P;
3.2.5.3.10前缀切分子模块将Part1_P中NInt个目的网络前缀一对一随机分配给Item_new的出接口域中的NInt个出接口,组成NInt个目的网络前缀和出接口对;
3.2.5.3.11前缀切分子模块从Item_new的出接口域中NInt个出接口中随机选择个出接口,一对一随机分配给Part2_P中个目的网络前缀,组成个目的网络前缀和出接口对;
3.2.5.3.12前缀切分子模块使用3.2.5.3.10和3.2.5.3.11中得到的目的网络前缀和出接口对,生成条IP转发表项,逐个发送给转发表下发模块,转3.2.1;
3.2.5.3.13此时说明目的网...
【专利技术属性】
技术研发人员:陶静,段晨,王宝生,彭伟,邢倩倩,郦苏丹,王宏,莫露莎,苏毅,
申请(专利权)人:中国人民解放军国防科技大学,
类型:发明
国别省市:湖南;43
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。