[发明专利]一种基于TCAM的报文关键字匹配方法和装置有效
| 申请号: | 202010768507.7 | 申请日: | 2020-08-03 |
| 公开(公告)号: | CN112131356B | 公开(公告)日: | 2022-06-07 |
| 发明(设计)人: | 黄亮;包秀国;杨云龙;刘伟;李春明;向广磊;赵玉超 | 申请(专利权)人: | 国家计算机网络与信息安全管理中心;北京百卓网络技术有限公司 |
| 主分类号: | G06F16/332 | 分类号: | G06F16/332;G06F16/31 |
| 代理公司: | 北京集智东方知识产权代理有限公司 11578 | 代理人: | 陈亚斌;关兆辉 |
| 地址: | 100029*** | 国省代码: | 北京;11 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 基于 tcam 报文 关键字 匹配 方法 装置 | ||
1.一种基于TCAM的报文关键字匹配方法,其特征在于,所述方法包括:
基于关键字规则数据库和TCAM芯片生成规则索引数据库和规则全文数据库;
获取待处理的报文;
定位所述报文的载荷起始位,初始化第一偏移位置offsetL,其中offsetL=0;
基于所述载荷起始位和所述初始化第一偏移位置offsetL,取TLI个字节作为第一查询命令字符,其中,TLI为所述规则索引库的查询命令字符长度;
将所述第一查询命令字符在所述规则索引数据库中进行匹配;
若命中与所述第一查询命令字符相关的索引规则,基于命中的所述索引规则的编号NID,计算所述报文的第二偏移位置offsetLN,其中offsetLN=NID%(TLI-RLI+1),其中,RLI为所述规则索引的长度;
基于所述第二偏移位置offsetLN取TL个字节作为第二查询命令字符,其中,TL为所述规则全文数据库的查询命令字符长度;
将所述第二查询命令字符在所述规则全文数据库中进行匹配;
若命中与所述第二查询命令字符相关的规则全文,获取命中的所述规则全文;
基于获取的所述规则全文,处理所述待处理报文。
2.根据权利要求1所述的基于TCAM的报文关键字匹配方法,其特征在于,
所述方法还包括,若未命中与所述第一查询命令字符相关的规则索引,或未命中与所述第二查询命令字符相关的规则全文,则按预设位置更新规则,更新所述第一偏移位置offsetL,并基于更新后的偏移位置,重复在所述规则索引数据库中的匹配操作和/或在所述规则全文数据库中的匹配操作,若命中规则全文,则处理所述待处理报文;
若仍未命中规则索引或规则全文,则重复所述按所述预设位置更新规则进行偏移位置更新的操作和在所述规则索引数据库中的匹配操作和/或在所述规则全文数据库中的匹配操作,所述预设位置更新规则为offsetL+=TLI。
3.根据权利要求2所述的基于TCAM的报文关键字匹配方法,其特征在于,
所述基于关键字规则数据库和TCAM芯片生成规则索引数据库和规则全文数据库,具体包括,
在所述TCAM芯片上建立所述规则索引数据库和所述规则全文数据库;
基于规则全文长度RL和规则全文数据库的查询命令字符长度TL组成所述规则全文数据库,具体为,对于任一个所述规则全文,将任一个所述规则全文在(RL,TL-1)长度区间内的掩码置为0后,组成所述规则全文数据库;
选取所述规则全文数据库中的规则全文的前RLI个字节作为规则索引,并基于所述规则索引的长度RLI和所述规则索引库的查询命令字符长度TLI扩展组成所述规则索引数据库,具体为,对于任一个所述规则索引,将任一个所述规则索引依次右移一个字节,直至TLI-1位,将所述规则索引的左边移出的空位对应掩码位设置为0,由此扩展生成TLI-RLI+1条规则索引。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于国家计算机网络与信息安全管理中心;北京百卓网络技术有限公司,未经国家计算机网络与信息安全管理中心;北京百卓网络技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010768507.7/1.html,转载请声明来源钻瓜专利网。





