一种提高接口表查找效率的方法及系统技术方案

技术编号:27306154 阅读:28 留言:0更新日期:2021-02-10 09:18
本发明专利技术公开了一种提高接口表查找效率的方法及系统,涉及通信技术领域,该方法包括以下步骤:获取主接口、子接口以及QinQ接口的参数信息;创建数组表以及哈希表,并根据数组表以及哈希表组建接口表;将主接口的物理属性和流属性以及子接口的流属性均存储至数组表内,将QinQ接口的参数信息存储至哈希表内;响应查找指令,根据查找指令的内容查询接口表内的数组表或哈希表。本发明专利技术提高了针对主接口、子接口的查找效率,从而提高了接口表整体的查找效率。率。率。

【技术实现步骤摘要】
一种提高接口表查找效率的方法及系统


[0001]本专利技术涉及通信
,具体涉及一种提高接口表查找效率的方法及系统。

技术介绍

[0002]数据平面开发套件DPDK主要基于linux系统运行,用于快速数据包处理的函数库与驱动集合,可以极大提高数据处理性能和吞吐量,提高数据平面应用程序的工作效率;
[0003]DPDK提供一套接口供开发者用于软转发技术,其中多种算法用于数据表项查找,包括数组表、HASH表、LPM表、ACL表等,各个算法适用的情况不同,查表效率也各不相同;
[0004]虽然DPDK对数据平面转发性能进行了优化,但转发性能仍然是转发技术的瓶颈,在基于DPDK开发的路由器产品中,数据转发过程中需要查询接口表,接口表包含2张表项,即物理口表和流表,物理口表数量为接口数量,数量较少,可采用数组表方式存储和查表,而流表包括物理口、子接口和qinq接口等,qinq接口数量为接口数,数量巨大,不适合采用数组表方式存储查表,所以流表一般使用hash表方式存储查表;
[0005]在对流表中数据进行查找时,查找速率对CPU性能有一定的要求,因此,急需一种改进方案,用以提升接口表的查找效率。

技术实现思路

[0006]针对现有技术中存在的缺陷,本专利技术的目的在于提供一种提高接口表查找效率的方法及系统,将查找频率较高且文件大小较小的主接口、子接口的参数信息存储于数组表中,提高了针对主接口、子接口的查找效率,从而提高了接口表整体的查找效率。
[0007]为达到以上目的,本专利技术采取的技术方案是:
[0008]本专利技术公开一种提高接口表查找效率的方法,所述方法包括以下步骤:
[0009]获取主接口、子接口以及QinQ接口的参数信息;
[0010]创建数组表以及哈希表,并根据所述数组表以及所述哈希表组建接口表;
[0011]将所述主接口的物理属性和流属性以及所述子接口的流属性均存储至所述数组表内,将所述QinQ接口的参数信息存储至所述哈希表内;
[0012]响应查找指令,根据所述查找指令的内容查询所述接口表内的所述数组表或所述哈希表。
[0013]在上述技术方案的基础上,所述将所述主接口的物理属性和流属性以及所述子接口的流属性均存储至所述数组表内,还包括以下步骤:
[0014]将各所述主接口的物理属性和流属性一一对应进行关联,存储至所述数据表内,并根据各所述主接口对应的接口ID向对应的所述主接口的物理属性和流属性添加标记下标;
[0015]将各所述子接口的流属性存储至所述数据表内,并根据各所述子接口对应的VLAN ID向对应的所述子接口的流属性添加标记下标。
[0016]在上述技术方案的基础上,所述数组表内包括第一数组以及第二数组,所述将所
述主接口的物理属性和流属性以及所述子接口的流属性均存储至所述数组表内,具体包括以下步骤:
[0017]将各所述主接口的物理属性存储至所述第一数组,根据各所述主接口对应的接口ID向对应的所述主接口的物理属性添加标记下标;
[0018]将各所述主接口的流属性存储至所述第二数组,根据各所述主接口对应的接口ID以及VLAN ID向对应的所述主接口的流属性添加标记下标;
[0019]将各所述子接口的流属性存储至所述第二数组,根据各所述子接口对应的接口ID以及VLAN ID向对应的所述子接口的流属性添加标记下标。
[0020]在上述技术方案的基础上,所述方法还包括以下步骤:
[0021]各端口均分配一个所述接口表;
[0022]响应查询指令时,查询所述端口对应的所述接口表。
[0023]在上述技术方案的基础上,所述哈希表的关键值至少包括接口ID、CVLAN以及SVLAN。
[0024]本专利技术还公开一种提高接口表查找效率的系统,所述系统包括:
[0025]参数获取单元,其用于获取主接口、子接口以及QinQ接口的参数信息;
[0026]预处理单元,其用于创建数组表以及哈希表,并根据所述数组表以及所述哈希表组建接口表;
[0027]第一存储单元,其用于将所述主接口的物理属性和流属性以及所述子接口的流属性均存储至所述数组表内;
[0028]第二存储单元,其用于将所述QinQ接口的参数信息存储至所述哈希表内;
[0029]查询单元,其用于响应查找指令,根据所述查找指令的内容查询所述接口表内的所述数组表或所述哈希表。
[0030]在上述技术方案的基础上,所述第一存储单元还用于:
[0031]将各所述主接口的物理属性和流属性一一对应进行关联,存储至所述数据表内,并根据各所述主接口对应的接口ID向对应的所述主接口的物理属性和流属性添加标记下标;
[0032]将各所述子接口的流属性存储至所述数据表内,并根据各所述子接口对应的VLAN ID向对应的所述子接口的流属性添加标记下标。
[0033]在上述技术方案的基础上,所述数组表内包括第一数组以及第二数组,所述第一存储单元还用于:
[0034]将各所述主接口的物理属性存储至所述第一数组,根据各所述主接口对应的接口ID向对应的所述主接口的物理属性添加标记下标;
[0035]将各所述主接口的流属性存储至所述第二数组,根据各所述主接口对应的接口ID以及VLAN ID向对应的所述主接口的流属性添加标记下标;
[0036]将各所述子接口的流属性存储至所述第二数组,根据各所述子接口对应的接口ID以及VLAN ID向对应的所述子接口的流属性添加标记下标。
[0037]在上述技术方案的基础上,所述预处理单元还用于:
[0038]分别向各端口配置一所述接口表。
[0039]在上述技术方案的基础上,所述哈希表的关键值至少包括接口ID、CVLAN以及
SVLAN。
[0040]与现有技术相比,本专利技术的优点在于:
[0041]本专利技术将查找频率较高且文件大小较小的主接口、子接口的参数信息存储于数组表中,提高了针对主接口、子接口的查找效率,从而提高了接口表整体的查找效率。
附图说明
[0042]图1为本专利技术实施例一中提高接口表查找效率的方法的步骤流程图;
[0043]图2为本专利技术实施例一中提高接口表查找效率的方法中数组表存储流程的步骤流程图;
[0044]图3为本专利技术实施例一中数组表包括第一数组以及第二数组时,提高接口表查找效率的方法的数组表存储流程的步骤流程图;
[0045]图4为本专利技术实施例二中提高接口表查找效率的系统的结构框图;
[0046]图中:1、参数获取单元;2、预处理单元;3、第一存储单元;4、第二存储单元。
具体实施方式
[0047]术语解释:
[0048]以下结合附图对本专利技术的实施例作进一步详细说明。
[0049]本专利技术实施例提供一种提高接口表查找效率的方法及系统,将查找频率较高且文件大小较小的主接口、子接口的参数信息本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种提高接口表查找效率的方法,所述方法包括以下步骤:获取主接口、子接口以及QinQ接口的参数信息;创建数组表以及哈希表,并根据所述数组表以及所述哈希表组建接口表;将所述主接口的物理属性和流属性以及所述子接口的流属性均存储至所述数组表内,将所述QinQ接口的参数信息存储至所述哈希表内;响应查找指令,根据所述查找指令的内容查询所述接口表内的所述数组表或所述哈希表。2.如权利要求1所述的方法,其特征在于,所述将所述主接口的物理属性和流属性以及所述子接口的流属性均存储至所述数组表内,还包括以下步骤:将各所述主接口的物理属性和流属性一一对应进行关联,存储至所述数据表内,并根据各所述主接口对应的接口ID向对应的所述主接口的物理属性和流属性添加标记下标;将各所述子接口的流属性存储至所述数据表内,并根据各所述子接口对应的VLAN ID向对应的所述子接口的流属性添加标记下标。3.如权利要求1所述的方法,其特征在于,所述数组表内包括第一数组以及第二数组,所述将所述主接口的物理属性和流属性以及所述子接口的流属性均存储至所述数组表内,具体包括以下步骤:将各所述主接口的物理属性存储至所述第一数组,根据各所述主接口对应的接口ID向对应的所述主接口的物理属性添加标记下标;将各所述主接口的流属性存储至所述第二数组,根据各所述主接口对应的接口ID以及VLAN ID向对应的所述主接口的流属性添加标记下标;将各所述子接口的流属性存储至所述第二数组,根据各所述子接口对应的接口ID以及VLAN ID向对应的所述子接口的流属性添加标记下标。4.如权利要求1所述的方法,其特征在于,所述方法还包括以下步骤:各端口均分配一个所述接口表;响应查询指令时,查询所述端口对应的所述接口表。5.如权利要求1所述的方法,其特征在于:所述哈希表的关键值至少包括接口I...

【专利技术属性】
技术研发人员:李炎涛
申请(专利权)人:烽火通信科技股份有限公司
类型:发明
国别省市:

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

1