[发明专利]一种基于二维卷积神经网络的应用层协议识别方法在审
申请号: | 201910235609.X | 申请日: | 2019-03-26 |
公开(公告)号: | CN109871948A | 公开(公告)日: | 2019-06-11 |
发明(设计)人: | 洪征;冯文博;李毅豪;付梦琳;周振吉;李华波;赵鹏 | 申请(专利权)人: | 中国人民解放军陆军工程大学 |
主分类号: | G06N3/04 | 分类号: | G06N3/04;H04L29/08 |
代理公司: | 南京瑞弘专利商标事务所(普通合伙) 32249 | 代理人: | 刘珊珊 |
地址: | 210007*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 应用层协议 二维卷积 神经网络 分类模型 网络流 卷积神经网络 网络协议识别 原始网络数据 数据预处理 提取特征 协议识别 训练过程 自动提取 准确率 构建 流转 捕获 网络 | ||
1.一种基于二维卷积神经网络的应用层协议识别方法,其特征在于,包括顺序执行的步骤(1)至(3):
(1)数据预处理,包括步骤:
(1-1)将捕获的原始网络流进行流重组,将捕获的每一条原始网络流中捕获的数据包重新整合为有序流;
(1-2)对重组得到的每一条网络流进行流切分,截取出每条网络流前部的一段固定长度的数据作为该条网络流协议识别的依据;
(1-3)对每一条网络流进行归一化处理:为每一条网络流构造一个长度与相应截取数据的长度相同的向量x,将截取数据中每个字节对应的十进制数值依次赋给向量中的各个分量,将向量x中每个分量的数值除以256,使分量的取值统一到区间[0,1)内;然后,将向量x中的所有分量按排序等分为若干组,建立二维特征矩阵,以每一组为对应矩阵中的一行的规律将向量x中的所有分组依次填充到二维特征矩阵中;
(1-4)为每一条原始网络流添加应用层协议类型标签;
(2)搭建二维卷积神经网络,二维卷积神经网络输入层的数据格式与步骤(1)中二维特征矩阵的格式一致;将步骤(1)中得到的各条网络流的二维特征矩阵和相应的应用层协议类型标签作为训练数据,对二维卷积神经网络进行训练,训练过程中根据二维卷积神经网络输出的预测值与真实的应用层协议标签之间的差异,调整卷积神经网络中的各项参数,迭代训练二维卷积神经网络,直至满足预设的停止条件;
(3)捕获应用层信息未知的网络流,对捕获的网络流依次进行流重组、流切分、归一化处理,得到应用层信息未知的网络流的二维特征矩阵,将二维特征矩阵输入训练好的二维卷积神经网络,计算得到网络流的应用层协议类型。
2.根据权利要求1所述的一种基于二维卷积神经网络的应用层协议识别方法,其特征在于,所述一条网络流为一次完整的TCP连接所形成的TCP流,或者一次UDP交互所形成的UDP流。
3.根据权利要求2所述的一种基于二维卷积神经网络的应用层协议识别方法,其特征在于,对于TCP流的流重组步骤为:以TCP连接建立的时刻为TCP流的开始时刻,以TCP连接建立连接断开的时刻作为TCP流的结束时刻,利用TCP首部的序列号和标识,将到达的数据包重新整合为一条有序流;对于UDP流的流重组步骤为:设置一个时间窗口,以时间窗口中第一个数据包的发送时间为UDP流的开始时间,在时间窗口所规定的时间内未捕获下一个数据包,认为这条UDP流结束,将该时刻作为UDP流的结束时间,将时间窗口内捕获到的所有UDP数据包按照捕获时间从前到后进行排序。
4.根据权利要求3所述的一种基于二维卷积神经网络的应用层协议识别方法,其特征在于,所述步骤(1-4)中采用one-hot标签的方式标识应用层协议类型标签。
5.根据权利要求4所述的一种基于二维卷积神经网络的应用层协议识别方法,其特征在于,所述卷积神经网络结构包括依次级联的输入层、C1层、S2层、C3层、S4层、FC5层、FC6层、FC7层和输出层,其中,C1层、C3层为卷积层,S2、S4为池化层,FC5层、FC6层、FC7层为全连接层。
6.根据权利要求5所述的一种基于二维卷积神经网络的应用层协议识别方法,其特征在于,所述输出层为一个SoftMax分类器,输出层有n个神经元,n为应用层协议的类别总数。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国人民解放军陆军工程大学,未经中国人民解放军陆军工程大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910235609.X/1.html,转载请声明来源钻瓜专利网。