CN110751222A - 基于cnn和lstm的在线加密流量分类方法 - Google Patents
基于cnn和lstm的在线加密流量分类方法 Download PDFInfo
- Publication number
- CN110751222A CN110751222A CN201911023282.6A CN201911023282A CN110751222A CN 110751222 A CN110751222 A CN 110751222A CN 201911023282 A CN201911023282 A CN 201911023282A CN 110751222 A CN110751222 A CN 110751222A
- Authority
- CN
- China
- Prior art keywords
- sub
- lstm
- cnn
- stream
- streams
- 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.)
- Pending
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
-
- 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/044—Recurrent networks, e.g. Hopfield 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/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
Abstract
本发明公开了一种基于CNN和LSTM的在线加密流量分类方法,包括:通过动态窗口对原始加密数据流进行切分,获得带有时间序列关系的n个子流;分别提取n个子流的统计特征,以及对n个子流均进行转换后使用采用CNN提取相应的有效载荷特征;对每一子流的载荷特征与统计特征进行融合,采用LSTM从时间角度对融合后的综合性特征进行相关处理,再通过分类器得到识别结果。该方法能够实现一定程度上的在线识别,并获得更为准确的加密流量识别效果。
Description
技术领域
本发明涉及计算机网络技术领域,尤其涉及一种基于CNN和LSTM的在线加密流量分类方法。
背景技术
随着互联网技术的快速发展,互联网日益深入大众生活。而随着各种新型网络应用的出现,应用流量呈现持续增长趋势,并且由于人们对网络信息安全的日益重视以及加密技术的不断发展,网络加密流量也在不断上升。而为了能够更好地提升网络流量管理水平以及改善网络服务质量,正确识别网络加密流量的应用类型显得尤为重要。
传统的网络流量分类方法可以分为以下四类:
基于端口号的方法:该方法是依据TCP/UDP报文头部的端口号进行应用识别,即通过读取由IANA(Internet Assigned Numbers Authority)发布的Service Name andTransport Protocol Port Number Registry中端口号与具体应用的映射信息来对流量进行分类。这种分类方法的原理非常简单,只需要读取网络数据流中的第一个数据包即可成功识别,识别效率非常高而具体实现又极为简单。但是,随着网络技术的发展该方法却面临着诸多问题:有些应用的端口可能并没有进行注册;有些应用软件使用的是动态端口,其在数据传输过程中可能会发生变化;某些应用程序为躲避系统限制使用其他常用协议的端口进行数据传输,从而实现端口隐蔽。并且,由于流量加密后头部端口信息被隐藏,所以基于端口号的识别方法很难适用于加密流量的分类识别。
基于有效载荷的深度包检测(DPI,Deep Packet Inspection)方法:该方法是通过匹配数据分组的有效载荷的表达式来对流量进行识别。该方法可以有效避免上述动态端口等带来的问题,且当未加密的数据流与表达式库中的内容相匹配时,其识别准确率非常高。但该方法却面临着以下诸多问题:随着新型网络流量的出现,表达式库中的内容需要不断扩充,需要消耗大量存储空间,同时特征匹配的复杂度也会变大;对于加密的流量很难获取其有效载荷的表达式,那么就无法进行对其解析匹配;该方法将解析数据分组的负载,所以可能会侵犯到用户的隐私。
基于行为特征的方法:该方法主要是从主机节点的角度来分析各类应用的行为特征,即统计主机或者应用的行为,虽然这种方法其通用性很强,但是使用该方法需要监控网络中的主机节点,因此非常的耗费时间与空间资源;而且其能够进行流量识别的分类通常是粗粒度的,而实际情况中网络流量可能同时来自各个不同的应用,所以其识别准确度远远达不到理论效果值。
基于机器学习(Machine Learning)的方法:该方法是通过人工提取数据流的统计特征对流量进行识别。一般包括流持续时间、包的到达时间间隔、包大小等统计信息。而机器学习的方式就是将上述统计信息代替数据流作为模型构建的输入,经过一定的训练,使得该模型可以较好地对未知网络流量进行正确识别。而常见的机器学习算法,包括无监督学习,例如各种聚类算法;监督学习,例如支持向量机(SVM,Support Vector Machines)和决策树(DT,Decision Tree)等;半监督学习。虽然使用这些经典的算法能够对流量进行一定程度地识别,但是使用该方法需要大量具备标注的数据集,而随着应用协议的与日俱增,理想数据集获取较为困难;该方法训练时还需要考虑数据的不平衡问题。
因此,虽然上述方法能够在一定程度上对流量实现分类识别,但是由于端口的动态性以及隐匿性、流量的有效载荷表达式提取困难以及匹配复杂度高、行为特征分析需要耗费大量时空资源以及获取大量标注数据集难度大等问题的出现,使得流量识别方法还需进一步改进,并且这些方案也很难实现在线识别工作。
发明内容
本发明的目的是提供一种基于CNN和LSTM的在线加密流量分类方法,能够实现一定程度上的在线识别,并获得更为准确的加密流量识别效果。
本发明的目的是通过以下技术方案实现的:
一种基于CNN和LSTM的在线加密流量分类方法,包括:
通过动态窗口对原始加密数据流进行切分,获得带有时间序列关系的n个子流;
分别提取n个子流的统计特征,以及对n个子流均进行转换后使用采用CNN提取相应的有效载荷特征;
对每一子流的有效载荷特征与统计特征进行融合,采用LSTM从时间角度对融合后的综合性特征进行相关处理,再通过分类器得到识别结果。
由上述本发明提供的技术方案可以看出,考虑实际网络环境中数据流处理的局限性以及其对在线识别的需求,对整个数据流的内容通过动态窗口切分后,针对每个切分子流从两方面进行处理,首先考虑切分子流内部的结构化关系,采用CNN对数据流内部数据包的有效载荷进行空间特征的提取,另一方面针对每个子流进行统计特征的相应提取,而后将两方面的特征信息进行一个融合操作,切实避免了只使用统计特征带来的相关弊端,因为采样后的各子流之间有相应的时间序列关系,因此本发明采用LSTM从时间角度对融合后的综合性特征进行相关处理,该方法从多个角度对数据流的特征进行综合考虑,且能够进行一个在线识别的功能,提高了实际环境下加密流量分类识别的可靠性和准确度。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他附图。
图1为本发明实施例提供的一种基于CNN和LSTM的在线加密流量分类方法整体框架示意图;
图2为本发明实施例提供的数据流预处理示意图;
图3为本发明实施例提供的载荷特征提取示意图;
图4为本发明实施例提供的LSTM处理示意图。
具体实施方式
下面结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明的保护范围。
传统的流量识别方法由于端口的动态性、有效载荷表达式提取及匹配难度大、行为特征分析时空资源耗费大等导致加密流量的识别具有很大的局限性,而基于各类机器学习的方法,通常只考虑网络数据流的各类统计特征,且获取大量含有标注的数据集较为困难。因此,本发明提出一种基于CNN和LSTM的在线加密流量的识别方法,综合考虑数据流的载荷特征以及统计特征。切实考虑实际网络环境中数据流处理的局限性以及其对在线识别的需求,对整个数据流的内容进行分析显然是不可能的,但只考虑流的少量内容又会导致低识别率,因此本发明考虑分析数据流通过动态窗口切分后的多个子流内容,而针对每个切分子流从两方面进行处理,首先考虑切分子流内部的结构化关系,采用CNN对数据流内部数据包的有效载荷进行空间特征的提取,另一方面针对每个子流进行统计特征的相应提取,而后将两方面的特征信息进行一个融合操作,切实避免了只使用统计特征带来的相关弊端。因为采样后的各子流之间有相应的时间序列关系,因此本发明采用LSTM从时间角度对融合后的综合性特征进行相关处理,最终得到识别结果。所以该方法从多个角度对数据流的特征进行综合考虑,且能够进行一个在线识别的功能,提高了实际环境下加密流量分类识别的可靠性和准确度。
如图1所示,为本发明实施例提供的一种基于CNN和LSTM的在线加密流量分类方法整体框架,该框架示出了整个分类方法的主要流程,并示意性的给出了各个步骤的执行主体,如预处理阶段(即数据流切分)通过数据流预处理模块实现,载荷特征提取阶段通过载荷特征获取模块(CNN处理模块)实现,统计特征提取阶段通过统计特征获取模块实现,特征融合与LSTM处理通过LSTM处理模块实现;整个分类方法主要步骤如下:
1、通过动态窗口对原始加密数据流进行切分,获得带有时间序列关系的n个子流。
本步骤为数据流预处理过程,其优选实施方式如图2所示。
针对原始加密数据流文件,首先通过流量切分工具根据其五元组信息(即源IP地址、源端口号、目的IP地址、目的端口号、传输层协议),将原始数据流切割为各个独立的单元,一般有两种标准方式:一种为会话,另一种为流。
优选的,本发明采用切割成会话的形式,因为其考虑了流的双向性信息,所以包含的信息更能代表原始数据流的特征。
针对数据流的分类识别,考虑到实际网络环境下数据流处理效率的局限性,对整个流的所有内容进行分析显然是不现实的,因此目前很多研究都采取考虑流的部分内容,但这样就使得识别准确率明显下降,为此本发明采取对流进行一定地切分,并且分析流的多个子流,即用一个动态窗口进行流的切分,针对动态窗口,可以考虑时间、包的数量或者是一个聚类方式下的自适应窗口,因为虽然数据流被加密,但其内部的数据包之间仍然存在着相关性。另外考虑到如果切分频率过高,切分的子流数就会过多,因此对切分后的子流进行一个采样的过程,该操作可以从子流层面考虑,也可以从子流内部的数据包进行考虑,而采样方式可以选择聚类等方法,例如针对子流层面,本发明从聚类后的多个类别中各选一或几个来进行后续的处理。
如图2所示,通过上述数据预处理过程,能够得到带有时间序列关系的n个子流。
2、分别提取n个子流的统计特征,以及对n个子流均进行转换后使用采用CNN提取相应的有效载荷特征。
本步骤分为统计特征与有效载荷特征两个部分,这两个步骤可以同步执行,也可以一前一后执行,本发明实施例并不对执行顺序进行限定。
1)有效载荷特征提取。
本领域技术人员可以理解,有效载荷特征即代表的是应用层数据(真正要传输的数据内容),也就是网络模型OSI结构的第七层所包含的内容。
如图3所示,示意性的给出了有效载荷特征提取的优选实施方式,主要过程如下:
a)针对每一子流,提取有效载荷部分的前m个数据包的前m字节内容,并转化成m*m的图片,形成二维矩阵Xm*m,再输入到CNN中进行有效载荷特征的提取。
由于切分后的子流可能包含不同数量的数据包,而在本发明中对于CNN的输入,其需要是m*m的图片,所以针对数据包或字节数目不足m的子流进行一定的填充。
由于CNN的输入对象需要是图片数据,因此各子流的有效载荷数据还需要进行一个统一化处理,即将各个字节内容进行一个[0,255]的映射,从而能够和图片的灰度值进行一一对应,再通过相应的图片生成模块将转化成m*m的图片。
b)采用CNN(卷积神经网络)提取相应的有效载荷特征。
上述图片数据一旦处理完毕,即可作为本发明中卷积神经网络的输入,并且在设计卷积神经网络时可以搭建多层,但是最为核心的还是卷积层操作和池化层操作。
如图3所示,CNN主要包含依次设置的卷积层、池化层与全连接层。
卷积层操作:对于一个卷积操作,其包含一个过滤器(卷积核)F∈w*h,过滤器依次对二维矩阵中窗口大小为w*的内容进行操作并生成特征图Yw*h,即建立各个窗口的特征映射,公式如下:
其中,w、h为特征图的宽、高,i、j表示二维矩阵的行、列号,即遍历整个二维矩阵;
而在此过程中输出特征的维度,与卷积操作时每次过滤器的移动步长也有一定的关系,但有可能出现二维矩阵边界无法遍历的情况,所以一般情况下可能还需要对二维矩阵进行一定的padding(填充)处理。
卷积层中过滤器数量为n,每个子流都经过包含n个过滤器的卷积操作,获得相应的特征图,n个子流最终得到n个特征图Yw*h,卷积层的输出还连接一个激活函数,从而使得输出是非线性的。一般可以选择Sigmoid函数、tanh函数或者ReLU函数(The RectifiedLinear Unit),在本发明中可选择ReLU函数,从而避免出现梯度消失的现象。
池化层操作:该层通常用来压缩原始的数据数量,降低特征的维度,从而降低过拟合现象的发生,并且还可以在一定程度上去除部分冗余信息。一般有两种选择:最大池化和均值池化,即通过特征映射的最大值或均值来反映原始特征。
最后,通过全连接层获得n个子流的载荷特征。
2)统计特征提取。
本发明实施例中,提所提取的统计特征包括如下特征中的一种或多种:数据流的持续时间、数据包的平均字节数、每秒数据包数以及正、反向包的相关特征。某些统计特征,例如数据流的持续时间、数据包的平均字节数、每秒数据包数还可以做进一步的计算,以考虑它的统计特性,主要包括如下一种或多种:平均值、最大值、最小值、方差等。
3、对每一子流的有效载荷特征与统计特征进行融合,采用LSTM从时间角度对融合后的综合性特征进行相关处理,再通过分类器得到识别结果。
如图4所示,示意性的给出了LSTM处理模块的优选实施方式。
1)特征融合。
本发明实施例中,n个子流的有效载荷特征记为{P11,P21,…,Pn1};n个子流的统计特征记为{P12,P22,…,Pn2},将两部分特征中的Pk1与Pk2进行一个融合操作,得到n个子流的综合特征,即{P1,P2,…,Pn},k=1,2,...,n。
2)LSTM(长短期记忆网络)处理。
与普通的RNN相比,本发明之所以选择LSTM是因为其在神经元内部加了如下关键性部件,从而可以消除梯度消失带来的影响。
LSTM处理流程主要包括:
遗忘门:用来为上一时刻记忆单元状态Ct-1提供一个遗忘的参数值,使用逻辑函数σ(例如Sigmoid函数)计算上一时刻的输出ht-1以及当前时刻的输入xt来产生一个0~1之间的过滤值ft:
ft=σ(Wf·[ht-1,xt]+bf)
其中,xt是指当前时刻t输入的子流的综合特征Pt,t=1,2,...,n;
输入门:其过程类似遗忘门操作,用于过滤当前时刻的输入xt:
it=σ(Wi·[ht-1,xt]+bi)
其中,it表示输入门,它是一个概率值,其表示yt对记忆单元更新的占比;
输入节点:使用逻辑函数(例如tanh函数)计算上一时刻的输出ht-1及当前时刻输入xt产生一个0~1之间的过滤值,用于生成输入的候选值,即可能会添加到记忆单元的内容;
yt=σ(Wy·[ht-1,xt]+by)
记忆单元更新:将上述过程中产生的结果进行相应计算,得到当前时刻的记忆单元状态Ct:
Ct=ft*t-1+it*t
输出门:针对当前时刻的记忆单元,根据当前时刻的输入xt和前一时刻的输出ht-1产生一个新的过滤值ot,从而得到当前时刻的输出值ht
ot=σ(Wo·[ht-1,xt]+bo)
ht=ot*tanh(Ct)
上面的式子中,Wf、Wi、Wy、Wo均为权重矩阵,bf、bi、by、bo均为偏置项,它们的大小随着神经网络训练学习得到。
3)分类识别。
LSTM处理结果输入分类器,从而得到分类识别结果。LSTM对所有子流的融合特征处理后本发明考虑最后一个子流的输出值hn,而后将输出值内容输出到全连接网络中,其中全连接网络的输出层神经元数目与要分类的数目一样。最后为方便考虑流的分类识别结果将全连接网络的输出层作为分类器的输入层,分类器可以对输入内容进行处理,从而得到该流为各类流的概率值有多大,并选择其中的最大值为该流的最终识别结果。示例性的,分类器可以为Softmax分类器。
本发明实施例中,一个流的切分子流之间存在时间序列关系,可以分别输入到LSTM中进行处理,需要对整个流的类型进行判断时,只输出最后一个子流处理后的结果。
如之前介绍的LSTM处理流程可知,LSTM训练完所有子流会得到一个输出值,该输出值包含了之前所有子流的输出,可以将其看成是一个二维矩阵,每一行表示一个子流的输出,在进行后续处理时考虑的是它的最后一行,也即hn(该行长度大小由LSTM隐藏层的神经元数目决定),我们可以将最后一行hn作为全连接神经网络的输入,而全连接网络的输出层神经元数目设置为要分类的数目。输出层可以看成一维数组,其中每个数表示该流归属为某类的可能性大小,不过为了方便判断,将一维数组再输入到softmax层,其可以将数组中的数映射到0-1范围,然后看哪个值大,其输出类型结果就是其索引对应的类型。
因为每个切分单元(会话流)都有它自己的标签,比如有6类,那么就可以标识为0,1,2,3,4,5。具体每个数字是表示文件类型或语音聊天或其他类型可以自行设定。示例性的,识别类型有可以包括:Chat、File、P2P、Streaming、VoIP、Email等。
本发明实施例上述方案,有效解决了传统方式下出现的动态及隐匿端口、有效载荷表达式提取及匹配难度大、行为特征分析时空资源耗费大等问题,同时也避免了典型机器学习算法下大量标注数据集获取困难以及只考虑数据流统计特征的问题。本发明从实际网络环境出发,考虑在线识别的问题,针对捕获的数据流进行动态窗口式切分,且针对切分后各子流进行一定的采样,然后分别提取其空间有效载荷特征(通过CNN处理)以及统计特征,而后对两部分特征进行一个融合操作,获得各窗口的综合性特征,因为各窗口之间存在时间序列关系,所以最后再使用LSTM对综合特征进行最后的分类识别输出。从而能够实现一定程度上的在线识别,以及更为准确的加密流量识别效果。
下面结合本发明实施例上述方案,给出一个具体的示例。
首先对数据集进行一个获取及预处理的工作,即首先采用交换机镜像技术旁路出部分加密网络流量形成pcap文件,然后采用Tcpdump技术将pcap文件按五元组(即源IP地址、源端口号、目的IP地址、目的端口号、传输层协议)分成网络数据流的形式,并且预先采用DPI技术对网络流量进行类型标注,如可以标注其为chat、file等类型。然后将标注好的流量输出到一个K-means聚类算法中,该算法针对数据流中的数据包特点将数据包聚集成多类,从而将数据流划分成多个子流,由于加密过程不会改变原始数据内容的顺序所以我们对其进行聚类时,数据包之间不会存在跳跃式聚类,即各子流及其内部数据包之间仍然存在时间序列关系。并且由于聚类的动态性,所以每个子流内部的数据包数目可能存在一定差异。然后针对这些子流我们再进行一个采样,这一过程仍然采用聚类算法K-means,针对聚类后的子流我们从每个类中选择一个子流进行进一步处理,并且采样时其时间序列关系仍然没有被打乱。
将上述子流抽样后,针对每个子流从两方面对其处理,一方面用有效载荷特征提取模块将各子流的前64个数据包的前64字节的应用层数据提取出来(如果数据包或字节不够64用0填充),并且将提取后的内容在[0,255]上做一个映射,然后我们用图片生成模块将上述内容转化成图片数据,之后将其作为CNN的输入,经CNN的卷积及池化操作后再通过一个全连接层获得表示该子流有效载荷特征的一个向量。另一方面,用统计特征提取模块对该子流进行处理,选择提取该子流的数据流持续时间、数据包到达时间间隔、数据包总数目及大小等9大类特征,同时针对各类我们还考虑其平均值、最大值、最小值及方差,共计24个流特征,对于统计特征也用一个向量表示。
当两个向量都获得后,直接将两向量进行一个整合,将其作为子流的最终特征,并且因为采样后的子流考虑了它们之间的时间序列关系,所以将所有子流的特征依次输入到LSTM模块中,最后再经过一个Softmax分类器给出最后的分类识别结果。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例可以通过软件实现,也可以借助软件加必要的通用硬件平台的方式来实现。基于这样的理解,上述实施例的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明披露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求书的保护范围为准。
Claims (6)
1.一种基于CNN和LSTM的在线加密流量分类方法,其特征在于,包括:
通过动态窗口对原始加密数据流进行切分,获得带有时间序列关系的n个子流;
分别提取n个子流的统计特征,以及对n个子流均进行转换后使用采用CNN提取相应的有效载荷特征;
对每一子流的有效载荷特征与统计特征进行融合,采用LSTM从时间角度对融合后的综合性特征进行相关处理,再通过分类器得到识别结果。
2.根据权利要求1所述的一种基于CNN和LSTM的在线加密流量分类方法,其特征在于,所述通过动态窗口对原始加密数据流进行切分,获得带有时间序列关系的n个子流包括:
针对原始加密数据流,通过流量切分工具根据原始加密数据流五元组信息,切割为各个独立的单元;切割有两种标准方式,一种为会话,另一种为流;五元组信息为源IP地址、源端口号、目的IP地址、目的端口号与传输层协议;
使用动态窗口对各个独立的单元进行切分,对于切分后的子流进行采样,获得带有时间序列关系的n个子流。
3.根据权利要求1所述的一种基于CNN和LSTM的在线加密流量分类方法,其特征在于,所述对n个子流均进行转换后使用采用CNN提取相应的有效载荷特征包括:
针对每一子流,提取有效载荷部分的前m个数据包的前m字节内容,并转化成m*m的图片,形成二维矩阵xm*m,再输入到CNN中进行有效载荷特征的提取;其中,若数据包或者字节的数目不足m,则进行相应的填充;
CNN包含依次设置的卷积层、池化层与全连接层;
卷积层操作:对于一个卷积操作,其包含一个过滤器F∈Rw*h,过滤器依次对二维矩阵中窗口大小为w*h的内容进行操作并生成特征图Yw*h,公式如下:
其中,w、h为特征图的宽、高,i、j表示二维矩阵的行、列号;
卷积层中过滤器数量为n,每个子流都经过包含n个过滤器的卷积操作,获得相应的特征图,n个子流最终得到n个特征图Yw*h,卷积层的输出还连接一个激活函数;
通过池化层来降低各特征的维度,最后通过全连接层获得n个子流的有效载荷特征。
4.根据权利要求1所述的一种基于CNN和LSTM的在线加密流量分类方法,其特征在于,提所提取的统计特征包括如下特征中的一种或多种:数据流的持续时间、数据包的平均字节数、每秒数据包数以及正、反向包的相关特征;以及数据流的持续时间、数据包的平均字节数、每秒数据包数中的统计特性,所述统计特征包括如下一种或多种:平均值、最大值、最小值及方差。
5.根据权利要求1所述的一种基于CNN和LSTM的在线加密流量分类方法,其特征在于,对每一子流的有效载荷特征与统计特征进行融合,采用LSTM从时间角度对融合后的综合性特征进行相关处理包括:
n个子流的有效载荷特征记为{P11,P21,...,Pn1};n个子流的统计特征记为{P12,P22,...,Pn2},将两部分特征中的Pk1与Pk2进行一个融合操作,得到n个子流的综合特征,即{P1,P2,...,Pn},k=1,2,...,n;
采用LSTM从时间角度对融合后的综合性特征进行相关处理,所述LSTM包括:
遗忘门:用来为上一时刻记忆单元状态Ct-1提供一个遗忘的参数值,使用逻辑函数σ计算上一时刻的输出ht-1以及当前时刻的输入xt来产生一个0~1之间的过滤值ft:
ft=σ(Wf·[ht-1,xt]+bf
其中,xt是指当前时刻t输入的子流的综合特征Pt,t=1,2,...,n;
输入门:其过程类似遗忘门操作,用于过滤当前时刻的输入xt:
it=σ(Wi·[ht-1,xt]+bi
其中,it表示输入门;
输入节点:使用逻辑函数计算上一时刻的输出ht-1及当前时刻输入xt产生一个0~1之间的过滤值,用于生成输入的候选值,即可能会添加到记忆单元的内容;
yt=σ(Wy·[ht-1,xt]+by
记忆单元更新:将上述过程中产生的结果进行相应计算,得到当前时刻的记忆单元状态Ct:
Ct=ft*Ct-1+it*yt
输出门:针对当前时刻的记忆单元,根据当前时刻的输入xt和前一时刻的输出ht-1产生一个新的过滤值ot,从而得到当前时刻的输出值ht:
ot=σ(Wo·[ht-1,xt]+bo
ht=ot*tanh(Ct)
上面的式子中,Wf、Wi、Wy、Wo均为权重矩阵,bf、bi、by、bo均为偏置项。
6.根据权利要求5所述的一种基于CNN和LSTM的在线加密流量分类方法,其特征在于,通过分类器得到识别结果包括:
将最后一个子流对应的输出值hn输入至全连接神经网络中,全连接神经网络的输出层神经元数目与要分类的数目一样;
将全连接神经网络的输出输入至一个softmax层,由softmax层将全连接神经网络的输出映射到0-1范围,从而得到原始加密数据流为各个类别的概率,最大概率值对应的类别即为识别结果。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911023282.6A CN110751222A (zh) | 2019-10-25 | 2019-10-25 | 基于cnn和lstm的在线加密流量分类方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911023282.6A CN110751222A (zh) | 2019-10-25 | 2019-10-25 | 基于cnn和lstm的在线加密流量分类方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110751222A true CN110751222A (zh) | 2020-02-04 |
Family
ID=69279960
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911023282.6A Pending CN110751222A (zh) | 2019-10-25 | 2019-10-25 | 基于cnn和lstm的在线加密流量分类方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110751222A (zh) |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111447190A (zh) * | 2020-03-20 | 2020-07-24 | 北京观成科技有限公司 | 一种加密恶意流量的识别方法、设备及装置 |
CN111711633A (zh) * | 2020-06-22 | 2020-09-25 | 中国科学技术大学 | 多阶段融合的加密流量分类方法 |
CN111948622A (zh) * | 2020-08-07 | 2020-11-17 | 哈尔滨工程大学 | 基于并联cnn-lstm的线性调频雷达信号toa估计算法 |
CN111970169A (zh) * | 2020-08-14 | 2020-11-20 | 中山大学 | 一种基于gru网络的协议流量识别方法 |
CN112001452A (zh) * | 2020-08-27 | 2020-11-27 | 深圳前海微众银行股份有限公司 | 特征选择方法、装置、设备及可读存储介质 |
CN112003870A (zh) * | 2020-08-28 | 2020-11-27 | 国家计算机网络与信息安全管理中心 | 一种基于深度学习的网络加密流量识别方法及装置 |
CN112163594A (zh) * | 2020-08-28 | 2021-01-01 | 南京邮电大学 | 一种网络加密流量识别方法及装置 |
CN112910853A (zh) * | 2021-01-18 | 2021-06-04 | 南京信息工程大学 | 基于混合特征的加密流量分类方法 |
CN114205151A (zh) * | 2021-12-12 | 2022-03-18 | 南京理工大学 | 基于多特征融合学习的http/2页面访问流量识别方法 |
CN114257428A (zh) * | 2021-12-10 | 2022-03-29 | 广东工业大学 | 一种基于深度学习的加密网络流量识别及分类方法 |
CN114978585A (zh) * | 2022-04-12 | 2022-08-30 | 国家计算机网络与信息安全管理中心 | 基于流量特征的深度学习对称加密协议识别方法 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102271090A (zh) * | 2011-09-06 | 2011-12-07 | 电子科技大学 | 基于传输层特征的流量分类方法及装置 |
CN106161277A (zh) * | 2016-06-29 | 2016-11-23 | 合肥民众亿兴软件开发有限公司 | 一种基于本体的并行网络流量分类方法 |
CN108200006A (zh) * | 2017-11-21 | 2018-06-22 | 中国科学院声学研究所 | 一种基于层次化时空特征学习的网络流量分类方法及装置 |
CN109361619A (zh) * | 2018-12-27 | 2019-02-19 | 北京天融信网络安全技术有限公司 | 一种流量分类方法及电子设备 |
US10263868B1 (en) * | 2012-04-11 | 2019-04-16 | Narus, Inc. | User-specific policy enforcement based on network traffic fingerprinting |
CN110113338A (zh) * | 2019-05-08 | 2019-08-09 | 北京理工大学 | 一种基于特征融合的加密流量特征提取方法 |
-
2019
- 2019-10-25 CN CN201911023282.6A patent/CN110751222A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102271090A (zh) * | 2011-09-06 | 2011-12-07 | 电子科技大学 | 基于传输层特征的流量分类方法及装置 |
US10263868B1 (en) * | 2012-04-11 | 2019-04-16 | Narus, Inc. | User-specific policy enforcement based on network traffic fingerprinting |
CN106161277A (zh) * | 2016-06-29 | 2016-11-23 | 合肥民众亿兴软件开发有限公司 | 一种基于本体的并行网络流量分类方法 |
CN108200006A (zh) * | 2017-11-21 | 2018-06-22 | 中国科学院声学研究所 | 一种基于层次化时空特征学习的网络流量分类方法及装置 |
CN109361619A (zh) * | 2018-12-27 | 2019-02-19 | 北京天融信网络安全技术有限公司 | 一种流量分类方法及电子设备 |
CN110113338A (zh) * | 2019-05-08 | 2019-08-09 | 北京理工大学 | 一种基于特征融合的加密流量特征提取方法 |
Non-Patent Citations (1)
Title |
---|
王伟: "基于深度学习的网络流量分类及异常检测方法研究", 《中国博士学位论文全文数据库信息科技辑》 * |
Cited By (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111447190A (zh) * | 2020-03-20 | 2020-07-24 | 北京观成科技有限公司 | 一种加密恶意流量的识别方法、设备及装置 |
CN111711633A (zh) * | 2020-06-22 | 2020-09-25 | 中国科学技术大学 | 多阶段融合的加密流量分类方法 |
CN111711633B (zh) * | 2020-06-22 | 2021-08-13 | 中国科学技术大学 | 多阶段融合的加密流量分类方法 |
CN111948622A (zh) * | 2020-08-07 | 2020-11-17 | 哈尔滨工程大学 | 基于并联cnn-lstm的线性调频雷达信号toa估计算法 |
CN111970169A (zh) * | 2020-08-14 | 2020-11-20 | 中山大学 | 一种基于gru网络的协议流量识别方法 |
CN112001452A (zh) * | 2020-08-27 | 2020-11-27 | 深圳前海微众银行股份有限公司 | 特征选择方法、装置、设备及可读存储介质 |
CN112163594A (zh) * | 2020-08-28 | 2021-01-01 | 南京邮电大学 | 一种网络加密流量识别方法及装置 |
CN112003870A (zh) * | 2020-08-28 | 2020-11-27 | 国家计算机网络与信息安全管理中心 | 一种基于深度学习的网络加密流量识别方法及装置 |
CN112163594B (zh) * | 2020-08-28 | 2022-07-26 | 南京邮电大学 | 一种网络加密流量识别方法及装置 |
CN112910853A (zh) * | 2021-01-18 | 2021-06-04 | 南京信息工程大学 | 基于混合特征的加密流量分类方法 |
CN114257428A (zh) * | 2021-12-10 | 2022-03-29 | 广东工业大学 | 一种基于深度学习的加密网络流量识别及分类方法 |
CN114257428B (zh) * | 2021-12-10 | 2024-02-27 | 广东工业大学 | 一种基于深度学习的加密网络流量识别及分类方法 |
CN114205151A (zh) * | 2021-12-12 | 2022-03-18 | 南京理工大学 | 基于多特征融合学习的http/2页面访问流量识别方法 |
CN114978585A (zh) * | 2022-04-12 | 2022-08-30 | 国家计算机网络与信息安全管理中心 | 基于流量特征的深度学习对称加密协议识别方法 |
CN114978585B (zh) * | 2022-04-12 | 2024-02-27 | 国家计算机网络与信息安全管理中心 | 基于流量特征的深度学习对称加密协议识别方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110751222A (zh) | 基于cnn和lstm的在线加密流量分类方法 | |
CN111711633B (zh) | 多阶段融合的加密流量分类方法 | |
CN112163594B (zh) | 一种网络加密流量识别方法及装置 | |
Shapira et al. | FlowPic: A generic representation for encrypted traffic classification and applications identification | |
Wang | The applications of deep learning on traffic identification | |
CN112839034B (zh) | 一种基于cnn-gru分层神经网络的网络入侵检测方法 | |
CN113162908B (zh) | 一种基于深度学习的加密流量检测方法及系统 | |
CN110391958B (zh) | 一种对网络加密流量自动进行特征提取和识别的方法 | |
CN109831392B (zh) | 半监督网络流量分类方法 | |
CN113037730A (zh) | 基于多特征学习的网络加密流量分类方法及系统 | |
CN116662817B (zh) | 物联网设备的资产识别方法及系统 | |
Soleymanpour et al. | CSCNN: cost-sensitive convolutional neural network for encrypted traffic classification | |
CN111565156A (zh) | 一种对网络流量识别分类的方法 | |
CN114650229B (zh) | 基于三层模型sftf-l的网络加密流量分类方法与系统 | |
Roy et al. | Fast and lean encrypted Internet traffic classification | |
CN113762377A (zh) | 网络流量识别方法、装置、设备及存储介质 | |
Callegari et al. | Improving stability of PCA-based network anomaly detection by means of kernel-PCA | |
CN115118653A (zh) | 一种基于多任务学习的实时业务流量分类方法及系统 | |
Obasi | Encrypted network traffic classification using ensemble learning techniques | |
CN114095447A (zh) | 一种基于知识蒸馏与自蒸馏的通信网络加密流量分类方法 | |
Cullen et al. | Evaluation of synthetic data generation techniques in the domain of anonymous traffic classification | |
Tan et al. | A novel internet traffic identification approach using wavelet packet decomposition and neural network | |
CN112383488A (zh) | 一种适用于加密与非加密数据流的内容识别方法 | |
Xu et al. | TrafficGCN: Mobile application encrypted traffic classification based on GCN | |
CN114338437A (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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20200204 |
|
RJ01 | Rejection of invention patent application after publication |