[发明专利]海量特征串集合的匹配方法及系统有效
申请号: | 201310363274.2 | 申请日: | 2013-08-16 |
公开(公告)号: | CN103544208A | 公开(公告)日: | 2014-01-29 |
发明(设计)人: | 侯智瀚;尹延伟 | 申请(专利权)人: | 东软集团股份有限公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 北京鸿元知识产权代理有限公司 11327 | 代理人: | 陈英俊 |
地址: | 110179 辽*** | 国省代码: | 辽宁;21 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明提供了一种海量特征串集合的匹配方法及系统,其中的方法包括预处理阶段和特征串匹配阶段,其中,在预处理阶段通过对特征串进行统计并分组,建立位向量掩码表,使过滤算法在同等空间和规则数量下的通过率更低,进而能够容纳更多的特征串;在特征串匹配阶段,采用位并行方式进行后缀和前缀匹配,支持不等长特征串的匹配并且在匹配数据中能够以跳跃的方式大范围快速查找特征串;通过区分普通匹配窗口和长匹配窗口,来保证跳跃的安全和减少过滤通过率。通过本发明能够使匹配过程在相同资源条件下,能够容纳数量更多的特征串,并且具有性能稳定的特点,能够在极端情况下保持模式匹配的高效率。 | ||
搜索关键词: | 海量 特征 集合 匹配 方法 系统 | ||
【主权项】:
一种海量特征串集合的匹配方法,包括预处理阶段和特征串匹配阶段,其中,所述预处理阶段包括:确定位向量掩码表的空间容量;根据对输入的特征串集合所包含的算法字符个数及特征串的数量的统计,对所述特征串进行分组,建立分组位向量掩码表;根据所述算法字符的位长确定散列函数;所述特征串匹配阶段包括:根据输入的特征串所包含的算法字符的个数确定普通匹配窗口长度和长匹配窗口长度,并为当前待匹配数据设置一个偏移值作为起始偏移值,其中,通过机器字符与所述散列函数的转换获得所述算法字符;根据所述起始偏移值为起点对当前待匹配数据进行偏移并定位,获取当前普通匹配窗口的数据;从所述当前普通匹配窗口的末端获取一个算法字符,用直接寻址的方式从所述位向量掩码表中获取位向量;其中,如果所述位向量中的所有有效位不全为0,则以所述位向量为初始向量,以当前读入的算法字符作为新的长匹配窗口的起点,在所述新的长匹配窗口的长度范围内,采用位并行方式对所述位向量进行即时更新,并对即时更新的位向量进行非零判断;其中,在所述位向量进行更新的过程中,如果所述位向量的有效位全为0,将当前读入的算法字符的位置作为新的起始偏移值,并结束更新;如果所述位向量的有效位不全为0且所述位向量的某一个分组的最高位为1,则匹配当前分组特征串的后缀,保留初始向量中相应的有效位;其中,在所述特征串的分组为不等长分组时,如果已经匹配后缀的特征串所属分组的长度小于等于后缀命中时在长匹配窗口中读入的算法字符的个数,则直接记录一次命中的可能,可能会发生命中的特征串的末尾即是当前读入的算法字符;当所述位向量的更新过程结束时,如果所述特征串发生过后缀匹配,则 仅保留初始向量中所有发生过后缀命中的活动位,其余全部清0,作为所述特征串前缀匹配的初始向量,在当前的起始偏移值所指向的普通匹配窗口中进行所述特征串匹配命中的确认;如果在匹配所述特征串的后缀过程中,所述偏移值没有改变,则对所述偏移值进行重新定位,获取新的起始偏移值,并在所述偏移值重新定位的过程中,以位并行的方式同步进行特征串匹配。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于东软集团股份有限公司,未经东软集团股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201310363274.2/,转载请声明来源钻瓜专利网。