[发明专利]IPv6地址前缀压缩存储方法及设备有效
申请号: | 201010611546.2 | 申请日: | 2010-12-28 |
公开(公告)号: | CN102045412A | 公开(公告)日: | 2011-05-04 |
发明(设计)人: | 黄友俊;李星;吴建平;胡松;张辉 | 申请(专利权)人: | 赛尔网络有限公司 |
主分类号: | H04L29/12 | 分类号: | H04L29/12 |
代理公司: | 中科专利商标代理有限责任公司 11021 | 代理人: | 赵伟 |
地址: | 100084 北京市海淀区中*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | ipv6 地址 前缀 压缩 存储 方法 设备 | ||
1.一种用于存储IPv6地址前缀的方法,包括:
将IPv6地址前缀划分为具有固定长度K的L个部分,其中K和L均为正整数;
使用步长为K、层数为L的多分支Trie树结构存储IPv6地址前缀,其中每一个节点使用长度为2K的数组来存储节点指针,节点指针在数组中的位置表示IPv6地址前缀的K个比特;以及
利用额外数组对生成的多分支Trie树中的每一个节点进行压缩存储。
2.根据权利要求1所述的方法,其中,所述压缩存储包括:针对多分支Trie树中的每一个节点,利用两个数组来代替,第一数组存储该节点中的非空指针值,而第二数组存储每一个非空指针值在该节点中的对应位置。
3.根据权利要求1所述的方法,其中,初始化多分支Trie树结构,使得与根节点相对应的数组中均为空指针。
4.根据权利要求2所述的方法,其中,针对多分支Trie树中的每一个节点,通过遍历与该节点相对应的数组,将非空指针和其相应的位置分别存储在第一数组和第二数组中。
5.根据权利要求2所述的方法,还包括:如果需要查找已存储的IPv6地址前缀,则使用二分法依次查找每一层节点的第二数组。
6.根据权利要求1-5中任意一项所述的方法,其中,步长K等于16。
7.一种用于存储IPv6地址前缀的设备,包括:
划分单元,将IPv6地址前缀划分为具有固定长度K的L个部分,其中K和L均为正整数;
存储单元,使用步长为K、层数为L的多分支Trie树结构存储IPv6地址前缀,其中每一个节点使用长度为2K的数组来存储节点指针,节点指针在数组中的位置表示IPv6地址前缀的K个比特;以及
压缩单元,利用额外数组对生成的多分支Trie树中的每一个节点进行压缩存储。
8.根据权利要求1所述的设备,其中,所述压缩单元针对多分支Trie树中的每一个节点,利用两个数组来代替,第一数组存储该节点中的非空指针值,而第二数组存储每一个非空指针值在该节点中的对应位置。
9.根据权利要求7所述的设备,其中,所述存储单元初始化多分支Trie树结构,使得与根节点相对应的数组中均为空指针。
10.根据权利要求8所述的设备,其中,所述压缩单元针对多分支Trie树中的每一个节点,通过遍历与该节点相对应的数组,将非空指针和其相应的位置分别存储在第一数组和第二数组中。
11.根据权利要求8所述的设备,还包括查找单元,如果需要查找已存储的IPv6地址前缀,则所述查找单元使用二分法依次查找每一层节点的第二数组。
12.根据权利要求7-11中任意一项所述的设备,其中,步长K等于16。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于赛尔网络有限公司,未经赛尔网络有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201010611546.2/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种压脉带连续自动抽紧装置
- 下一篇:一种甲状腺拉钩