首页> 中国专利> 一种基于多变量序贯分析的分布式网络流量异常检测方法

一种基于多变量序贯分析的分布式网络流量异常检测方法

摘要

本发明公开了一种基于多变量序贯分析的分布式网络流量异常检测方法,其特征在于:获取分布式网络中链路的网络流量信息,提取其中的数据包大小值;构建网络流量新息序列;多变量序贯概率比检验方法;构建似然比突变值序列;通过检测分布式网络2条以上的网络链路的似然比突变值序列的相关性来检测分布式网络异常的发生。本方法具有检测速度快,实时性高等特点;不仅可以检测DDOS攻击,针对DOS攻击也能够得到很好的检测效果。

著录项

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2015-12-09

    授权

    授权

  • 2015-07-15

    实质审查的生效 IPC(主分类):H04L12/26 申请日:20150304

    实质审查的生效

  • 2015-06-17

    公开

    公开

说明书

技术领域

本发明涉及一种分布式网络异常检测方法,特别是一种基于多变量序贯分析的分布式网络流量异常检测方法。

背景技术

随着网络通信技术的快速发展,计算机网络改变了人们日常生活和工作方式,使得信息的获取、利用和处理更加高效,然而当我们在享受网络给我们带来便利的同时,还要时刻警惕网络异常行为给我们带来的危害。网络流量异常的特点是发作突然,先兆特征未知,大量消耗网络资源,导致网络拥塞、网络链路利用率下降、显著降低网络服务质量,有可能在短时间内给网络运营商和客户都产生极大的危害,此外,通常情况下,网络异常行为较正常行为相比,总量以及变化量都是很小的,因此如何准确、快速、实时地检测和响应流量异常是防范攻击、制定网络配置策略以实现合理利用网络资源的重要手段。

近年来,研究人员将网络流行为的各种特征看作信号,采用信号处理的方法,探讨网络异常流行为在时域和频域中表现出的不同特性。基于信号处理的网络异常检测主要包括以下几种方法:基于时间的(Temporal)网络异常检测、基于谱分析(Spectrual Analysis)的网络异常检测以及基于空间(Spatial)的网络异常检 测。

(1)基于时间的网络异常检测

基于时间的网络异常检测方法主要采用应用时间序列分析方法进行分析。早期异常检测方法大多采用基于时间的方法,通过分析时间序列中偏离网络正常流行为的数据以检测网络异常。利用经典的时间序列预测模型,如AR[1]、ARMA[2]、ARIMA等,对网络流量进行预测,并根据预测值与实际观测值之间的偏差大小,通过设定一个阈值进行网络异常检测的目的。

该方法特点在于通过构建时间序列模型能够准确地描述网络正常流行为的特征,但是其准确性还是主要依赖模型对数据动态性和复杂性的描述,在高速连接网络的情况下,时间序列模型将很难实现对网络流行为的准确刻画,这也是时间序列模型不能用于实时高速网络异常检测的主要原因。

(2)基于谱分析的网络异常检测

谱分析技术[3]广泛用于各种领域,采用谱技术能够从一个有噪声的环境中提取隐藏的模式和未来趋势。在过去几年,研究者已经将频率技术运用在网络异常流行为中,基于谱分析的网络异常检测是通过网络异常流行为在时域谱和频域谱上所反映出的统计特性与网络正常流行为之间的偏差来检测异常,该方法已经用于链路层的故障识别、DOS攻击检测、网络流量异常检测以及网络攻击行为指纹检测等。

基于谱分析的网络异常检测技术通过对网络流行为信号的频 率进行分析,以得到与网络正常流行为信号特性偏差较大的异常流行为信号,该方法计算复杂度较低,计算效率高,但是采用该方法的检测率会随着异常信号周期性减弱而减弱,与基于时域的方法相比,基于频域的方法开销比较大,尤其是在处理高速网络的情况下。

(3)基于空间的网络异常检测

由于异常特征会受到空间特征的影响而使得异常特征在时间上相关性受到一定的抑制,为此研究人员提出基于空间的网络异常检测方法。如利用链路之间的相关性描述网络正常流行为,为了将网络中异常流行为从网络行为数据空间中提取出来,采用PCA(Principal ComponentAnalysis)分析的方法,将网络行为空间分为正常行为子空间和剩余行为子空间,采用Q统计法在剩余子空间里设置阈值判断网络异常的发生等。基于空间的网络异常检测方法与其他基于信号处理的方法相比,检测率相当,检测算法计算复杂度低,但检测对象仅限于在时域频域上异常特征不明显而空间上异常特征相关的异常行为。

(4)时间序列分析方法

由于网络流量数据是随时间变化的数据,因此我们可以把网络流量数据看成一个时间序列,用时间序列的方法对流量数据进行建模。平稳时间序列是序列中不存在任何趋势性和周期性,其统计意义就是一阶矩为常数,二阶矩存在且为时间间隔的函数。较常见的平稳时间序列模型有自回归模型(AR,Auto Regressive)、 滑动平均模型(MA,MovingAverage)以及自回归滑动平均模型(ARMA)。

AR模型[1]是最常见的平稳时间序列模型,可以表示为:

Xt=φ1Xt-12Xt-2+…+φpXt-p+at                (1-1) 

其中at为白噪声,φi(1≤i≤p)为自回归系数。

如果时间序列当前时刻t的值Xt与其以前时刻的值Xt-1,Xt-2,……无关,而与其以前时刻t-1,t-2,……进入系统的扰动at-1,at-2,……存在着某种相关关系,那么这一类时间序列可用MA模型表示。MA(q)模型可以表示为:

Xt=at1at-1-…-θqat-q                (1-2) 

其中at为白噪声,θi(1≤i≤p)为滑动平均系数。

ARMA模型描述的系统在时刻t的响应Xt不仅与其以前时刻的自身值有关,而且还与其以前时刻进入系统的扰动存在一定的依存关系。ARMA(p,q)模型可以表示为:

Xt-Σk=1pφkXt-k=at-Σk=1qθkat-k---(1-3)

在这里我们引入后向算子B,它的运算有BXt=Xt-1,B2Xt=Xt-2B2,依此类推。那么式(1-3)可以变换为:

Ф(B)Xt=θ(B)at               (1-4) 

其中Ф(B)和θ(B)分别为后向算子B的p阶和q阶多项式

1-φ1B-φ2B2-···-φPBp=Φ(B)1-θ1B-θ2B2-···-θqBq=θ(B)---(1-5)

序贯分析

序贯分析,又称序列似然比检验,数理统计学的一个分支,研究的对象是没有固定数量大小的样本,它主要有2部分构成:停止抽样法则与结果判决法则,停止抽样法则用来判断对总体样本进行抽样的过程何时停止,结果判决法则根据停止抽样法则得到的数据对总体做出推断或选择。

假设正常情况下随机变量X服从正态分布,即X~N(θ,σ2),θ∈(-∞,+∞),分布密度是:

f(x,θ)=-12πexp{-12(x-θ)2}---(1-6)

检验假设H1:θ=θ1,对立假设是H2:θ=θ21<θ2,θ1,θ2已知)。

设X1,X2,…是X的独立观测序列,此时,由似然比统计量:

λn=Πi=1nf2(Xi)/Πi=1nf1(Xi),(n1)---(1-7)

可得:

λn=e-12Σ1n(xi-θ2)2/e-12Σ1n(xi-θ1)2---(1-8)

lnλn=(θ2-θ1)Sn+n2(θ12-θ22)---(1-9)

这里那么,由序贯概率比检验(SPRT)的停止法则: 

τ*=inf{n:n1,λn-(A,B)}---(1-10)

其中A,B是两个给定的常数,且0<A<1<B<∞,进而不难推知, S(A,B)的停止法则是:

τ*=inf{n:n1,Sn-(θ1+θ22n+c,θ1+θ22n+d)}---(1-11)

这里c=(ln A)/(θ21),d=(ln B)/(θ21)。

这个检验方法可以用图2表示。

序贯概率比检验(SPRT)方法在使用中,由于异常的发生是随机变量,变化的范围较大,无论备选假设Hi如何选取,都会存在弊端:

(1)Hi取大会导致小的流量异常无法检测到;

(2)Hi取小会导致大的流量异常检测时间相对较长。

发明内容

本发明的目的在于,提供一种基于多变量序贯分析的分布式网络流量异常检测方法。利用分布式异常在多条链路上表现特征具有相似性这一特点,分析多个链路上新息序列的统计特征,构造对数概率似然比判决函数得到样本统计量,通过计算多条链路样本统计量突变值的相关系数以检测分布式异常行为。

本发明的技术方案:一种基于多变量序贯分析的分布式网络流量异常检测方法,包括以下步骤:

a、获取分布式网络中链路的网络流量信息,并对网络流量信息进行预处理,得到网络流量的属性数据信息,提取其中的数据包大小值;

b、构建网络流量新息序列:使用时间序列预测算法ARMA模型,对该链路数据包大小值进行预测,所得预测值和步骤a中提取的真实流量数据包大小值比对,将两个数据进行作差处理,得到新息序列;

c、多变量序贯概率比检验方法:将步骤b中的新息序列通过多变量序贯概率比检验,得到似然比值;

d、将后一个时刻的似然比值减去前一个时刻的似然比值,得到似然比突变值,构建似然比突变值序列;

e、通过检测分布式网络2条以上的网络链路的似然比突变值序列的相关性来检测分布式网络异常的发生:当2条链路似然比突变值的皮尔逊相关系数≥0.8时,认为网络中流量发生异常;当2条链路似然比突变值的皮尔逊相关系数<0.8时,认为网络中流量没有发生异常。

f、输出异常检测结果:根据步骤e中相关性变化,得出网络异常检测的结果。

前述的基于多变量序贯分析的分布式网络流量异常检测方法,步骤b为:分布式网络中链路的数据包大小为数值xi,通过ARMA模型得到预测值将xi与进行作差处理,得到新息序列

前述的基于多变量序贯分析的分布式网络流量异常检测方法,步骤c为:假设正常情况下随机变量服从正态分布,即θ∈(-∞,+∞),若发生异常情况,会变成X*,即X*~N(θ+Δq,σ2),令y=[X*-θ]/σ,则y满足正态分布,即Y~N(θ,1),y是否正常就决定于θ是否为0,因此将问题转化为以下假设检验问题:

H0:θ=0,流量正常;Hi:θ=θi,流量异常; 

通过多变量序贯概率比检验算法判决函数,得到似然比值λi

λi=Σj=1nlnf(x^j,θi)f(x^j,0)=θiΣj=1nx^j-nθi22.

前述的基于多变量序贯分析的分布式网络流量异常检测方法,步骤d为:构建似然比突变值序列,即λi,i∈(0,N),将当前时刻的似然比值λi,i∈(1,N)减去前一个时刻的似然比值λi-1,i∈(1,N),得到似然比突变值。

前述的基于多变量序贯分析的分布式网络流量异常检测方法,步骤e为:对2条链路的似然比突变值进行相关性检测时,对于其中1条链路的采样T时刻的采样值,分别与另1条链路采样T-1时刻和T+1时刻的采样值进行相关性检测,当其中一组似然比突变值的皮尔逊相关系数≥0.8时,认为分布式网络中流量发生异常。

本发明的有益效果:(1)提出了多变量序贯概率比检验(M-SPRT)方法,突破了利用传统SPRT方法检测网络流量异常的弊端,在一定程度上能够准确地表征网络流量的变化趋势。

(2)从相关性角度分析网络分布式异常,能够将单条链路上的变化信息,通过提取多条链路上的相关性,将网络中的变化进行聚合,能够较明显、准确地得出网络的变化。分布式网络流量异常,可能是由同种原因引起,所以在不同链路上对链路产生的影响是相似的,单条链路异常特征表现不明显,汇聚后异常总量大,对网络系统会产生很大的影响,因此可以通过相关性的方法检测似然比的突变值,来表示异常对多个链路的影响程度。本发明通过时间序列分析方法预测网络正常行为流量模型,将此与流量观测数据对比构建网络流量的预测新息序列,引入多序贯分析SPRT方法分析多元新息的统计特征,利用分布式网络异常在多条链路上表现特征具有相似性这一特点,利用信号变化相似性检测分布式网络异常的发生。

(3)本文所提方法与基于突变点检测的网络异常检测方法相比,首先本方法得益于SPRT方法本身的优点,具有检测速度快,实时性高等特点;其次,经申请人试验,该方法不仅可以检测DDOS攻击,针对DOS攻击也能够得到很好的检测效果。

附图说明

附图1是本发明的流程图;

附图2是序贯分析检验方法示意图;

附图3是美国Abilene骨干网络KANS州网络节点的分布式网络示意图;

附图4为某链路网络流量的数据包大小值和预测值序列图;

附图5为某链路网络流量的新息序列图;

附图6为某2条链路网络流量的似然比突变值序列图;

附图7为另外2条链路网络流量的似然比突变值序列图;

附图8为似然比突变值相关性检测分析图;

附图9为KANS州网络节点的分布式网络所有链路与第一条链路的似然比突变值相关性序列图。

具体实施方式

实施例。一种基于多变量序贯分析的分布式网络流量异常检测方法,如图1所示,包括以下步骤:

a、获取分布式网络中链路的网络流量信息,并对网络流量信息进行预处理,得到网络流量的属性数据信息,提取其中的数据包大小值;

b、构建网络流量新息序列:使用时间序列预测算法ARMA模型,对该链路数据包大小值进行预测,所得预测值和步骤a中提取的真实流量数据包大小值比对,将两个数据进行作差处理,得到新息序列; 即步骤b为:分布式网络中链路的数据包大小为数值xi,通过ARMA模型得到预测值将xi与作差,得到新息序列

c、多变量序贯概率比检验方法:将步骤b中的新息序列通过多变量序贯概率比检验,得到似然比值;

步骤c为:假设正常情况下随机变量服从正态分布,即 θ∈(-∞,+∞),若发生异常情况,会变成X*,即X*~N(θ+Δq,σ2),令y=[X*-θ]/σ,则y满足正态分布,即Y~N(θ,1),y是否正常就决定于θ是否为0,因此将问题转化为以下假设检验问题:

H0:θ=0,流量正常;Hi:θ=θi,流量异常; 

通过多变量序贯概率比检验算法判决函数,得到似然比值λi

λi=Σj=1nlnf(x^j,θi)f(x^j,0)=θiΣj=1nx^j-nθi22.

d、将后一个时刻的似然比值减去前一个时刻的似然比值,得到似然比突变值,构建似然比突变值序列;通过步骤c的似然比值λi构建似然比突变值序列,即λi,i∈(0,N),将当前时刻的似然比值λi,i∈(1,N)减去前一个时刻的似然比值λi-1,i∈(1,N),得到似然比突变值。

e、通过检测分布式网络2条以上的网络链路的似然比突变值序列的相关性来检测分布式网络异常的发生:当2条链路似然比突变值的皮尔逊相关系数≥0.8时,认为分布式网络中流量发生异常;当2条链路似然比突变值的皮尔逊相关系数<0.8时,认为分布式网络中流量没有发生异常。皮尔逊相关系数的计算,其数学定义如下:设X和Y为某条链路的似然比突变值,X和Y的协方差为:

Cov(X,Y)=E{[X-E(X)][Y-E(Y)]}

其中E(X)为X的均值,则X与Y间的相关系数为:

ρxy=Cov(X,Y)D(X)D(Y)

其中,D(X)与D(Y)分别为X和Y的方差。

f、输出异常检测结果:根据步骤e中相关性变化,得出网络异常检测的结果。

步骤e中,由于分布式网络中链路的异常会有延时情况,因此,对2条链路的似然比突变值进行相关性检测时,对于其中1条链路的采样T时刻的采样值,分别与另1条链路采样T-1时刻和T+1时刻的采样值进行相关性检测,当其中一组似然比突变值的皮尔逊相关系数≥0.8时,认为分布式网络中流量发生异常。不仅比较两条链路的T时刻的相关性,还分别与采样前后时刻的采样值进行比较,更加准确。

如图3-9所示,以美国Abilene骨干网络,KANS州网络节点的分布式网络流量的异常检测为例,具体方法如下:

其中,图4-7、9的横坐标是采样时间,因为5分钟采样一次,一天就是288个点,一周共有2016个点,纵坐标为所选2条链路网络流量按照本发明检测方法计算所得数值对比。

a、获取分布式网络中链路的网络流量信息,并对链路中网络流量信息进行预处理,得到网络流量的属性数据信息,提取其中的数据包大小值;

b、构建网络流量新息序列:使用时间序列预测算法ARMA模型,对该链路数据包大小值进行预测,所得预测值和步骤a中提取的数据包大小值比对,将两个数据作差处理,得到新息序列;真实流量数据包大小值(虚线)和预测值(实线)序列图如图4所示。步骤b具体方法为:分布式网络中链路的数据包大小为数值xi,通过ARMA模型得到预测值将xi与作差,得到新息序列所得新息序列如图5所示,深灰色为新息部分,浅灰色为正态分布,我们认为引起深灰色变化的主要原因是因为网络流量异常的存在。

c、多变量序贯概率比检验方法:将步骤b中的新息序列通过多变量序贯概率比检验,得到似然比值。

d、将后一个时刻的似然比值减去前一个时刻的似然比值,得到似然比突变值,构建似然比突变值序列;选择其中2条链路,所得似然比突变值序列如图6所示,再选择其中2条链路,所得似然比突变值序列如图7所示。由图可以看出,在相同时刻,链路的似然比值有相似的变化,这种相似性的变化可能是由同种原因所引起的。

e、采用滑动窗口的方式,取其中相关性最大值构成似然比突变值相关性序列,如图8所示。通过检测分布式网络2条以上链路的似然比突变值序列的相关性来检测分布式网络异常的发生:当2条链路似然比突变值的皮尔逊相关系数≥0.8时,认为分布式网络中流量发生 异常;当2条链路似然比突变值的皮尔逊相关系数<0.8时,认为分布式网络中流量没有发生异常。

f、输出异常检测结果:根据步骤e中相关性变化,在所选择的对比链路,1400左右采样点2条链路似然比突变值的皮尔逊相关系数≥0.8,KANS州网络节点的分布式网络在这个时刻发生了网络异常检测。经实际采样检测,如图9所示,KANS州网络节点的分布式网络所有链路中,有多条在1400左右采样点发生了数据异常,证明本发明的检测方法有效。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号