技术新讯 > 电子通信装置的制造及其应用技术 > 一种基于卷积神经网络的单向流量分类系统、方法、程序、设备及存储介质  >  正文

一种基于卷积神经网络的单向流量分类系统、方法、程序、设备及存储介质

  • 国知局
  • 2024-08-08 16:54:20

本发明属于网络流量分类,具体涉及一种基于卷积神经网络的单向流量分类系统、方法、程序、设备及存储介质。

背景技术:

1、为了实现应用程序流量分类,文献[taylorv f,spolaor r,conti m,etal.robust smartphone app identification via encrypted network trafficanalysis[j].ieee transactions on information forensics and security,2018,13(1):63-78.]提出了appscanner。该方法提取了数据包的长度、时间戳,然后根据时间戳计算得到数据包间隔时间。该方法使用了阈值来只对具有一定可信度的流量进行分类,对在预测过程中未达到置信阈值的流量直接进行丢弃不予分类。由于appscanner只对置信度高的流量进行了分类,系统的整体分类准确率不高。该方法使用了双向流量的特征,在只能获取单向流量的场景识别准确率下降,同时该方法使用了手工选取的特征不具有普适性,由于计算了数据包长度与时间的平均值等数学参数,计算开销大。

2、文献[van ede t,bortolameotti r,continella a,et al.flowprint:semi-supervised mobile-app fingerprinting on encrypted network traffic[c].//27thannual network and distributed system security symposium(ndss),2020:1-18.]提出了flowprint,该方法使用了数据包中的明文信息如:源ip地址、目的ip地址等来对目的地进行建模,然后使用随机森林分类器对流量进行分类。该方法使用了半监督学习的方法对网络流量的目的地进行建模实现流量识别,该方法直接使用了网络流量的ip地址,侵犯了用户隐私,当遇到隐藏ip地址的情况时,该方法不再可用,而本发明提出的方法直接使用加密数据包负载信息不侵犯用户隐私。

3、文献[wang x,chen s h,su j s,et al.app-net:a hybrid neural network forencrypted mobile traffic classification[c].//39th ieee internationalconference on computer communications(ieee infocom),2020:424-429.]提出了app-net,该方法使用了深度学习的方法对流量进行分类。app-net提取了流量的数据包长度序列将其输入长短期记忆网络、提取出ssl/tls握手阶段交换的第一个数据包(clienthello)的有效负载输入卷积神经网络来分别学习有效特征。然后使用特征融合层结合从lstm和cnn中输出的特征,特征融合层对向量进行了串联,最后融合特征输入到输出层以执行分类。该方法使用了双向流量的特征,在只能获取单向流量的情况下,识别准确率下降。

技术实现思路

1、本发明的目的在于提供一种基于卷积神经网络的单向流量分类系统和方法。

2、一种基于卷积神经网络的单向流量分类系统,包括单向流量获取模块、单向流量处理模块和单向流量分类模块;所述单向流量获取模块位于用户与相应的应用服务器之间路径上的关键点上,用于获取通过本地网络网关的上行链路或下行链路流量,形成原始流量数据;所述单向流量处理模块基于源ip地址、目的ip地址、源端口、目的端口和协议号拆分原始流量数据,记录具有相同五元组流量的数据包大小、方向、时间戳,按时间形成单向流量序列;所述单向流量分类模块用于提取单向流量序列的深层特征,并识别单向流量序列所属的应用流量类别;所述单向流量分类模块包括一维卷积、随机失活层、双向长短期记忆网络和注意力机制;所述一维卷积中每个卷积层都有指定数量和大小的过滤器,并且每个过滤器都会扫描整个数据点集以提取局部特征;所述随机失活层用于随机地关闭部分神经元,以增强模型的泛化能力;所述双向长短期记忆网络用于学习单向流量数据的上下文关系;所述注意力机制用于提取关键特征。

3、一种基于卷积神经网络的单向流量分类方法,包括以下步骤:

4、步骤1:获取通过本地网络网关的上行链路或下行链路流量,形成原始流量数据;

5、步骤2:基于源ip地址、目的ip地址、源端口、目的端口和协议号拆分原始流量数据,记录具有相同五元组流量的数据包大小、方向、时间戳,按时间形成单向流量序列;

6、步骤3:将单向流量序列输入到预训练好的单向流量分类模型中,提取单向流量序列的深层特征,并识别单向流量序列所属的应用流量类别。

7、进一步地,所述单向流量分类模型的预训练方法具体为:

8、所述单向流量分类模型包括一维卷积、随机失活层、双向长短期记忆网络和注意力机制;所述一维卷积中每个卷积层都有指定数量和大小的过滤器,并且每个过滤器都会扫描整个数据点集以提取局部特征;所述随机失活层用于随机地关闭部分神经元,以增强模型的泛化能力;所述双向长短期记忆网络用于学习单向流量数据的上下文关系,包括前向lstm和后向lstm;

9、使用mini-batch方法,将单向流量序列数据集分割成若干子集;对于每个子集,输入到单向流量分类模型中进行迭代训练;在每次迭代中,通过梯度下降优化算法,计算并更新识别模型参数,以逐步提升识别模型对数据的拟合能力;

10、首先将单向流量序列l的每个整数值元素映射到相应的实数向量,通过在最开始添加嵌入层来执行转换,嵌入后每个单向流量序列l看作是一个矩阵d表示嵌入向量的维数;

11、在训练阶段,对于给定的时间步长t,小批量输入是n是子集中单向流量序列的数量;在双向长短期记忆网络架构中,假设此时间步的前向和后向隐藏状态分别为和计算前向和后向隐藏状态更新的公式为:

12、

13、

14、其中,φ是隐藏层激活函数,模型参数包括权重参数和偏置参数然后,将前向和后向隐藏状态和连接起来形成隐藏状态

15、为了进一步提高lstm网络的学习能力,在单向流量分类模型中堆叠了两层bilstm;第一个双向层的隐藏状态ht作为输入传递给第二个双向层,最后输出层用第二层的ht计算得到输出ot:

16、ot=htwhq+bqp

17、其中,权重参数whq和偏置参数bq为输出层的模型参数,q为输出个数;使用最终输出向量ot作为特征提取层的输出,输入到注意力层中通过非线性变换得到权重vt,然后通过softmax激活函数生成目标注意力权重pt,最后计算pt与ot的加权和得到最终权重s:

18、vt=tanh(whot+bw)

19、

20、s=∑ptot

21、所述softmax激活函数位于单向流量分类模型的全连接层,应用于将上一层网络输出的向量进行归一化操作,转换为(0,1)之间的数值;在训练阶段,softmax激活函数输出的向量可以被解释为一个概率分布,是给定输入的每个类的估计条件概率;通过检查实际类别的概率并将估计概率与现实进行比较,通过计算得到损失函数,它实际上是一个分类熵,公式如下:

22、

23、其中,pi是预测的返回概率,n是受监控的类别的数;对其决策有信心的分类器为每个预测类别提供高概率,从而导致熵最小化。

24、一种计算机装置/设备/系统,包括存储器、处理器及存储在存储器上的计算机程序,所述处理器执行所述计算机程序以实现上述基于卷积神经网络的单向流量分类方法的步骤。

25、一种计算机可读存储介质,其上存储有计算机程序/指令,该计算机程序/指令被处理器执行时实现上述基于卷积神经网络的单向流量分类方法的步骤。

26、一种计算机程序产品,包括计算机程序/指令,该计算机程序/指令被处理器执行时实现上述基于卷积神经网络的单向流量分类方法的步骤。

27、本发明的有益效果在于:

28、本发明在多威胁模型适应性、基于深度学习的流量分类、模型训练和修正算法以及广泛适用性等方面,通过考虑本地攻击者和远程攻击者的位置差异和数据包收集能力,使得该方法更具适应性。采用卷积神经网络技术,构建基于softmax的移动应用程序流量分类模型,实现对应用程序流量的有效分类,模型训练和修正算法提高了模型的鲁棒性和准确性。

本文地址:https://www.jishuxx.com/zhuanli/20240808/271101.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。