一种路由信息压缩与检索方法和系统技术方案

技术编号:31618661 阅读:21 留言:0更新日期:2021-12-29 18:53
本公开涉及一种基于霍夫曼编码和AVL树的路由信息压缩与检索方法。该方法包括对业务方的IP地址进行查重和过滤,根据用户订购的业务来将IP地址分批下放至用户网关,将IP地址拆分成IP地址段并构建霍夫曼树以生成对应于所述IP地址段的霍夫曼编码,合并霍夫曼编码并将其存储在霍夫曼编码组列表中,基于IP地址段和对应的所述霍夫曼编码来构建AVL树,以及基于该AVL树和霍夫曼编码组列表来检索要访问的IP地址。址。址。

【技术实现步骤摘要】
一种路由信息压缩与检索方法和系统


[0001]本专利技术涉及数据压缩和检索,尤其涉及基于基于霍夫曼编码和AVL树的路由信息压缩与检索。

技术介绍

[0002]目前,云网超宽带为了能够为用户提供各类应用宽带服务,在网关侧下发目标IP地址的明细路由表来区分加速应用和非加速应用,但是在现有技术中通常直接将未加工和未过滤的业务方的IP地址下发到用户网关,而当前现有网关的硬件能力和IP地址存储数量受限,硬件运算能力也较低,无法应对大量的明细路由表信息。另外,在现有技术中没有针对IP地址进行压缩存储,而对于IP地址这样很可能存在连续地址情况,使得IP地址段的重复率可能较高,有优化的空间来压缩。
[0003]对于路由表数据压缩领域的现有技术,相对节省算力的方法如CN03109123.7中路由压缩方法的20%压缩比过高;对于拆分过滤的方式,如CN201911368259.0中IPv6单播地址压缩方法,其不符合无损压缩的条件;对于外部访问解决方式,如CN201310404848.6中,访问存在延迟不符合项目需求;对于CN201210124632.X中的高效算术压缩算法,其对性能配置要求较高(Intel(R)CoreTM2.4GHz2处理器,2G内存,ATI RadeonHD图形显卡),外加训练模型的复杂度较高不适用本专利技术的应用场景。
[0004]因此,需要能够改进现有技术中的缺陷的方法和系统。

技术实现思路

[0005]提供本
技术实现思路
来以简化形式介绍将在以下具体实施方式部分中进一步描述的一些概念。本
技术实现思路
并不旨在标识出所要求保护的主题的关键特征或必要特征,也不旨在用于帮助确定所要求保护的主题的范围。
[0006]为了通过在网络终端(诸如网关)存放路由信息的形式来区分业务访问,本专利技术的目标是结合网络终端低存储、低性能的特点以及项目快速响应和高稳定性的要求提供一种路由信息的压缩与检索方法和系统。
[0007]通过压缩方法的比较,霍夫曼压缩法(Huff0)能保持相对不错的压缩比,并由于其简单的架构使得该方法的压缩和解压速度较为优秀,保障了解码和编码的效率。另外,在本专利技术的应用场景中,单个应用方提供的IP地址量都可达数万条,而基于动态霍夫曼编码将IP地址转换成紧凑的二进制编码可以降低IP地址的平均长度,理论上可以节约20%

90%的存储,配合其他的过滤方案可以扩大网关存储的IP地址数量,从而解决解决端侧存储全量IP地址的问题。
[0008]为了解决检索效率的问题,可将树形结构和散列表(Hash)作为解决方案。关于Hash方法,虽然其在查询和添加方面效率极高(O(1)),但偶现的哈希冲突的情况影响其稳定性,外加较差的延展,所以相对不适用于数量不确定的路由信息的存储;B/B+树是当前主流数据库的索引结构,但对比其他树形结构,其主要在具有较大数据量的情况下具备优势,
因此不太符合网关存储受限的场景;红黑树和AVL树均为平衡二叉树,但AVL树具有相对更高的稳定性,并且其搜索复杂度约为O(logN),对于列表查询速度的影响较小,因此相对红黑树AVL树更为适用于本专利技术的应用场景。
[0009]综上所述,本专利技术采用动态霍夫曼编码算法来实现IP地址的无损压缩,并使用AVL平衡检索树来减少编码对识别IP地址的影响。
[0010]具体而言,在本专利技术的一个实施例中,提供了一种基于霍夫曼编码和AVL树的路由信息压缩与检索方法,该方法包括:
[0011]对业务方的IP地址进行查重和过滤;
[0012]根据用户订购的业务来将所述IP地址分批下放至用户网关;
[0013]将所述IP地址拆分成IP地址段并构建霍夫曼树以生成对应于所述IP地址段的霍夫曼编码;
[0014]合并所述霍夫曼编码以生成霍夫曼编码组并将其存储在霍夫曼编码组列表中;
[0015]基于所述IP地址段和对应的所述霍夫曼编码来构建AVL树;以及
[0016]基于所述AVL树和所述霍夫曼编码组列表来检索要访问的IP地址。
[0017]在本专利技术的另一个实施例中,提供了一种基于霍夫曼编码和AVL树的路由信息压缩与检索系统,该系统包括:
[0018]用于对业务方的IP地址进行查重和过滤的装置;
[0019]用于根据用户订购的业务来将所述IP地址分批下放至用户网关的装置;
[0020]用于将所述IP地址拆分成IP地址段并构建霍夫曼树以生成对应于所述IP地址段的霍夫曼编码的装置;
[0021]用于合并所述霍夫曼编码以生成霍夫曼编码组并将其存储在霍夫曼编码组列表中的装置;
[0022]用于基于所述IP地址段和对应的所述霍夫曼编码来构建AVL树的装置;以及
[0023]用于基于所述AVL树和所述霍夫曼编码组列表来检索要访问的IP地址的装置。
[0024]在本专利技术的又一个实施例中,提供了一种存储计算机可执行指令的计算机可读介质,这些指令包括:
[0025]用于对业务方的IP地址进行查重和过滤的指令;
[0026]用于根据用户订购的业务来将所述IP地址分批下放至用户网关的指令;
[0027]用于将所述IP地址拆分成IP地址段并构建霍夫曼树以生成对应于所述IP地址段的霍夫曼编码的指令;
[0028]用于合并所述霍夫曼编码以生成霍夫曼编码组并将其存储在霍夫曼编码组列表中的指令;
[0029]用于基于所述IP地址段和对应的所述霍夫曼编码来构建AVL树的指令;以及
[0030]用于基于所述AVL树和所述霍夫曼编码组列表来检索要访问的IP地址的指令。
[0031]在结合附图研读了下文对本专利技术的具体示例性实施例的描述之后,本专利技术的其他方面、特征和实施例对于本领域普通技术人员将是明显的。尽管本专利技术的特征在以下可能是针对某些实施例和附图来讨论的,但本专利技术的全部实施例可包括本文所讨论的有利特征中的一个或多个。换言之,尽管可能讨论了一个或多个实施例具有某些有利特征,但也可以根据本文讨论的本专利技术的各种实施例使用此类特征中的一个或多个特征。以类似方式,尽
管示例性实施例在下文可能是作为设备、系统或方法实施例进行讨论的,但是应当领会,此类示例性实施例可以在各种设备、系统、和方法中实现。
附图说明
[0032]为了能详细理解本公开的以上陈述的特征所用的方式,可参照各方面来对以上简要概述的内容进行更具体的描述,其中一些方面在附图中阐示。然而应该注意,附图仅阐示了本公开的某些典型方面,故不应被认为限定其范围,因为本描述可允许有其他等同有效的方面。
[0033]图1是根据本公开的一个实施例的基于霍夫曼编码和AVL树的路由信息压缩与检索的系统架构的示意图。
[0034]图2示出了根据本公开的一个实施例的基于霍夫曼编码和AVL树的路由信息压缩与检索方法的流程图。
[0035]图3示出了根据本公开的一个实施例的霍夫曼树构建和编码方法的流程图。
[0036]图4示出了根据本公开的一个实本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于霍夫曼编码和AVL树的路由信息压缩与检索方法,包括:对业务方的IP地址进行查重和过滤;根据用户订购的业务来将所述IP地址分批下放至用户网关;将所述IP地址拆分成IP地址段并构建霍夫曼树以生成对应于所述IP地址段的霍夫曼编码;合并所述霍夫曼编码以生成霍夫曼编码组并将其存储在霍夫曼编码组列表中;基于所述IP地址段和对应的所述霍夫曼编码来构建AVL树;以及基于所述AVL树和所述霍夫曼编码组列表来检索要访问的IP地址。2.如权利要求1所述的方法,其中对业务方的所述IP地址进行查重和过滤包括对所述IP地址进行哈希去重并基于DNS查询来过滤掉无效的IP地址。3.如权利要求2所述的方法,进一步包括将经去重和经过滤的IP地址信息引入到构建在服务器上的因业务方而异的地址库中。4.如权利要求1所述的方法,其中每个IP地址段的霍夫曼编码是按照左0右1的规则获得的,并且所构建的霍夫曼树被存储在所述用户网关的本地存储中。5.如权利要求1所述的方法,其中构建所述霍夫曼树包括:建立空霍夫曼树并构建初始索引为0的NYT根节点;按照索引编号从上到下、从右到左依次减小原则为新添加的元素确定索引;以及以中间节点加上左NYT节点和右元素节点的形式插入元素直到完成所述霍夫曼树的构建...

【专利技术属性】
技术研发人员:朱方
申请(专利权)人:天翼数字生活科技有限公司
类型:发明
国别省市:

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

1