CN115225731A - 一种基于混合神经网络的在线协议识别方法 - Google Patents
一种基于混合神经网络的在线协议识别方法 Download PDFInfo
- Publication number
- CN115225731A CN115225731A CN202210906303.4A CN202210906303A CN115225731A CN 115225731 A CN115225731 A CN 115225731A CN 202210906303 A CN202210906303 A CN 202210906303A CN 115225731 A CN115225731 A CN 115225731A
- Authority
- CN
- China
- Prior art keywords
- protocol
- data packet
- network
- data
- word
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 56
- 238000013528 artificial neural network Methods 0.000 title claims abstract description 24
- 239000013598 vector Substances 0.000 claims abstract description 78
- 230000011218 segmentation Effects 0.000 claims abstract description 17
- 238000007781 pre-processing Methods 0.000 claims description 31
- 238000000605 extraction Methods 0.000 claims description 26
- 238000012549 training Methods 0.000 claims description 21
- 238000011176 pooling Methods 0.000 claims description 20
- 238000012545 processing Methods 0.000 claims description 18
- 230000006870 function Effects 0.000 claims description 14
- 238000003860 storage Methods 0.000 claims description 13
- 238000004590 computer program Methods 0.000 claims description 11
- 238000001914 filtration Methods 0.000 claims description 11
- 230000004913 activation Effects 0.000 claims description 8
- 238000009826 distribution Methods 0.000 claims description 2
- 238000004364 calculation method Methods 0.000 claims 1
- 230000007246 mechanism Effects 0.000 abstract description 14
- 238000010586 diagram Methods 0.000 description 9
- 230000008569 process Effects 0.000 description 3
- 238000011160 research Methods 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 230000001364 causal effect Effects 0.000 description 2
- 238000013527 convolutional neural network Methods 0.000 description 2
- 230000007547 defect Effects 0.000 description 2
- 230000002452 interceptive effect Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000000306 recurrent effect Effects 0.000 description 2
- 238000005070 sampling Methods 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 230000007123 defense Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 230000002068 genetic effect Effects 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 230000001537 neural effect Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 238000010223 real-time analysis Methods 0.000 description 1
- 230000006798 recombination Effects 0.000 description 1
- 238000005215 recombination Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000005096 rolling process Methods 0.000 description 1
- 239000013589 supplement Substances 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/18—Multiprotocol handlers, e.g. single devices capable of handling multiple protocols
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/205—Parsing
- G06F40/216—Parsing using statistical methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/279—Recognition of textual entities
- G06F40/284—Lexical analysis, e.g. tokenisation or collocates
-
- 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/049—Temporal neural networks, e.g. delay elements, oscillating neurons or pulsed inputs
-
- 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
- H04L49/00—Packet switching elements
- H04L49/90—Buffering arrangements
- H04L49/9057—Arrangements for supporting packet reassembly or resequencing
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computational Linguistics (AREA)
- Computing Systems (AREA)
- Software Systems (AREA)
- Molecular Biology (AREA)
- Data Mining & Analysis (AREA)
- Biophysics (AREA)
- Biomedical Technology (AREA)
- Mathematical Physics (AREA)
- Evolutionary Computation (AREA)
- Life Sciences & Earth Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Probability & Statistics with Applications (AREA)
- Communication Control (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种基于混合神经网络的在线协议识别方法,方法包括数据预处理、特征提取、在线识别步骤。本发明首先利用N‑gram算法对数据包进行分词,并依据分词的词频将协议数据转化为实值向量;接着利用Word2Vec模型进行无监督词向量学习,将实值向量转化为词向量序列;在此基础上利用ShuffleNetV2捕获词向量序列中特征之间的短距离关联关系,利用时序卷积网络捕获特征之间的较长距离的关联关系,利用自注意力机制捕获特征的长距离关联关系,确保充分提取词向量序列的特征;最后基于训练好的协议识别模型,高效准确地进行在线协议识别。
Description
技术领域
本发明涉及一种基于混合神经网络的在线协议识别方法,属于网络信息安全技术领域。
背景技术
网络协议识别指从捕获的网络流量中提取协议数据,分析协议数据的特征,从而将网络流量细分为多种应用层协议的流量。例如,利用网络协议识别技术可以将网络流量细分为DNS、HTTP和SMTP等协议的流量。随着互联网蓬勃发展,各种协议不断涌现,网络流量的规模持续增长,识别网络流量中的协议类别,有助于发现网络中可能存在的安全威胁并采取有效的防御措施。协议识别是网络管理、网络服务质量保证和网络安全防护等工作的重要基础。
从目前研究来看,在线协议识别研究主要存在以下两方面问题。首先,一些识别方法采用网络流作为分类对象,需要在网络流传输结束后才能确定协议类型,难以满足实时分析的要求。其次,一些识别方法的特征提取能力不足,无法有效捕获协议数据的关键特征,导致识别时间长、准确率低。
总体上看,在线协议识别研究尚处于起步阶段。协议识别模型的特征提取能力有限,协议识别准确率偏低。在线协议识别要求尽可能提高模型分类速度和协议识别准确率,以便及时发现网络中出现的异常网络协议的流量,进而采取有效应对措施,因此高效、充分地提取协议数据特征是在线协议识别的关键。
发明内容
本发明的目的在于克服现有技术中的不足,提供一种基于混合神经网络的在线协议识别方法,通过获取网络数据包,将ShuffleNetV2网络、时序卷积网络和自注意力机制相结合构建协议识别模型,能够高效、充分地提取协议数据特征,提高在线协议识别的准确率和工作效率。
为达到上述目的,本发明是采用下述技术方案实现的:
第一方面,本发明提供了一种基于混合神经网络的在线协议识别方法,包括:
获取需要进行协议识别的数据包;
对所述数据包进行数据预处理,得到数据包对应的词向量;
将词向量输入到预训练的协议识别模型中进行识别处理,提取协议特征;
将协议特征进行分类,识别出协议类型信息;
所述协议识别模型的训练方法包括:
获取训练样本,所述训练样本包括经过数据预处理后的网络协议数据包;
将经过数据预处理后的网络协议数据包输入到预构建的协议识别模型中进行迭代识别处理,直至损失函数收敛,完成训练;
所述协议识别模型包括依次连接的提取短距离关联关系的ShuffleNetV2网络块、提取较长距离关联关系的时序卷积网络块、提取长距离关联关系的自注意力网络块。
进一步的,所述数据预处理方法包括对数据包依次进行数据包信息过滤、N-gram分词以及词向量学习;
所述数据包信息过滤包括去除与协议识别无关的信息;
所述N-gram分词包括对信息过滤后的数据包进行切分处理,并依据切分后分词的词频将协议数据转化为实值向量;
所述词向量学习包括将过滤后数据包对应的实值向量转化为词向量序列。
进一步的,所述ShuffleNetV2网络块包括顺序连接的第一卷积块、第一池化层、第一基本特征提取模块、第二卷积块、第二池化层以及第二基本特征提取模块;
所述第一卷积块包括64个卷积核大小为9、步长为4的卷积层;
所述第一池化层与第二池化层的结构相同,包括池化窗口大小和步长均为4的最大池化层;
所述第一基本特征提取模块包括拆分的两组通道,每组通道的通道数为其输入数据通道数的一半,第一条通道依次包括1x1卷积层、3x3卷积层和1x1卷积层,每个卷积层的卷积核数量均为32个,且每个卷积层之间通过相结合的BN层和ReLU激活函数层作为激活单元,另一条通道的数据不经过处理直接与第一条通道处理后的数据直接拼接,并进行重组处理;
所述第二卷积块包括128个卷积核大小为9、步长为4的卷积层;
所述第二基本特征提取模块和第一基本特征提取模块不同的是每个卷积层的卷积核数量为64个,其余结构均相同。
进一步的,所述时序卷积网络块包括32个大小为3的卷积核,Return_Sequences参数设置为True。
第二方面,本发明提供了一种基于混合神经网络的在线协议识别系统,包括:
获取模块:用于获取需要进行协议识别的数据包;
预处理模块:用于对所述数据包进行数据预处理,得到数据包对应的词向量;
特征识别模块:用于将词向量输入到预训练的协议识别模型中进行识别处理,提取协议特征;
识别模块:用于将协议特征进行分类,识别出协议类型信息。
第三方面,一种基于混合神经网络的在线协议识别装置,包括处理器及存储介质;
所述存储介质用于存储指令;
所述处理器用于根据所述指令进行操作以执行根据上述任一项所述方法的步骤。
第四方面,计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述任一项所述方法的步骤。
与现有技术相比,本发明所达到的有益效果:
本发明的基于混合神经网络的在线协议识别方法,首先对捕获的网络数据包进行数据预处理,利用N-gram算法对数据包进行分词,并依据分词的词频将协议数据转化为实值向量;接着利用Word2Vec模型进行无监督词向量学习,将实值向量转化为词向量序列。在数据预处理的基础上进行特征提取,利用ShuffleNetV2捕获词向量序列中特征之间的短距离关联关系,利用时序卷积网络捕获特征之间的较长距离的关联关系,进而利用自注意力机制捕获特征的长距离关联关系,确保充分提取词向量序列的特征。最后进行在线识别,以离线训练好的协议识别模型为基础,将捕获的数据包输入模型,由模型计算输出协议类型的结果。本发明能够充分提取数据包中的协议数据特征,提高协议识别的准确率。此外,模型具有很高的分类速度,能够有效保证在线协议识别的效率。
附图说明
图1是本发明实施例一提供的在线协议识别方法流程图;
图2是本发明实施例一提供的两个基本特征提取模块的结构图;
图3是本发明实施例一提供的协议识别模型的特征提取工作流程图。
具体实施方式
下面结合附图对本发明作进一步描述。以下实施例仅用于更加清楚地说明本发明的技术方案,而不能以此来限制本发明的保护范围。
现有的在线协议识别方法存在协议识别准确率低的问题,其原因在于大部分方法不能有效提取区分协议类别的关键特征。例如,对于HTTP协议而言,“GET”和“HTTP/1.1”均是识别HTTP协议的关键特征,两者往往成对出现,但是两者之间通常会包含随机长度的数据。假设捕获三条HTTP协议报文“GET/HTTP/1.1”、“GET/Collect/../1.html HTTP/1.1”和“GET/level/…/dump HTTP/1.1”的长度分别为14、100和256字节。利用卷积神经网络能够轻松捕获第一条报文中“GET”和“HTTP/1.1”之间的关系,但是受限于卷积核大小,需要叠加很多层才能够捕获后两条报文中“GET”和“HTTP/1.1”之间存在的关联关系。利用LSTM或GRU等循环神经网络能够捕获前两条报文中“GET”和“HTTP/1.1”之间的关系,但是由于距离过长导致梯度消失,很难捕获第三条报文中“GET”和“HTTP/1.1”之间的关联关系。使用自注意力机制则能够捕获三条报文中“GET”和“HTTP/1.1”之间的关联关系,但是自注意力机制无法获取特征的位置信息。特征的位置往往具有重要含义,对于协议识别非常重要。时序卷积网络在处理输入数据时,考虑输入数据中特征的先后顺序,利用历史信息和当前输入决定当前输出的值,因此时序卷积网络能够直接提取特征的绝对位置和特征之间的相对位置信息。与位置编码方法相比,时序卷积网络的输出蕴含的特征位置信息更为全面,将时序卷积网络的输出作为自注意力机制的输入,能够有效解决注意力机制存在的问题。
本发明基于现有技术网络协议识别特征提取能力有限,协议识别准确率低的缺陷,提出了一种基于混合神经网络的在线协议识别方法、系统、装置及存储介质,混合神经网络包括协议识别模型,包括ShuffleNetV2网络、时序卷积网络和自注意力机制。ShuffleNetV2网络是一种轻量级的CNN网络,能够平衡模型的分类速度和分类准确率,又快又准确地进行分类。时序卷积网络(Temporal Convolutional Network,TCN)利用因果卷积挖掘特征之间的长距离关联关系,并在因果卷积中引入扩展卷积,可以较好捕获长序列数据的特征。时序卷积神经网络具有记忆能力,能够捕获输入数据中特征之间存在的关联关系,分类速度优于LSTM和GRU,并且分类能力能够优于LSTM和GRU。自注意力机制能够通过运算捕获输入数据有长距离的两个特征之间的关联关系。
本发明将ShuffleNetV2网络、时序卷积网络和自注意力机制相结合,构建协议识别模型,能够高效、充分地提取协议数据特征,提高在线协议识别的准确率和工作效率。
实施例一:
如图1所示,在本实施例中,提供了一种基于混合神经网络的在线协议识别方法,包括:
S1:获取需要进行协议识别的数据包;
S2:对所述数据包进行数据预处理,得到数据包对应的词向量;
S3:将词向量输入到预训练的协议识别模型中进行识别处理,提取协议特征;
S4:将协议特征进行分类,识别出协议类型信息。
上述步骤主要包括三个阶段:数据预处理阶段、特征提取阶段以及在线识别阶段。首先利用N-gram算法对数据包进行分词,并依据分词的词频将协议数据转化为实值向量;接着利用Word2Vec模型进行无监督词向量学习,将实值向量转化为词向量序列;在此基础上利用ShuffleNetV2捕获词向量序列中特征之间的短距离关联关系,利用时序卷积网络捕获特征之间的较长距离的关联关系,利用自注意力机制捕获特征的长距离关联关系,确保充分提取词向量序列的特征;最后利用Softmax分类器推断数据包所属的协议类别。以下具体介绍本发明的三个阶段。
一、数据预处理阶段
首先需要获取网络协议数据,在本实施例中,基于网络流的协议识别方法需要在一段网络流结束后才能实施判定,无法第一时间进行协议识别。为了提高响应速度,本实施例选择数据包作为分析对象,具体为以太网捕获的数据包。
然后对待识别协议的数据包进行预处理,数据预处理的工作是过滤数据包中与协议识别无关的信息,提取其中能够区分协议类型的特征。预处理包括三个子步骤:数据包信息过滤、N-gram分词以及词向量学习。
(1)数据包信息过滤。在线协议识别旨在实时判断网络数据包中的应用层数据所对应的协议类别,由于数据包中往往会包含一些与协议识别无关的信息,需要剔除这些信息避免干扰识别结果。以太网头首部不包含任何与应用层协议有关的信息,因此在处理时需要删除以太网头首部。网络层头首部的IP地址只是表明通信主机的身份,与具体应用无关,而网络层头首部的其他字段包含可用于识别应用层协议的信息,其中的协议号字段可以将基于TCP的应用层协议和基于UDP的应用层协议区分开来。因此,在处理时需要保留IP地址以外的网络层首部信息。对于传输层头首部,需要去除端口号信息,主要是防止端口随机化或者是端口伪装技术干扰协议识别结果。对于应用层部分,为保护用户隐私,本发明选取应用层数据的前L字节用于协议识别,如果应用层数据的长度不足L字节,则选取整个应用层部分,并在数据包尾部填充字符。
具体来看,本发明对数据包的信息过滤处理流程是:先去除以太网的头首部,再去除IP头首部中的IP地址部分,然后去除传输层头首部中的端口号部分,应用层部分保留长度为L字节的数据。在本实施例中,所选择的L值是30。
(2)N-gram分词。将经过信息过滤后的数据包转换为由多个分词组成的分词序列,进而编码为实值向量。然而,用于识别协议的特征往往是字符序列而不是单个字符,所以本实施例通过N-gram算法切分信息过滤后的数据包,建立一个大小为H的词典,词典用于将分词序列编码为实值向量。具体步骤如下。
1.对于经过信息过滤后的数据包,建立大小为N的窗口,按照从左至右顺序切分数据包,对数据包进行分词处理。尽量选择合适的N值,N值过小会导致协议中的特征字段被切分成多个分词,N值过大会导致分词包含特征字段的同时,还包含大量干扰信息,致使后续协议识别模型无法准确捕获协议特征,进而导致协议识别准确率偏低。
2.统计所有划分后得到的分词的词频,保留出现频率最高的H-1个高频分词,其余所有分词视为低频分词,划分为一类。将低频分词编码为0,其余高频分词按照频率从低到高的顺序依次编号。所构建的词典为{S1:0,S2:1,…,SH:H-1},其中S1表示低频分词,Si(i=2,3,…,H-1)表示各组高频分词。
3.用分词的编号替换对应的分词,将数据包从分词序列转化为由编号构成的实值向量。若分词序列为(SH,S2,S8,S9),则可以将该数据包编码为实值向量(H-1,1,7,8)。
(3)词向量学习。根据负采样技术优化Skip-gram模型,该部分可选用“MIKOLOV T,SUTSKEVER I,KAI C,et al.《Distributed representations of words and phrases andtheir compositionality[C]》//Proceedings of the 26th International Conferenceon Neural Information Processing Systems,2013:3111–3119.”中的Skip-gram模型,处理方法为:对于每个数据包所对应的实值向量,依次获取向量中每个分量对应的词向量,进而将所有词向量相加,得到词向量序列。通过词向量学习,数据包从实值向量转换成了词向量序列。在进行词向量学习时,词向量的维度越大越容易区分不同分词,但是词向量的维度过大会淡化分词之间的联系,所得的词向量无法有效挖掘分词之间的关联性,因此需要选择合适的词向量维度用于编码分词。Skip-gram模型输出的词向量维度通常在100-300维之间,本发明实施例采用256维的词向量用于编码分词。
二、特征提取阶段
(1)构建协议识别模型
如图3所示,本实施例所述的协议识别模型包括依次连接的ShuffleNetV2网络块、时序卷积网络块(TCN)以及自注意力网络块,分别用于提取短距离、较长距离以及长距离的关联关系。ShuffleNetV2网络块、TCN和自注意力网络块互为补充,能够充分提取词向量中的协议数据特征,提高协议识别准确率。
ShuffleNetV2网络块包括顺序连接的第一卷积块、第一池化层、第一基本特征提取模块、第二卷积块、第二池化层以及第二基本特征提取模块。卷积块和池化层共同构成下采样模块,用于降低模型参数规模,提高后续的分类速度;而两个基本特征提取模块用于词向量基本特征的提取。
其中,第一卷积块包括64个卷积核大小为9、步长为4的卷积层;第二卷积块包括128个卷积核大小为9、步长为4的卷积层。
第一池化层与第二池化层的结构相同,包括池化窗口大小和步长均为4的最大池化层。
如图2所示,第一基本特征提取模块包括拆分的两组通道,将输入的数据经过激活单元激活处理后,按通道维度均分成两部分,且每组通道的通道数为其输入数据通道数的一半,第一条通道依次包括1x1卷积层、3x3卷积层和1x1卷积层,每个卷积层的卷积核数量均为32个,且每个卷积层之间通过激活单元,另一条通道的数据不经过处理直接与第一条通道处理后的数据直接拼接,并进行重组处理。其中,在本实施例中,重组采用通道混洗技术(Channel Shuffle);激活单元采用相结合的BN层和ReLU激活函数层。
第二基本特征提取模块和第一基本特征提取模块不同的是每个卷积层的卷积核数量为64个,其余结构均相同。
TCN的具体架构可以参考“An Empirical Evaluation of GenericConvolutional and Recurrent Networks for Sequence Modeling[J].arXiv preprint:1803.01271,2018”中的模型,不同的是,采用的Dilated Casual Conv为32个大小为3的卷积核构成的卷积块,Return_Sequences参数设置为True。采用TCN提取较长距离关联关系,能充分保留历史信息,方便后续自注意力机制更好地提取协议数据特征。
最后利用自注意力机制的自注意力网络块,该部分具体的网络架构可参考“VASWANI A,SHAZEER N,PARMAR N,et al.Attention is All you Need[J].arXivpreprint:1706.03762,2017”中的自注意力网络块,用于获取长距离字段之间的关联关系,作为ShuffleNetV2和TCN的有效补充,最后经过全局平均池化层,输出最终的协议特征。
(2)离线训练协议识别模型
本实施例中,对于协议识别模型的训练为现有技术中的常用方法,依靠构建的模型,提取数据预处理后的网络协议数据包的特征,将特征输入到Softmax分类器中进行协议类型分类识别,得到预测的协议类型。根据模型预测的协议类型和真实协议类型之间的差异调整优化模型参数,直到当模型准确率的变化趋于平稳时停止优化并保存,完成离线训练。离线训练的方法具体包括:
获取训练样本,所述训练样本包括经过数据预处理后的网络协议数据包;
将经过数据预处理后的网络协议数据包输入到预构建的协议识别模型中进行迭代识别处理,直至损失函数收敛,完成离线训练。
本实施例中,采用交叉熵损失函数对协议识别模型进行训练,交叉熵损失函数的模型稳定快速收敛的特点,能有效提高学习速率。交叉熵损失函数的计算公式为:
式中,n为训练样本数,y为经过预处理的真实协议类别,yT表示真实协议类别对应的转置向量,y*为离线训练时协议识别模型识别出的协议类别概率分布值。
三、在线识别阶段
根据离线训练好的协议识别模型,按照S1-S4步骤依次对待识别协议进行处理,得到网络协议的类型。
本发明的基于混合神经网络的在线协议识别方法,首先对捕获的网络数据包进行数据预处理,利用N-gram算法对数据包进行分词,并依据分词的词频将协议数据转化为实值向量;接着利用Word2Vec模型进行无监督词向量学习,将实值向量转化为词向量序列。在数据预处理的基础上进行特征提取,利用ShuffleNetV2捕获词向量序列中特征之间的短距离关联关系,利用时序卷积网络捕获特征之间的较长距离的关联关系,进而利用自注意力机制捕获特征的长距离关联关系,确保充分提取词向量序列的特征。最后进行在线识别,以离线训练好的协议识别模型为基础,将捕获的数据包输入模型,由模型计算输出协议类型的结果。本发明能够充分提取数据包中的协议数据特征,提高协议识别的准确率。此外,模型具有很高的分类速度,能够有效保证在线协议识别的效率。
实施例二:
一种基于混合神经网络的在线协议识别系统,包括:
获取模块:用于获取需要进行协议识别的数据包;
预处理模块:用于对所述数据包进行数据预处理,得到数据包对应的词向量;;
特征识别模块:用于将词向量输入到预训练的协议识别模型中进行识别处理,提取协议特征;
识别模块:用于将协议特征进行分类,识别出协议类型信息。
实施例三:
本发明实施例还提供了一种基于混合神经网络的在线协议识别装置,包括处理器及存储介质;
所述存储介质用于存储指令;
所述处理器用于根据所述指令进行操作以执行下述方法的步骤:
获取需要进行协议识别的数据包;
对所述数据包进行数据预处理,得到数据包对应的词向量;
将词向量输入到预训练的协议识别模型中进行识别处理,提取协议特征;
将协议特征进行分类,识别出协议类型信息;。
实施例四:
本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现下述方法的步骤:
获取需要进行协议识别的数据包;
对所述数据包进行数据预处理,得到数据包对应的词向量;
将词向量输入到预训练的协议识别模型中进行识别处理,提取协议特征;
将协议特征进行分类,识别出协议类型信息;
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明技术原理的前提下,还可以做出若干改进和变形,这些改进和变形也应视为本发明的保护范围。
Claims (8)
1.一种基于混合神经网络的在线协议识别方法,其特征在于,包括:
获取需要进行协议识别的数据包;
对所述数据包进行数据预处理,得到数据包对应的词向量;
将词向量输入到预训练的协议识别模型中进行识别处理,提取协议特征;
将识别特征进行分类,识别出协议类型信息;
所述协议识别模型的训练方法包括:
获取训练样本,所述训练样本包括经过数据预处理后的网络协议数据包;
将经过数据预处理后的网络协议数据包输入到预构建的协议识别模型中进行迭代识别处理,直至损失函数收敛,完成训练;
所述协议识别模型包括依次连接的提取短距离关联关系的ShuffleNetV2网络块、提取较长距离关联关系的时序卷积网络块、提取长距离关联关系的自注意力网络块。
2.根据权利要求1所述的基于混合神经网络的在线协议识别方法,其特征在于,所述数据预处理方法包括对数据包依次进行数据包信息过滤、N-gram分词以及词向量学习;
所述数据包信息过滤包括去除数据包中与协议识别无关的信息;
所述N-gram分词包括对信息过滤后的数据包进行切分处理,并依据切分后分词的词频将协议数据转化为实值向量;
所述词向量学习包括将过滤后数据包的实值向量转化为词向量序列。
3.根据权利要求1所述的基于混合神经网络的在线协议识别方法,其特征在于,所述ShuffleNetV2网络块包括顺序连接的第一卷积块、第一池化层、第一基本特征提取模块、第二卷积块、第二池化层以及第二基本特征提取模块;
所述第一卷积块包括64个卷积核大小为9、步长为4的卷积层;
所述第一池化层与第二池化层的结构相同,包括池化窗口大小和步长均为4的最大池化层;
所述第一基本特征提取模块包括拆分的两组通道,每组通道的通道数为其输入数据通道数的一半,第一条通道依次包括1x1卷积层、3x3卷积层和1x1卷积层,每个卷积层的卷积核数量均为32个,且每个卷积层之间通过相结合的BN层和ReLU激活函数层作为激活单元,另一条通道的数据不经过处理直接与第一条通道处理后的数据直接拼接,并进行重组处理;
所述第二卷积块包括128个卷积核大小为9、步长为4的卷积层;
所述第二基本特征提取模块和第一基本特征提取模块不同的是每个卷积层的卷积核数量为64个,其余结构均相同。
4.根据权利要求1所述的基于混合神经网络的在线协议识别方法,其特征在于,所述时序卷积网络块包括32个大小为3的卷积核,Return_Sequences参数设置为True。
6.一种基于混合神经网络的在线协议识别系统,其特征在于,包括:
获取模块:用于获取需要进行协议识别的数据包;
预处理模块:用于对所述数据包进行数据预处理,得到词向量数据包;
特征识别模块:用于将词向量输入到预训练的协议识别模型中进行识别处理,提取出协议特征;
识别模块:用于将提取特征进行分类,得到识别出的协议类型信息。
7.一种基于混合神经网络的在线协议识别装置,其特征在于,包括处理器及存储介质;
所述存储介质用于存储指令;
所述处理器用于根据所述指令进行操作以执行根据权利要求1~5任一项所述方法的步骤。
8.计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现权利要求1~5任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210906303.4A CN115225731B (zh) | 2022-07-29 | 2022-07-29 | 一种基于混合神经网络的在线协议识别方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210906303.4A CN115225731B (zh) | 2022-07-29 | 2022-07-29 | 一种基于混合神经网络的在线协议识别方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115225731A true CN115225731A (zh) | 2022-10-21 |
CN115225731B CN115225731B (zh) | 2024-03-05 |
Family
ID=83614059
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210906303.4A Active CN115225731B (zh) | 2022-07-29 | 2022-07-29 | 一种基于混合神经网络的在线协议识别方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115225731B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116010816A (zh) * | 2022-12-28 | 2023-04-25 | 南京大学 | 基于大感受野的lrf大核注意力卷积网络活动识别方法 |
Citations (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109871948A (zh) * | 2019-03-26 | 2019-06-11 | 中国人民解放军陆军工程大学 | 一种基于二维卷积神经网络的应用层协议识别方法 |
CN110532564A (zh) * | 2019-08-30 | 2019-12-03 | 中国人民解放军陆军工程大学 | 一种基于cnn和lstm混合模型的应用层协议在线识别方法 |
US20200151250A1 (en) * | 2018-11-08 | 2020-05-14 | International Business Machines Corporation | Multi-resolution convolutional neural networks for sequence modeling |
WO2020140386A1 (zh) * | 2019-01-02 | 2020-07-09 | 平安科技(深圳)有限公司 | 基于TextCNN知识抽取方法、装置、计算机设备及存储介质 |
CN112367334A (zh) * | 2020-11-23 | 2021-02-12 | 中国科学院信息工程研究所 | 网络流量识别方法、装置、电子设备和存储介质 |
CN112765352A (zh) * | 2021-01-21 | 2021-05-07 | 东北大学秦皇岛分校 | 基于具有自注意力机制的图卷积神经网络文本分类方法 |
CN112910881A (zh) * | 2021-01-28 | 2021-06-04 | 武汉市博畅软件开发有限公司 | 一种基于通信协议的数据监控方法及系统 |
CN113037646A (zh) * | 2021-03-04 | 2021-06-25 | 西南交通大学 | 一种基于深度学习的列车通信网络流量识别方法 |
CN113158038A (zh) * | 2021-04-02 | 2021-07-23 | 上海交通大学 | 基于sta-tcn神经网络框架的兴趣点推荐方法及系统 |
CN113326380A (zh) * | 2021-08-03 | 2021-08-31 | 国能大渡河大数据服务有限公司 | 基于深度神经网络的设备量测数据处理方法、系统及终端 |
CN114039901A (zh) * | 2021-11-05 | 2022-02-11 | 中国人民解放军陆军工程大学 | 基于残差网络和循环神经网络混合模型的协议识别方法 |
CN114445715A (zh) * | 2022-03-24 | 2022-05-06 | 中南大学 | 一种基于卷积神经网络的农作物病害识别方法 |
WO2022094926A1 (zh) * | 2020-11-06 | 2022-05-12 | 中国科学院深圳先进技术研究院 | 一种加密流量识别方法、系统、终端以及存储介质 |
CN114550212A (zh) * | 2022-02-21 | 2022-05-27 | 西北农林科技大学 | 一种基于轻量级模型的羊脸检测与识别方法 |
CN114595383A (zh) * | 2022-02-24 | 2022-06-07 | 中国海洋大学 | 一种基于会话序列的海洋环境数据推荐方法及系统 |
-
2022
- 2022-07-29 CN CN202210906303.4A patent/CN115225731B/zh active Active
Patent Citations (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20200151250A1 (en) * | 2018-11-08 | 2020-05-14 | International Business Machines Corporation | Multi-resolution convolutional neural networks for sequence modeling |
WO2020140386A1 (zh) * | 2019-01-02 | 2020-07-09 | 平安科技(深圳)有限公司 | 基于TextCNN知识抽取方法、装置、计算机设备及存储介质 |
CN109871948A (zh) * | 2019-03-26 | 2019-06-11 | 中国人民解放军陆军工程大学 | 一种基于二维卷积神经网络的应用层协议识别方法 |
CN110532564A (zh) * | 2019-08-30 | 2019-12-03 | 中国人民解放军陆军工程大学 | 一种基于cnn和lstm混合模型的应用层协议在线识别方法 |
WO2022094926A1 (zh) * | 2020-11-06 | 2022-05-12 | 中国科学院深圳先进技术研究院 | 一种加密流量识别方法、系统、终端以及存储介质 |
CN112367334A (zh) * | 2020-11-23 | 2021-02-12 | 中国科学院信息工程研究所 | 网络流量识别方法、装置、电子设备和存储介质 |
CN112765352A (zh) * | 2021-01-21 | 2021-05-07 | 东北大学秦皇岛分校 | 基于具有自注意力机制的图卷积神经网络文本分类方法 |
CN112910881A (zh) * | 2021-01-28 | 2021-06-04 | 武汉市博畅软件开发有限公司 | 一种基于通信协议的数据监控方法及系统 |
CN113037646A (zh) * | 2021-03-04 | 2021-06-25 | 西南交通大学 | 一种基于深度学习的列车通信网络流量识别方法 |
CN113158038A (zh) * | 2021-04-02 | 2021-07-23 | 上海交通大学 | 基于sta-tcn神经网络框架的兴趣点推荐方法及系统 |
CN113326380A (zh) * | 2021-08-03 | 2021-08-31 | 国能大渡河大数据服务有限公司 | 基于深度神经网络的设备量测数据处理方法、系统及终端 |
CN114039901A (zh) * | 2021-11-05 | 2022-02-11 | 中国人民解放军陆军工程大学 | 基于残差网络和循环神经网络混合模型的协议识别方法 |
CN114550212A (zh) * | 2022-02-21 | 2022-05-27 | 西北农林科技大学 | 一种基于轻量级模型的羊脸检测与识别方法 |
CN114595383A (zh) * | 2022-02-24 | 2022-06-07 | 中国海洋大学 | 一种基于会话序列的海洋环境数据推荐方法及系统 |
CN114445715A (zh) * | 2022-03-24 | 2022-05-06 | 中南大学 | 一种基于卷积神经网络的农作物病害识别方法 |
Non-Patent Citations (1)
Title |
---|
吴吉胜等: "基于残差网络和循环神经网络混合模型的应用层协议识别方法", 《计算机科学》, vol. 49, no. 11, pages 9 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116010816A (zh) * | 2022-12-28 | 2023-04-25 | 南京大学 | 基于大感受野的lrf大核注意力卷积网络活动识别方法 |
CN116010816B (zh) * | 2022-12-28 | 2023-09-08 | 南京大学 | 基于大感受野的lrf大核注意力卷积网络活动识别方法 |
US11989935B1 (en) | 2022-12-28 | 2024-05-21 | Nanjing University | Activity recognition method of LRF large-kernel attention convolution network based on large receptive field |
Also Published As
Publication number | Publication date |
---|---|
CN115225731B (zh) | 2024-03-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109063745B (zh) | 一种基于决策树的网络设备类型识别方法及系统 | |
CN110298663B (zh) | 基于序列宽深学习的欺诈交易检测方法 | |
CN112308158A (zh) | 一种基于部分特征对齐的多源领域自适应模型及方法 | |
CN110532564B (zh) | 一种基于cnn和lstm混合模型的应用层协议在线识别方法 | |
CN111431986B (zh) | 基于5g和ai云边协同的工业智能质检系统 | |
CN112804123B (zh) | 一种用于调度数据网的网络协议识别方法及系统 | |
CN111970400B (zh) | 骚扰电话识别方法及装置 | |
CN114419570B (zh) | 一种点云数据识别方法、装置、电子设备及存储介质 | |
CN111191767A (zh) | 一种基于向量化的恶意流量攻击类型的判断方法 | |
CN114816909A (zh) | 一种基于机器学习的实时日志检测预警方法及系统 | |
CN114615093A (zh) | 基于流量重构与继承学习的匿名网络流量识别方法及装置 | |
CN115037805B (zh) | 一种基于深度聚类的未知网络协议识别方法、系统、装置及存储介质 | |
CN113067798B (zh) | Ics入侵检测方法、装置、电子设备和存储介质 | |
CN114039901A (zh) | 基于残差网络和循环神经网络混合模型的协议识别方法 | |
CN115225731A (zh) | 一种基于混合神经网络的在线协议识别方法 | |
CN114726802A (zh) | 一种基于不同数据维度的网络流量识别方法及装置 | |
CN110650124A (zh) | 一种基于多层回声状态网络的网络流量异常检测方法 | |
CN114979017B (zh) | 基于工控系统原始流量的深度学习协议识别方法及系统 | |
Liu et al. | SSD small object detection algorithm based on feature enhancement and sample selection | |
CN115361195A (zh) | 一种基于时空代价成本的大规模物联网流量多分类方法 | |
CN114359786A (zh) | 一种基于改进时空卷积网络的唇语识别方法 | |
CN114463667A (zh) | 基于视频识别的小样本学习方法 | |
CN113449768A (zh) | 一种基于短时傅里叶变换的网络流量分类装置及方法 | |
CN112364720A (zh) | 一种车辆类别快速识别与统计方法 | |
CN114884704B (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 |