一种时频同步应用中端到端流量异常特征提取方法与流程

文档序号:14450528阅读:201来源:国知局

本发明涉及时频同步网络环境下网络异常管理技术领域,尤其涉及一种时频同步应用中端到端流量异常特征提取方法。



背景技术:

随着新的网络应用和服务的迅速出现,网络流量在移动通信网络中呈指数级上升和增长,特别是移动网络。在这种情况下,出现了新的网络流量模式和功能。这导致在检测可疑和异常终端到终端的网络流量时产生了更大的压力。更重要的是,对于新的网络技术,如软件定义的网络、信息为中心的网络和物联网,网络异常检测都面临着全新的挑战和困难。因此,建立具有较高的检测精度和能力的新的检测方法是非常重要的。端到端网络流量异常检测在网络故障定位、网络管理、网络可靠性等方面起着非常重要的作用。因此,在当前运营和研究公司已成为一个重要的研究课题。

bhuyan等人提出了一种识别网络异常流量的多步检测方法。蒋等人提出了在多媒体医疗通信中识别异常流量成分的一种新的流量异常检测方法,它是采用小波包分解和经验模态分解方法来提取异常特征的网络流量。他们还采用其他时频分析技术分析通信网络的端到端的流量异常行为。这些检测方法可以得到更好的网络隐藏异常流量检测结果。此外,kevric等人利用树算法构建组合分类器实现网络入侵检测。他们的分类器能够有效提取网络流量中的异常成分。也可以利用连续小波变换和参数方法获得相当准确的检测结果。eeikson等人提出了一种基于模型的检测方法来描述网络流量异常活动。与此同时,蒋等人利用谱峭度分析理论来检测和识别网络流量异常。他们通过使用不同网络流量信号的谱峭度得到检测结果,然后对于端到端的流量行为做出正确决策。于等人利用arima模型建立无线传感器网络中的端到端的网络流量模型。然后,他们提出了一种检测方法来发现异常和可疑的无线传感器网络流量。以上这些方法虽然能够检测网络级的流量异常,但他们仍然持有较大的检测错误,特别是对时变的网络的异常侦测难以获得精确的侦测结果,并且存在较大的检测误报率。因此,需要新的检测方法,以获得更准确的检测结果。



技术实现要素:

本发明要解决的技术问题是针对上述现有技术的不足,提供一种时频同步应用中端到端流量异常特征提取方法,能够有效的在终端到终端的网络流量中找出和识别异常和可疑的成分。

为解决上述技术问题,本发明所采取的技术方案是:

一种时频同步应用中端到端流量异常特征提取方法,包括以下步骤:

步骤1:给出从网络获得的训练流量x={x(t)|t=1,2,...,z},通过主成分分析方法确定网络流量中最主要的k个主成分数目;

步骤2:初始化bp神经网络模型,采用线性激活函数建立一个多输入单输出反向传播神经网络模型;设置误差界限为δ,总迭代次数为t,并令k=0,其中k表示网络流量主成分数目;

步骤3:通过训练过程,在时间t之前使用h个时隙预测在时间t处的网络流量,表明网络流量的时间相关性,据此构造训练数据对<x0(t),x(t)>,其中x0(t)和x(t)分别表示bp神经网络模型的输入数据和输出数据,并且x(t)表示真实的ip网络流量值,t=1,2,...,z,z表示网络流量的持续时间长度,且x0(t)=[x(t-h),x(t-(h-1)),...,x(t-1))];然后由输入x0(t)获得bp神经网络模型的输出估计值

步骤4:利用反向传播算法计算bp神经网络的梯度,然后更新网络权重;

步骤5:计算bp神经网络模型输出的误差如果误差ε<δ或迭代次数k>t,则保存bp神经网络的权重并退出训练过程,获得用于网络流量预测的bp神经网络模型e,并令t0=z+1,t=t0,令b=α2表示滑动时间窗口大小,其中α为常正整数;否则,设置k=k+1,返回步骤3;

步骤6:对于t时刻的网络流量预测,将输入数据x0(t)=[x(t-h),x(t-(h-1)),...,x(t-1))]传递给bp神经网络模型e,获得端到端网络流量预测值

步骤7:如果t<t0+b-1,则令t=t+1,并返回到步骤6,否则,执行步骤8;

步骤8:建立滑动时窗b中的流量预测向量

步骤9:计算网络流量偏差其中xb=[x(t-(b-1)),x(t-(b-2)),...,x(t)];

步骤10:使用网络流量偏差构造流量矩阵

步骤11:在滑动时间窗口b中,进行主成分分析,以提取当前网络流量的主要特征,即

其中,u、v和d分别是n×n矩阵,v和d描述网络流量的特征,并求得

其中,v′、u′和d′描述网络流量偏差的主要特征矩阵;

步骤12:根据构造的流量矩阵以及当前流量的新特征构造新的时间信号序列其中表示中的主成分,r=t-(b-1),t-(b-2),…,t;

步骤13:根据新的时间信号序列执行流量异常侦测,得到侦测结果;

步骤14:如果停止异常侦测过程,则保存侦测结果;否则,令t0=t,返回步骤6,继续执行网络流量异常侦测。

进一步地吗,在步骤13中,根据新的时间信号序列使用3ε的方法来检测和识别在终端到终端的网络流量的异常及异常成分。

采用上述技术方案所产生的有益效果在于:本发明提供的时频同步应用中端到端流量异常特征提取方法,首先使用反向传播神经网络建立终端到终端的网络流量模型。同时,该模型被用来捕捉终端到终端的网络流量的动态特性。其次,基于所建立的流量模型,利用滑动时间窗口,以估计在下一时刻终端到终端的网络流量。在这种情况下,限制了在滑动窗口的检测计算开销,因此,可以很快地得到检测结果。第三,采用主成分分析提取估计终端到终端的网络流量的主要特征。根据提取的主成分,可以有效地突出网络隐藏的异常流量行为。然后,基于提取的特征主成分,采用决策阈值来识别异常的网络流量,能有效地检测时频同步应用中端到端流量异常特征。

附图说明

图1为本发明实施例提供的时频同步应用中端到端流量异常特征提取方法流程图;

图2为本发明实施例提供的正常和异常网络流量示意图;其中,(a)为正常的背景流量,(b)为有异常的网络流量;

图3为本发明实施例提供的对于正常流量的预测结果及预测误差示意图;其中,(a)为对于正常流量的预测结果,(b)为对于正常流量的预测误差;

图4为本发明实施例提供的异常流量的预测偏差和主成分示意图;其中,(a)为异常流量的预测偏差,(b)为在(a)中预测偏差的主成分;

图5为本发明实施例提供的检测结果示意图。

具体实施方式

下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述。以下实施例用于说明本发明,但不用来限制本发明的范围。

如图1所示,本实施例的方法如下所述。

一种时频同步应用中端到端流量异常特征提取方法,包括以下步骤:

步骤1:给出从网络获得的训练流量x={x(t)|t=1,2,...,z},通过主成分分析方法确定网络流量中最主要的k个主成分数目。

步骤2:初始化bp神经网络模型,采用线性激活函数建立一个多输入单输出反向传播神经网络模型;设置误差界限为δ,总迭代步骤数为t,并令k=0,其中k表示网络流量主成分数目。

步骤3:通过训练过程,在时间t之前使用h个时隙预测在时间t处的网络流量,表明网络流量的时间相关性,据此构造训练数据对<x0(t),x(t)>,其中x0(t)=[x(t-h),x(t-(h-1)),...,x(t-1))]和x(t)分别表示bp神经网络模型的输入数据与输出数据,并且x(t)表示真实的ip网络流量值,t=1,2,...,z;然后获得由输入x0(t)获得bp神经网络模的输出估计值

步骤4:利用反向传播算法计算bp神经网络的梯度,然后更新网络权重。

步骤5:计算bp神经网络模型输出的误差如果误差ε<δ或迭代次数k>t,则保存bp神经网络的权重,用于网络流量预测的bp神经网络模型e被成功创建,退出训练,并令t0=z+1,t=t0,令b=α2表示滑动时间窗口大小,其中α为常正整数;否则,设置k=k+1,返回步骤3。

一般来说,终端到终端的网络流量是一个时间信号。然后,对于网络流量序列x={x(t)|t=1,2,...,z},x(t)表示在时间t处的网络流量,z代表网络流量的持续时间长度,使用反向传播神经网络来描述终端到终端的网络流量的模型可以表示如下:

其中,表示模型的输出,s=1,...,m1,m1表示第1个隐含层的神经元数目;f(u+1)是输出层的线性激活函数,表示第u+1层的第i个输出,i=1,...,n;表示第u个隐含层中的第j个激活函数,表示第1个隐含层中的第s个激活函数;表示第u个隐含层中第j个神经元与隐含层u+1中第i个神经元连接的权值,表示第u个隐含层中第j个神经元的输出,表示第u+1个隐含层中第i个神经元的基本输入,其中j=1,2,...,mu;表示第u-1个隐含层中第k个神经元与第u个隐含层中第j个神经元连接的权值,表示第u-1个隐含层中第k个神经元的输出,表示第u个隐含层中第j个神经元的基本输入,其中k=1,2,...,mu-1;表示输入层中第r个神经元与第1个隐含层中第s个神经元连接的权值,表示输入层第r个神经元的输出,表示第1个隐含层中第s个神经元的基本输入,其中r=1,2,...,h,s=1,2,...,h;表示第r个输入;

通过在方程(1)中模型训练,可以正确地建立方程中的参数。因此,我们可以有效地建立我们的网络流量模型。在我们的模型中,输出层是一个单步预测,预测终端到终端的网络流量。因此,这是一个多输入单输出反向传播神经网络模型。对于网络流量序列x={x(t)|t=1,2,...,z},根据方程(1),通过训练的过程,我们可以得到下面的方程:

其中,g表示h维实数空间rh到一维实数空间r1的映射。

因此,我们可以在时间t之前使用h个时隙预测在时间t处的网络流量。很显然,方程(1)-(2)描述了网络流量的时间相关性。

步骤6:对于t时刻的网络流量预测,将输入数据x0(t)=[x(t-h),x(t-(h-1)),...,x(t-1))]传递给bp神经网络模型e,根据步骤5建立的模型e获得端到端网络流量预测值

步骤7:如果t<t0+b-1,则让t=t+1,并返回到步骤6。

为了进一步捕捉网络流量的相关性和动态变化,并减少计算开销,用滑动时间窗口找出和识别可疑和异常的流量成分的时间。

步骤8:建立滑动时窗b中的流量预测向量,即

步骤9:计算网络流量偏差如式(4)所示。

步骤10:使用网络流量偏差构造流量矩阵如式(5)所示。

步骤11:在滑动时间窗口b中,进行主成分分析,以提取当前网络流量的主要特征,对于流量矩阵根据主成分分解,可以得到:

其中,u、v和d分别是n×n矩阵,v和d描述网络流量的特征。方程(6)可以用来描述当前网络流量的内在属性。

在网络流量偏误中选择前k个主成分,可以得到如下方程:

其中,v′、u′和d′描述网络流量偏差的主要特征矩阵。方程模型(7)可以用来描述网络流量的特征。

步骤12:根据构造的流量矩阵以及当前流量的新特征构造新的时间信号序列如式(8)所示。

描述了在网络流量中偏差的主成分特征的特点,其中,表示中的主成分,r=t-(b-1),t-(b-2),…,t。

从上面的分析,很明显就方程(3)和(4)而言,从滑动时间窗口的大小b的偏差分析可以得到。一般来说,产生偏差的原因有两个:一个是由模型的预测误差引起的,另一个是由用户和网络设备异常行为产生的异常流量造成的。因此,对于第二个原因流量异常检测的目的是为了找出网络流量中的可疑部分。

步骤13:根据新的时间信号序列执行流量异常检测,使用3ε的方法来检测和识别在终端到终端的网络流量中的异常及异常成分,得到侦测结果。

步骤14:如果停止异常侦测过程,则保存侦测结果;否则,令t0=t,返回到步骤6继续执行网络流量异常侦测。

在本实施例中,选择12000个时隙的网络流量值作为模拟数据进行仿真。训练数据的前6000个数据被利用来建立模型,而最后的6000个数据从6000到12000个数据用于验证算法。注入异常的网络流量到正常背景网络流量在14个不同的时隙的持续时间分别为60(单位是时隙)。为了避免随机误差,运行30次模拟,以达到平均检测结果。采用本实施例提供的方法分析预测和检测终端到终端的网络流量的异常的能力。

从图2中可以很容易地看到,识别和区分端到端的网络流量有或者没有异常是非常困难的。这是因为一般的终端到终端的异常网络流量数是正常的网络流量。因此,异常终端到终端的网络流量隐藏在正常的网络流量中。图3表明,本实施例的模型可以准确地预测终端到终端的网络流量。这是因为反向传播神经网络具有较强的学习和建模能力。因此,图2和3表明,本实施例提供的端到端流量异常特征提取方法可以有效地捕捉到动态终端到终端的网络流量。

图4表明异常流量预测偏差和主成分图,从图4(a)中可以发现,终端到终端的网络异常流量的预测结果与异常的网络流量是相同的。这表明,不可能直接找出异常流量。图4(b)表明,本实施例提供的端到端流量异常特征提取方法可以通过提取主成分的预测偏差异常流量在终端到终端的网络流量中找到异常部分。图5为运用本实施例提供的端到端流量异常特征提取方法的检测结果。图4和5也表明本实施例提供的检测方法的有效性。

最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明权利要求所限定的范围。

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