IPv6路由查找方法及装置制造方法及图纸

技术编号:12489232 阅读:59 留言:0更新日期:2015-12-11 03:51
本申请提出IPv6路由查找方法及装置。方法包括:分别针对每个VPN中的IPv6前缀的路由分布,构建一棵Multibit Trie;将每棵Multibit Trie划分为n+1个Level:Level 0~n;将Multibit Trie的1~m级IPv6前缀上的路由扩展到m+1级前缀上;将第m+1级IPv6前缀的每一个分支作为一个Branch_Tree;针对Level p~n中的每个第一级Sub_Trie节点,以当前VPN标识+本Sub_Trie节点的IPv6地址在本Level之前的所有bit作为输入Key,对输入Key进行Hash计算;当对一VPN内的一IPv6地址进行路由查找时,分别构造针对每个Level的输入Key,对针对每个Level的输入Key进行计算,采用最长的Hash命中结果查找路由。本申请提高了IPv6路由查找效率。

【技术实现步骤摘要】

本申请涉及路由查找
,尤其涉及IPv6路由查找方法及装置
技术介绍
网络之间进行通信就要实现数据的传递转发,所以网络设备的主要职能之一就是进行高效率的数据转发,而其在因特网协议的基本数据平面的功能是路由查找,即根据路由表中的前缀信息,对每一个到来的数据包决定它的下一跳及出端口。由于路由表中通配符以及 CIDR(Classless Inter-Domain Routing,基于无类域间路由)的 LPM(LongestPrefix Matching,最长前缀匹配)问题使得路由查找变得非常复杂。基于LPM的路由查找算法除了需要高性能外,还要满足如下几个需求:一、IPv4 和 IPv6 双栈现有解决LPM的算法大都针对IPv4的32位地址设计,不能直接移植或者扩展到IPv6,这就需要根据IPv6的特点,设计出适合128位IP地址的高效的路由查找算法。二、多 VPN(Virtual Private Network,虚拟专网)实例支持当前网络设备需要支持VRF(VPN Routing Forwarding Instance,VPN路由转发实例),VRF是指在一台路由器上需要同时支持多个路由转发表实例,各路由转发表间独立。使用VRF可以用路由隔离不同的VPN用户。当前中、高端路由器已经普遍支持4K或8K VPN,也就是说设备内部需要同时支持4K或81(个VRF转发表,支持多VPN实例对路由算法的整体架构具有很大的影响。三、大规格路由数量对于IP路由来说,网络设备需要支持远大于当前现网路由的规格。图1所示为2002?2009年Internet IPv4路由分布示意图,从图1中可以看到8年间IPv4路由数量增加了一倍以上;图2所示为Internet IPv6路由分布示意图。另外由于网络设备需要支持多VPN实例,每个VPN实例都需要维护一套独立的路由表,当网络设备支持较多VPN实例时,网络设备整体路由表条目会很大。例如8K个VPN实例,每个VPN实例有512条路由,则整个网络设备需要支持4M条路由。当前中、高端路由器设备,IPv4普遍要求大于4M条路由,IPv6普遍要求大于IM条路由,大规格的路由表数量对路由算法的整体架构具有很大的影响,尤其对算法所选择的内存类型具有决定作用。四、快速更新路由更新性能是网络设备一个非常关键的指标,路由更新速度慢会严重影响整网路由收敛的速度,导致整网不停地路由震荡;随着现网路由数量的增加、以及整网VPN和VPN路由数量的增加,对路由更新性能提出了更高的要求。
技术实现思路
本申请提供IPv6路由查找方法及装置,以提高IPv6路由查找效率。本申请的技术方案是这样实现的:—种IPv6路由查找方法,该方法包括:分别针对每个VPN中的IPv6前缀的路由分布,构建一棵Multibit Trie ;将每棵Multibit Trie划分为n+1个Level:Level O?η,η为大于I的整数;采用前缀扩展的方法将Multibit Trie的I?m级IPv6前缀上的路由扩展到m+1级IPv6前缀上,m为大于I的整数;将第m+Ι级IPv6前缀的每一个分支作为一个Branch_Tree,保存每个Branch_Tree的数据结构信息;针对Level p?η中的每个第一级Sub_Trie节点,以当前VPN标识和本Sub_Trie节点的IPv6前缀的IPv6地址在本Level之前的所有bit作为输入Key,采用预设的本Level的Hash函数对输入Key进行计算,将Hash计算结果映射到本Sub_Trie节点的数据结构信息指针上,P为整数且0〈ρ〈η ;当对一 VPN内的一 IPv6地址进行路由查找时,先根据VPN标识和该IPv6地址在每个Level之前的所有bit分别构造针对每个Level的输入Key,分别采用每个Level的Hash函数对针对每个Level的输入Key进行计算,若有Hash计算结果命中,则采用最长的Hash命中结果对应的Subjrie节点的数据结构信息指针查找路由;否则,根据该IPv6地址的高m+lbit查找到对应的Branch_Tree,在该Branch_Tree的Level I?p_l中查找路由。—种IPv6路由查找装置,该装置包括:Multibit Trie建立及划分模块:分别针对每个VPN中的IPv6前缀的路由分布,构建一棵 Multibit Trie ;将每棵 Multibit Trie 划分为 n+1 个 Level:LevelO ?η,η 为大于I的整数;采用前缀扩展的方法将Multibit Trie的I?m级IPv6前缀上的路由扩展到m+1级IPv6前缀上,m为大于I的整数;将第m+Ι级IPv6前缀的每一个分支作为一个Branch_Tree,保存每个Branch_Tree的数据结构信息;Hash映射模块:针对Level p?η中的每个第一级Sub_Trie节点,以当前VPN标识和本Sub_Trie节点的IPv6前缀的IPv6地址在本Level之前的所有bit作为输入Key,采用预设的本Level的Hash函数对输入Key进行计算,将Hash计算结果映射到本Sub_Trie节点的数据结构信息指针上,P为整数且0〈ρ〈η ;路由查找模块:当对一 VPN内的一 IPv6地址进行路由查找时,先根据VPN标识和该IPv6地址在每个Level之前的所有bit分别构造针对每个Level的输入Key,分别采用每个Level的Hash函数对针对每个Level的输入Key进行计算,若有Hash计算结果命中,则采用最长的Hash命中结果对应的Subjrie节点的数据结构信息指针查找路由;否则,根据该IPv6地址的高m+lbit查找到对应的Branch_Tree,在该Branch_Tree的Level I?P-1中查找路由。可见,本申请支持多VPN实例的IPv6路由;且,通过将Multibit-Trie划分为多个Branch_Tree,提高了 IPv6路由查找效率;且,通过对Level p?η中的第一级Sub_Trie节点的指针进行Hash映射,使得在进行IPv6地址的路由查找时,可在Level p?η中进行并行查找,并根据最长的Hash命中结果查找到路由,进一步提高了 IPv6路由查找效率;且,本申请实施例中,将默认路由单独存储,而不扩展到Level 1,减少了Multibit-Trie的冗余节点,进一步提高了路由查找速度;且,本申请实施例中,通过为Level p?η中的每个Level设置多个Hash函数,减少了 Hash冲突,提高了路由查找精度;且,本申请实施例中,对Sub_Trie节点内部进行前缀扩展后划分为8个SegmentedSub_Trie节点,进一步提高了路由查找速度;且,本申请实施例中,简化最后一级Level的Sub_Trie节点的数据结构,进一步提高了路由查找速度。【附图说明】图1为2002?2009年Internet IPv4路由分布示意图;图2为现有的Internet IPv6路由分布示意图;图3 为 Unibit Trie 示例图;图4为Unibit Trie到Multibit Trie的转换过程不例图;图5为图4中的Level I的结构;图6为本文档来自技高网
...

【技术保护点】
一种IPv6路由查找方法,其特征在于,该方法包括:分别针对每个虚拟专网VPN中的IPv6前缀的路由分布,构建一棵多位字典树Multibit Trie;将每棵Multibit Trie划分为n+1个层Level:Level 0~n,n为大于1的整数;采用前缀扩展的方法将Multibit Trie的1~m级IPv6前缀上的路由扩展到m+1级IPv6前缀上,m为大于1的整数;将第m+1级IPv6前缀的每一个分支作为一个分支树Branch_Tree,保存每个Branch_Tree的数据结构信息;针对Level p~n中的每个第一级子字典树Sub_Trie节点,以当前VPN标识和本Sub_Trie节点的IPv6前缀的IPv6地址在本Level之前的所有位bit作为输入Key,采用预设的本Level的哈希Hash函数对输入Key进行计算,将Hash计算结果映射到本Sub_Trie节点的数据结构信息指针上,p为整数且0<p<n;当对一VPN内的一IPv6地址进行路由查找时,先根据VPN标识和该IPv6地址在每个Level之前的所有bit分别构造针对每个Level的输入Key,分别采用每个Level的Hash函数对针对每个Level的输入Key进行计算,若有Hash计算结果命中,则采用最长的Hash命中结果对应的Sub_Trie节点的数据结构信息指针查找路由;否则,根据该IPv6地址的高m+1bit查找到对应的Branch_Tree,在该Branch_Tree的Level 1~p‑1中查找路由。...

【技术特征摘要】

【专利技术属性】
技术研发人员:任凯葛长忠安绍亮
申请(专利权)人:杭州华三通信技术有限公司
类型:发明
国别省市:浙江;33

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1