CN102387159B - 一种线性探测正则式分组系统和方法 - Google Patents
一种线性探测正则式分组系统和方法 Download PDFInfo
- Publication number
- CN102387159B CN102387159B CN201110413489.1A CN201110413489A CN102387159B CN 102387159 B CN102387159 B CN 102387159B CN 201110413489 A CN201110413489 A CN 201110413489A CN 102387159 B CN102387159 B CN 102387159B
- Authority
- CN
- China
- Prior art keywords
- canonical formula
- canonical
- compiling
- formula
- compile
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Landscapes
- Stored Programmes (AREA)
- Devices For Executing Special Programs (AREA)
Abstract
本发明提供一种线性探测正则式分组系统和方法,其包括正则式集合模块、正则式编译模块,正则式集合模块在编译成功后进行分组,编译失败后则循环编译,直至编译成功。本发明提供的线性探测正则式分组系统和方法,采用本方案可以不用计算两两正则式之间的状态和,能够节约大量的时间,尤其是在正则式集合比较大时。另外,本方案简单、易用可直接移植到硬件逻辑中实现。
Description
技术领域
本发明属于网络安全领域,具体涉及一种线性探测正则式分组系统和方法。
背景技术
有效的正则式分组,能够均衡资源,提高匹配的效率。常见的正则式分组有采用最大隔策略分组,采用淘汰策略分组,但分组前都需要求两两正则状态集合,在规则数特别多的情况下,效率低下,会浪费大量的时间。
专利号CN201010611580.X(一种多条正则表达式的增量分组方法)公开了一种多条正则表达式的增量分组方法,在不降低实时性的同时,同样的硬件空间大小,可增加了硬件处理正则式的数量,从而改善了系统工作的硬件处理能力。根据硬件的并行空间的大小,自动进行分组编译,已帮助FPGA实现并行匹配的功能。
专利号CN200710118296.7(一种生成特征码确定状态机的方法和装置)公开了一种生成特征码确定状态机的方法和装置,将特征码对应的正则表达式进行分组并进行合并编译,如果合并编译获得的状态数不大于单独编译的状态数之和,则将特征码对应的正则表达式加入分组,将合并编译的结果作为生成的确定状态机(DFA)。应用本发明方案,可以保证分组的合理性,避免合并编译生成的DFA产生大量的状态,占用过多的存储空间。
目前常用的分组策略有增量式分组,采用最大隔策略分组以及采用淘汰策略分组。但这些分组都需要计算两两正则状态集合。这在规则特别多的情况下,效率低下,会耗费大量的时间。
发明内容
本发明克服现有技术不足,通过线性探测来对正则式进行有效分组,避开了求两两正则状态集合,在具有多规则的条件下,能显著提高效率,节省时间。另外,该方法在正则式分组方面具有通用性,能适用多种情况。再者,该方法简单、易用、灵活性较高,可直接移植到硬件逻辑中。
本发明提供了一种线性探测正则式分组系统,其包括正则式集合模块、正则式编译模块,正则式集合模块在编译成功后进行分组,编译失败后则循环编译,直至编译成功。
本发明提供的线性探测正则式分组系统,其包括预处理模块,用于接收正则式集合模块输出的正则式并进行预处理,之后将正则式传送给正则式编译模块。
本发明提供的线性探测正则式分组系统,正则式编译模块包括两级编译模块,其中第一编译模块编译失败的正则式被传送到第二编译模块,由第二编译模块进行编译,。
本发明提供的线性探测正则式分组系统,第一编译模块编译完毕之后,再进行第二编译模块的编译。
本发明提供的线性探测正则式分组系统,第一编译模块包括两组集合模块,其中上一组集合模块接收来自预处理模块传送的所有的正则式,然后依次取出一个正则式放到下一组集合模块中,编译下一组集合模块中的一组正则式。
本发明提供的线性探测正则式分组系统,在空间约束条件下,进行正则式的编译。
本发明还提供了一种线性探测正则式分组方法,其包括正则式集合步骤、正则式编译步骤,正则式集合步骤在编译成功后进行分组,编译失败后则循环编译,直至编译成功。
本发明提供的线性探测正则式分组方法,其包括预处理步骤,用于接收正则式集合步骤输出的正则式并进行预处理,之后将正则式传送给正则式编译步骤。
本发明提供的线性探测正则式分组方法,正则式编译步骤包括两级编译步骤,其中第一编译步骤编译失败的正则式被传送到第二编译步骤,由第二编译步骤进行编译,。
本发明提供的线性探测正则式分组方法,第一编译步骤编译完毕之后,再进行第二编译步骤的编译。
本发明提供的线性探测正则式分组方法,第一编译步骤包括两组集合步骤,其中上一组集合步骤接收来自预处理步骤传送的所有的正则式,然后依次取出一个正则式放到下一组集合步骤中,编译下一组集合步骤中的一组正则式。
本发明提供的线性探测正则式分组方法,在空间约束条件下,进行正则式的编译。
与现有技术相比,本发明的有益效果在于:采用本方案可以不用计算两两正则式之间的状态和,能够节约大量的时间,尤其是在正则式集合比较大时。另外,本方案简单、易用可直接移植到硬件逻辑中实现。
附图说明
参见图1为本发明的流程图。
具体实施方式
参见图1本发明的流程图,本发明采用了线性探测的思路来对正则式进行分组。避开了计算两两之和的耗时操作。具体流程如附图1所示。对于所有的正则式集合,首先进过预处理,将集合中的所有的正则式分到第二组中,然后依次从第二组中取出一个正则式放到第一组中,编译第一组正则式,在空间约束条件下,如果编译成功,则再从第二组中取出一个正则式放到第一组中,然后在对第一组编译。如果第一组在空间约束条件下编译失败,则将该正则式放到第零组中,然后继续从第二组中取正则式放到第一组中编译,直到第二组没有正则式元素为止。此时,第一组正则式已经编译完毕,再编译第零组,如果第零组在空间约束条件下编译成功,则分组结束。如果第零组编译失败,则将第零组作为所有正则式的集合,然后从新再像上面操作循环一遍,直至编译成功,分组结束。
用的分组策略有增量式分组,采用最大隔策略分组以及采用淘汰策略分组。但这些分组都需要计算两两正则状态集合。这在规则特别多的情况下,效率低下,会耗费大量的时间。
本发明避开肠用的分组策略:有增量式分组、采用最大隔策略分组以及采用淘汰策略分组,从而不需要计算两两正则状态集合。这在规则特别多的情况下,效率显著,会节约大量的时间。
以上实施例仅用以说明本发明的技术方案而非对其限制,尽管参照上述实施例对本发明进行了详细的说明,所述领域的普通技术人员应当理解:依然可以对本发明的具体实施方式进行修改或者同等替换,而未脱离本发明精神和范围的任何修改或者等同替换,其均应涵盖在本发明的权利要求范围当中。
Claims (2)
1.一种线性探测正则式分组系统,其包括正则式集合模块、正则式编译模块,其特征在于,正则式集合模块在编译成功后进行分组,编译失败后则循环编译,直至编译成功;其包括预处理模块,用于接收正则式集合模块输出的正则式并进行预处理,之后将正则式传送给正则式编译模块;正则式编译模块包括两级编译模块,其中第一编译模块编译失败的正则式被传送到第二编译模块,由第二编译模块进行编译;第一编译模块编译完毕之后,再进行第二编译模块的编译;第一编译模块包括两组集合模块,其中上一组集合模块接收来自预处理模块传送的所有的正则式,然后依次取出一个正则式放到下一组集合模块中,编译下一组集合模块中的一组正则式;在空间约束条件下,进行正则式的编译。
2.一种线性探测正则式分组方法,其包括正则式集合步骤、正则式编译步骤,其特征在于,正则式集合步骤在编译成功后进行分组,编译失败后则循环编译,直至编译成功;
所述方法包括预处理步骤,用于接收正则式集合步骤输出的正则式并进行预处理,之后将正则式传送给正则式编译步骤;
所述正则式编译步骤包括两级编译步骤,其中第一编译步骤编译失败的正则式被传送到第二编译步骤,由第二编译步骤进行编译;
所述第一编译步骤编译完毕之后,再进行第二编译步骤的编译;
所述第一编译步骤包括两组集合步骤,其中上一组集合步骤接收来自预处理步骤传送的所有的正则式,然后依次取出一个正则式放到下一组集合步骤中,编译下一组集合步骤中的一组正则式;
所述方法在空间约束条件下,进行正则式的编译。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110413489.1A CN102387159B (zh) | 2011-12-13 | 2011-12-13 | 一种线性探测正则式分组系统和方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110413489.1A CN102387159B (zh) | 2011-12-13 | 2011-12-13 | 一种线性探测正则式分组系统和方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102387159A CN102387159A (zh) | 2012-03-21 |
CN102387159B true CN102387159B (zh) | 2014-12-10 |
Family
ID=45826133
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201110413489.1A Active CN102387159B (zh) | 2011-12-13 | 2011-12-13 | 一种线性探测正则式分组系统和方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102387159B (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101079890A (zh) * | 2007-07-04 | 2007-11-28 | 杭州华三通信技术有限公司 | 一种生成特征码确定状态机的方法和装置 |
CN101360088A (zh) * | 2007-07-30 | 2009-02-04 | 华为技术有限公司 | 正则表达式编译、匹配系统及编译、匹配方法 |
CN102073530A (zh) * | 2010-12-17 | 2011-05-25 | 国家计算机网络与信息安全管理中心 | 一种多条正则表达式的增量分组方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6963876B2 (en) * | 2000-06-05 | 2005-11-08 | International Business Machines Corporation | System and method for searching extended regular expressions |
-
2011
- 2011-12-13 CN CN201110413489.1A patent/CN102387159B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101079890A (zh) * | 2007-07-04 | 2007-11-28 | 杭州华三通信技术有限公司 | 一种生成特征码确定状态机的方法和装置 |
CN101360088A (zh) * | 2007-07-30 | 2009-02-04 | 华为技术有限公司 | 正则表达式编译、匹配系统及编译、匹配方法 |
CN102073530A (zh) * | 2010-12-17 | 2011-05-25 | 国家计算机网络与信息安全管理中心 | 一种多条正则表达式的增量分组方法 |
Non-Patent Citations (4)
Title |
---|
《一种正则表达式的高效分组算法》;肖武德;《计算机安全》;20100430;全文 * |
《深度包检测中一种高效的正则表达式压缩算法》;徐乾等;《软件学报》;20090831;第20卷(第8期);第7-8页 * |
徐乾等.《深度包检测中一种高效的正则表达式压缩算法》.《软件学报》.2009,第20卷(第8期),第7-8页. * |
肖武德.《一种正则表达式的高效分组算法》.《计算机安全》.2010,全文. * |
Also Published As
Publication number | Publication date |
---|---|
CN102387159A (zh) | 2012-03-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101478242B (zh) | H桥级联高压变频器功率单元脉冲控制与状态监控装置 | |
CN102751944B (zh) | 中高压变频器的控制方法和系统 | |
CN102903035A (zh) | 基于智能电网的节能发电调度系统及其调度方法 | |
CN105721107B (zh) | 一种分块计算crc以提高时钟频率的装置和方法 | |
CN102387159B (zh) | 一种线性探测正则式分组系统和方法 | |
CN108964151B (zh) | 一种微电网网架结构设计方法及系统 | |
CN211149499U (zh) | 抽水蓄能电站抽水发电能力测算系统 | |
CN113357083A (zh) | 一种风力发电机组智能控制系统及方法 | |
CN115733780B (zh) | 基于柔性以太网的动态自适应方法、系统、设备及介质 | |
CN104899174B (zh) | 光伏逆变器多台串联自动分配地址的方法 | |
CN106506282A (zh) | 一种提高云平台监控性能及规模的监控方法 | |
CN106712028A (zh) | 一种考虑电源负荷波动的交直流电网潮流计算分析方法 | |
CN206559308U (zh) | 一种集中式光伏逆变系统 | |
CN111835005B (zh) | 确定新能源基地电网输送能力的方法、装置及相关设备 | |
CN109829576B (zh) | 一种总部分部一体化的多级调度优化方法 | |
CN108833156A (zh) | 一种针对电力通信网的仿真性能指标的评估方法及系统 | |
CN104641545A (zh) | 具有不同dc源的链路转换器系统和操作方法 | |
CN209657106U (zh) | 控制设备及系统 | |
CN103226620B (zh) | 一种smc模块状态信息处理方法 | |
CN204407915U (zh) | 一种模块化并网逆变器 | |
CN110890920A (zh) | 一种基于高压链式svg混合环网通信模型 | |
CN206595772U (zh) | 一种用于修正微型逆变器道日发电量数据的监控设备 | |
CN114089907B (zh) | 一种集中式直流采样值数据转换方法及装置 | |
Liu et al. | Steady-State Modelling of VSC MTDC for Power System Analysis in DIgSILENT Power Factory | |
CN104572023B (zh) | 用于变电站自动化系统的触发式的逻辑计算方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right |
Effective date of registration: 20220722 Address after: 100193 No. 36 Building, No. 8 Hospital, Wangxi Road, Haidian District, Beijing Patentee after: Dawning Information Industry (Beijing) Co.,Ltd. Patentee after: DAWNING INFORMATION INDUSTRY Co.,Ltd. Address before: 100084 Beijing Haidian District City Mill Street No. 64 Patentee before: Dawning Information Industry (Beijing) Co.,Ltd. |
|
TR01 | Transfer of patent right |