[发明专利]一种正则表达式匹配电路的优化方法无效
申请号: | 201210002439.9 | 申请日: | 2012-01-06 |
公开(公告)号: | CN103198065A | 公开(公告)日: | 2013-07-10 |
发明(设计)人: | 彭策力;谢海燕;王建东 | 申请(专利权)人: | 北京奇策科技有限公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 100190 北京市海*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 正则 表达式 匹配 电路 优化 方法 | ||
技术领域
本发明涉及一种电路优化方法,尤其是一种正规表达式匹配电路的优化方法。
背景技术
随着各种网络应用的蓬勃发展,互联网的安全问题也越来越严峻:拒绝服务攻击(DDos)、木马、蠕虫以及泛滥的P2P应用严重影响了用户的正常网络使用。目前网络信息安全已经成为信息技术领域中的关键问题之一,科研人员已开发了各种技术来确保网络安全:入侵检测、内容过滤、病毒特征码匹配等等。在上述技术中作为其基础的字符串匹配技术扮演着十分重要的角色,并且也是影响系统性能的关键因素之一。
传统字符串匹配系统采用的是基于软件的匹配方式,基于软件的字符串匹配算法通常是在通用处理器平台上实现的,而通用处理器上指令执行的并行度并不高,导致字符串匹配引擎的吞吐量往往也不是很高(通常最快只能达到100Kbps左右)。现如今通用处理器正朝着多核(multi-core)、众核(many-core)的方向发展,具有足够并行度的算法可以在这些处理器平台上获得不错的处理效率,但是对于字符串匹配这类计算高度密集型的任务而言,它需要消耗CPU大量的计算资源,在目前的网络入侵检测系统当中,字符串匹配操作往往会占用75%左右的CPU处理时间,如此高密度的计算量导致系统性能难以提升。随着网络技术的飞速发展,许多应用系统对于字符串匹配引擎的性能有着越来越高的速度要求,而现有单纯依赖于软件实现方式的字符串匹配引擎往往不能满足高速网络的处理需求,因此,越来越多的系统转向采用专用硬件实现字符串匹配引擎的方式来获得性能的提高。
随着网络技术的不断发展,越来越多的网络应用采用正则表达式形式的规则来替代传统的静态字符串,一般基于专用硬件的正则表达式匹配可以采取基于确定性有限自动机(DFA)或者非确定性有限自动机(NFA)的实现方案。其中,基于DFA的匹配方案大都采用以存储器为中心的实现架构,将DFA的状态转移表存放在存储器中,在匹配过程当中,需要不断地访问存储器。由于DFA可能会存在状态爆炸的问题,对于资源十分紧缺的专用硬件来说无法实现大规模规则集合的匹配,并且延时较大的存储器访问以及有限的存储器带宽往往也会限制匹配引擎的处理性能。而基于NFA的实现方案则是通过搭建NFA对应的硬件匹配电路来执行正则表达式的匹配的,其中的匹配电路一般是采用独热(One-Hot)编码方案来进行构建的。在这一匹配架构中,每处理一个字符可以触发多个NFA状态的并行查询,而且在每个时钟周期内均可以处理一个字符,而与当前NFA中活动状态的个数是无关的。
由于在NFA匹配引擎当中,D触发器对应于NFA中的状态,而字符比较器的输出和其他NFA状态D触发器输出信号的组合逻辑则对应于NFA中的状态跳转,整个NFA匹配引擎可以看作一种流水线的结构,每个NFA状态的D触发器可以看作流水线寄存器,D触发器之间的组合逻辑则是实现每级流水线的基本功能,因此,整个匹配引擎的处理性能受到D触发器之间组合逻辑的影响最大。影响D触发器之间组合逻辑延迟的因素主要包括以下四个:D触发器时钟输出时间、D触发器的建立时间、状态转移逻辑的延迟和连线延迟,其中,D触发器的时钟输出时间和建立时间都是电路单元的固有参数,并不能改变,只有通过优化NFA状态跳转延迟和连线延迟才能够提升整个匹配引擎的最大时钟频率。
在匹配引擎的构造过程中,状态转移逻辑是由多个NFA状态触发器的输出和字符比较器输出信号的与或逻辑操作得到的。因此,状态转移逻辑延迟可以由与或逻辑门的延迟来表示。状态转移逻辑延迟与状态转移逻辑输入信号的数目有关,输入信号数目越多,状态转移逻辑延迟越大。根据NFA匹配引擎的构造过程可知,状态转移逻辑的输入信号包括两部分,一部分是NFA状态触发器的输出,另一部分是字符比较器的输出。对于连线延迟,通常是由逻辑中的信号线长度决定。信号线越长,连线延迟越大。
发明内容
本发明提供了一种对非确定性有限自动机提高匹配引擎的处理性能,即匹配电路的最大工作时钟频率的正规表达式匹配电路的优化方法。
实现本发明目的的正规表达式匹配电路的优化方法,包括如下步骤:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京奇策科技有限公司,未经北京奇策科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210002439.9/2.html,转载请声明来源钻瓜专利网。