[发明专利]一种快速查找IPV6路由的系统及方法有效
申请号: | 201310009618.X | 申请日: | 2013-01-10 |
公开(公告)号: | CN103107945A | 公开(公告)日: | 2013-05-15 |
发明(设计)人: | 云晓春;张永铮;杜飞;郝志宇;庹宇鹏 | 申请(专利权)人: | 中国科学院信息工程研究所;国家计算机网络与信息安全管理中心 |
主分类号: | H04L12/741 | 分类号: | H04L12/741 |
代理公司: | 北京轻创知识产权代理有限公司 11212 | 代理人: | 杨立 |
地址: | 100093 *** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 快速 查找 ipv6 路由 系统 方法 | ||
1.一种快速查找IPV6路由的系统,其特征在于,包括一个路由存储表,所述路由存储表包括一个一级线性索引表和一个以上的存储模块;
所述一级线性索引表用于存储一个以上的索引值,每个索引值对应一个存储模块;其中,每个索引值为一个路由前缀的第4-16比特的值;
所述存储模块用于存储17比特之后的路由前缀。
2.根据权利要求1所述一种快速查找IPV6路由的系统,其特征在于,所述存储模块包括一个或一个以上的存储单元,存储单元包括一个单独的多比特树或一个以上的无冲突哈希表,每个无冲突哈希表附带若干个多比特树。
3.根据权利要求2所述一种快速查找IPV6路由的系统,其特征在于,所述无冲突哈希表的种类包括hash32、hash40和hash48表。
4.根据权利要求2所述一种快速查找IPV6路由的系统,其特征在于,所述每个无冲突哈希表包括一个一级哈希表和若干个二级哈希表;
一级哈希表包含若干个表项,每个表项包含三个单元,第一单元存储二级哈希表可存储元素个数m,第二单元存储调节参数a的值,第三单元存储指向二级哈希表的数组指针p;
二级哈希表包含若干个存储单元,用于存储路由前缀。
5.一种快速查找IPV6路由的方法,其特征在于,包括如下步骤:
步骤1:初始化路由前缀层次关系为一棵层次树;
步骤2:读取一条IPV6路由,计算其第4至16比特的值;
步骤3:判断该值在一级线性索引表中是否已存在,如果存在则进入步骤4;否则创建该索引值对应的存储模块,进入步骤4;
步骤4:根据IPV6路由前缀的层次关系和IPV6路由前缀长度的分布规律将17比特之后的路由前缀添加到相应存储模块中;
步骤5:查找路由时,根据目的地址的前缀的第4至16比特的值在一级线性索引表中找到对应的存储模块;
步骤6:根据存储模块包含存储单元的情况查找下一跳路由。
6.根据权利要求5所述一种快速查找IPV6路由的方法,其特征在于,所述步骤4中将17比特之后的路由前缀添加到相应的存储模块中的具体步骤如下:
步骤4.1:读取IPV6路由前缀长度,记为x;
步骤4.2:根据x值的大小进行如下操作,
若16<x<32,将路由前缀的17至x比特存入步宽为4,深度为4的多比特树的中;
若x=32,将路由前缀的17至32比特存入哈希表hash32中;
若32<x<40,将路由前缀的17至32比特存入哈希表hash32中,33至x比特存入hash32对应的步宽为2,深度为4的多比特树中;
若x=40,判断该路由信息是否处于层次树的最底层,且无父节点,如果是则将路由前缀的17至40比特存入哈希表hash40中;否则将路由前缀的17至32比特存入hash32中,将17至40比特存入hash40中;
若40<x<48,判断该路由信息是否处于层次树的最底层,且无父节点,如果是则将路由前缀的17至40比特存入哈希表hash40中,41至x比特存入hash40对应的步宽为2,深度为4的多比特树中;否则将路由前缀的17至32比特存入hash32中,将17至40比特存入hash40中,将41至x比特存入hash40对应的多比特树中;
x=48,判断该路由信息是否处于层次树的最底层,且无父节点,如果是则将路由前缀的17至48比特存入哈希表hash48中;否则将路由前缀的17至32比特存入hash32中,将17至40比特存入hash40中,将17至48比特存入hash48中;
若x>48,判断该路由信息是否处于层次树的最底层,且无父节点,如果是则将路由前缀的17至48比特存入哈希表hash48中,49至x比特存入步宽为4的多比特树中;否则将路由前缀的17至32比特存入hash32中,将17至40比特存入hash40中,将17至48比特存入hash48中,将49至x比特存入hash48对应的多比特树中。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国科学院信息工程研究所;国家计算机网络与信息安全管理中心,未经中国科学院信息工程研究所;国家计算机网络与信息安全管理中心许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310009618.X/1.html,转载请声明来源钻瓜专利网。