一种在线流量异常检测方法及装置与流程

文档序号:13667043阅读:1993来源:国知局
一种在线流量异常检测方法及装置与流程

本发明涉及计算机技术领域,尤其涉及一种在线流量异常检测方法及装置。



背景技术:

软件定义网络技术分离了网络的数据平面和控制平面,为研发网络新应用和未来互联网技术提供了一种新的解决方案。目前,软件定义网络已经广泛应用于流量工程、异常检测、流量统计等网络流量管理和优化工作。

然而,目前将软件定义网络应用于异常检测方面的工作还处于研究阶段。常用方法有利用控制器中的路由统计信息,分析了从不同交换机获取流统计数据的网络负载问题,从而构建整个网络的流量矩阵。或者在读取交换机的流统计信息后,采用数据结构设计了一种识别分层高负载流的方案。或者通过提取流统计信息中与分布式拒绝服务攻击相关的六元组,采用人工神经网络方法som(selforganizingmaps)进行降维处理,从而识别分布式拒绝服务攻击。

然而这些方法仍存在以下缺陷:采用的流量特征数据较单一,仅针对某种特定的异常。



技术实现要素:

本发明实施例提供了一种在线流量异常检测方法及装置,以解决现有技术中检测流量异常时采用的流量特征数据较单一,仅针对某种特定的异常的技术问题。

第一方面,本发明实施例提供了一种在线流量异常检测方法,包括:

在openflow交换机中安装流表项,控制器实时获取openflow交换机信息;

采集流统计信息;

构建整个网络的流量矩阵和针对源地址、目的地址的组合熵矩阵,进而构建流量组合熵矩阵;

采用主成分分析方法识别异常。

第二方面,本发明实施例还提供了一种在线流量异常检测装置,包括:

流表安装模块,用于在openflow交换机中安装流表项,控制器实时获取openflow交换机信息;

流统计信息采集模块,用于采集流统计信息;

矩阵生成模块,构建整个网络的流量矩阵和针对源地址、目的地址的组合熵矩阵,进而构建流量组合熵矩阵;

异常检测模块,采用主成分分析方法识别异常。

本发明实施例提供的一种在线流量异常检测方法及装置,在openflow交换机中安装流表项,控制器实时获取openflow交换机信息;构建整个网络的流量矩阵和针对源地址、目的地址的组合熵矩阵,进而构建流量组合熵矩阵;采用主成分分析方法识别异常。本发明实施例实现简单、有效的对在线流量异常进行检测,是一种轻量级的在线检测方法。

附图说明

图1是本发明实施例一提供的一种在线流量异常检测方法的流程示意图;

图2是本发明实施例二提供的一种在线流量异常检测方法的流程示意图;

图3是本发明实施例三提供的一种在线流量异常检测方法的流程示意图。

具体实施方式

下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。

实施例一

图1是本发明实施例一提供的一种在线流量异常检测方法的流程图,本实施例可适用于对网络流量出现异常的情况,该方法可以由在线流量异常检测装置来执行,具体包括如下步骤:

步骤110、在openflow交换机中安装流表项,控制器实时获取openflow交换机信息。

nox是最早实现控制器功能的网络操作系统。openflow交换机在nox上注册成功之后,nox会维护当前网络拓扑状况,根据到达的数据包向openflow交换机安装流表项。若仅生成流量矩阵,则流表项中的源ip和目的ip地址可以直接设置为子网,从而减少流表项的数量;若要生成源ip地址和目的ip地址的样本熵矩阵,则nox需要根据实际的源ip地址和目的ip地址安装流表项。

步骤120、采集流统计信息。

流的计数器包含3个统计字段,即接收的报文数、字节数和持续时间。流统计信息采集的时间间隔采用固定时长。若周期太长,则检测到异常流量并进行处理的时延也更长;若周期太短,将会增加nox和openflow交换机的处理开销。这里需要进一步指出的是,若流表项被删除(由控制器删除,软超时删除或硬超时删除),则下一次获取的流统计信息将会遗漏这个周期内被删除流表项的数据统计。为了防止这种情况发生,在此模块中增加了流删除触发机制,即某个流表项被删除时,它自动将统计信息发送给nox,流统计信息采集模块将把数据累加到下一次获取的流统计信息中。

步骤130、构建整个网络的流量矩阵和针对源地址、目的地址的组合熵矩阵,进而构建流量组合熵矩阵。

对流统计信息采集模块获取的数据进行处理,并根据不同的设置情况生成流量矩阵或样本熵矩阵。其中,流量矩阵是指网络中所有源节点和目的节点对之间的流量需求。根据网络节点类型的不同,流量矩阵可以定义为链路级、路由级和pop流量矩阵。样本熵是用来刻画数据集的分散和集中程度的指标,即数据集的平均信息量,样本熵矩阵根据网络中每个节点对测出针对某项流量特征的观测值集合。假在进行流量异常检测时,将源ip地址和目的ip地址的样本熵矩阵进行组合,组成组合熵矩阵;同样,将流量矩阵和组合熵矩阵组合为流量组合熵矩阵,以对不同输入数据的检测结果进行比较。为了保证在线流量异常检测方法在线处理方式的实时有效性和轻量级开销,输入流量应该分为训练阶段和检测阶段,即滑动窗口最初输入的矩阵应该为正常流量,随后将最新检测阶段的数据逐渐添加到滑动窗口中。

步骤140、采用主成分分析方法识别异常。

通过主成分分析方法对输入的流量矩阵进行检测,检查其中的流量异常。

在本实施例中,在openflow交换机中安装流表项,控制器实时获取openflow交换机信息;构建整个网络的流量矩阵和针对源地址、目的地址的组合熵矩阵,进而构建流量组合熵矩阵;采用主成分分析方法识别异常。本发明实施例实现简单、有效的对在线流量异常进行检测,是一种轻量级的在线检测方法。

实施例二

图2为本发明实施例二提供的一种在线流量异常检测方法的流程示意图。本实施例以上述实施例为基础进行优化,在本实施例中,将所述采用主成分分析方法识别异常,具体优化为:对流量矩阵或流量组合熵矩阵进行处理,并设置阈值判断是否检测到异常流量。

相应的,本实施例所提供的一种在线流量异常检测方法,具体包括:

步骤210、在openflow交换机中安装流表项,控制器实时获取openflow交换机信息。

步骤220、采集流统计信息。

步骤230、构建整个网络的流量矩阵和针对源地址、目的地址的组合熵矩阵,进而构建流量组合熵矩阵。

步骤240、对流量矩阵或流量组合熵矩阵进行处理,并设置阈值判断是否检测到异常流量。

基于主成分分析方法实现流量异常检测主要分为两步:子空间构建和阈值检测。

对于输入的流量矩阵x(流量样本熵矩阵方法也类似),应用主成分分析方法取前k个主成分特征值,使得累计贡献率在90%以上,则前k个主成分特征向量构成了子空间s1,而剩余的p-k个主成分特征向量构成了另一个子空间s2。在构建好s1和s2后,将矩阵x向这两个子空间进行投影。取矩阵某一时刻的测量值向量,所述测量值向量是由模型向量与残差向量组成。在对某个周期获取到的数据向量进行处理后,若这个测量周期发生了网络异常,则残差流量中的值与未发生网络异常的测量周期的残差流量值有所区别。这是因为残差流量主要是由各种异常行为引起的。因此可以通过设定阈值来检测网络流量是否正常。

在完成流量异常检测之后,还需对检测到的异常流量进行处理,具体的可通过修改节点流目的端openflow交换机上对应的流表项,将异常数据流量丢弃。

本实施例将所述将所述采用主成分分析方法识别异常,具体优化为:对流量矩阵或流量组合熵矩阵进行处理,并设置阈值判断是否检测到异常流量。具体分析异常检测的过程。

实施例三

图3是本发明实施例三提供的一种在线流量异常检测装置的结构示意图,如图3所示,所述装置包括:

流表安装模块310,用于在openflow交换机中安装流表项,控制器实时获取openflow交换机信息;

流统计信息采集模块320,用于采集流统计信息;

矩阵生成模块330,构建整个网络的流量矩阵和针对源地址、目的地址的组合熵矩阵,进而构建流量组合熵矩阵;

异常检测模块340,采用主成分分析方法识别异常。

本实施例提供的一种在线流量异常检测装置,能够实现简单、有效的对在线流量异常进行检测。

进一步的,所述装置还包括:

arp报文处理模块,用于在收到arp报文后,openflow交换机会将它转发给控制器。

进一步的,所述装置还包括:

流量隔离模块,用于修改节点流目的端openflow交换机上对应的流表项,将异常数据流量丢弃。

进一步的,所述装置还包括:

异常检测模块,用于对流量矩阵或流量组合熵矩阵进行处理,并设置阈值判断是否检测到异常流量。

本发明实施例所提供的一种在线流量异常检测装置可执行本发明任意实施例所提供的一种在线流量异常检测方法,具备执行方法相应的功能模块和有益效果。

注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1