CN107277109A - 针对压缩流量的多字符串匹配方法 - Google Patents
针对压缩流量的多字符串匹配方法 Download PDFInfo
- Publication number
- CN107277109A CN107277109A CN201710354909.0A CN201710354909A CN107277109A CN 107277109 A CN107277109 A CN 107277109A CN 201710354909 A CN201710354909 A CN 201710354909A CN 107277109 A CN107277109 A CN 107277109A
- Authority
- CN
- China
- Prior art keywords
- string
- matching
- coded
- automatic machine
- compression flow
- 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.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/565—Conversion or adaptation of application format or content
- H04L67/5651—Reducing the amount or size of exchanged application data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/22—Matching criteria, e.g. proximity measures
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/04—Protocols for data compression, e.g. ROHC
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Mining & Analysis (AREA)
- Bioinformatics & Computational Biology (AREA)
- Artificial Intelligence (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Evolutionary Computation (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开一种针对压缩流量的多字符串匹配方法,核心部件是压缩流量字符串匹配引擎,它使用待匹配字符串进行构建,对压缩流量字节内容进行扫描、匹配,输出匹配结果;该引擎包括解码、匹配和字符串匹配自动机三个模块,以及处理过程所需的数据,即状态记录模块;本发明技术方案对压缩流量具有较高的多字符串匹配吞吐率,便于使用,且具有较好的扩展性。
Description
【技术领域】
本发明属于网络技术领域,涉及压缩流量的多模式匹配方法。
【背景技术】
随着压缩技术在网络流量中的广泛应用,越来越多的Web服务器将HTTP页面内容压缩后发送给浏览器。文献[1]指出2010年7月Alexa Top 1000的站点中有66%使用了HTTP压缩,而2016年10月的Top 500站点中,该比例已增长为95%[2]。
然而,许多基于深度包检测(Deep Packet Inspection,DPI)的工具通常采用多模式匹配的方式,识别流量中的特征,例如入侵检测系统(Intrusion Detection System,IDS)、入侵防御系统(Intrusion Prevention System,IPS)和防火墙等。这些工具面对压缩流量,通常有以下三种做法:
(1)Lazy:对于压缩的数据,直接丢弃,不进行处理。然而由于越来越多的流量使用压缩技术,致使采用该方式的工具放弃太多的内容,难以有效地进行DPI。
(2)Naive:也就是先将压缩流量进行完全解压,之后再对解压后的数据进行模式匹配。该方法技术成熟,实现简单,但是解压过程中对内存和CPU的需求无疑会成为整个匹配过程中的性能瓶颈。
(3)Patch:通过修改客户端的请求,告知服务端自身不接收压缩数据,从而强制服务端发送原始数据。这种方式相较于Naive来说,避免了流量解压过程的开销。但是破坏了客户端与服务端之间通信数据的完整性;而且使用未压缩的流量,也抛弃了HTTP设计压缩流量的初衷,不能减少对网络带宽的使用。
目前,有许多关于多模式匹配的相关专利,如文献[3,4,5,6],但它们均没有涉及针对压缩流量的多模式匹配。一些针对HTTP压缩流量进行DPI的工作,其中,ACCH[7,8]是较为完善的一种,它通过先解压流量,之后利用解压过程中所保存的信息,在匹配过程跳过部分扫描字符,以加速模式匹配的过程。
ACCH实验结果表明:与Naive方式相比较,在多模式匹配算法性能上能够得到有效提升。然而,它没有充分利用HTTP压缩数据格式的特征,以至于压缩内容中出现完整匹配字符串之时,需要重复扫描。而且,算法需要人为指定部分参数,致使处理过程较为繁杂。
为进一步说明本发明的具体内容,首先对发明所涉及的技术和定义的名词进行介绍:
A)gzip/DEFLATE
gzip是HTTP1.1推荐的一种常用的内容编码方法,其中,根据Aleax Top 500列表获取的449个页面中,428个使用压缩编码的页面均采用gzip作为其编码方法。而DEFLATE则是gzip所使用的压缩方法,它基于LZ77和哈夫曼编码分别实现压缩和编码。
图1显示的是gzip压缩过程示意图,原始文本为两行表示网页URL的字符串,经过LZ77压缩,将第二行中的“https://www.”编码为<12,25>。表示该压缩内容长度为12字节,可由当前位置向前偏移25字节(包括换行符)处拷贝得到。在这里,称<长度,距离>对,即<12,25>为编码字符串;称第一行中的“https://www.”为参考字符串,二者的位置关系示意图如图2所示。
经LZ77压缩后的数据,包含原始文本和编码内容,之后使用哈夫曼编码方法对其编码,生成gzip所使用的DEFLATE数据格式。由于哈夫曼编码长度不等,且不全是8的倍数,因此DEFLATE数据为连续的位流,并且不会以字节为编码边界。这也是上文所说的Naive方法必须在解压之后才能进行字符串匹配的原因。
B)多模式匹配
按照所支持匹配模式的个数进行划分,模式匹配算法可以分为单模式匹配和多模式匹配算法两大类。当模式为字符串之时,也就分为单字符串匹配和多字符串匹配算法。对于单字符串匹配算法,例如KMP算法等,在文字处理、文件系统搜索等领域得到了广泛应用。而基于深度包检测的工具,通常采用多字符串匹配算法,以同时匹配多条规则。
经典的多字符串匹配算法有Aho Corasick算法、Wu Manber算法和Piranha算法等。其中,Aho Corasick算法则是使用较为广泛的入侵检测系统Snort中的字符串匹配引擎算法。该算法在匹配前对字符串集合进行预处理,转换成树型有限自动机,然后只需对文本字符串进行一次扫描就可找出所有字符串,其时间复杂度是O(n)。
[1]Afek,Yehuda,A.Bremler-Barr,and Y.Koral."Space efficient deeppacket inspection of compressed web traffic."Computer Communications 35.7(2012):810-819.
[2]Alexa Top 500Global Sites,Oct.2016.http://www.alexa.com/topsites.
[3]北京理工大学.一种多字符串匹配方法[P].中国专利:CN201010232463.2,2010.12.01.
[4]北京哲安科技有限公司.一种多字符串匹配方法和芯片[P].中国专利:CN200710099389.X,2007.10.10.
[5]东北大学.基于后缀自动机正则引擎构造的深度包检测方法[P].中国专利:CN201310159057.1,2013.08.21.
[6]北京启明星辰信息技术有限公司.一种自适应多模式匹配方法及系统[P].中国专利:CN200610089420.7,2006.11.29.
[7]Bremler-Barr,A,and Y.Koral."Accelerating Multi-pattern Matching onCompressed HTTP Traffic."IEEE/ACM Transactions on Networking 20.3(2009):970-983.
[8]Anat Bremler-Barr,Yaron Koral,Victor Zigdon.Multi-pattern matchingin compressed communication traffic[P].美国专利:US8458354B2,2013.06.04。
【发明内容】
为解决上述问题,本发明目的在于提出一种针对压缩流量的多字符串匹配方法,该方法通过对匹配过程中压缩内容与待匹配字符串之间的位置关系进行归类,以跳过扫描压缩流量中部分字节的方式,提升对压缩流量进行多字符串匹配时的吞吐率,并且无需任何用户指定的参数,使用方便,且具有较好的扩展性。
为达到上述目的,本发明采用了以下技术方案:
针对压缩流量的多字符串匹配方法,核心部件是压缩流量字符串匹配引擎,其包括解码模块、匹配模块和字符串匹配自动机)三个处理模块,以及处理过程所需的状态记录模块;
解码模块对采用gzip或DEFLATE方法压缩的内容进行哈夫曼解码,解码使得不以字节为边界的原始压缩流量,变为以字节为边界的字符内容和编码字符串;
匹配模块使用字符串匹配自动机直接扫描解码后的字符内容,对编码字符串则进行分类处理;
字符串匹配自动机,使用现有的多字符串匹配算法,包括但不限于Aho Corasick算法,通过算法构建匹配自动机,以扫描文本字符串,输出结果;
状态记录模块,保存该引擎工作过程所使用的状态、参数信息;
压缩流量字符串匹配引擎使用待匹配字符串构建字符串匹配自动机,之后对压缩流量字节内容进行扫描、匹配,输出匹配结果。
进一步,匹配模块对编码字符串则进行分类处理,依据待匹配字符串与编码字符串之间的位置关系,将编码字符串分为三种类别进行处理,分类规则为:
前缀:待匹配字符串起始于编码字符串之前,而不限结束于何处;
包含:待匹配字符串完全处于编码字符串之中;
后缀:待匹配字符串起始于编码字符串,但不完全处于其中。
进一步,压缩流量字符串匹配引擎的匹配模块对编码字符串进行分类处理的过程如下:
(1)判断是否有前缀情况出现,如有,从编码字符串的开始位置继续进行之前的扫描;否则,结束对该情况的处理;
(2)判断是否有完整的待匹配字符串位于编码字符串中,如有,保存该字符串结束的位置和长度等匹配信息;否则,结束该情况的处理;
(3)判断有无后缀情况出现,如有,向前回溯距离为当前自动机结点深度的字节数,之后开始新的自动机匹配扫描;否则,结束该情况的处理。
进一步,具体包括以下步骤:
(1)构造匹配引擎:首先,根据选取的字符串匹配算法,解析待匹配字符串(103),构造匹配所用的字符串匹配自动机,之后申请存储空间,保存处理过程的状态记录数据;
(2)解码:读取压缩流量数据,根据不同类型数据,使用静态哈夫曼编码,或者构造哈夫曼编码树,解析压缩数据,将压缩数据解码为两类:字符内容和编码字符串;
(3)匹配:对于解码后的字符内容,直接使用匹配自动机进行扫描;对于编码字符串,进行分类处理,扫描和处理过程中,随时更新状态记录数据和匹配结果(104);
(4)重复步骤(2)-(3),直至处理完所有压缩流量。
本发明具有以下优点:
(1)匹配速度快
目前对压缩流量进行字符串匹配的方法中,ACCH是匹配速度最快的一种,而在Alexa Top 500和Alexa China Top20000两组数据集上的实验表明,本发明匹配性能均得到有效提升,相较于ACCH匹配性能能够提升10-31%。
(2)实现简便
ACCH使用过程中,需要用户指定参数,并且其方法中需要使用多项参数,进行类别判断和处理,使得处理过程较为繁杂。本发明在匹配过程中,仅引入两个辅助参数,并且参数计算不需要用户介入,实现简单,使用方便。
(3)扩展性强
本发明中的字符串匹配引擎,可以选用Aho Corasick算法或者其他可以构造成确定型有限自动机的匹配算法。这样以来,可以方便地对现有系统进行改造,以提升对压缩流量进行多字符串匹配的吞吐率。
【附图说明】
图1是gzip压缩过程示意图,将原始文本压缩为字符内容和编码字符串混合的数据,之后再进行哈夫曼编码,保存为gzip或DEFLATE数据格式。
图2是参考字符串与编码字符串二者之间的位置关系示意图。
图3为本发明的系统结构图,其中:虚线框中是压缩流量字符串匹配引擎,该引擎使用待匹配字符串构造匹配自动机,对压缩流量进行处理,输出匹配结果。
图4是说明对编码字符串的处理过程的示例数据。
图5是本发明依据待匹配字符串与编码字符串之间的位置关系所分的三种类别。
图6是示例中编码字符串的处理过程和状态记录结果图。
图7是本发明与ACCH和Naive方法的多字符串匹配吞吐率对比图。
【具体实施方式】
下面将结合实施例对本发明技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都应属于本发明保护的范围。
本发明的一种针对压缩流量的多字符串匹配方法,如图3所示。其核心部件是压缩流量字符串匹配引擎101,它包括解码模块1011、匹配模块1012和字符串匹配自动机1013三个处理模块,以及处理过程所需的状态记录模块1014。该引擎使用待匹配字符串103构建字符串匹配自动机1013,之后对压缩流量102字节内容进行扫描、匹配,输出匹配结果104。
另外,匹配引擎中的解码模块1011,对采用gzip或DEFLATE方法压缩的内容进行哈夫曼解码。解码使得不以字节为边界的原始压缩流量102变为以字节为边界的字符内容和编码字符串。
匹配模块1012使用字符串匹配自动机1013直接扫描解码后的字符内容。而对编码字符串则进行分类处理。
字符串匹配自动机1013使用现有的多字符串匹配算法,包括但不限于AhoCorasick算法,通过算法构建匹配自动机,以扫描文本字符串,输出结果。
状态记录模块1014保存该引擎工作过程所使用的状态、参数等信息。
本发明依据待匹配字符串与编码字符串之间的位置关系,将编码字符串分为三种类别进行处理,如图5所示。分别是前缀:待匹配字符串起始于编码字符串之前,而不限结束于何处。包含:待匹配字符串完全处于编码字符串之中。后缀:待匹配字符串起始于编码字符串,但不完全处于其中。
压缩流量字符串匹配引擎在匹配过程中,对编码字符串的处理,按照上述的三种类别分别进行,具体过程如下:
(1)前缀:使用depth参数,depth是字符串匹配自动机构造的自动机中当前字符所处状态结点的最大深度,也就是该结点与根结点之间最短简单路径的长度。首先判断编码字符串的前一字节处depth是否大于0,确定能否跳过前缀扫描。如果此处depth>0,继续从编码字符串的开始位置扫描;否则,结束对该情况的处理。
(2)包含:使用status参数,在整个扫描过程,如果发现匹配的待匹配字符串位,则该位置标记为Match,并且记录该字符串的长度等信息。处理编码字符串中包含情况之时,拷贝参考字符串中的status值到编码字符串中,并查找编码字符串中status为Match的位置。找到后,取该处位置mPos和对应的字符串长度pLen。如果mPos-pLen在编码字符串范围之内,则说明该字符串完全在编码字符串中,保存mPos和该字符串长度等匹配信息。否则,不包含完整的待匹配字符串,清除mPos处Match标志。
(3)后缀:拷贝参考字符串中的depth值到编码字符串中,并判断编码字符串中最后一个字节(lastPos)处depth是否大于0,确定有无后缀情况出现。如果depth>0,则从lastPos-depth位置开始新的自动机匹配扫描;否则,结束该情况的处理。
为了更为直观地说明对编码字符串的处理过程,本发明以图4中的数据作为输入,进行实例说明。
图4压缩数据中括号“<>”中的内容即是编码字符串,对其进行处理的过程分别对应图6中(a)~(b)。图6中是对这四组编码字符串的处理过程depth和status的状态记录值。
1)Ex1:扫描Ex1之时,拷贝所对应参考字符串的depth和status值,然后处理前缀情况。由于Ex1前一字节处depth为1,则继续扫描Ex1起始处字节,直至匹配出模式“123”。之后在扫描“4”之时,depth值为1,而已经扫描至该编码字符串的末位,因此结束前缀情况的处理。扫描Ex1过程没有跳过字节。
2)Ex2:Ex2前一字节处depth值为0,结束前缀情况的处理。之后继续处理包含情况时,未发现有status为Match的位置,结束包含情况的处理。最后,处理后缀情况,lastPos处depth值为2,从lastPos-depth处,也就是开始扫描“89”,直至完成Ex2扫描。此次扫描跳过两个字节。
3)Ex3:Ex3前一字节处depth值为0,结束前缀情况的处理。包含情况中,在其Ex3中找到一个status为Match的位置,当前位置为4,模式长度为4,可以确定该模式完全处在Ex3中,记录当前的匹配信息。此时也完成了对Ex3的扫描,此次扫描过程跳过5个字节。
4)Ex4:Ex4前一字节处depth值为0,结束前缀情况的处理。处理包含情况时,找到status为m的位置,但当前位置为2,而模式长度为4,不是完整存在于Ex4中的模式,清除该位置的Match标志。包含情况处理完成后,也结束了Ex4的处理,扫描Ex4跳过3字节。
为说明实际效果,本发明选取真实的压缩流量数据和待匹配字符串进行验证。其中压缩流量为爬虫程序从Alexa Top Sites获取的压缩页面数据,特征如表1所示。另外,待匹配字符串为Snort规则集中的精确匹配字符串集合,共计1430条。
表1采集到的压缩流量特征
Alexa.com | Alexa.cn | |
页面数量 | 428 | 13747 |
压缩大小(MB) | 14.73 | 226.95 |
解压缩后大小(MB) | 68.28 | 1190.99 |
在Intel i5-4460和8G RAM平台下,分别对两组数据集进行匹配分析。最终本发明与ACCH的匹配过程吞吐率对比结果如图7所示。从图中可以看出,两组数据下,本发明的吞吐率相较于ACCH和Naive方法均有明显提升。
以上内容是结合具体的优选实施方式对本发明所作的进一步详细说明,不能认定本发明的具体实施方式仅限于此,对于本发明所属技术领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干简单的推演或替换,都应当视为属于本发明由所提交的权利要求书确定专利保护范围。
Claims (4)
1.针对压缩流量的多字符串匹配方法,其特征在于:核心部件是压缩流量字符串匹配引擎(101),其包括解码模块(1011)、匹配模块(1012)和字符串匹配自动机(1013)三个处理模块,以及处理过程所需的状态记录模块(1014);
解码模块(1011)对采用gzip或DEFLATE方法压缩的内容进行哈夫曼解码,解码使得不以字节为边界的原始压缩流量(102),变为以字节为边界的字符内容和编码字符串;
匹配模块(1012)使用字符串匹配自动机(1013)直接扫描解码后的字符内容,对编码字符串则进行分类处理;
字符串匹配自动机(1013),使用现有的多字符串匹配算法,包括但不限于AhoCorasick算法,通过算法构建匹配自动机,以扫描文本字符串,输出结果;
状态记录模块(1014),保存该引擎工作过程所使用的状态、参数信息;
压缩流量字符串匹配引擎(101)使用待匹配字符串(103)构建字符串匹配自动机(1013),之后对压缩流量(102)字节内容进行扫描、匹配,输出匹配结果(104)。
2.根据权利要求1所述的针对压缩流量的多字符串匹配方法,其特征在于:匹配模块(1012)对编码字符串则进行分类处理,依据待匹配字符串(103)与编码字符串之间的位置关系,将编码字符串分为三种类别进行处理,分类规则为:
前缀:待匹配字符串起始于编码字符串之前,而不限结束于何处;
包含:待匹配字符串完全处于编码字符串之中;
后缀:待匹配字符串起始于编码字符串,但不完全处于其中。
3.根据权利要求2所述的针对压缩流量的多字符串匹配方法,其特征在于,压缩流量字符串匹配引擎(101)的匹配模块(1012)对编码字符串进行分类处理的过程如下:
(1)判断是否有前缀情况出现,如有,从编码字符串的开始位置继续进行之前的扫描;否则,结束对该情况的处理;
(2)判断是否有完整的待匹配字符串位于编码字符串中,如有,保存该字符串结束的位置和长度等匹配信息;否则,结束该情况的处理;
(3)判断有无后缀情况出现,如有,向前回溯距离为当前自动机结点深度的字节数,之后开始新的自动机匹配扫描;否则,结束该情况的处理。
4.根据权利要求1所述的针对压缩流量的多字符串匹配方法,其特征在于,具体包括以下步骤:
(1)构造匹配引擎:首先,根据选取的字符串匹配算法,解析待匹配字符串(103),构造匹配所用的字符串匹配自动机(1013),之后申请存储空间,保存处理过程的状态记录数据;
(2)解码:读取压缩流量(102)数据,根据不同类型数据,使用静态哈夫曼编码,或者构造哈夫曼编码树,解析压缩数据,将压缩数据解码为两类:字符内容和编码字符串;
(3)匹配:对于解码后的字符内容,直接使用匹配自动机进行扫描;对于编码字符串,进行分类处理,扫描和处理过程中,随时更新状态记录数据和匹配结果(104);
(4)重复步骤(2)-(3),直至处理完所有压缩流量。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710354909.0A CN107277109B (zh) | 2017-05-18 | 2017-05-18 | 针对压缩流量的多字符串匹配方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710354909.0A CN107277109B (zh) | 2017-05-18 | 2017-05-18 | 针对压缩流量的多字符串匹配方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107277109A true CN107277109A (zh) | 2017-10-20 |
CN107277109B CN107277109B (zh) | 2020-03-31 |
Family
ID=60063993
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710354909.0A Active CN107277109B (zh) | 2017-05-18 | 2017-05-18 | 针对压缩流量的多字符串匹配方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107277109B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108460280A (zh) * | 2018-02-09 | 2018-08-28 | 北京交通大学 | 一种网络攻击字符匹配方法及装置 |
CN108563795A (zh) * | 2018-05-04 | 2018-09-21 | 西安交通大学 | 一种加速压缩流量正则表达式匹配的Pairs方法 |
CN108573069A (zh) * | 2018-05-04 | 2018-09-25 | 西安交通大学 | 一种加速压缩流量正则表达式匹配的Twins方法 |
CN113065419A (zh) * | 2021-03-18 | 2021-07-02 | 哈尔滨工业大学 | 一种基于流量高频内容的模式匹配算法及系统 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080046423A1 (en) * | 2006-08-01 | 2008-02-21 | Lucent Technologies Inc. | Method and system for multi-character multi-pattern pattern matching |
CN101645069A (zh) * | 2008-08-04 | 2010-02-10 | 中国科学院计算机网络信息中心 | 一种多模式匹配中正则表达式存储压缩方法 |
US8458354B2 (en) * | 2010-01-27 | 2013-06-04 | Interdisciplinary Center Herzliya | Multi-pattern matching in compressed communication traffic |
CN105468588A (zh) * | 2014-05-30 | 2016-04-06 | 华为技术有限公司 | 字符串匹配方法和装置 |
CN105900065A (zh) * | 2014-01-13 | 2016-08-24 | 华为技术有限公司 | 模式处理方法 |
-
2017
- 2017-05-18 CN CN201710354909.0A patent/CN107277109B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080046423A1 (en) * | 2006-08-01 | 2008-02-21 | Lucent Technologies Inc. | Method and system for multi-character multi-pattern pattern matching |
CN101645069A (zh) * | 2008-08-04 | 2010-02-10 | 中国科学院计算机网络信息中心 | 一种多模式匹配中正则表达式存储压缩方法 |
US8458354B2 (en) * | 2010-01-27 | 2013-06-04 | Interdisciplinary Center Herzliya | Multi-pattern matching in compressed communication traffic |
CN105900065A (zh) * | 2014-01-13 | 2016-08-24 | 华为技术有限公司 | 模式处理方法 |
CN105468588A (zh) * | 2014-05-30 | 2016-04-06 | 华为技术有限公司 | 字符串匹配方法和装置 |
Non-Patent Citations (3)
Title |
---|
HAO PENG 等: "Fast Multi-Pattern Matching Algorithm on Compressed Network Traffic", 《IEEE》 * |
萧牧天: "IM协议分析和数据重建技术的研究与应用", 《中国优秀硕士学位论文全文数据库(电子期刊)》 * |
邝劲松,阳小华: "压缩流量的深度包检测技术研究综述", 《网络安全技术与应用》 * |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108460280A (zh) * | 2018-02-09 | 2018-08-28 | 北京交通大学 | 一种网络攻击字符匹配方法及装置 |
CN108563795A (zh) * | 2018-05-04 | 2018-09-21 | 西安交通大学 | 一种加速压缩流量正则表达式匹配的Pairs方法 |
CN108573069A (zh) * | 2018-05-04 | 2018-09-25 | 西安交通大学 | 一种加速压缩流量正则表达式匹配的Twins方法 |
CN108573069B (zh) * | 2018-05-04 | 2020-10-27 | 西安交通大学 | 一种加速压缩流量正则表达式匹配的Twins方法 |
CN108563795B (zh) * | 2018-05-04 | 2021-01-19 | 西安交通大学 | 一种加速压缩流量正则表达式匹配的Pairs方法 |
CN113065419A (zh) * | 2021-03-18 | 2021-07-02 | 哈尔滨工业大学 | 一种基于流量高频内容的模式匹配算法及系统 |
CN113065419B (zh) * | 2021-03-18 | 2022-05-24 | 哈尔滨工业大学 | 一种基于流量高频内容的模式匹配算法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN107277109B (zh) | 2020-03-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107277109A (zh) | 针对压缩流量的多字符串匹配方法 | |
US8458354B2 (en) | Multi-pattern matching in compressed communication traffic | |
US9870502B2 (en) | Apparatus for, a method of, and a network server for detecting data patterns in a data stream | |
CN101547126B (zh) | 一种基于网络数据流的网络病毒检测方法及装置 | |
CN111177491B (zh) | 正则表达式的匹配方法、装置、电子设备及存储介质 | |
CN110865970B (zh) | 一种基于fpga平台的压缩流量模式匹配引擎及模式匹配方法 | |
EP2472786B1 (en) | Automatic signature generation for application recognition and user tracking over heterogeneous networks | |
CN107947918A (zh) | 一种基于字符特征的无载体文本隐写方法 | |
CN104994128B (zh) | 一种数据编码类型识别及转码方法和装置 | |
JP2004508647A (ja) | 構造化文書の圧縮/解凍方法 | |
Bremler-Barr et al. | CompactDFA: Scalable pattern matching using longest prefix match solutions | |
CN108563795B (zh) | 一种加速压缩流量正则表达式匹配的Pairs方法 | |
CN106936439A (zh) | 一种通用的基于分块排序思想的压缩预处理方法及应用 | |
US20060085737A1 (en) | Adaptive compression scheme | |
CN104238763A (zh) | 输入框的信息输入控制方法及装置 | |
CN110196968A (zh) | 一种基于特定字符串查找的简体中文编码方式自动识别系统及方法 | |
CN112507336A (zh) | 基于代码特征和流量行为的服务端恶意程序检测方法 | |
Lin et al. | A fast algorithm for Huffman decoding based on a recursion Huffman tree | |
CN108573069B (zh) | 一种加速压缩流量正则表达式匹配的Twins方法 | |
CN112069305A (zh) | 数据筛选方法、装置及电子设备 | |
CN104079450A (zh) | 特征模式集生成方法及装置 | |
CN104753934B (zh) | 将未知协议多通信方数据流分离为点对点数据流的方法 | |
CN108897721B (zh) | 一种对多种编码的数据进行解码的方法和装置 | |
CN113065419B (zh) | 一种基于流量高频内容的模式匹配算法及系统 | |
Sun et al. | Towards a fast packet inspection over compressed HTTP traffic |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |