发明名称 |
一种通过软硬件协同提高硬件报文分类规则容量的方法 |
摘要 |
本发明提供了一种通过软硬件协同提高硬件报文分类规则容量的方法。在硬件中采用大容量的SRAM(静态随机访问存储,容量可达几百MB)保存报文分类规则,以hash表的形式存储,通过在软件中建立硬件hash表的扩展的副本,由软件负责构造和维护报文分类规则,使得硬件报文分类系统可以配置大容量的规则。由于使用了SRAM以及hash表,不仅仅能快速、方便管理SRAM中的规则,保证了硬件上的规则匹配效率,同时由于SRAM存储介质的容量较大,能够存储更多的规则。 |
申请公布号 |
CN102055670B |
申请公布日期 |
2014.08.27 |
申请号 |
CN201010597300.4 |
申请日期 |
2010.12.17 |
申请人 |
曙光信息产业股份有限公司 |
发明人 |
贺志强;万伟;刘兴彬;王泼;朱春屹;连仲维 |
分类号 |
H04L12/58(2006.01)I;H04L12/70(2013.01)I;H04L29/06(2006.01)I;G06F17/30(2006.01)I |
主分类号 |
H04L12/58(2006.01)I |
代理机构 |
北京安博达知识产权代理有限公司 11271 |
代理人 |
徐国文 |
主权项 |
一种通过软硬件协同提高硬件报文分类规则容量的方法,其特征在于:包括以下步骤:A、在主机申请一块内存区域,其中一部分用来存储规则,另一部分用来存储hash表;B、通过接口库,获取硬件地址,通过映射函数获取SRAM缓冲区指针,并初始化SRAM,然后为每个规则生成hash关键字,并根据hash关键字把规则添加到主机规则表以及SRAM中;C、当需要增加时,接口库通过hash函数,查找该规则对应的hash关键字所在的位置,查找是否存在冲突,若不存在冲突,直接把该规则放进规则表中;若存在冲突,则把该规则添加到该规则的冲突链的头位置;D、接口库更新主机内存中的存储规则,主机内存中存储规则更新完毕后,再根据调整后的规则表,更新SRAM中硬件端的规则表;E、当报文需要匹配规则时,通过hash函数,查找SRAM中的规则,根据hash关键字,在hash关键字位置以及冲突位置匹配规则。 |
地址 |
300384 天津西青区华苑产业区(环外)海泰华科大街15号1-3层 |