CN112329839A - 一种基于单向突发流量特征的加密流量精细化分类方法 - Google Patents
一种基于单向突发流量特征的加密流量精细化分类方法 Download PDFInfo
- Publication number
- CN112329839A CN112329839A CN202011206807.2A CN202011206807A CN112329839A CN 112329839 A CN112329839 A CN 112329839A CN 202011206807 A CN202011206807 A CN 202011206807A CN 112329839 A CN112329839 A CN 112329839A
- Authority
- CN
- China
- Prior art keywords
- unidirectional
- flow
- sequence
- length
- traffic
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
- G06F18/2411—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on the proximity to a decision surface, e.g. support vector machines
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Biophysics (AREA)
- Biomedical Technology (AREA)
- Mathematical Physics (AREA)
- Computational Linguistics (AREA)
- Health & Medical Sciences (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明涉及一种基于单向突发流量特征的加密流量精细化分类方法,属于互联网加密流量分类技术领域。本方法首先从单向流量中提取区分度高且空间复杂度低的单向突发流量序列。然后与卷积神经网络等深度神经网络结合,能够在单向流量或双向流量的场景中开展加密流量的精细化分类与识别。本发明能适用于TLS加密的单向流量精细化分类,可以应用在单向和双向流量的场景中。单向突发流量序列不仅区分度高,而且相比于原始的包序列,空间复杂度大大降低。本发明使用没有全连接层的卷积神经网络从单向突发流量序列中提取高级特征然后分类,可以同时达到训练速度快和分类准确率高的目的。
Description
技术领域
本发明涉及一种互联网加密流量精细化分类方法,特别涉及一种基于单向突发流量特征的加密流量精细化分类方法,属于互联网加密流量分类技术领域。
背景技术
互联网流量分类可以在QoS实施、流量工程和恶意流量检测中辅助决策。但是,随着网络安全意识的提高和TLS等加密协议的大量使用,传统的流量分类技术,如基于端口的检测或深度包检测等也随之失效。
为了能够对加密后的流量进行分类,相关研究或技术采用机器学习的思路,从加密数据包的头部明文字段或时间戳中提取可用特征,进而训练分类器。现有的工作一般做出假设分类器能够获取到双向流量,但在现实世界中,互联网中普遍存在非对称路由(热土豆路由策略的使用),导致上行流量和下行流量会遵循不同的路由。因此,如何在互联网单向流量中设计区分性较强的特征并且应用到分类器中对加密流量进行分类,是急迫需要解决的技术问题。
目前,在双向加密流量分类的相关研究中,主要分为两类:一类是传统的机器学习方法和深度学习方法。但是,传统的机器学习方法需要手动设计复杂的特征并应用到传统机器学习分类器中,有文献利用统计特征,如上行包个数、下行包个数等,然后训练随机森林分类器。另一类是深度学习方法,通常提取一种序列特征作为深度学习分类器的输入,有文献将包方向序列输入到卷积神经网络中,卷积神经网络从中学习高级特征并分类。这两类方法所需的特征在单向流量的场景中区分性将变小甚至失效。此外,传统的机器学习方法还存在依赖人工经验、特征计算时间长等缺点。
综上所述,目前,加密流量分类方法存在无法适用单向流量的场景或特征计算复杂度高等问题。
发明内容
本发明的目的是为了克服现有技术的缺陷,为了有效解决如何在互联网单向流量中设计区分性较强的特征并且应用到分类器中对加密流量进行分类的技术问题,创造性地提出一种基于单向突发流量特征的加密流量精细化分类方法。
本方法的创新性在于:首先,从单向流量中提取区分度高且空间复杂度低的单向突发流量序列,并给出了具体实现方法。然后,与卷积神经网络等深度神经网络结合,能够在单向流量或双向流量的场景中开展加密流量的精细化分类与识别。
为了实现上述目的,本发明采用的技术方案如下:
一种基于单向突发流量特征的加密流量精细化分类方法,包括以下步骤:
步骤1:从互联网单向流量中,提取单向突发流量序列。
具体地,单向突发流量a被定义为与HTTP报文的一个片段相对应的数据包的序列。给定单向流P,单向突发流量序列B定义为单向流P中所有单向突发流量长度的序列。
步骤1.1:从数据包中解析构造单向突发流量特征的元信息。
首先,从网络中获取一条单向流P,P中包含K个数据包:P=(p1,p2,…,pi,…,pK),其中pi为第i个数据包。
然后,解析每个数据包获取构造单向突发流量特征的元信息,其中,pi.l表示TCP有效载荷的长度、pi.n表示TCP有效载荷中TLS记录头部的个数、pi.r包含了pi.n个长度值的数组,其中,每个值为TLS记录头部的长度加上TLS记录头部中长度字段值。
步骤1.2:计算单向突发流量序列B。
在TLS的实现中,TLS记录大小是一个重要的参数。根据TLS记录大小的不同,单向突发流量序列B计算分为两种:
第一种:TLS记录大小超过最大报文段长度(MSS)。在这种情况下,每个数据包含有1个或者0个TLS记录头部。遍历P中每一个数据包pi,并依次将pi.r中pi.n个长度值加入到单向突发流量序列B中。
第二种:TLS记录大小小于最大报文段长度(MSS)。在这种情况下,每个数据包含有0个、1个甚至多个TLS记录头部。假设当前遍历到数据包pi时,记seg为在后续TCP有效载荷中剩余TLS记录的长度,a′表示当前正在计算的单向突发流量。首先,将pi.r中pi.n个长度值的总和加到seg和a′上,然后seg减去当前TCP有效载荷的长度pi.l,得到在后续TCP有效载荷中剩余TLS记录的长度。如果seg不等于0,则当前单向突发流量a′尚未结束;如果seg等于0,则当前单向突发流量a′结束,并将a′加到单向突发流量序列B中。
步骤2:构建不含全连接层的卷积神经网络。
具体地,卷积层的层数为e,并且最后一层卷积核的数量等于要分类的数量D。由于神经网络中没有全连接层,所以它不需要固定长度的数据作为输入。但是,为了节省内存,设置一个长度阈值N,如果序列长度超过阈值N,则截取原始输入的前N个元素。
步骤3:将步骤1得到的单向突发流量序列B,输入到步骤2中的卷积神经网络模型进行训练。
具体地:
步骤3.1:设F∈RD×T为e层卷积层的输出,即输入的单向突发流量序列B的特征表示。D是卷积核的数量,等于要分类的类别数;T是特征图的长度。第一个卷积层在下标t处的等式如下:
其中,C表示在长度为N的单向突发流量序列B上使用长度为3的滤波器WB、偏置参数b和非线性函数ReLU的卷积结果。其他卷积层的公式与式(1)类似。激活函数ReLU增加了神经网络的非线性度,提高了神经网络的表达能力。
步骤3.2:使用全局平均池化层进行分类。
使用全局平均池化层代替传统的全连接层,大幅减少参数的数量,从而大幅提高了训练速度,降低了过拟合的风险。
全局平均池化层接受e层卷积的输出,并在时间维度上平均每个特征图,如式(2)所示:
其中,V是全局平均池化层的输出;β表示第β个特征图,j表示第β个特征图的下标。
最后,将softmax分类器应用于V上,如式(3)所示:
其中,标签yi采用独热码编码,|X|是模型输入X的数量;如果yij是1,则I(yij=1)=1,否则为0。使用Adam优化器,将训练过程中的损失降到最低。
步骤4:使用训练好的卷积神经网络对未知流量分类,即,从单向流量中提取单向突发流量序列B,并输入到训练好的神经网络模型中,最终得到预测结果。
有益效果
本发明方法,对比现有技术,具有以下优点:
(1)本发明适用于TLS加密的单向流量精细化分类,可以应用在单向和双向流量的场景中。
(2)本发明从单向流量中提取将HTTP报文和对应的数据包建立联系的单向突发流量特征。单向突发流量序列不仅区分度高,而且相比于原始的包序列,空间复杂度大幅降低。
(3)本发明使用没有全连接层的卷积神经网络从单向突发流量序列中提取高级特征然后分类,可以同时达到训练速度快和分类准确率高的目的。通过大量实验数据实验证明,单向突发流量序列结合卷积神经网络即使在双向流量的场景中与现有的加密流量分类方法相比具有更高的准确率。如果在单向流量的场景中,单向突发流量序列结合卷积神经网络依然能保持高准确率,而且其他方法的准确率显著降低。
附图说明
图1为本发明方法实施流程示意;
图2为HTTP1.1版本下HTTP报文及由此产生的单向突发流量和数据包序列;
图3为HTTP2版本下HTTP报文及由此产生的单向突发流量和数据包序列;
图4为卷积层结构示意。
具体实施方式
下面结合附图和实施例对本发明方法做进一步详细说明。
实施例
本实施例是基于步骤1到步骤4进行的加密流量精细化识别,整体流程图如图1所示。首先,从网络中收集单向的加密流量,从数据包中解析出元信息来构造单向突发流量序列B。然后,卷积神经网络模型将单向突发流量序列B作为输入,学习特征表示。最后,预测单向突发流量序列B的标签,揭示它属于哪一类流量。
为了证明单向突发流量比原始数据包更能反映HTTP交互,本实施例选取两种主流HTTP版本HTTP/1.1和HTTP/2作为代表,如图2、图3所示。每条短线的长度表示HTTP报文、单向突发流量或数据包的长度。为了便于说明,同一类型的所有短线都被垂直移动过。从图2和图3中看出,不管是HTTP/1.1还是HTTP/2,单向突发流量与HTTP报文的变化趋势基本一致。
与包长度序列相比,单向突发流量序列更有利于精细化流量分类:
(1)网络数据包通常具有最大长度,这减少了数据包序列的多样性。相比之下,单向突发流量的长度由HTTP报文的长度决定,这可能会捕捉到网页元素上的差异。
(2)在相同的流中,单向突发流量特征的数量远远少于数据包的个数,这有助于降低分类器训练的空间和时间复杂度。
实验采用了两个数据集:YouTube(YT)数据集包含来自103个网页的29902个序列,京东(JD)数据集包含78个网页的12155个序列。采用10折交叉验证用来评估方法的性能,以10次测试准确率的平均值作为最终结果。将打好标签的数据放入设计好的神经网络模型(记为BurCNN)中进行训练,通过调优后,训练好的神经网络的模型的参数如表1所示。卷积层的结构如图4所示,有五个模块用于从单向突发流量序列中提取高级特征:在前四个块中,在池化层之前有两个连续的卷积层,在最后一个块中,有三个连续的卷积层,没有池化层。
表1神经网络参数
要对比的方法为CUMUL,k-FP,DF。CUMUL是一种使用累积包长度和SVM分类器的流量分类方法。CUMUL为不同方向的数据包长度设置正号或者负号。在单向流量场景中,所有的包长度都是正的或者都是负的。k-FP是一种利用统计特征进行流量分类的方法。在单向流量场景中,仅保留一个方向的统计特征。DF也是一种基于卷积神经网络的方法,但是它包含全连接层,它使用包方向序列作为输入。在单向流量场景中只剩下一个方向可用。在单向流量的场景中,BurNet使用下行流量,其他方法使用双向流量;而在双向流量的场景中,所有方法都只利用下行流量。
表2为在双向和单向流量场景下在两个数据集中不同方法的准确率。
表2两种场景下在两个数据集不同方法的准确率
从表2中可以看出,在双向流量场景中,虽然其他方法使用了双向流量进行训练,但是BurNet在两个数据集上都达到了最高的准确率。实验结果表明,下行突发流量序列和CNNs分类器能有效地提取相似流量中的特征。在单向流量场景中,BurNet可以很好地工作,而其他方法的准确率与双向流量下的结果相比明显下降。特别是,当只有单向流量可用时,DF表现出最显著的准确率下降。结果也证实了单向流量场景对加密流量精细化分类方法提出了更大的挑战,因为单向流量泄漏的信息更少。
Claims (2)
1.一种基于单向突发流量特征的加密流量精细化分类方法,其特征在于,包括以下步骤:
步骤1:从互联网单向流量中,提取单向突发流量序列,具体如下:
单向突发流量a被定义为与HTTP报文的一个片段相对应的数据包的序列;给定单向流P,单向突发流量序列B定义为单向流P中所有单向突发流量长度的序列;
步骤1.1:从数据包中解析构造单向突发流量特征的元信息;
首先,从网络中获取一条单向流P,P中包含K个数据包:P=(p1,p2,…,pi,…,pK),其中pi为第i个数据包;
然后,解析每个数据包获取构造单向突发流量特征的元信息,其中,pi.l表示TCP有效载荷的长度、pi.n表示TCP有效载荷中TLS记录头部的个数、pi.r包含了pi.n个长度值的数组,其中,每个值为TLS记录头部的长度加上TLS记录头部中长度字段值;
步骤1.2:计算单向突发流量序列B;
在TLS的实现中,TLS记录大小是一个重要的参数,根据TLS记录大小的不同,单向突发流量序列B计算分为两种:
第一种:TLS记录大小超过最大报文段长度(MSS),在这种情况下,每个数据包含有1个或者0个TLS记录头部;遍历P中每一个数据包pi,并依次将pi.r中pi.n个长度值加入到单向突发流量序列B中;
第二种:TLS记录大小小于最大报文段长度,在这种情况下,每个数据包含有0个、1个甚至多个TLS记录头部;假设当前遍历到数据包pi时,记seg为在后续TCP有效载荷中剩余TLS记录的长度,a′表示当前正在计算的单向突发流量;首先,将pi.r中pi.n个长度值的总和加到seg和a′上,然后seg减去当前TCP有效载荷的长度pi.l,得到在后续TCP有效载荷中剩余TLS记录的长度;如果seg不等于0,则当前单向突发流量a′尚未结束,如果seg等于0,则当前单向突发流量a′结束,并将a′加到单向突发流量序列B中;
步骤2:构建不含全连接层的卷积神经网络;
其中,卷积层的层数为e,并且最后一层卷积核的数量等于要分类的数量;由于神经网络中没有全连接层,所以它不需要固定长度的数据作为输入,为了节省内存,设置一个长度阈值N,如果序列长度超过阈值N,则截取原始输入的前N个元素;
步骤3:将步骤1得到的单向突发流量序列,输入到步骤2中的卷积神经网络模型进行训练。
步骤4:使用训练好的卷积神经网络对未知流量分类,即,从单向流量中提取单向突发流量序列,并输入到训练好的神经网络模型中,最终得到预测结果。
2.如权利要求1所述的一种基于单向突发流量特征的加密流量精细化分类方法,其特征在于,步骤3的实现方法如下:
步骤3.1:设F∈RD×T为e层卷积层的输出,即输入的单向突发流量序列B的特征表示;D是卷积核的数量,等于要分类的类别数;T是特征图的长度;第一个卷积层在下标t处的等式如下:
其中,C表示在长度为N的单向突发流量序列B上使用长度为3的滤波器WB、偏置参数b和非线性函数ReLU的卷积结果;
步骤3.2:使用全局平均池化层进行分类;
全局平均池化层接受e层卷积的输出,并在时间维度上平均每个特征图,如式(2)所示:
其中,V是全局平均池化层的输出;β表示第β个特征图,j表示第β个特征图的下标;
最后,将softmax分类器应用于V上,如式(3)所示:
其中,标签yi采用独热码编码,|X|是模型输入X的数量;如果yij是1,则I(yij=1)=1,否则为0;使用Adam优化器,将训练过程中的损失降到最低。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011206807.2A CN112329839B (zh) | 2020-11-03 | 2020-11-03 | 一种基于单向突发流量特征的加密流量精细化分类方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011206807.2A CN112329839B (zh) | 2020-11-03 | 2020-11-03 | 一种基于单向突发流量特征的加密流量精细化分类方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112329839A true CN112329839A (zh) | 2021-02-05 |
CN112329839B CN112329839B (zh) | 2022-02-08 |
Family
ID=74322964
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011206807.2A Active CN112329839B (zh) | 2020-11-03 | 2020-11-03 | 一种基于单向突发流量特征的加密流量精细化分类方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112329839B (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150058982A1 (en) * | 2001-12-14 | 2015-02-26 | Eleazar Eskin | Methods of unsupervised anomaly detection using a geometric framework |
CN109361617A (zh) * | 2018-09-26 | 2019-02-19 | 中国科学院计算机网络信息中心 | 一种基于网络包载荷的卷积神经网络流量分类方法及系统 |
CN110149343A (zh) * | 2019-05-31 | 2019-08-20 | 国家计算机网络与信息安全管理中心 | 一种基于流的异常通联行为检测方法和系统 |
CN110197234A (zh) * | 2019-06-13 | 2019-09-03 | 四川大学 | 一种基于双通道卷积神经网络的加密流量分类方法 |
CN110247930A (zh) * | 2019-07-01 | 2019-09-17 | 北京理工大学 | 一种基于深度神经网络的加密网络流量识别方法 |
CN111064678A (zh) * | 2019-11-26 | 2020-04-24 | 西安电子科技大学 | 基于轻量级卷积神经网络的网络流量分类方法 |
CN111860628A (zh) * | 2020-07-08 | 2020-10-30 | 上海乘安科技集团有限公司 | 一种基于深度学习的流量识别与特征提取方法 |
-
2020
- 2020-11-03 CN CN202011206807.2A patent/CN112329839B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150058982A1 (en) * | 2001-12-14 | 2015-02-26 | Eleazar Eskin | Methods of unsupervised anomaly detection using a geometric framework |
CN109361617A (zh) * | 2018-09-26 | 2019-02-19 | 中国科学院计算机网络信息中心 | 一种基于网络包载荷的卷积神经网络流量分类方法及系统 |
CN110149343A (zh) * | 2019-05-31 | 2019-08-20 | 国家计算机网络与信息安全管理中心 | 一种基于流的异常通联行为检测方法和系统 |
CN110197234A (zh) * | 2019-06-13 | 2019-09-03 | 四川大学 | 一种基于双通道卷积神经网络的加密流量分类方法 |
CN110247930A (zh) * | 2019-07-01 | 2019-09-17 | 北京理工大学 | 一种基于深度神经网络的加密网络流量识别方法 |
CN111064678A (zh) * | 2019-11-26 | 2020-04-24 | 西安电子科技大学 | 基于轻量级卷积神经网络的网络流量分类方法 |
CN111860628A (zh) * | 2020-07-08 | 2020-10-30 | 上海乘安科技集团有限公司 | 一种基于深度学习的流量识别与特征提取方法 |
Non-Patent Citations (2)
Title |
---|
MICHAEL J. DE LUCIA,AND ETC: "Detection of Encrypted Malicious Network Traffic using Machine Learning", 《MILCOM 2019 - 2019 IEEE MILITARY COMMUNICATIONS CONFERENCE (MILCOM)》 * |
潘逸涵等: "基于深度学习的Tor流量识别方法", 《通信技术》 * |
Also Published As
Publication number | Publication date |
---|---|
CN112329839B (zh) | 2022-02-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112163594B (zh) | 一种网络加密流量识别方法及装置 | |
Shapira et al. | FlowPic: A generic representation for encrypted traffic classification and applications identification | |
Wang et al. | A survey of techniques for mobile service encrypted traffic classification using deep learning | |
CN110197234B (zh) | 一种基于双通道卷积神经网络的加密流量分类方法 | |
CN113179223B (zh) | 一种基于深度学习和序列化特征的网络应用识别方法及系统 | |
CN108199863B (zh) | 一种基于两阶段序列特征学习的网络流量分类方法及系统 | |
CN113989583A (zh) | 一种互联网恶意流量检测方法及系统 | |
CN111310026A (zh) | 一种基于人工智能的涉黄涉恐监测方法 | |
CN114972836A (zh) | 一种基于多模块融合的加密流量分类方法 | |
CN112910853A (zh) | 基于混合特征的加密流量分类方法 | |
CN111565156A (zh) | 一种对网络流量识别分类的方法 | |
CN112887291A (zh) | 基于深度学习的i2p流量识别方法及系统 | |
CN113627502A (zh) | 一种网络加密流量分类方法 | |
Wu et al. | Tdae: Autoencoder-based automatic feature learning method for the detection of dns tunnel | |
CN114500396B (zh) | 区分匿名Tor应用流量的MFD色谱特征提取方法及系统 | |
CN108494620B (zh) | 一种网络业务流特征选择与分类方法 | |
CN112329839B (zh) | 一种基于单向突发流量特征的加密流量精细化分类方法 | |
CN114358177B (zh) | 一种基于多维度特征紧凑决策边界的未知网络流量分类方法及系统 | |
Dahanayaka et al. | Understanding traffic fingerprinting CNNs | |
Liu | An abnormal network traffic detection method on MAWILab dataset based on convolutional neural network | |
CN111835720B (zh) | 基于特征增强的vpn流量web指纹识别方法 | |
CN114760104A (zh) | 一种物联网环境下的分布式异常流量检测方法 | |
Mao et al. | Semisupervised Encrypted Traffic Identification Based on Auxiliary Classification Generative Adversarial Network. | |
CN114510615A (zh) | 一种基于图注意力池化网络的细粒度加密网站指纹分类方法和装置 | |
CN113469275A (zh) | 一种以太坊行为流量精细化分类方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |