一种基于INFIGARCH模型的网络流量异常检测方法及设备技术

技术编号:16156255 阅读:39 留言:0更新日期:2017-09-06 20:36
本发明专利技术实施例涉及网络安全领域,提供的一种基于INFIGARCH(1,d,1)模型的网络流量异常检测方法,具体包括如下步骤:S1:确定建模移动窗口时间跨度的大小m;S2:确定数据聚合后每个数据点对应的时间间隔的大小;S3:确定模型更新时间跨度Tgap;S4:对流量数据聚合;S5:得到待定参数,同时记录所用最后一个数据点对应的时间Test;S6:根据步骤S5得到的参数,每一个预测值对应一个预测时刻;S7:聚合新到的流量,记录时刻和对应的聚合流量;S8:将聚合流量与流量上界阈值作比较;S9:若两者差距大于Tgap,返回步骤S4,更新模型,否则执行步骤S10;S10:将聚合的数据加入时间序列队列之中,移动时间窗口。本方法模型的稳定性和趋势跟随能力并重的优良特性。

【技术实现步骤摘要】
一种基于INFIGARCH模型的网络流量异常检测方法及设备
本专利技术涉及网络安全领域,具体涉及一种基于INFIGARCH模型的网络流量异常检测方法及设备。
技术介绍
伴随着网络日渐深入人们的日常生产生活,网络攻击问题也日益严重。由于网络数据流包含时间戳,天然就是一个时间序列。所以基于时间序列模型,进行网络异常检测是一种常用的手段。传统上,时间序列网络流量异常检测方法主要考虑将网络流量视为实数或变换为实数后,按实数时间序列进行建模。同时,现有的基于时间序列模型往往基于传统的ARIMA模型或统计检验,这些方法一般忽略了网络流量数据分布的右偏性,数据之间的异方差性和长记忆性。现有方案之一,一种基于差分自回归滑动平均模型的网络流量异常检测方法。该方法基于差分自回归滑动平均模型ARIMA模型。该方法:包括第一步:确定滑动窗口大小;第二步:对第一步确定的窗口内的流量数据进行平稳性判断,若流量数据不平稳则进行d次差分直到平稳。判断平稳的依据是Dickey-Fuller检验;第三步:对第二步中得到的数据利用AIC准则确定模型的阶数,即p和q的值,结合第二步中d的值,得到ARIMA(p,d,q)模型;第四步:用极大似然估计方法确定ARIMA(p,d,q)的参数值;第五步:根据第四步的模型做L步预报;第六步:根据第五步的预报值做指数加权平均生成当前流量的预测值然后与当前时刻流量的真实值做误差判定。若误差大于给定的阈值,则判定为异常。第七步:移动窗口进行下一次判断。现有技术方案的缺点:该方法完全忽视了网络流量包数量的如下特性:(1)整数性。网络流量包的数量只能是1个,2个等非负整数个,不可能是0.4个,2.7个等实数个。但是该方法完全忽视了流量的整数性,直接把它视为实数进行建模;(2)流量分布的不对称性。流量包个数是随机的。但是该随机的分布有明显的右偏性。具体说来,流量包个数最小只能是0,而最大理论上却可以趋于无穷。这一现象,用概率分布描述表现出非常明显的右偏现象,即分布的左侧在0处截断,在右侧可以很大,甚至趋于无穷。首先于秦和吕吉彬(2015)的方法基于ARIMA(p,d,q)模型,该模型的基础是正态分布。其次,该方法用于判断是否平稳的Dickey-Fuller检验基于随机过程中的布朗运动。布朗运动在任意一个时间节点都是正态分布。最后该方法用于判断阶数的AIC准则基于似然函数,在该方法中似然函数依然是基于正态分布构造的。众所周知,正态分布时典型的对称分布,用对称分布近似严重右偏的分布,效果当然值得商榷;(3)流量包数量的异方差性。直观说来,一个网络在某时刻有大流量时,其后的时刻流量往往也非常大,而小流量之后往往也是小流量。例如假设下载一部电影,需要1小时,则在这1小时内流量非常大。当用户电影下载结束后,流量立刻下降,之后的一个时刻内流量都较小。这是典型的流量异方差现象。于秦和吕吉彬(2015)的方法基于ARIMA模型,该模型不能刻画异方差现象;(4)长记忆性。所谓长记忆性直观上来说,指某一时刻的流量大小与很长一个时间之前的流量大小有很大相关性。考虑到我们做网络安全检测,需要实时监控,采样频率较高,时间间隔较短,因此数据之间即便前后相距很远,相关性依然明显。例如(3)中的例子,在下载电影结束前一刻的流量与刚开始下载时的流量之间有很大的相关性。若我们以0.1秒的周期进行采样,这两个时间点之间相差近36000个数据点。即使我们以10秒为采样周期,开始和结束的两个数据点也相差了近360的数据点。这体现出极其明显的长记忆性。于秦和吕吉彬(2015)的方法所用的ARIMA模型,在文献中是一个典型的短记忆方法,两个数据点之间的相关性随着相距的时间距离呈指数速度下降到0。基于以上4点,ARIMA模型在数据流量检测,特别是在高频采样情况下的检测效果是不佳的。这种方法在理论上遇到的困难必须用其他合适的方法进行克服。现有技术方案二:一种基于季节性混合极端学生氏偏差检验(S-H-ESD)方法的时间序列异常检测。该方法描述如下:第一步:确定数据聚合的周期,可以是每日数据,可以是每周数据,也可以是分钟等周期的数据;第二步:根据数据聚合的周期,将网络流量数据聚合到选定的周期然后进行季节调整;第三步:设定检验的显著性水平α;第四步:计算数据的中位数和标准差;第五步:对数据进行标准化得到新数据ares:方法为将聚合后的数据减去中位数再除以标准差。这一步实际上将离散数据进行了拟连续化。此后,若后续进行的是单边检验,则数据标准化工作已经完成。若其后进行的是双边检验,则还需对上述结果取绝对值;第六步:找出ares中最大的数据R,计算p=1-α/n(若是双边检验,则p=1-α/(2n)),其中α为第三步中确定的检验显著性水平,n为数据长度;第七步:计算概率为p,自由度为n-1的t分布的分位数tn-1,p,进而计算检验的临界值:第八步:若R>λ,则判定该数据点为异常点,反之,则该数据点不是异常点;第九步:将上述数据点(无论是否异常)从原整合后的数据中去除,数据长度减一,转到第四步开始下一次检验。现有技术方案二的缺点:这种基于S-H-ESD的方法,实际是统计方法中广义极端学生氏偏差检验(GESD)的推广。它和方案一一样忽视了网络流量包数量的如下特性:(1)整数性。该方法通过标准化,使得原有的整型数据看起来像是连续的实数数据(因为标准差一般是实数),但本质上数据的离散性没有任何变化;(2)流量分布的不对称性。该方法基于t分布构造检验统计量,而t分布是继正态分布之后另一个广为使用的对称分布;(3)流量包数量的异方差性。事实上,该方法利用所有数据计算标准差,是典型的同方差假设;(4)长记忆性。该方法根本没有考虑数据间的相关性,更不必说长记忆性了。(5)实时性。该方法基于离线数据。不能进行实时的在线监测。基于以上5点,推特的模型在数据流量检测方面特别是在线监测方面基本无用武之地。
技术实现思路
为了解决现有方法以实数近似整数,忽略长记忆和异方差特性的缺点,本专利技术提出了一种基于整数型分数差分广义自回归条件异方差模型(INFIGARCH)的网络流量异常检测方法。本专利技术基于整数型分数差分广义自回归条件异方差(integer-valuedfractionalintegratedgeneralizedautoregressiveconditionalheteroscedasticmodel),简记为INFIGARCH(p,d,q)模型,其中p为自回归的阶(order),q为方差部分移动平均的阶,d为差分的阶。数学上定义B为后移算子,其中bkxt=xt-k,定义1-B为差分算子,满足如下规则:(1-B)xt=xt-xt-1(1-B)2xt=(1-2B+B2)xt=xt-2xt-1+xt-2由于本模型中d介于0到1之间,作为差分算子的指数,故文献中称为分数差分。该模型假设时间序列xt(其中脚标t表示时间)服从Poisson分布Poi(λt),而参数λt则满足方程ξ(B)(1-B)dxt=γ0+[1-δ(B)]λt,多项式多项式上述方程还可改写为:λt=δ(B)-1(1-B)dξ(B)(xt-λ)本方法基于Poisson分布构造模型。Poisson分布是一离散分布,其取值范围为0,本文档来自技高网
...
一种基于INFIGARCH模型的网络流量异常检测方法及设备

【技术保护点】
一种基于INFIGARCH(1,d,1)模型的网络流量异常检测方法,具体包括如下步骤:S1:确定建模移动窗口时间跨度的大小m;S2:确定数据聚合后每个数据点对应的时间间隔的大小;S3:确定模型更新时间跨度Tgap;S4:对由步骤S1所确定的时间跨度内移动窗口中流量数据按所述S2步骤中的时间间隔进行聚合;S5:使用极大似然估计法在约束条件下的最大化似然函数估计得到INFIGARCH(1,d,1)模型的待定参数,同时记录所用最后一个数据点对应的时间Test;S6:根据步骤S5得到的参数,代入INFIGARCH(1,d,1)模型进行L步预测,每一个预测值对应一个预测时刻,以数据框形式储存预测结果;所述数据框共L行五列:第一列为时刻,第二列为该时刻对应的预测值,第三列为该时刻预测值置信水平α1=0.95的右侧置信区间的上界阈值,第四列为该时刻预测值置信水平α2=0.99的右侧置信区间的上界阈值;第五列为该时刻预测值置信水平α3=0.999的右侧置信区间的上界阈值;每行对应第i步预报,i=1,...,L;S7:用步骤S2中选定的时间间隔聚合新到的流量,记录时刻和对应的聚合流量,其中所述聚合流量记为xnew;S8:将步骤S7中获得的最新完整聚合流量与步骤S6中预测时刻相同的流量上界阈值作比较;若流量小于第三列α1=0.95上界阈值,判断为正常,返回绿色信号;若流量小于第四列α2=0.99的上界阈值同时大于等于第三列α1=0.95的上界阈值,则返回黄色信号;若流量大于等于第四列α2=0.99的上界阈值同时小于第五列α3=0.999的上界阈值,则返回橙色信号;若流量大于等于第五列α3=0.999的上界阈值,返回红色信号;S9:比较当前时间和步骤S5中记录的Test,若两者差距大于Tgap,返回步骤S4,更新模型,否则执行步骤S10;S10:将步骤S7聚合的数据加入时间序列队列之中,移动时间窗口,使得步骤S7中的数据进入时间窗口,同时剔除时间较旧的数据,以保证时间窗口与步骤S1中选定的宽度一致。...

【技术特征摘要】
1.一种基于INFIGARCH(1,d,1)模型的网络流量异常检测方法,具体包括如下步骤:S1:确定建模移动窗口时间跨度的大小m;S2:确定数据聚合后每个数据点对应的时间间隔的大小;S3:确定模型更新时间跨度Tgap;S4:对由步骤S1所确定的时间跨度内移动窗口中流量数据按所述S2步骤中的时间间隔进行聚合;S5:使用极大似然估计法在约束条件下的最大化似然函数估计得到INFIGARCH(1,d,1)模型的待定参数,同时记录所用最后一个数据点对应的时间Test;S6:根据步骤S5得到的参数,代入INFIGARCH(1,d,1)模型进行L步预测,每一个预测值对应一个预测时刻,以数据框形式储存预测结果;所述数据框共L行五列:第一列为时刻,第二列为该时刻对应的预测值,第三列为该时刻预测值置信水平α1=0.95的右侧置信区间的上界阈值,第四列为该时刻预测值置信水平α2=0.99的右侧置信区间的上界阈值;第五列为该时刻预测值置信水平α3=0.999的右侧置信区间的上界阈值;每行对应第i步预报,i=1,...,L;S7:用步骤S2中选定的时间间隔聚合新到的流量,记录时刻和对应的聚合流量,其中所述聚合流量记为xnew;S8:将步骤S7中获得的最新完整聚合流量与步骤S6中预测时刻相同的流量上界阈值作比较;若流量小于第三列α1=0.95上界阈值,判断为正常,返回绿色信号;若流量小于第四列α2=0.99的上界阈值同时大于等于第三列α1=0.95的上界阈值,则返回黄色信号;若流量大于等于第四列α2=0.99的上界阈值同时小于第五列α3=0.999的上界阈值,则返回橙色信号;若流量大于等于第五列α3=0.999的上界阈值,返回红色信号;S9:比较当前时间和步骤S5中记录的Test,若两者差距大于Tgap,返回步骤S4,更新模型,否则执行步骤S10;S10:将步骤S7聚合的数据加入时间序列队列之中,移动时间窗口,使得步骤S7中的数据进入时间窗口,同时剔除时间较旧的数据,以保证时间窗口与步骤S1中选定的宽度一致。2.根据权利要求1所述的方法,其特征在于:所述步骤S5具体包括以下分步骤:S51:计算时间窗口内数据的算术平均值即将窗口内的流量数据求和并除以窗口内的数据点数量;所述的数据点数量为经过步骤S4聚合后的数据点;S52:计算时间窗口内数据的标准差σ;S53:随机选择d、δ、ξ和λ这四个参数的初始值,只需它们满足0<ξ<δ<d<1即可;S54:确定足够大的正整数M,由于得到用ξ,δ,λ,d表示的ηi和λt;S55:用步骤S54的λt计算对数似然函数:其中lt是时刻t的对数似然函数,m是时间窗口中样本的数量,x!表示非负整数x的阶乘;S56:为保证条件方差λt始终非负,以ξ-δ<0,δ-d<0和d-1<0作为约束条件,用约束条件下,求函数最大值的方法,最大化对数似然函数l(ξ,δ,λ,d),求得参数ξ,δ,λ,d的值;S57:为后续步骤能判断是否需要更新模型,记录当前时间为Test。3.根据权利要求1或2所述的方法,其特征在于:所述步骤S6具体包括以下分步骤:S61:令i=1,同时构造一个L行5列的数据框;S62:将由步骤S5求得的ξ,δ,λ,d代入此处,同样用步骤S54确定的正整数M近似∞,计算得到最新的时刻t+i的λt+i,取小于等于λt+i的最大非负整数为流量在时刻t+i的预报;S63:令α1=0.95,α2=0.99,α3=0.999;S64:令j=1;S65:令pj=0,k=0,S66:以步骤S62计算得到的λt+i为Poisson分布的参数,计算该分布取值为k的概率并更新pj=pj+Pk;S67:判断pj是否大于αj;S68:若S67判断为真,则置信水平为αj的置信上界为k-1,记入数据框第i行第j+2列。转到步骤S610;S69:若S67判断为假,更新k=k+1,并转至步骤S66;S610:判断j是否大于3;S611:若S610判断为假,则更新j=j+1,并转至步骤S65;S612:若S610判断为真,则判断i是否大于L;若i>L为真,则进行步骤S7;S613:若S612判断为假,则更新i=i+1并转至步骤S62。4.根据权利要求3所述的方法,其特征在于:所述步骤S8具体包括以下分步骤:S81:选择步骤S6预报时间与步骤S7中聚合时间相同的行;S82:令j=5,signal2=绿,signal3=黄,signal4=橙,signal5=红;本处脚标从2开始是为了异常警告正好与数据在数据框中的列对应,程序编写方便;S83:判断xnew是否小于第j列的值;S84:若S83判断为假,返回signalj信号,表示流量异常,异常等级由信号颜色标识。然后转到步骤S9;S85:若S83判断为真,则比较j是否等于3;S86:若S85判断为假,则更新j=j-1,并转到步骤S83;S87:若S85判断为真,则返回signal2信号,表示没有异常流量并转到步骤S9;5.根据权利要求4所述的方法,其特征在于:所述步骤S10具体包括以下分步骤:S101:设原数据窗口中的数据为(xt-m+1,xt-m+2,...,,xt,)将数据窗口中最晚的数据xt对应的时间与当前时间之间的流量用步骤S4相同的方法聚合,记为(xt+1,...,xt+n);S102:将新旧数据组合(xt-m+1,xt-m+2,...,xt,xt+1,xt+2,...,xt+n,);S103:剔除旧数据,剩余(xt+n-m+1,xt-m+2,...,xt,xt+1,xt+2,...,xt+n)即为新的保持窗口宽度不变的序列。6.一种电子设备,包括:至少一个处理器;以及,与所述至少一个处理器通信连接的存储器;其中,所述...

【专利技术属性】
技术研发人员:金曙松李强
申请(专利权)人:北京溢思得瑞智能科技研究院有限公司北京聚睿智能科技有限公司
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1