基于深度学习的加密流量分类方法及相关设备技术

技术编号:29460050 阅读:12 留言:0更新日期:2021-07-27 17:29
本公开提供一种基于深度学习的加密流量分类方法及相关设备,所述方法包括:基于加密流量数据获取网络流数据集;通过所述网络流数据集获取三维特征集,所述三维特征集包括时序特征、空间特征以及统计特征;将所述三维特征集的数据填充到N*N*3的第一矩阵中,通过映射获得图像格式的三维矩阵特征集,其中,N表示第一矩阵的尺寸;根据所述三维矩阵特征集以及预先训练的加密流量分类模型,得到所述加密流量数据的分类结果。本公开的方法基于多维度表示加密流量数据,增强了加密流量分类模型的泛化能力,提高对加密流量数据分类的准确性。

Encrypted traffic classification method and related equipment based on deep learning

【技术实现步骤摘要】
基于深度学习的加密流量分类方法及相关设备
本公开涉及网络流量分类
,尤其涉及一种基于深度学习的加密流量分类方法及相关设备。
技术介绍
现有的网络流量分类技术可以分为四类:基于端口分类的技术,基于深度包检测(DPI)的技术,基于统计的技术,基于行为的技术。但随着互联网流量的急剧变化,特别是加密技术的广泛应用,基于端口分类的和基于深度包检测的技术分类准确率急剧下降。为了能够对加密后的流量进行分类,一般采用不直接解析加密算法的思路,从流量或应用的统计行为特征出发,提出了三种针对加密流量的分类技术:基于通信模式的、基于机器学习的、基于深度学习的。其中,基于通信模式的加密流量分类技术往往需要构建网络通信连通图,存在计算复杂度和空间复杂度较高的问题;基于机器学习的加密流量分类技术严重依赖于人工特征的设计选取,存在泛化能力差、实际应用困难的问题;基于深度学习的加密流量分类技术通常是将加密流量数据直接转换成灰度图或者是分析数据包之间的关联特征从单一维度来表示网络流量,存在模型欠拟合、分类准确率低的问题。
技术实现思路
有鉴于此,本公开的目的在于提出一种基于深度学习的加密流量分类方法及相关设备。基于上述目的,本公开提供了一种于深度学习的加密流量分类方法,包括:基于加密流量数据获取网络流数据集;通过所述网络流数据集获取三维特征集,所述三维特征集包括时序特征、空间特征以及统计特征;将所述三维特征集的数据填充到N*N*3的第一矩阵中,通过映射获得图像格式的三维矩阵特征集,其中,N表示第一矩阵的尺寸;根据所述三维矩阵特征集以及预先训练的加密流量分类模型,得到所述加密流量数据的分类结果。基于同一专利技术构思,本公开还提供了一种基于深度学习的加密流量分类装置,包括:第一获取模块:被配置为基于加密流量数据获取网络流数据集;第二获取模块:被配置为通过所述网络流数据集获取三维特征集,所述三维特征集包括时序特征、空间特征以及统计特征;特征转换模块:被配置为将所述三维特征集的数据填充到N*N*3的第一矩阵中,通过映射获得图像格式的三维矩阵特征集,其中,N表示第一矩阵的尺寸;加密流量分类模块:被配置为根据所述三维矩阵特征集以及预先训练的加密流量分类模型,得到所述加密流量数据的分类结果。基于同一专利技术构思,本公开还提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上任意一项所述的方法。基于同一专利技术构思,本公开还提供了一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令用于使计算机执行如上任一所述方法。从上面所述可以看出,本公开提供的基于深度学习的加密流量分类方法及相关设备,通过构建三维矩阵特征集作为预先训练的加密流量分类模型的输入,三维矩阵特征集能够体现加密流量数据的多维特性,使加密流量分类模型具有较高的拟合度和较强的泛化能力,进而提升加密流量数据分类的准确率;此外,通过加密流量分类模型对加密流量数据的分类特征进行学习,节省了大量人工工作量的同时降低了任务的复杂度。附图说明为了更清楚地说明本公开或相关技术中的技术方案,下面将对实施例或相关技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本公开的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本公开实施例的基于深度学习的加密流量分类方法流程图;图2为本公开实施例的加密流量数据可视化后的三维图像示意图;图3为本公开实施例的基于深度学习的加密流量分类装置结构示意图;图4为本公开实施例的电子设备结构示意图。具体实施方式为使本公开的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本公开进一步详细说明。需要说明的是,除非另外定义,本公开实施例使用的技术术语或者科学术语应当为本公开所属领域内具有一般技能的人士所理解的通常意义。本公开实施例中使用的“第一”、“第二”以及类似的词语并不表示任何顺序、数量或者重要性,而只是用来区分不同的组成部分。“包括”或者“包含”等类似的词语意指出现该词前面的元件或者物件涵盖出现在该词后面列举的元件或者物件及其等同,而不排除其他元件或者物件。如
技术介绍
所述,现有的加密流量分类方法还难以满足需要,申请人在实现本公开的过程中发现,相关技术中对加密流量的分类技术主要有以下三种:基于通信模式的、基于机器学习的、基于深度学习的。而基于通信模式的加密流量技术存在计算复杂度和空间复杂度高的问题;基于机器学习的加密流量分类技术存在泛化能力差、实际应用困难的问题;基于深度学习的加密流量分类技术存在模型欠拟合、分类准确率低的问题。有鉴于此,本公开提出了一种基于深度学习的加密流量分类方法,在深度学习的基础上,利用加密流量数据的空间特征、时间特征以及统计特征进行构造三维矩阵特征集,能够全面的保留原始加密流量数据信息,同时将加密流量数据图像化进行多维度协同训练,通过卷积神经网络模型学习并提取待分类加密流量数据的三维特征,进而得到待分类的加密流量数据的分类结果。以下,通过具体的实施例来详细说明本公开的技术方案。参考图1,本公开的基于深度学习的加密流量分类方法,包括以下步骤:步骤S101,基于加密流量数据获取网络流数据集。在本步骤中,所述加密流量数据可通过以下方式获取:在交换机配置中设置镜像端口,并将所述镜像端口作为监听端口。对于多个不同的应用程序(app1,app2,……appn)中的每个所述应用程序执行以下操作:响应于确定所述应用程序运行时通过所述监听端口采集的数据包数量达到预设的阈值a,停止对所述应用程序进行抓包,其中所述数据包的文件格式为pcap,并由pcap文件头、数据包头、数据包数据。通过所述数据包中数据包头的caplen字段截取所述数据包数据部分并保存为以相应的所述应用程序命名的数据文件(app1.txt,app2.txt,……appn.txt),以得到所述加密流量数据。进一步地,将采集的加密流量数据通过流量切割、数据清洗、维度转换、流量标注的预处理操作,进行获取去除无关信息后的所述网络流数据集,具体为:基于五元组(5-tuple)的定义,对所述加密流量数据进行整流,并获取属于同一条数据流的前K个所述数据包,并根据预设数据包长度对同一条数据流中所述数据包的长度进行统一,对大于所述预设数据包长度的所述数据包进行截取,小于所述预设数据包长度的所述数据包进行补零。将每条所述数据流中与所述数据包的无关数据剔除,其中,无关数据可包括MAC地址、IP地址、协议字段、TCP三次握手等。将每条所述数据流中所述数据包的二进制字符串转换成十进制数字。基于所述数据文件(app1.txt,app2.txt,……appn.txt)对每条所述数据流进行本文档来自技高网
...

【技术保护点】
1.一种基于深度学习的加密流量分类方法,包括:/n基于加密流量数据获取网络流数据集;/n通过所述网络流数据集获取三维特征集,所述三维特征集包括时序特征、空间特征以及统计特征;/n将所述三维特征集的数据填充到N*N*3的第一矩阵中,通过映射获得图像格式的三维矩阵特征集,其中,N表示第一矩阵的尺寸;/n根据所述三维矩阵特征集以及预先训练的加密流量分类模型,得到所述加密流量数据的分类结果。/n

【技术特征摘要】
1.一种基于深度学习的加密流量分类方法,包括:
基于加密流量数据获取网络流数据集;
通过所述网络流数据集获取三维特征集,所述三维特征集包括时序特征、空间特征以及统计特征;
将所述三维特征集的数据填充到N*N*3的第一矩阵中,通过映射获得图像格式的三维矩阵特征集,其中,N表示第一矩阵的尺寸;
根据所述三维矩阵特征集以及预先训练的加密流量分类模型,得到所述加密流量数据的分类结果。


2.根据权利要求1所述的方法,其中,所述加密流量数据的获取方法为:
在交换机配置中设置镜像端口,并将所述镜像端口作为监听端口;
对于多个不同的应用程序中的每个所述应用程序执行以下操作:
响应于确定所述应用程序运行时通过所述监听端口采集的数据包数量达到预设的阈值,停止对所述应用程序进行抓包,其中所述数据包的文件格式为pcap;
通过所述数据包中数据包头的caplen字段截取所述数据包的数据部分并保存为以相应的所述应用程序命名的数据文件,以得到所述加密流量数据。


3.根据权利要求2所述的方法,其中,所述基于加密流量数据获取网络流数据集包括:
基于五元组的定义,对所述加密流量数据进行整流,并获取属于同一条数据流的预设数量的所述数据包,并根据预设数据包长度对同一条数据流中所述数据包的长度进行统一;
将每条所述数据流中与所述数据包的无关数据剔除;
将每条所述数据流中所述数据包的二进制字符串转换成十进制数字;
基于所述数据文件对每条所述数据流进行标注,以获得所述网络流数据集。


4.根据权利要求3所述的方法,其中,所述通过所述网络流数据集获取三维特征集,所述三维特征集包括时序特征、空间特征以及统计特征包括:
对于所述网络流数据集中每条所述数据流执行以下操作:
根据所述数据流的数据包结构分别确定每个数据包中有效载荷的字节数和传输控制协议TCP窗口大小;
根据所述数据流的第一个数据包和剩余的目标数据包的时间戳,确定数据包间隔时间;
响应于确定所述目标数据包的源端口与所述第一个数据包的源端口为同一端口,获取数据包方向;
将所述有效载荷的字节数、TCP窗口大小、数据包间隔时间以及数据包方向填充至预设的第二矩阵;
获取所述数据流中每个数据包的字节...

【专利技术属性】
技术研发人员:黄小红朱蒙李建华李丹丹丛群李宇翀
申请(专利权)人:北京邮电大学中国人民解放军三二一四七部队北京网瑞达科技有限公司郑州师范学院
类型:发明
国别省市:北京;11

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

1