一种基于时间序列分解网络流量预测系统技术方案

技术编号:39307829 阅读:11 留言:0更新日期:2023-11-12 15:55
本发明专利技术涉及一种基于时间序列分解的网络流量预测系统,能够针对服务器流量短期噪声多,突变多的特点,长期行为模式稳定的特点,引入了经典时间序列分解方法,结合深度学习方法,对网络流量特征的时间序列进行的建模。在保证高精度的前提下还具备一定的可扩展性,同时可以用于流量的时间序列预测以及流量的异常检测任务。具体包括:从网络流量的流数据按一定采样频率提取特征;对特征序列进行周期性解,得到序列的趋势,季节和残差分量,设计了不同的序列建模策略,满足流量预测任务精度需求;设计了不同的时间序列数据增广方法,可以使模型捕获不同窗口,不同采样策略下的时间序列特征,提高模型的精度和泛化能力;针对流量的高噪声设计了基于深度学习的去噪方法,用于提升模型预测精度;定义了基于深度学习和时间序列分解的流量建模框架,设计了框架组成模块和建模流程。和建模流程。

【技术实现步骤摘要】
一种基于时间序列分解网络流量预测系统


[0001]本专利技术涉及网络安全、深度学习领域,尤其涉及一种基于时间序列分解网络流量预测系统。

技术介绍

[0002]网络流量是所有攻击的发起者和传播载体。大量的攻击流量在时间行为上表现出与正常流量有明显的差别,比如DDoS、僵尸网络、扫描探测、暴力破解等等。对网络流量的行为进行建模并检测攻击事件又有两种方法,一种是基于分类的方法,结合机器学习和深度学习对网络流量的各种特征训练分类器,然后通过训练好的分类器进行攻击事件的检测,这种方法有很多局限性,其一是数据集样本分布不平衡的问题,人们多数是出于正常目的访问网络,因此网络中的正常流量站的比重很大,导致黑白样本占比存在显著差异。其二是基于分类任务的攻击检测方法对于未知威胁的检测效果比较差。
[0003]另一种是根据流量的特征数据建立正常的流量模型,然后基于正常模型检测异常,即先进行流量特征预测任务,如果当前流量特征的真实值与正常模型的预测值偏差较大时,认为发生异常事件。这种方法对异常事件的检测准确率和误报率极大程度依赖于网络流量预测模型的好坏,单个服务器的网络流量由于受到多种因素的影响,表现出噪声大,突变值多,规律不明显等特点,因此现阶段的难点和重点在于如何针对行为复杂的网络流量特征提高预测性能。
[0004]得益于深度学习技术的进一步发展,时间序列预测领域也越来越多的采用深度学习的方法,通过对大量的序列数据进行建模,学习用历史观测序列预测未来时间步的观测值,常见的时间序列预测模型有卷积神经网络CNN,循环神经网络RNN,长短期记忆网络LSTM,门控神经单元GRU,Transformer等等。相比于传统机器学习模型以及统计学模型,这些深度学习模型通常具有更大的规模,更多的参数量,以及更高的计算复杂度,但是对于时间序列预测任务也有着更高的精度,更小的预测误差,更强的泛化能力。故当前的各种时间序列预测任务通常采用深度学习的方法。

技术实现思路

[0005]本专利技术技术解决问题:克服现有技术的不足,提出一种基于时间序列分解网络流量预测系统,解决当前网络流量影响因素较多,因此具有高噪声,突变值多等特点,直接使用机器学习或深度学习模型拟合预测往往效果不佳这个问题,提升网络流量特征序列预测的准确性,减少预测误差。
[0006]本专利技术的一种基于时间序列分解网络流量预测系统,首先对原始的网络流数据按固定大小窗口聚合提取统计特征,然后经过时间序列分解,滑动窗口采样,时间序列数据增广等预处理操作,得到窗口序列样本,最后通过深度学习的方法对时间序列进行去噪或建模预测。提高了特征序列的预测结果准确度,减小了预测误差。
[0007]本专利技术的创新点包括:
[0008](1)提出了一种网络流量特征提取方法(流量特征提取模块)
[0009]本专利技术针对网络流量的特点,提出了一种多尺度的网络流量特征提取方法,不仅提取流量的字节特征,同时还计算对端IP数,流入流出流量之比,对端端口熵,对端IP熵这些统计特征,它们能更准确的描述流量行为。在当前方法只计算服务器全局尺度流量特征的基础上针对指定的不同端口计算端口上的流量特征,从更细的尺度描述流量的行为。
[0010](2)提出了一种时间序列数据增广方法(时间序列预处理模块)
[0011]本专利技术根据滑动窗口采样过后得到的窗口序列样本的特点,提出了一种时间序列增广方法,其包含三种不同的重采样策略,目的是希望模型能关注窗口特征序列中不同类型的时间步的观测值,增大数据量,同时提高模型的泛化能力,减少过拟合的风险,减少时间窗口大小的影响。
[0012](3)提出了一种通过神经网络确定阈值的去噪算法(时间序列预测模块)
[0013]考虑到传统软阈值去噪,小波去噪等时间序列去噪算法在阈值选择上没有较好的方法,并且通常需要大量的先验知识,无法结合数据特点,参与到深度学习算法对特征序列的端到端建模过程中,所以为了更准确地对网络流量特征序列建模,本专利技术提出了一种动态阈值去噪的深度神经网络,它用神经网络模拟软阈值去噪算法,尝试在对特征序列进行端到端建模的同时,学习特征序列的特点,针对特征序列每一个不同时间步的观测值,给出更准确的去噪阈值,达到更好的去噪效果,提升模型预测值的准确率。
[0014](4)提出了一种基于神经网络确定阈值的去噪算法和趋势残差子序列联合建模的MCLSTM模型(时间序列预测模块)
[0015]考虑到创新点(1)种采用多个模型分别对趋势子序列和残差子序列建模无法在模型训练过程中隐式地学习两种序列之间的关系,以及采用传统时间序列去噪方法又无法动态地根据数据来确定每一个时间步的去噪阈值。本专利技术提出了一种端到端的时间序列预测网络MCLSTM,它将分解后的趋势子序列和残差子序列同时作为输入,采用LSTM神经网络对两种分量联合建模预测,同时模型还引入了创新点(3)种提到的动态阈值去噪网络,对残差序列进行端到端的阈值去噪。有效的提升了网络流量特征序列任务的预测结果的准确度。减少了预测误差。
[0016]本专利技术采用的技术方案为:一种基于时间序列分解网络流量预测系统,包括:流量特征提取模块、特征序列预处理模块、时间序列预测模块。
[0017]流量特征提取模块:负责提取服务器流量特征序列,即按指定时间窗口大小由原始服务器流量数据计算各种特征,如上下行字节数,对端IP数,端口熵,源端端口熵,对端IP熵等等。这些特征可以描述服务器的行为,如果原始数据的特征更为丰富,还可以挖掘出更丰富的流量特征。同时这些特不仅可以由全局流量计算,还可以映射到不同的端口,计算各种端口的流量特征,用于更细粒度的服务器行为分析。
[0018]特征序列预处理模块:负责对上一步计算得到的流量特征序列进行预处理,首先使用经典的季节性分解算法,将流量的特征序列分解为趋势,季节季节以及残差三个子序列,由于季节子序列是由算法中的周期延拓操作得到,不需要进行后续的建模预测;然后对趋势子序列以及残差子序列按固定时间窗口采样得到后续建模需要的窗口样本序列,然后再应用时间序列数据增广方法,对原始窗口样本进行扩展,得到最终的扩增数据。这里需要注意的是,如果我们选择使用传统的时间序列去噪算法,则需要在窗口采样操作之前,对残
差序列应用去噪算法。
[0019]时间序列预测模块:负责使用深度学习算法对分解后的网络流量特征序列的趋势子序列和残差子序列进行建模,采用自回归架构,在学习用历史特征序列观测值预测下一时间步特征值的过程中,提取有效的序列特征信息。最终将趋势序列的预测结果,残差序列的预测结果和季节序列的原始序列直接相加,得到最终的特征序列的预测结果。需要注意的是,这里的如果我们选择采用深度模型对残差序列去噪,则在上一模块不需要应用传统时间序列去噪方法,转为在得到增广后的窗口序列样本后应用深度去噪模型。
[0020]流量特征提取模块主要负责提取服务器流量特征序列具体实现如下:
[0021]计算不同特征前首先需要指定一个长度固定的采样窗口,计算窗口内的特征值。
本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于时间序列分解的网络流量预测系统,其特征在于,包括:流量特征提取模块,特征序列预处理模块、时间序列预测模块;流量特征提取模块:提取服务器流量特征序列,即按指定采样窗口大小由服务器原始流量数据计算各种特征,所述各种特征包括上下行字节数,对端IP数,端口熵,源端端口熵,对端IP熵;服务器流量指由<源IP,目的IP,源端口,目的端口,传输协议>,五元组唯一标识的数据集合,它将一段时间内服务端和客户端发出的单向或双向数据包聚合成一条流数据;每一条流数据除包括上述五个特征,还包括字节数、包数和开始时间;在计算流量特征之前需要先指定一个采样窗口,用于计算窗口内特征值;特征序列预处理模块:对流量特征提取模块提取的流量特征序列进行预处理,首先采用经典季节性分解算法将所述流量特征序列分解为趋势、季节及残差三个子序列,趋势子序列提取了原始序列的整体走势,季节子序列提取原始序列在每个周期内不变的模式,残差子序列由原始序列减去趋势子序列和季节子序列,表示原始序列的剩余分量,这三个子序列相加重构回原始特征序列,最终得到分解后的网络流量特征序列;季节子序列是由算法中的周期延拓操作得到,不需要进行后续的建模预测;然后对趋势子序列以及残差子序列按滑动窗口采样得到后续建模需要的窗口特征序列样本,再应用时间序列数据增广方法,对滑动窗口采样得到的窗口特征序列样本进行扩展,得到最终的扩增数据;时间序列预测模块:使用基于神经网络确定阈值的去噪算法和趋势残差子序列联合建模的MCLSTM模型对分解后的网络流量特征序列的趋势子序列和残差子序列进行建模,首先使用神经网络去噪算法对残差子序列进行动态去噪,将去噪后的残差子序列和趋势子序列拼接,送入到LSTM网络中联合建模,得到趋势和残差序列的联合预测结果,然后经过全连接网络学习两者的关系,得到趋势序列和残差序列的权重系数,使用权重系数对趋势和残差的联合预测结果加权求和,再加上季节序列对应时间步的观测值,得到最终的预测结果。2.根据权利要求1所述的基于时间序列分解的网络流量预测系统,其特征在于:所述流量特征提取模块具体实现如下:计算不同特征前首先需要指定一个长度固定的采样窗口,计算窗口内的特征值;(1)针对服务器每个指定端口的流数据以及服务器总体流数据,计算对端IP熵,对端端口熵,源端口熵特征。在计算对端IP熵的时候,统计采样窗口内的每个IP的频率作为概率p
i
,i表示窗口内不重复的IP地址编号;然后再根据公式(1)计算熵值,作为这个采样窗口内的对端IP熵值,X表示采样窗口内对端IP序列,其中H(X)代表采样窗口内的对端IP熵值,m表示采样窗口内不重复的IP地址总数;计算对端端口熵的时候i表示采样窗口内不重复对端端口编号,p
i
表示采样窗口内每个不重复对端端口的频率,X表示采样窗口内对端端口序列,H(X)代表采样窗口内对端端口熵值,m表示采样窗口内不重复的对端端口总数;计算源端端口熵的时候i表示采样窗口内不重复源端端口编号,p
i
表示采样窗口内每个不重复源端端口的频率,X表示采样窗口内源端端口序列,H(X)代表采样窗口内源端端口熵值,m表示采样窗口内不重复的源端端口总数;(2)针对服务器每个指定端口的流数据以及服务器总体流数据计算对端IP数特征,计
算方法就是在采样窗口内统计服务器对端IP出现的个数;(3)针对服务器每个指定端口的流数据以及服务器总体流数据计算流入流量,流出流量和流入流出流量比例的特征,计算方法是在采样窗口内统计流入服务器的流量大小和流出服务器的流量大小,然后再计算比值。3.根据权利要求1所述的基于时间序列分解网络流量预测系统,其特征在于:所述特征序列预处理模块实现如下:(1)对于提取好的特征序列Y应用经典时间序列分解方法,分解为趋势,季节,残差三个子序列:首先指定一个周期m,对特征序列应用2
×
m

MA移动平均算法,提取趋势子序列然后计算去趋势化后的序列计算全部周期内相同时间步的观测值的平均值作为没个周期内的每一时间步的观测值,得到了季节子序列最后依照公式得到残差子序列最后依照公式得到残差子序列(2)对趋势子序列和残...

【专利技术属性】
技术研发人员:孙宇郎波夏欣怡
申请(专利权)人:北京航空航天大学
类型:发明
国别省市:

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

1