[发明专利]深度报文检测DFA状态转移表的压缩与报文匹配方法有效

专利信息
申请号: 201110026486.2 申请日: 2011-01-25
公开(公告)号: CN102075430A 公开(公告)日: 2011-05-25
发明(设计)人: 缪庆军;丁贤根 申请(专利权)人: 无锡网芯科技有限公司;江苏华丽网络工程有限公司
主分类号: H04L12/56 分类号: H04L12/56;H04L29/06
代理公司: 无锡华源专利事务所 32228 代理人: 聂汉钦
地址: 214028 江苏省无锡市*** 国省代码: 江苏;32
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 深度 报文 检测 dfa 状态 转移 压缩 匹配 方法
【权利要求书】:

1.一种深度报文检测DFA状态转移表的压缩与报文匹配方法,其特征在于:对DFA状态转移表的每一行,将转移状态相同的相近输入字符及其转移状态用(起始字符,位图,转移状态)三元组表示,存放于高速存储器中;当查找输入字符的转移状态时,并行匹配同一行的三元组。

2.根据权利要求1所述深度报文检测DFA状态转移表的压缩与报文匹配方法,其特征在于: 

DFA状态转移表的压缩依次执行以下步骤:

1)对每个状态行,将转移状态相同的输入字符分为同一组;

2)对每个状态行,将分在同一组的相邻或邻近的输入字符及其转移状态用(起始字符,位图,转移状态)三元组来表示;其中起始字符为分组内最小的输入字符;位图以二进制表示,计算该组各个输入字符相对于起始字符的偏移值,将位图上与这些偏移值相对应的比特位置1,其余比特位置0;

3)对每个状态行,当分在同一组的输入字符不能被单个所述三元组编码时,由多个所述三元组来编码;

4)对每个状态行,如果其包含的所述三元组的个数不超过预设的阀值,则该状态行用上述三元组编码的方式存放在高速存储器中;否则,该状态行不压缩,用一维线性数组的方式存储在片外DRAM中;

5)对状态值重新映射,使得存放三元组的高速存储器中存放的状态值都小于片外DRAM存放的状态值;将片外DRAM存放的状态值中的极小值作为分界值;

报文匹配依次执行以下步骤:

6)以DFA状态转移表的起始状态和报文首字符作为起始输入;

7)如果该状态是终结状态则结束匹配;如果状态值小于所述分界值,则执行步骤8查找存放三元组的高速存储器;否则,执行步骤9查找片外DRAM;

8)根据一维线性数组索引的方式,从存放三元组的高速存储器中读出该状态行的所有三元组编码,将每一个三元组编码中位图比特偏移值置1的字符与该输入字符进行匹配;如果匹配到,则取该字符所在三元组的转移状态和报文的下个字符作为输入,执行步骤7;如果没有匹配到任何三元组,则匹配失败并结束;

9)根据二维线性数组索引的方式,从片外DRAM中读取对应的转移状态;如果有转移状态,则取该转移状态和报文的下个字符作为输入,执行步骤7;如果没有转移状态,则匹配失败并结束。

3.根据权利要求2所述深度报文检测DFA状态转移表的压缩与报文匹配方法,其特征在于:所述每个位图占4~16个比特,且各个位图的宽度是固定的。

4.根据权利要求2所述深度报文检测DFA状态转移表的压缩与报文匹配方法,其特征在于:所述每个状态行包含三元组个数的阀值为2~32。

5.根据权利要求2所述深度报文检测DFA状态转移表的压缩与报文匹配方法,其特征在于:所述三元组可以存放在片内高速存储器中或片外高速存储器中,所述高速存储器包括SRAM。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于无锡网芯科技有限公司;江苏华丽网络工程有限公司,未经无锡网芯科技有限公司;江苏华丽网络工程有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201110026486.2/1.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top