用于模式匹配的方法、设备和电路技术

技术编号:10862947 阅读:161 留言:0更新日期:2015-01-01 22:13
根据本发明专利技术实施例的用于模式匹配的方法,所述模式匹配在模式流中寻找目标模式,所述模式流和目标模式均由元素组成,该方法包括:获取目标模式中的目标元素的出现次数;初始化暂存区,其中所述暂存区指示模式流中的一个区间;判断暂存区中所述目标元素的出现次数是否达到所述目标模式中的目标元素的出现次数;响应于暂存区中所述目标元素的出现次数未达到所述目标模式中的目标元素的出现次数,更新所述暂存区后返回所述判断步骤;响应于暂存区中所述目标元素的出现次数达到所述目标模式中的目标元素的出现次数,输出所述暂存区中的元素供后续处理。本申请还公开了用于模式匹配的设备和电路。根据本发明专利技术实施例的技术方案可以加快模式匹配的速度。

【技术实现步骤摘要】
【专利摘要】根据本专利技术实施例的用于模式匹配的方法,所述模式匹配在模式流中寻找目标模式,所述模式流和目标模式均由元素组成,该方法包括:获取目标模式中的目标元素的出现次数;初始化暂存区,其中所述暂存区指示模式流中的一个区间;判断暂存区中所述目标元素的出现次数是否达到所述目标模式中的目标元素的出现次数;响应于暂存区中所述目标元素的出现次数未达到所述目标模式中的目标元素的出现次数,更新所述暂存区后返回所述判断步骤;响应于暂存区中所述目标元素的出现次数达到所述目标模式中的目标元素的出现次数,输出所述暂存区中的元素供后续处理。本申请还公开了用于模式匹配的设备和电路。根据本专利技术实施例的技术方案可以加快模式匹配的速度。【专利说明】用于模式匹配的方法、设备和电路
本专利技术涉及信息处理技术,更具体地说,涉及用于模式匹配的方法、设备和电路结构。
技术介绍
模式匹配指的是在一个模式流中寻找某种特定模式。模式匹配是计算机应用中的一种基本技术。例如,在文本(text)中寻找目标字符串(string)就是一种模式匹配。在这一场景下,所要找到的目标字符串对应于上述特定模式,而所述文本对应于上述模式流。又例如,已被广泛应用于入侵检测/入侵防御、阻止垃圾邮件、防病毒、防数据泄漏、内容过滤等领域的深度包检测(DPI)技术,其检测数据流中是否存在具有攻击特征的数据包或数据包序列。在这一场景下,数据流对应于上述模式流,而具有攻击特征的数据包或数据包序列对应于上述特定模式。 一方面,已经针对模式匹配进行了长时间的研究,并且得到了大量的软件算法。另一方面,本领域技术人员可以理解,硬件平台中各电路组件是并行工作的,所以可以达到更快的速度。相应地,期望用硬件来实现这些软件算法,从而提高模式匹配的速度。然而,将整个软件算法移植到硬件平台上通常面临着成本高和复杂性高的问题。因此,可以考虑将软件算法中适合硬件实现的一部分移植到硬件平台上。
技术实现思路
本专利技术提供了用于模式匹配的方法、设备和电路。 根据本专利技术实施例的用于模式匹配的方法,所述模式匹配在模式流中寻找目标模式,所述模式流和目标模式均由元素组成,该方法包括:获取目标模式中的目标元素的出现次数;初始化暂存区,其中所述暂存区指示模式流中的一个区间;判断暂存区中所述目标元素的出现次数是否达到所述目标模式中的目标元素的出现次数;响应于暂存区中所述目标元素的出现次数未达到所述目标模式中的目标元素的出现次数,更新所述暂存区后返回所述判断步骤;响应于暂存区中所述目标元素的出现次数达到所述目标模式中的目标元素的出现次数,输出所述暂存区中的元素供后续处理。 根据本专利技术实施例的一种用于模式匹配的设备,所述模式匹配在模式流中寻找目标模式,所述模式流和目标模式均由元素组成,该设备包括:获取装置,配置为获取目标模式中的目标元素的出现次数;暂存区初始化装置,配置为初始化暂存区,其中所述暂存区指示模式流中的一个区间;比较装置,配置为判断暂存区中所述目标元素的出现次数是否达到所述目标模式中的目标元素的出现次数;更新装置,配置为响应于暂存区中所述目标元素的出现次数未达到所述目标模式中的目标元素的出现次数,更新所述暂存区后返回进行所述判断;输出装置,配置为响应于暂存区中所述目标元素的出现次数达到所述目标模式中的目标元素的出现次数,输出所述暂存区中的元素供后续处理。 根据本专利技术实施例的一种用于模式匹配的电路,包括:暂存模块,用于存储当前被处理的元素;元素解析模块,用于确定新加入暂存区的元素;暂存区特征表更新模块,用于根据所述元素解析模块的确定结果,更新暂存区中目标元素的出现次数;暂存区特征表存储模块,用于记录暂存区中各目标元素的出现次数;参考特征表存储模块,用于存储参考特征表;比较模块,用于比较所述暂存区特征表存储模块和所述参考特征表存储模块,以判断暂存区中各元素的出现次数是否达到目标模式中各元素的出现次数。 根据本专利技术实施例所提供的技术方案,可以加快模式匹配的速度。 【专利附图】【附图说明】 通过结合附图对本公开示例性实施方式进行更详细的描述,本公开的上述以及其它目的、特征和优势将变得更加明显,其中,在本公开示例性实施方式中,相同的参考标号通常代表相同部件。 图1是适于用来实现本专利技术实施方式的示例性计算机系统/服务器12的框图; 图2是根据本专利技术实施例的用于模式匹配的方法的流程图; 图3是根据本专利技术实施例的用于模式匹配的设备的方框图; 图4是根据本专利技术实施例的用于模式匹配的方法的运行示意图; 图5是根据本专利技术实施例的用于模式匹配的电路的方框图; 图6A和图6B示出了两个时刻的单脉冲电流时域响应进行叠加的情况。 【具体实施方式】 下面将参照附图更详细地描述本公开的优选实施方式。虽然附图中显示了本公开的优选实施方式,然而应该理解,可以以各种形式实现本公开而不应被这里阐述的实施方式所限制。相反,提供这些实施方式是为了使本公开更加透彻和完整,并且能够将本公开的范围完整地传达给本领域的技术人员。 所属
的技术人员知道,本专利技术可以实现为系统、方法或计算机程序产品。因此,本公开可以具体实现为以下形式,即:可以是完全的硬件、也可以是完全的软件(包括固件、驻留软件、微代码等),还可以是硬件和软件结合的形式,本文一般称为“电路”、“模块”或“系统”。此外,在一些实施例中,本专利技术还可以实现为在一个或多个计算机可读介质中的计算机程序产品的形式,该计算机可读介质中包含计算机可读的程序代码。 可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是一但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPR0M或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。 计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括——但不限于——电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。 计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括一但不限于一无线、电线、光缆、RF等等,或者上述的任意合适的组合。 可以以一种或多种程序设计语言或其组合来编写用于执行本专利技术操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言一诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言一诸如”C”语言或类似的程序设计语言。程序代码可以完全地在用户本文档来自技高网
...

【技术保护点】
一种用于模式匹配的方法,所述模式匹配在模式流中寻找目标模式,所述模式流和目标模式均由元素组成,该方法包括:获取目标模式中的目标元素的出现次数;初始化暂存区,其中所述暂存区指示模式流中的一个区间;判断暂存区中所述目标元素的出现次数是否达到所述目标模式中的目标元素的出现次数;响应于暂存区中所述目标元素的出现次数未达到所述目标模式中的目标元素的出现次数,更新所述暂存区后返回所述判断步骤;响应于暂存区中所述目标元素的出现次数达到所述目标模式中的目标元素的出现次数,输出所述暂存区中的元素供后续处理。

【技术特征摘要】

【专利技术属性】
技术研发人员:刘丹潘永峰刘洋陆泳英彦
申请(专利权)人:国际商业机器公司
类型:发明
国别省市:美国;US

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1