基于动态时间规整算法的网络流量精细化分类方法和装置与流程

文档序号:15497650发布日期:2018-09-21 22:01阅读:266来源:国知局

本发明属于信息技术领域,具体涉及一种基于动态时间规整算法的网络流量精细化分类方法和装置。



背景技术:

近年来,随着各种网络应用类型越来越丰富,互联网带宽、用户量呈现出爆发式的增长。加密协议、私有协议得到了越来越广泛的应用,传统的流量分类方法在应用层精细化分类领域全面失效。早期的流量分类主要包括基于数据包头的分类技术、基于载荷的分类技术、基于机器学习的分类技术和基于行为的分类技术。基于数据包头的网络流分类技术是基于包头的五元组信息,以及包头中的标志字段来确定数据包的,主要的方法是基于端口的方法。基于载荷的分类技术,主要是利用数据包的载荷部分对应用层协议进行识别,此方法需要事先详细分析待识别的应用层协议,找出其交互过程中不同于其他任何协议的特定字段,作为该协议的特征。随着传统端口方法、精确特征方法对于随机端口、加密协议的失效,机器学习方法被引入到网络流分类技术中,根据网络流信息具有的统计特征来对网络流量进行分类。基于行为特征的方法将离线网络流量的行为特征进行分析,用于在线的识别。

早期的网络协议识别主要采用基于数据包的方法,对协议的识别和判断主要基于固定端口。但是随着网络的广泛使用和相关设备与技术水平的进步,网络多元化成为了互联网的发展趋势。大量新的协议不断出现,协议使用的端口也不再固定,出现大量复用或随机变化的现象。因此后来出现了通过协议中的一些特征使用深度包检测的方法来进行协议识别和分类,这种方法对于使用明文的或者有固定模式的协议确实有效,但是对于载荷加密的协议,却无法进行精确识别。在近几年,出现了很多网络流量识别和分类的新方法,大部分都基于网络流,并采用统计和行为特征等方法来进行协议识别。



技术实现要素:

本发明目的在于提供一种网络流量的应用层分类方法和装置,以应对加密流量难以精细化分类的挑战。该方法通过采集网络数据包的到达时间序列,进行归一化处理后,通过动态时间规整算法对序列进行整型,并计算检测序列和模板序列的相似度。

本发明采用的技术方案如下:

一种基于动态时间规整算法的网络流量精细化分类方法,包括以下步骤:

1)采集网络流量中的数据包的到达时间序列,对其进行归一化处理并转换为梯度序列,作为模板序列;

2)采集待识别网络流量中数据包的到达时间序列,对其进行归一化处理并转换为梯度序列,作为检测序列;

3)通过动态时间规整算法规整检测序列和模板序列,并计算其相似度;

4)将检测序列和模板序列的相似度与预设的相似度阈值做比较,实现待识别网络流量的分类。

进一步地,步骤1)和步骤2)将数据包到达的时间间隔序列转换为梯度序列,采用该梯度序列作为时序特性来描述数据包到达时间的梯度变化。

进一步地,步骤3)通过计算检测序列与模板序列之间的欧氏距离得到所述相似度。

进一步地,步骤4)中,若计算得到的检测序列与模板序列之间的欧氏距离小于所述相似度阈值,则判定属于同一类。

一种基于动态时间规整算法的网络流量精细化分类装置,其包括:

模板序列获取单元,用于采集网络流量中的数据包的到达时间序列,对其进行归一化处理并转换为梯度序列,作为模板序列;

检测序列获取单元,用于采集待识别网络流量中数据包的到达时间序列,对其进行归一化处理并转换为梯度序列,作为检测序列;

相似度计算单元,用于通过动态时间规整算法规整检测序列和模板序列,并计算其相似度;

分类单元,用于将检测序列和模板序列的相似度与预设的相似度阈值做比较,实现待识别网络流量的分类。

进一步地,所述模板序列获取单元和所述检测序列获取单元将数据包到达的时间间隔序列转换为梯度序列,采用梯度序列作为时序特性来描述数据包到达时间的梯度变化。

进一步地,所述相似度计算单元通过计算检测序列与模板序列之间的欧氏距离得到所述相似度;若计算得到的检测序列与模板序列之间的欧氏距离小于所述相似度阈值,则判定属于同一类。

一种服务器,包括存储器和处理器,所述存储器存储计算机程序,所述计算机程序被配置为由所述处理器执行,所述计算机程序包括用于执行上面所述方法中各步骤的指令。

本发明的有益效果如下:

本发明可以应用于高速网络环境下实时自动化的流量精细化分类,可以解决加密流量和网络延迟带来的难以精细化分类的问题。

附图说明

图1是本发明方法的步骤流程图。

图2是实施例中页面a归一化时间曲线。

图3是实施例中页面b归一化时间曲线。

具体实施方式

下面通过具体实施例和附图,对本发明做进一步说明。

本发明将应用层上加密的流量分类问题当成时间序列的相似度匹配问题进行处理。然而由于受到网络延迟的影响,时间序列需要得到修正才能作为训练与检测的样本。网络延迟是用户与服务器之间来回进行一次交互的持续时间,受网络环境、网络带宽、处理器带宽等因素的影响表现不同,使得用户访问同样内容时产生时间序列差异巨大。为了消除这一差异,本发明将数据包到达的时间间隔序列转换成其梯度序列,以消除网络延迟等外部因素的影响。

本发明采用梯度序列作为时序特性(timingcharacteristics,tc)来描述指定数据包到达时间的梯度变化。为了表示两个梯度序列之间的相关性,使用相似度来衡量是合理的。以一个https的链接访问为例,梯度序列被当做该页面的特征序列,可以通过比较相似性来测量两页面的相似性。由于梯度是时间相关的,相似性可以通过其基于时间序列的一定距离度量来描绘。

以一个https链接访问为例,假定时间序列t=(t1,t2,…,ti,…,tl)表示服务器响应客户端访问一个加密网页的所有数据包的时间序列,其中ti代表第i个数据包的到达时间,共计l个数据包。然后设置常量作为数据包的间隔个数。计算出数据包到达时间序列t中每隔c个数据包的时间间隔变化率序列δt,该时间间隔变化率序列δt的长度n可以由f(l)来表示,如式(1)所示:

n=|(l-1)/(c-1)|(1)

在时间间隔序列δt中,δt可以表示成δt=(δt1,δt2,...,δti,...,δtn),其中δti可以表示成式(2):

δti=t(c-1)*(i+1)-(c-2)-t(c-1)*i-(c-2),i∈1,2,...,n(2)

表示时间间隔变化率序列δt的梯度序列m=(m1,m2,...,mk,...,mn-1),可以用式(3)表示:

mk=(δtk+1-δtk)/(k+1-k)=δtk+1-δtk,k∈1,2,...,n-1(3)

然后我们用序列m=(m1,m2,...,mk,...,mn-1)来表示访问页面的特征。表1给出算法需要使用到的术语。

表1.术语

本发明提出基于时序特性的算法ctc(calculationoftimingcharacteristics)计算时序特性tc(timingcharacteristics),用于产生识别模板序列。该算法如下面表2所示。

表2.ctc算法

通过ctc算法,可以自动获得的各种不同加密流量的时序特性(由梯度序列m表示),那么它们可以用作页面模板序列。当加密页面的流量需要被分类的时候,使用动态时间规整算法规整并计算检测序列与模板序列之间的欧氏距离,当距离小于某个阈值时,即可判断该页面与模板同属一类,进而达到分类的目的。

具体来说,本发明的基于动态时间规整算法的网络流量精细化分类方法,包括以下步骤。

1、首先采集网络流量中的前l包到达时间序列;对到达时间序列进行归一化处理,再按照上述方法获得时序特性,并定义为模板序列;归一化处理是对到达时间序列把有量纲量转换为无量纲的量,这里是将该量看成一个向量,处理完成后其内积为1;

2、采集当前待识别流量的前l包到达时间序列,对其进行归一化处理后定义为检测序列;

3、利用动态时间规整算法规整并计算模板序列和检测序列之间的相似度;

4、将计算的相似度结果进行比较,即与预设的相似度阈值做比较,从而实现待识别网络流量的分类。

下面提供一个具体的应用实例。该实例利用本方法对使用https访问页面产生的流量进行分类,包括以下步骤:

1)访问https加密的网站a和网站b。

2)采集两个网站的流量,提取模板序列。

图2和图3是归一化处理后的网站序列示意图,其中图2是网站a的归一化时间曲线,图3是网站b的归一化时间曲线。图中横坐标为数据包数,纵坐标为归一化值;page1_001_out.txt~page1_004_out.txt为四次访问网站a采集到达时间序列进行归一化后的时间曲线;nat为归一化的到达时间曲线(normalizedarrivingtime)。

3)收集待测流量。

4)提取待测流量的检测序列,与模板序列进行匹配,检测待测流量中是否包含两个页面访问的流量。

本发明另一实施例提供一种基于动态时间规整算法的网络流量精细化分类装置,其包括:

模板序列获取单元,用于采集网络流量中的数据包的到达时间序列,对其进行归一化处理并转换为梯度序列,作为模板序列;

检测序列获取单元,用于采集待识别网络流量中数据包的到达时间序列,对其进行归一化处理并转换为梯度序列,作为检测序列;

相似度计算单元,用于通过动态时间规整算法规整并计算检测序列和模板序列的相似度;

分类单元,用于将检测序列和模板序列的相似度与预设的相似度阈值做比较,实现待识别网络流量的分类。

所述模板序列获取单元和所述检测序列获取单元将数据包到达的时间间隔序列转换为梯度序列,采用梯度序列作为时序特性来描述数据包到达时间的梯度变化。

所述相似度计算单元通过计算检测序列与模板序列之间的欧氏距离得到所述相似度;若计算得到的检测序列与模板序列之间的欧氏距离小于所述相似度阈值,则判定属于同一类。

本发明另一实施例提供一种服务器,包括存储器和处理器,所述存储器存储计算机程序,所述计算机程序被配置为由所述处理器执行,所述计算机程序包括用于执行上面所述方法中各步骤的指令。

以上实施例仅用以说明本发明的技术方案而非对其进行限制,本领域的普通技术人员可以对本发明的技术方案进行修改或者等同替换,而不脱离本发明的精神和范围,本发明的保护范围应以权利要求书所述为准。

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