一种面向并行数据流的深度包检测方法及系统与流程

文档序号:13193405阅读:390来源:国知局
技术领域本发明涉及计算机网络和深度包检测技术,具体涉及一种面向并行数据流的深度包检测方法及系统。

背景技术:
随着移动互联时代的到来,网络数据流量出现了指数爆炸式的增长。由此产生了网络攻击防范、网络包内容安全等问题。为了解决这类问题,深度包检测(DPI)技术应运而生。深度包检测技术是一种面向网络数据的高速检测方法,主要用于检测网络包的载荷字段内容。该技术在入侵防御系统(IPS)、入侵检测系统(IDS)中被广泛应用。传统的检测方法包括确定性有穷自动机(DFA)和非确定性有穷自动机(NFA),这些方法是利用确定字串或者正则表达式形式的规则,进行多模匹配。然而,随着网络环境的复杂化以及网络带宽的日益增长,DFA方法和NFA方法不再适用。NFA虽然内存占用小,但检测速度低,不能适应高速网络数据检测的要求。而DFA虽然在检测上是线性时间复杂度,但由于其空间复杂度存在指数爆炸的现象,不能应对目前庞大的规则特征库的需求。目前许多系统从压缩DFA的状态空间和迁移边空间出发,提出了许多有效的DFA改进方法;包括压缩状态迁移边空间的CDFA、压缩状态空间的空间融合DFA、改进DFA整体运行机制的XFA和利用多个DFA构造MDFAs等方法。然而,上述改进方法主要关注单个DFA面向单路数据流的检测能力,没有从并行数据流角度考虑整体检测系统的构造,因此不能满足数据流多并发的网络特征。

技术实现要素:
本发明的目的在于克服目前深度包检测技术中没有针对并行数据流的整体深度包检测方法,利用多DFA自动机协同检测,提出了一种面向并行数据流的深度包检测方法。为了实现上述目的,本发明提供了一种面向并行数据流的深度包检测方法,所述方法包括如下步骤:步骤101)构造DFA集,利用DFA最优负载均衡算法,将规范化的正则规则库中的正则表达式分配至DFA集中的若干个DFA中,由此每个DFA包含一个正则规则子集;并初始化DFA集的接收速率、缓存大小、数据队列大小参数;步骤102)接收多路并行数据流并进行预处理;步骤103)为每个数据流增加DFA标志位,数据流按照其优先级通过数据队列进入DFA集进行检测;步骤104)输出数据流的检测结果。上述技术方案中,所述步骤102)的预处理包括:对多路并行数据流进行整合,将可合并的数据流整合为一路数据流;为每个数据流生成数据流摘要信息。上述技术方案中,所述步骤103)进一步包括:步骤103-1)为接收到的每个数据流增加一个DFA标志位;DFA标志位为{n,n≤N;集合:N-n个DFA编号
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1