发明名称 |
基于自动机的模式匹配的方法及装置 |
摘要 |
本发明提供了一种基于自动机的模式匹配的方法及装置,方法包括:根据当前输入内容查找SHIFT地址表,得到SHIFT地址值;判断得到的SHIFT地址值是否为零;若SHIFT地址值为零,则根据当前输入内容的前缀计算HASH值,并以HASH值作为索引进入实际匹配的模式子分组,对模式子分组通过蛮力算法或自动机算法进行匹配查找,并且在模式子分组查找完成后,将当前输入内容向前偏移一个长度单位;若SHIFT地址值不为零,则将当前输入内容向后偏移SHIFT地址值个长度单位;判断当前输入内容是否全部扫描完成,若是,则输出匹配结果集;否则跳到根据当前输入内容查找SHIFT地址表的步骤,在保证效率和正确性的前提下,使优化后的算法有一个稳定的匹配性能。 |
申请公布号 |
CN105701093A |
申请公布日期 |
2016.06.22 |
申请号 |
CN201410681752.9 |
申请日期 |
2014.11.24 |
申请人 |
中兴通讯股份有限公司 |
发明人 |
李文;陈娟;刘青海 |
分类号 |
G06F17/30(2006.01)I |
主分类号 |
G06F17/30(2006.01)I |
代理机构 |
北京银龙知识产权代理有限公司 11243 |
代理人 |
许静;黄灿 |
主权项 |
一种基于自动机的模式匹配的方法,其特征在于,所述方法包括:根据当前输入内容查找SHIFT偏移地址表,得到SHIFT偏移地址值;判断得到的所述SHIFT地址值是否为零;若所述SHIFT地址值为零,则根据所述当前输入内容的前缀计算HASH哈希值,并以所述HASH值作为索引进入实际匹配的模式子分组,按照预设的方式进行匹配查找,并且在所述模式子分组查找完成后,将当前输入内容向前偏移一个长度单位;若所述SHIFT地址值不为零,则将当前输入内容向后偏移所述SHIFT地址值个长度单位;判断所述当前输入内容是否全部扫描完成,若是,则输出匹配结果集;否则跳到所述根据当前输入内容查找SHIFT地址表的步骤。 |
地址 |
518057 广东省深圳市南山区高新技术产业园科技南路中兴通讯大厦法务部 |