CN114553722B - 基于多视角一维卷积神经网络的VPN和non-VPN网络流量分类方法 - Google Patents
基于多视角一维卷积神经网络的VPN和non-VPN网络流量分类方法 Download PDFInfo
- Publication number
- CN114553722B CN114553722B CN202210032809.7A CN202210032809A CN114553722B CN 114553722 B CN114553722 B CN 114553722B CN 202210032809 A CN202210032809 A CN 202210032809A CN 114553722 B CN114553722 B CN 114553722B
- Authority
- CN
- China
- Prior art keywords
- vpn
- network
- internet traffic
- layer
- data packet
- 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.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/50—Testing arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- 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/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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/16—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks using machine learning or artificial intelligence
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/46—Interconnection of networks
- H04L12/4641—Virtual LANs, VLANs, e.g. virtual private networks [VPN]
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/50—Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Life Sciences & Earth Sciences (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Software Systems (AREA)
- Computing Systems (AREA)
- Bioinformatics & Cheminformatics (AREA)
- General Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- Mathematical Physics (AREA)
- Biophysics (AREA)
- Biomedical Technology (AREA)
- Molecular Biology (AREA)
- Bioinformatics & Computational Biology (AREA)
- Health & Medical Sciences (AREA)
- Evolutionary Biology (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Databases & Information Systems (AREA)
- Medical Informatics (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种基于多视角一维卷积神经网络的VPN和non‑VPN网络流量分类方法,包括:构建深度学习网络,所述深度学习网络包括头部特征提取单元、载荷特征提取单元、数据展开模块、全连接层和输出层;获取VPN或non‑VPN互联网流量训练集;利用所述VPN或non‑VPN互联网流量训练集对所述深度学习网络进行训练,获得经训练的深度学习网络模型;将待分类的原始VPN或non‑VPN互联网流量数据包进行预处理;将预处理后的VPN或non‑VPN互联网流量数据包输入经训练的深度学习网络模型,获得分类结果。本发明的VPN和non‑VPN互联网流量分类方法通过一维卷积神经网络构建分类器,能够达到较高分类准确率,同时节省时间成本。
Description
技术领域
本发明属于模式识别技术领域,具体涉及一种基于多视角一维卷积神经网络的VPN和non-VPN网络流量分类方法,可用于对VPN和non-VPN数据流量进行精确分类。
背景技术
在过去的几十年中,由于网络服务质量、安全、计费、设计和工程等机制的实现与发展,流量分类技术受到了越来越多的关注。网络运营商在开展广泛的网络运营和管理活动时极大地依赖于流量分类的技术。例如,企业网络管理员或ISP(Internet serviceprovider,网络服务提供商)可能希望对业务关键服务的流量进行优先排序,识别未知流量来进行异常检测,或者对工作流量的负载进行特性描述,以设计有效的资源管理方案来满足不同应用程序的性能和资源需求。根据网络环境的不同,大规模的错误分类可能导致无法提供QoS(Quality of Service,服务质量)保证、产生额外的操作支出、安全漏洞甚至服务中断。
形式上,流量分类可以定义为根据任意一组预定义的特征参数来对网络流量单元(例如,包、流、会话等)进行分类。在过去,流量分类主要是基于TCP(Transmission ControlProtocol,传输控制协议)和UDP(User Datagram Protocol,用户数据包协议)的端口号进行的。然而,随着互联网和移动技术的不断扩展,网络协议栈的日益复杂,web应用程序的广泛使用,以及P2P网络等更复杂的用例,基于端口号的分类已经变得不够用了。DPI(DeepPacket Inspection,深度报文检测)被用作流量分类的一种替代方法。尽管如此,作为安全通信的基础,加密在今天的互联网中变得无处不在,为通过DPI进行分类带来了严重的障碍。因此,流量分类成为互联网研究的一大挑战。
DPI是一种能够对数据包的载荷部分进行检测的流量分析方法,可以对于数据包的载荷部分进行诸如入侵检测、渗透检测以及数据包的过滤等一系列的任务,通常这些过程是在网络的关键部分,被称为midddle box的硬件上进行工作。然而随着网络中,比如HTTPS等加密协议的出现,通常的middlebox在被加密的数据上进行分析往往不能得到很好的效果。Sherry J等人在对传统的middlebox进行研究后,提出了能够同时保持middlebox的功能性并且可以处理加密流量的BlindBox,但是BlindBox的处理重点仅在于加密流量。Cejka等人为了识别多样化的网络攻击,在应用层上提出了基于流程的模块化网络分析系统,用极少的内存来对数据进行不断地分析。
在深度报文检测方法能取得的效果越来越有限的情况下,人们将关注的重点放在了整个数据流的统计特征上而不再是单个数据包的载荷,根据统计特征采取机器学习的方法进行网络流量分类。机器学习的方法往往需要先对流量数据集进行统计特征的提取,而在提取过程中对于特征值的选择往往是一个需要着重考虑的部分。Thay等人提出了一种基于对等体连接数和进出方向流量数的特征对P2P流量进行分类的方法,并且在三种知名P2P应用上分类准确率可达90%。Ichino等人在以流为单位识别应用的离线技术上引入了多分类器的融合并用特征向量的评分来连接每个分类器。上述方法的虽然可以完成一定情况下的流量分类的工作,但是存在效果较差以及需要专业的知识等局限性。
随着深度学习的迅速发展和广泛应用,卷积神经网络在自然语言处理、影像分类、语音识别等方面表现出良好的性能。目前基于卷积神经网络的流量分类方法是将应用在影像分类上有良好表现的卷积神经网络直接应用在网络流量分类当中。将网络流量数据包中的每个字节转换成0-255之间的灰度值得到一幅二维的灰度流量图。然后将流量灰度图放入卷积神经网络模型当中进行训练,依据卷积神经网络强大的学习能力来实现对网络流量进行分类。
虽然目前将网络流量转换成二维图像的方法在网络流量分类上取得了比较好的效果,但是这种方法只是将网络流量分类问题放入了图像分类的框架当中,并没有对网络流量分类问题进行实际上的特异化处理,没有考虑原来网络模型应用到流量分类问题上的合理性和可解释性。将流量数据包转换成二维图像进行处理,并没有考虑原本流量数据包中数据组成形式的语义相关性。此外,目前的方法都是将整个流量包放入网络,没有考虑到不同结构蕴含信息的差异性。对于一个数据包来说,数据包头部所蕴含的信息和数据包载荷部分蕴含的信息是不同的,在神经网络中两部分对最终分类结果所提供支撑的信息量也是不同的。因此,简单地将包文头部部分和包文载荷部分用同一种卷积方式进行处理很有可能会遗漏包文头部的信息,对网络分类结果造成影响。
发明内容
为了解决现有技术中存在的上述问题,本发明提供了基于多视角一维卷积神经网络的VPN和non-VPN网络流量分类方法。本发明要解决的技术问题通过以下技术方案实现:
本发明提供了一种基于多视角一维卷积神经网络的VPN和non-VPN网络流量分类方法,包括:
S1:构建深度学习网络,所述深度学习网络包括头部特征提取单元、载荷特征提取单元、数据展开模块、全连接层和输出层,其中,所述头部特征提取单元和所述载荷特征提取单元分别提供两个视角,所述头部特征提取单元提供一个来自数据包协议头部的视角,所述载荷特征提取单元提供一个来自数据包传输层载荷部分的视角,两个单元的输出分别连接所述数据展开模块,所述数据展开模块的输出连接全连接层,所述全连接层的输出连接所述输出层;
S2:获取VPN或non-VPN互联网流量训练集;
S3:利用所述VPN或non-VPN互联网流量训练集对所述深度学习网络进行训练,获得经训练的深度学习网络模型;
S4:将待分类的原始VPN或non-VPN互联网流量数据包进行预处理;
S5:将预处理后的VPN或non-VPN互联网流量数据包输入经训练的深度学习网络模型,获得分类结果。
在本发明的一个实施例中,所述载荷特征提取单元包括依次连接的第一一维卷积层、第一下采样层、第二一维卷积层和第二下采样层,所述头部特征提取单元包括依次连接的第三一维卷积层。
在本发明的一个实施例中,所述第一一维卷积层、所述第二一维卷积层和所述第三一维卷积层的卷积核大小均为(1,N),激活函数为LeakyReLU函数,其中,N≥1。
在本发明的一个实施例中,所述第一下采样层和所述第二下采样层的池化窗口大小均为(1,M),M≥2。
在本发明的一个实施例中,所述S2包括:
收集预定数量的VPN和non-VPN互联网流量数据包,并剔除其中的无关协议数据包以及数据链路层协议的报头;
对所述互联网流量数据包进行传输层报头填充,以使不同的互联网流量数据包具有相同的传输层报头长度;
将所有互联网流量数据包统一为相同的字节长度并对IP地址进行匿名化处理,获得预处理后的互联网流量数据包;
对预处理后的每个互联网流量数据包添加类别标签,形成所述VPN或non-VPN网络流量训练集。
在本发明的一个实施例中,所述S3包括:
将所述VPN或non-VPN网络流量训练集中带标签的一维数据包输入所述深度学习网络中,对所述深度学习网络进行多轮训练并对所述深度学习网络的权重参数进行更新,每轮训练结束后利用验证集对训练后的深度学习网络进行验证并获得准确率,当预定的训练次数完成后,从所有训练结果中选取准确率最高的模型来作为最终训练后的深度学习网络模型,其中,将所述带标签的一维数据包的头部部分输入所述头部特征提取单元,载荷部分输入所述载荷特征提取单元。
在本发明的一个实施例中,所述S4包括:
剔除待分类的原始VPN或non-VPN互联网流量数据包中的无关协议数据包以及数据链路层协议的报头;
进行传输层报头填充,使得不同的互联网流量数据包具有相同的传输层报头长度;
将所述互联网流量数据包统一为相同的字节长度并对所述互联网流量数据包的IP地址进行匿名化处理,获得预处理后的VPN或non-VPN互联网流量数据包。
在本发明的一个实施例中,所述S5包括:
将预处理后的VPN或non-VPN互联网流量数据包输入经训练的深度学习网络模型,获得所述互联网流量数据包聊天、邮件、音频和视频四种分类类别的概率值,根据概率值的大小判定所述互联网流量数据包的类别,其中,将所述互联网流量数据包的头部部分输入所述头部特征提取单元,载荷部分输入所述载荷特征提取单元。
本发明的另一方面提供了一种存储介质,所述存储介质中存储有计算机程序,所述计算机程序用于执行上述实施例中任一项所述VPN和non-VPN网络流量分类方法的步骤。
本发明的又一方面提供了一种电子设备,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器调用所述存储器中的计算机程序时实现如上述实施例中任一项所述VPN和non-VPN网络流量分类方法的步骤。
与现有技术相比,本发明的有益效果在于:
1、本发明基于多视角一维卷积神经网络的VPN和non-VPN网络流量分类方法,通过一维卷积神经网络构建分类器,考虑了原本流量数据包中数据组成形式的语义相关性,能够从上下文环境里提取出具有代表性的特征来进行分类,可以获得较高的分类准确率,且所使用的网络结构简单,没有复杂的操作,一维卷积神经网络模型所需要的参数量相比于二维网络模型要少,但在网络流量分类上能够达到与复杂的二维卷积网络相当的准确率,节省了处理时间。
2、相比于传统的网络流量分类方法,本发明的方法无需网络流量领域内的专业分类知识,不需要选择网络特征来进行分类,只需要对网络流量数据包进行特定的处理然后放入训练好的分类网络当中进行分类即可。该方法节省了网络流量分类所需要的人力和时间,降低了网络流量分类的使用门槛。
3、由于数据包的头部和载荷部分蕴含的信息无论从信息质量还是信息量上来说都是不同的,因此本发明的分类方法在将数据包放入神经网络时分别使用两种不同的结构来对数据包的头部信息和数据包的载荷信息进行特异化的信息提取。相比于传统的对头部和载荷进行同样处理的网络,特异化的处理能够更好地提取两部分的有用信息以提升模型的分类结果。
以下将结合附图及实施例对本发明做进一步详细说明。
附图说明
图1是本发明实施例提供的一种基于多视角一维卷积神经网络的VPN和non-VPN网络流量分类方法的流程图;
图2是本发明实施例提供的一种深度学习网络的结构示意图;
图3是本发明实施例提供的一种深度学习网络的数据处理过程示意图;
图4是本发明实施例提供的一种互联网流量数据包预处理流程图。
具体实施方式
为了进一步阐述本发明为达成预定发明目的所采取的技术手段及功效,以下结合附图及具体实施方式,对依据本发明提出的一种基于多视角一维卷积神经网络的VPN和non-VPN网络流量分类方法进行详细说明。
有关本发明的前述及其他技术内容、特点及功效,在以下配合附图的具体实施方式详细说明中即可清楚地呈现。通过具体实施方式的说明,可对本发明为达成预定目的所采取的技术手段及功效进行更加深入且具体地了解,然而所附附图仅是提供参考与说明之用,并非用来对本发明的技术方案加以限制。
应当说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的物品或者设备中还存在另外的相同要素。
虚拟专用网络(VPN)的出现给网络管理带来了巨大的挑战,本发明实施例旨在对VPN和non-VPN互联网流量进行精确分类以提高网络管理的效率和安全性。请参见图1,图1是图1是本发明实施例提供的一种基于多视角一维卷积神经网络的VPN和non-VPN网络流量分类方法的流程图。该VPN和non-VPN网络流量分类方法,包括:
S1:构建深度学习网络,所述深度学习网络包括头部特征提取单元、载荷特征提取单元、数据展开模块、全连接层和输出层,其中,所述头部特征提取单元和所述载荷特征提取单元分别提供两个视角,所述头部特征提取单元提供一个来自数据包协议头部的视角,所述载荷特征提取单元提供一个来自数据包传输层载荷部分的视角,两个单元的输出分别连接所述数据展开模块,所述数据展开模块的输出连接全连接层,所述全连接层的输出连接所述输出层。
请参见图2,图2是本发明实施例提供的一种深度学习网络的结构示意图。所述载荷特征提取单元包括依次连接的第一一维卷积层、第一下采样层、第二一维卷积层和第二下采样层,用于输入VPN和non-VPN互联网流量数据中的载荷部分并对所述载荷部分进行特征提取。这里所述的互联网流量数据中的头部部分包括流量数据包的IP报头和TCP报头。所述头部特征提取单元包括依次连接的第三一维卷积层,用于输入VPN和non-VPN互联网流量数据中的头部部分并对所述头部部分进行特征提取。
需要说明的是,在本实施例中,将一个数据包分成头部和载荷两个部分,分别提供两种视角:第一个视角来自网络层头部和传输层头部组成的头部部分,这一部分包含协议长度、传输端口以及标志位等明确的概括信息,能够为网络流量分类提供一个俯瞰全局的视角,第一个视角希望能够从头部提取出特征来进行分类;第二个视角来自传输层载荷部分,由于当今网络环境的复杂,为了满足不同的需求,在传输层之上出现了诸如HTTP、FTP等各式各样的协议,第二个视角希望能够从载荷部分出发提取出其中的可用特征来用于分类。
具体地,如图2和图3所示,第三一维卷积层(卷积层C3)输入互联网流量数据中的头部部分,用于对输入的数据包头部进行卷积运算,减少网络参数,增强数据特征;
第一一维卷积层(卷积层C1)输入互联网流量数据中的载荷部分,用于对输入的载荷部分进行卷积运算,减少网络参数,增强数据特征;第一下采样层(池化层P1),采用最大池化的方法对第一一维卷积层的输出结果进行下采样运算并保留有用信息;第二一维卷积层(卷积层C2),用于第一下采样层的输出结果进行卷积运算,减少网络参数,增强数据特征,第二下采样层(池化层P2)采用最大池化的方法对第二一维卷积层的输出结果进行下采样运算并保留有用信息,数据展开模块用于接入第三一维卷积层(卷积层C3)和第二下采样层(池化层P2)的下采样结果拼接在一起,随后展开成1*M维的下采样张量;全连接层用于将展开的1*M维下采样张量进行拟合分类输出成一个向量,输出层设置有四个神经元分别对应分类的四个类别,用于将全连接层的输出结果映射成分类的结果输出,最终得到网络的分类结果。进一步地,在该深度学习网络中,通过设置第一一维卷积层、第二一维卷积层和第三一维卷积层的卷积核的大小,使用二维卷积来实现一维卷积的操作。第一一维卷积层、第二一维卷积层和第三一维卷积层的卷积核大小均为(1,N),激活函数为LeakyReLU函数,其中,N≥1。
优选地,在第三一维卷积层中,设置卷积核大小为(1,3)来对输入的头部数据进行卷积。第三一维卷积层层的卷积核个数设定为30个。在激活函数上使用了LeakyReLU函数来保留当激活函数的输入小于0时的信息。在第一一维卷积层中,设置卷积核大小为(1,3)来对输入的载荷数据进行卷积,卷积核个数设定为15个。在第二一维卷积层中,设置卷积核大小为(1,3),卷积核个数设定为30个。
进一步地,第一下采样层和第二下采样层的池化窗口大小均为(1,M),M≥2。第一下采样层和第二下采样层均使用最大池化的方法,同样使用二维的池化操作通过调整池化窗口的大小来实现一维的最大池化。优选地,第一下采样层和第二下采样层的池化窗口大小均为(1,3),步幅设置为3。本实施例的数据展开模块对第三一维卷积层和第二下采样层的输出结构进行合并随后展开,构成一个1*6030维度的下采样张量。全连接层用于将展开的1*6030维下采样张量进行拟合分类输出成一个向量,输出层利用4个神经元分别对应分类的4个类别(聊天、邮件、音频和视频)来将全连接层的输出结果进行分类。
S2:获取VPN或non-VPN互联网流量训练集。
进一步地,所述S2包括:
S21:收集预定数量的VPN和non-VPN互联网流量数据包,并剔除其中的无关协议数据包以及数据链路层协议的报头。
具体地,由于收集来的互联网流量数据包都是来自一个应用活动中的完整过程,其中包含了无法提供区分特定应用的协议数据包,比如DNS协议、ARP协议等,因此需要先将这些无关协议数据包从训练数据集中剔除出去。此外,在数据包中底层的协议负责数据包在以太网等实际网络环境下的传输,这类协议对于区分不同应用不能够提供有意义的信息,因此将数据链路层协议的报头去除。
S22:对所述互联网流量数据包进行传输层报头填充,以使不同的互联网流量数据包具有相同的传输层报头长度。
在收集来的互联网流量数据包中由于来自不同的协议,因此传输层的报头长度是不同的,比如TCP和UDP的报头长度。TCP报头通常为20个字节,UDP报头通常为8个字节,为了数据中结构的统一,在UDP报头之后填充12字节将其长度与TCP长度对齐。
S23:将所有互联网流量数据包统一为相同的字节长度并对IP地址进行匿名化处理,获得预处理后的互联网流量数据包。
具体地,在填充完报头之后,数据包的长度不能够统一。但卷积神经网络对于输入要求必须是统一格式,因此对数据包进行截断或者填充。对数据流量的长度进行统计并结合最大传输单元的长度为1500字节,本实施例将所有的数据包进行截断或者填充0字节统一成1500字节长度。
此外,神经网络具有强大的学习能力,为了避免神经网络直接从有限的IP地址环境中学到IP地址与流量类别的对应关系,本实施例将IP地址进行匿名化操作,用0来代替所有训练集中的IP地址。
S24:对预处理后的每个互联网流量数据包添加类别标签,形成所述VPN或non-VPN网络流量训练集。
具体地,将预处理后的每个互联网流量数据包添加相应的类别标签,分别包括聊天、邮件、音频和视频四种分类类别,最终形成具有类别标签的VPN或non-VPN网络流量训练集。
S3:利用所述VPN或non-VPN互联网流量训练集对所述深度学习网络进行训练,获得经训练的深度学习网络模型。
具体地,将训练样本中带标签的一维数据包按批次输入所述深度学习网络中,对所述深度学习网络进行多轮训练并对所述深度学习网络的权重参数进行更新,每轮训练结束后利用验证集对训练后的深度学习网络进行验证并获得准确率,当预定的训练次数完成后,从所有训练结果中选取准确率最高的模型作为最终训练后的深度学习网络模型,其中,将所述带标签的一维数据包的头部部分输入所述头部特征提取单元,载荷部分输入所述载荷特征提取单元。
S4:将待分类的原始VPN或non-VPN互联网流量数据包进行预处理。
类似于对VPN或non-VPN网络流量训练集的预处理过程,本步骤在利用深度学习网络对流量数据进行分类之前,需要首先对待分类的原始VPN或non-VPN互联网流量数据包进行预处理。具体地,剔除待分类的原始VPN或non-VPN互联网流量数据包中的协议数据包以及数据链路层协议的报头。随后,进行传输层报头填充,使得不同的互联网流量数据包具有相同的传输层报头长度;将所述互联网流量数据包统一为相同的字节长度并对所述互联网流量数据包的IP地址进行匿名化处理,获得预处理后的VPN或non-VPN互联网流量数据包。本实施例将所有的数据包进行截断或者填充0字节统一成1500字节长度。
S5:将预处理后的VPN或non-VPN互联网流量数据包输入经训练的深度学习网络模型,获得分类结果。
具体地,将预处理后的VPN或non-VPN互联网流量数据包输入经训练的深度学习网络模型,经过并行的三个卷积层、池化层、数据展开模块、全连接层和输出层的运算得到输出结果,获得所述互联网流量数据包聊天、邮件、音频和视频四种分类类别的概率值,根据概率值的大小判定所述互联网流量数据包的类别,其中,将所述互联网流量数据包的头部部分输入所述头部特征提取单元,载荷部分输入所述载荷特征提取单元。
需要说明的是,使用二维卷积来进行网络流量分类,将原本一维的数据包流量转变成二维图像,不仅将原来连续一维的数据包切开了,分离了语义上的关联信息,而且引入了新的维度,但在这个新维度上并没有产生任何新的信息出来,因此在新维度上卷积是不合理的。一维的流量数据包可以类比成所使用的句子,对于数据包中的一个字节与它关联程度最大的就是它前面的几个字节和后面的几个字节,也可将这些前后字节类比成句子中的上下文。当卷积层从一维的流量数据包中提取信息的时候,希望能够从相关部分中提取出能够代表这部分的特征量,因此本实施例使用一维卷积的方法来从一维流量数据包中提取具有代表性的特征量。而使用二维卷积的方式很有从可能将两个不相关的部分看作一个整体来提取特征,这样会造成理解上的不合理以及两个不同部分信息的差异过大而导致损失部分信息。因此,相比于利用二维卷积来进行网络流量分类,本发明实施例基于一维卷积神经网络的VPN和non-VPN互联网流量分类方法考虑了原本流量数据包中数据组成形式的语义相关性,也可以获得更高的分类准确率。
以下通过仿真实验对本实施例提出的基于多视角一维卷积神经网络的VPN和non-VPN网络流量分类方法的效果进行进一步说明。
(1)仿真实验条件:
本实验是在中央处理器为Intel(R)Core(TM)i9-10900K 2.80GHZ、内存3.7G,18.04.1-Ubuntu操作系统上,显卡为3090 24GB涡轮公版卡,Python版本为3.8.8的环境上运行。
(2)实验内容和结果:
分别利用本实施例基于多视角一维卷积神经网络的方法、以及一维卷积神经网络方法和传统的二维神经网络方法在相同的VPN和Non-VPN数据集上进行实验,分类结果如表1所示,其中,所述二维卷积神经网络方法是把经过预处理的数据包转变为39*39(本来应该是1500字节长的数据,再往后面添加21个0,变成1521字节长度)的二维图片,随后通过神经网络模型进行分类,在该神经网络模型里卷积操作主要使用二维卷积的操作;所述一维卷积神经网络方法是把经过预处理的数据包保持一维结构(1500字节长度),随后通过神经网络模型进行分类,在该神经网络模型里的卷积操作主要使用一维卷积的操作。需要说明的是,精确率(Precision)是针对预测结果而言的,其含义是在被所有预测为正的样本中实际为正样本的概率。召回率(Recall)是针对原样本而言的,其含义是在实际为正的样本中被预测为正样本的概率。F1分数,对精确率和召回率进行同时考虑的值。
表1三种方法的分类结果
由表1可见,本发明实施例的方法在精确率上优于其他两种方法,即本发明实施例的方法的精确率的平均值为0.806;本发明实施例的方法在召回率上优于其他两种方法,即本方法的召回率的平均值为0.768;本本发明实施例的方法在F1分数上同样优于其他两种方法,即本方法的F1分数为0.772。
综上,本发明实施例基于多视角一维卷积神经网络的VPN和non-VPN网络流量分类方法,通过一维卷积神经网络构建分类器,考虑了原本流量数据包中数据组成形式的语义相关性,能够从上下文环境里提取出具有代表性的特征来进行分类,可以获得较高的分类准确率,且所使用的网络结构简单,没有复杂的操作,一维卷积神经网络模型所需要的参数量相比于二维网络模型要少,但在网络流量分类上能够达到与复杂的二维卷积网络相当的准确率,节省了处理时间。相比于传统的网络流量分类方法,本发明的方法无需网络流量领域内的专业分类知识,不需要选择网络特征来进行分类,只需要对网络流量数据包进行特定的处理然后放入训练好的分类网络当中进行分类即可。该方法节省了网络流量分类所需要的人力和时间,降低了网络流量分类的使用门槛。
本发明的又一实施例提供了一种存储介质,所述存储介质中存储有计算机程序,所述计算机程序用于执行上述实施例中所述VPN和non-VPN网络流量分类方法的步骤。本发明的再一方面提供了一种电子设备,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器调用所述存储器中的计算机程序时实现如上述实施例所述VPN和non-VPN网络流量分类方法的步骤。具体地,上述以软件功能模块的形式实现的集成的模块,可以存储在一个计算机可读取存储介质中。上述软件功能模块存储在一个存储介质中,包括若干指令用以使得一台电子设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本发明各个实施例所述方法的部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上内容是结合具体的优选实施方式对本发明所作的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属技术领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干简单推演或替换,都应当视为属于本发明的保护范围。
Claims (9)
1.一种基于多视角一维卷积神经网络的VPN和non-VPN网络流量分类方法,其特征在于,包括:
S1:构建深度学习网络,所述深度学习网络包括头部特征提取单元、载荷特征提取单元、数据展开模块、全连接层和输出层,其中,所述头部特征提取单元和所述载荷特征提取单元分别提供一个视角,所述头部特征提取单元提供一个来自数据包协议头部的视角,所述载荷特征提取单元提供一个来自数据包传输层载荷部分的视角,两个单元的输出分别连接所述数据展开模块,所述数据展开模块的输出连接全连接层,所述全连接层的输出连接所述输出层;
S2:获取VPN或non-VPN互联网流量训练集;
S3:利用所述VPN或non-VPN互联网流量训练集对所述深度学习网络进行训练,获得经训练的深度学习网络模型;
S4:将待分类的原始VPN或non-VPN互联网流量数据包进行预处理;
S5:将预处理后的VPN或non-VPN互联网流量数据包输入经训练的深度学习网络模型,获得分类结果;
进一步地,所述S3包括:
将所述VPN或non-VPN网络流量训练集中带标签的一维数据包输入所述深度学习网络中,对所述深度学习网络进行多轮训练并对所述深度学习网络的权重参数进行更新,当预定的训练次数完成后,从所有训练结果中选取准确率最高的模型作为最终训练后的深度学习网络模型,其中,将所述带标签的一维数据包的头部部分输入所述头部特征提取单元,载荷部分输入所述载荷特征提取单元。
2.根据权利要求1所述的基于多视角一维卷积神经网络的VPN和non-VPN网络流量分类方法,其特征在于,所述载荷特征提取单元包括依次连接的第一一维卷积层、第一下采样层、第二一维卷积层和第二下采样层,所述头部特征提取单元包括依次连接的第三一维卷积层。
3.根据权利要求2所述的基于多视角一维卷积神经网络的VPN和non-VPN网络流量分类方法,其特征在于,所述第一一维卷积层、所述第二一维卷积层和所述第三一维卷积层的卷积核大小均为(1,N),激活函数为LeakyReLU函数,其中,N≥1。
4.根据权利要求3所述的基于多视角一维卷积神经网络的VPN和non-VPN网络流量分类方法,其特征在于,所述第一下采样层和所述第二下采样层的池化窗口大小均为(1,M),M≥2。
5.根据权利要求1所述的基于多视角一维卷积神经网络的VPN和non-VPN网络流量分类方法,其特征在于,所述S2包括:
收集预定数量的VPN和non-VPN互联网流量数据包,并剔除其中的无关协议数据包以及数据链路层协议的报头;
对所述互联网流量数据包进行传输层报头填充,以使不同的互联网流量数据包具有相同的传输层报头长度;
将所有互联网流量数据包统一为相同的字节长度并对IP地址进行匿名化处理,获得预处理后的互联网流量数据包;
对预处理后的每个互联网流量数据包添加类别标签,形成所述VPN或non-VPN网络流量训练集。
6.根据权利要求1所述的基于多视角一维卷积神经网络的VPN和non-VPN网络流量分类方法,其特征在于,所述S4包括:
剔除待分类的原始VPN或non-VPN互联网流量数据包中的无关协议数据包以及数据链路层协议的报头;
进行传输层报头填充,使得不同的互联网流量数据包具有相同的传输层报头长度;
将所述互联网流量数据包统一为相同的字节长度并对所述互联网流量数据包的IP地址进行匿名化处理,获得预处理后的VPN或non-VPN互联网流量数据包。
7.根据权利要求1所述的基于多视角一维卷积神经网络的VPN和non-VPN网络流量分类方法,其特征在于,所述S5包括:
将预处理后的VPN或non-VPN互联网流量数据包输入经训练的深度学习网络模型,获得所述互联网流量数据包聊天、邮件、音频和视频四种分类类别的概率值,根据概率值的大小判定所述互联网流量数据包的类别,其中,将所述互联网流量数据包的头部部分输入所述头部特征提取单元,载荷部分输入所述载荷特征提取单元。
8.一种存储介质,所述存储介质中存储有计算机程序,所述计算机程序用于执行权利要求1至7中任一项所述VPN和non-VPN网络流量分类方法的步骤。
9.一种电子设备,其特征在于,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器调用所述存储器中的计算机程序时实现如权利要求1至7任一项所述VPN和non-VPN网络流量分类方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210032809.7A CN114553722B (zh) | 2022-01-12 | 2022-01-12 | 基于多视角一维卷积神经网络的VPN和non-VPN网络流量分类方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210032809.7A CN114553722B (zh) | 2022-01-12 | 2022-01-12 | 基于多视角一维卷积神经网络的VPN和non-VPN网络流量分类方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114553722A CN114553722A (zh) | 2022-05-27 |
CN114553722B true CN114553722B (zh) | 2023-04-28 |
Family
ID=81671235
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210032809.7A Active CN114553722B (zh) | 2022-01-12 | 2022-01-12 | 基于多视角一维卷积神经网络的VPN和non-VPN网络流量分类方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114553722B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115134168A (zh) * | 2022-08-29 | 2022-09-30 | 成都盛思睿信息技术有限公司 | 基于卷积神经网络的云平台隐蔽通道检测方法及系统 |
CN117596082B (zh) * | 2024-01-18 | 2024-03-26 | 网御安全技术(深圳)有限公司 | 一种隐蔽信道的检测方法、系统及相关设备 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111860628A (zh) * | 2020-07-08 | 2020-10-30 | 上海乘安科技集团有限公司 | 一种基于深度学习的流量识别与特征提取方法 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7617136B1 (en) * | 2003-07-15 | 2009-11-10 | Teradata Us, Inc. | System and method for capturing, storing and analyzing revenue management information for the travel and transportation industries |
CN101848160B (zh) * | 2010-05-26 | 2012-07-18 | 钱叶魁 | 在线检测和分类全网络流量异常的方法 |
CN109361617B (zh) * | 2018-09-26 | 2022-09-27 | 中国科学院计算机网络信息中心 | 一种基于网络包载荷的卷积神经网络流量分类方法及系统 |
CN112511555A (zh) * | 2020-12-15 | 2021-03-16 | 中国电子科技集团公司第三十研究所 | 基于稀疏表示和卷积神经网络的私有加密协议报文分类法 |
-
2022
- 2022-01-12 CN CN202210032809.7A patent/CN114553722B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111860628A (zh) * | 2020-07-08 | 2020-10-30 | 上海乘安科技集团有限公司 | 一种基于深度学习的流量识别与特征提取方法 |
Also Published As
Publication number | Publication date |
---|---|
CN114553722A (zh) | 2022-05-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
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 | |
Rezaei et al. | Deep learning for encrypted traffic classification: An overview | |
Lotfollahi et al. | Deep packet: A novel approach for encrypted traffic classification using deep learning | |
Zeng et al. | $ Deep-Full-Range $: a deep learning based network encrypted traffic classification and intrusion detection framework | |
CN114553722B (zh) | 基于多视角一维卷积神经网络的VPN和non-VPN网络流量分类方法 | |
CN112163594A (zh) | 一种网络加密流量识别方法及装置 | |
CN113162908B (zh) | 一种基于深度学习的加密流量检测方法及系统 | |
Guo et al. | Deep learning-based real-time VPN encrypted traffic identification methods | |
CN111860628A (zh) | 一种基于深度学习的流量识别与特征提取方法 | |
CN112333706B (zh) | 物联网设备异常检测方法、装置、计算设备及存储介质 | |
CN110417729B (zh) | 一种加密流量的服务与应用分类方法及系统 | |
Monshizadeh et al. | Performance evaluation of a combined anomaly detection platform | |
CN113037730A (zh) | 基于多特征学习的网络加密流量分类方法及系统 | |
Soleymanpour et al. | CSCNN: cost-sensitive convolutional neural network for encrypted traffic classification | |
CN112019449B (zh) | 流量识别抓包方法和装置 | |
CN112949739A (zh) | 一种基于智能流量分类的信息传输调度方法及系统 | |
D’Angelo et al. | DNS tunnels detection via DNS-images | |
Soleymanpour et al. | An efficient deep learning method for encrypted traffic classification on the web | |
CN113472751A (zh) | 一种基于数据包头的加密流量识别方法及装置 | |
CN112910853A (zh) | 基于混合特征的加密流量分类方法 | |
CN114650229B (zh) | 基于三层模型sftf-l的网络加密流量分类方法与系统 | |
Haghighat et al. | SAWANT: smart window based anomaly detection using netflow traffic | |
CN117056797A (zh) | 基于非平衡数据的加密流量分类方法、设备及介质 | |
CN116340814A (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 |