[发明专利]一种多模式串匹配方法和系统有效
申请号: | 201510236364.4 | 申请日: | 2015-05-11 |
公开(公告)号: | CN104881439B | 公开(公告)日: | 2019-03-22 |
发明(设计)人: | 张萍;刘燕兵;谭建龙;郭莉 | 申请(专利权)人: | 中国科学院信息工程研究所 |
主分类号: | G06F16/903 | 分类号: | G06F16/903;G06F16/908 |
代理公司: | 北京君尚知识产权代理事务所(普通合伙) 11200 | 代理人: | 余功勋 |
地址: | 100093 *** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 空间 高效 模式 匹配 方法 系统 | ||
本发明涉及一种空间高效的多模式串匹配方法和系统。首先提出了一种新的存储模式串的数据结构—HashTrie,利用位向量表将原模式串矩阵存储为一维表的形式,避开传统方法存储自动机的状态转移矩阵问题;利用递归的哈希函数方法求出这个特殊的位向量表,以达到节约存储空间的目的;在哈希函数计算过程中,利用位运算技巧,将其转化为简单高效的位与运算操作;另外在HashTrie构造和关键词查找过程中均使用Rank技术,提高了搜索的空间效率和时间效率。本发明极大地降低了内存开销和预处理时间,更能满足实时入侵检测系统对规则生效的时效性要求,更适合于模式串集合规模较大、模式串长度较短的多模式串实时匹配问题。
技术领域
本发明涉及信息过滤、信息检索、计算生物学等领域,具体涉及一种空间高效的多模式串匹配方法和系统。
背景技术
近年来,随着宽带技术的发展和多媒体应用的流行,互联网技术得到极大的普及和发展。随着网络用户飞速增长的同时,攻击模式亦飞速增长,对入侵检测系统的需求亦随之增加。面对当前互联网协议设计缺陷、计算机系统漏洞、网络入侵攻击等日趋严峻的网络安全问题,已有算法的存储空间和运算速度已经难以满足高速网络环境下对特征串实时匹配的应用需求。因此,设计更加高效的多模式串匹配系统,具有重要的理论和实际意义。
文献(Efficient String Matching:An Aid to Bibliographic Search,Communications of the ACM,333-340,1975)提出了基于前缀搜索的多模式串匹配算法—Aho-Corasick算法(简称AC算法),从模式串集合构建AC自动机,通过对自动机的访问进行匹配。该算法匹配的时间复杂度正比于待扫描文本长度,不受关键词长度和文本统计特征的影响,性能比较稳定。但是需要巨大的存储空间来存储自动机,通常不是最快的匹配算法。
文献(AFast Algorithm for Multi-Pattern Searching,University ofArizona,Tech.Rep.TR94-17,1994)提出的基于后缀搜索的方法—Wu-Manber算法(简称WM算法),是Boyer-Moore算法的扩展和改进。该算法使用散列函数将所有可能的字符块散列到跳跃距离表SHIFT上,然后利用SHIFT表进行快速地移动以跳过不可能匹配的文本字符。Wu-Manber算法简单高效,实际效果好。但该算法适合于字符集比较大、模式串长度比较长的应用场景,不适用于模式串长度比较短的场景。
文献(Ahigh throughput string matching architecture for intrusiondetection and prevention,Computer Architecture,ISCA'05.Proceedings,32ndInternational Symposium,pages:112-122,2005)提出了一种按位拆分的自动机存储结构bit-split。该方法将一个AC有限状态机按位拆分为一组较小的AC有限状态机,以减少总内存需求。但是按位分割存储结构是一种基于硬件的实现方案,软件实现效率较低。
文献(High-Performance Pattern-Matching for Intrusion Detection,INFOCOM 2006,25thIEEE International Conference on Computer Communications,Proceedings,pages:1-13,April 2006)提出了一种基于硬件实现的可编程状态机机制。该方法将模式串集聚类拆分,并将状态存放在一个256行的表中,移除AC有限状态机中那些转移到初始状态和初始状态的下一个状态的状态。采用散列函数来减小内存开销,用上界4限制状态转移的最大哈希冲突数目。但是对哈希冲突的处理会增加存储器访问次数,降低算法的性能。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国科学院信息工程研究所,未经中国科学院信息工程研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201510236364.4/2.html,转载请声明来源钻瓜专利网。