(19)中华人民共和国国家知识产权局
(12)发明专利说明书
(10)申请公布号 CN 101707513 A
(43)申请公布日 2010.05.12
(21)申请号 CN200910238673.X
(22)申请日 2009.11.30
(71)申请人 曙光信息产业(北京)有限公司
    地址 100084 北京市海淀区中关村科学院南路6号
(72)发明人 聂华 邵宗有 历军 刘新春 刘兴奎 张英文
(74)专利代理机构 北京市德恒律师事务所
    代理人 梁永
(51)Int.CI
     
                                                                  权利要求说明书 说明书 幅图
(54)发明名称
      基于正则表达式的深度包检测方法及设备
(57)摘要
      本发明公开了基于正则表达式的深度包检测方法和设备,其中,该方法包括:S102,对于每个状态,根据压缩该状态所对应行所采用的数据格式,得到预先存储的压缩状态表;以及S104,根据当前所处状态、所得到的压缩状态表和新输入的字符,得到下一状态并跳转到该状态。通过本发明,大大减少了存储DFA所需要的存储空间。正则化过滤器
法律状态
法律状态公告日
法律状态信息
法律状态
权 利 要 求 说 明 书
1.一种基于正则表达式的深度包检测方法,其特征在于,通过硬件来执行所述方法包括的以下步骤:
步骤S102,对于每个状态,根据压缩该状态所对应行所采用的数据格式,得到预先存储的压缩状态表;以及
步骤S104,根据当前所处状态、所得到的压缩状态表和新输入的字符,得到下一状态并跳转到该状态。
2.根据权利要求1所述的方法,其特征在于,所述硬件包括专用硬件逻辑,其中,所述专用硬件逻辑包括现场可编程门阵列、复杂可程式逻辑器件和专用集成电路中的一种。
3.根据权利要求1所述的方法,其特征在于,在步骤S102之前,针对有限状态机的状态转移表的每一行,预先选择预定的多种数据格式中的一种对该行进行压缩以获得该行的压缩状态表并存储所述压缩状态表。
4.根据权利要求3所述的方法,其特征在于,所述多种数据格式包括以下三种数据格式:
第一数据格式,将一行中数量最多的一个状态设为默认状态,并列出其他状态和对应的输入字符;
第二数据格式,列出一行中连续出现的状态以及其所对应字符区间的开始字符和结束字符,并将剩下的状态作为默认状态;以及
原始数据格式,直接为所述状态转移表中的一行的下一状态。
5.根据权利要求4所述的方法,其特征在于,优先采用所述第一数据格式,并且如果不能使用所述第一数据格式和所述第二数据格式,则采用所述原始数据格式。
6.一种基于正则表达式的深度包检测设备,其特征在于,以硬件方式实现所述设备包括的以下装置:
压缩状态表获取装置,用于对于每个状态,根据压缩该状态所对应行所采用的数据格式,得到预先存储的压缩状态表;以及
跳转装置,用于根据当前所处状态、所得到的压缩状态表和新输入的字符,得到下一状态并跳转到该状态。
7.根据权利要求6所述的设备,其特征在于,所述硬件包括专用硬件逻辑,其中,所述专用硬件逻辑包括现场可编程门阵列、复杂可程式逻辑器件和专用集成电路中的一种。
8.根据权利要求6所述的设备,其特征在于,所述设备还包括:压缩状态表存储装置,用于针对有限状态机的状态转移表的每一行,预先选择预定的多种数据格式中的一种对该行进行压缩来获得该行的压缩状态表并存储所述压缩状态表,以将存储的压缩状态表提供给所述压缩状态表获取装置。
9.根据权利要求8所述的设备,其特征在于,所述多种数据格式包括以下三种数据格式:
第一数据格式,将一行中数量最多的一个状态设为默认状态,并列出其他状态和对应的输入字符;
第二数据格式,列出一行中连续出现的状态以及其所对应字符区间的开始字符和结束字符,并将剩下的状态作为默认状态;以及
原始数据格式,直接为所述状态转移表中的一行的下一状态。
10.根据权利要求9所述的设备,其特征在于,优先采用所述第一数据格式,并且如果不能使用所述第一数据格式和所述第二数据格式,则采用所述原始数据格式。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。