CN111970169A - 一种基于gru网络的协议流量识别方法 - Google Patents

一种基于gru网络的协议流量识别方法 Download PDF

Info

Publication number
CN111970169A
CN111970169A CN202010820902.5A CN202010820902A CN111970169A CN 111970169 A CN111970169 A CN 111970169A CN 202010820902 A CN202010820902 A CN 202010820902A CN 111970169 A CN111970169 A CN 111970169A
Authority
CN
China
Prior art keywords
layer
gru
gru network
data
protocol
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
Application number
CN202010820902.5A
Other languages
English (en)
Other versions
CN111970169B (zh
Inventor
余顺争
汪擎天
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sun Yat Sen University
Original Assignee
Sun Yat Sen University
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Sun Yat Sen University filed Critical Sun Yat Sen University
Priority to CN202010820902.5A priority Critical patent/CN111970169B/zh
Publication of CN111970169A publication Critical patent/CN111970169A/zh
Application granted granted Critical
Publication of CN111970169B publication Critical patent/CN111970169B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/18Protocol analysers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/23Clustering techniques
    • G06F18/232Non-hierarchical techniques
    • G06F18/2321Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions
    • G06F18/23213Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions with fixed number of clusters, e.g. K-means clustering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/048Activation functions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/14Network analysis or design
    • H04L41/142Network analysis or design using statistical or mathematical methods
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/14Network analysis or design
    • H04L41/145Network analysis or design involving simulating, designing, planning or modelling of a network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/14Network analysis or design
    • H04L41/147Network analysis or design for predicting network behaviour

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • General Physics & Mathematics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • General Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Mathematical Physics (AREA)
  • Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • Software Systems (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Algebra (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明公开了一种基于GRU网络的协议流量识别方法,包括以下步骤:对不同协议流量样本进行数据预处理,得到符合GRU网络输入数据格式的训练样本集,并使用该训练样本集对GRU网络模型进行训练;对未知协议流量进行数据预处理,得到具有时间序列的空间位置特征数据,并输入至训练完成的GRU网络模型中;使用训练完成的GRU网络模型对数据预处理后的未知协议流量进行识别,最终得到预测标签。本发明通过数据预处理完成数据包的特征提取,能够有效克服人工提取特征的困难;而且,GRU网络模型的构建和使用,有效提高了协议识别的准确率;另外,流量交互过程中的信息,因为涉及空间位置特征、时序特征两个层次,使得协议流量识别的效果更加显著。

Description

一种基于GRU网络的协议流量识别方法
技术领域
本发明涉及计算机网络流量分析领域,更具体地,涉及一种基于GRU网络的协议流量识别方法。
背景技术
协议流量识别是指通过人工分析或自动化手段从TCP/IP协议承载的网络流量中提取出能够标识网络协议的关键特征,然后以这些特征为基础准确标识网络流量所隶属的协议。协议识别技术有助于对网络流量的组成进行分析,能够为网络管理与维护、网络内容审计、网络安全防御等多个研究领域提供数据支撑。但是面对如今大规模、多元化、高容量的网络流量,如何提高协议识别的准确率是一项巨大的挑战。
协议流量识别方法主要包括基于预设规则的协议识别方法、基于载荷特征的协议识别方法、基于主机行为的协议识别方法以及基于机器学习的协议识别方法四种。深度学习在分类方面存在着优势,不过现有的协议流量识别方法也存在着人工提取特征困难的问题。
在现有技术中,公开号为CN107682216A的中国发明专利,于2018年02月09日公开了一种基于深度学习的网络流量协议识别方法,利用网络流数据与图像的相似性,绕过流量特征值选择和提取的工作,直接将网络流数据作为卷积神经网络的输入,进行监督学习,训练网络流量协议识别模型,实现网络流量协议识别功能。虽然该方案将待识别网络流量协议样本用于对卷积神经网络的训练,便能在一定程度上自动提取到有利于分类任务的特征,但是并未解决现有人工提取特征困难、协议识别准确率不高的问题,因此,用户急需一种基于GRU网络的协议流量识别方法。
发明内容
本发明为解决现有人工提取特征困难、协议识别准确率不高的问题,提供了一种基于GRU网络的协议流量识别方法。
本发明的首要目的是为解决上述技术问题,本发明的技术方案如下:
一种基于GRU网络的协议流量识别方法,包括以下步骤:
S1:对不同协议流量样本进行数据预处理,得到符合GRU网络输入数据格式的训练样本集,并使用该训练样本集对GRU网络模型进行训练;
S2:对未知协议流量进行数据预处理,得到具有时间序列的空间位置特征数据,并输入至训练完成的GRU网络模型中;
S3:使用训练完成的GRU网络模型对数据预处理后的未知协议流量进行识别,最终得到预测标签。
优选地,步骤S1、S2中所述数据预处理包括流量切分、数据包聚类、会话数据转换。
优选地,所述流量切分的基本单元为会话。
优选地,所述数据包聚类采用K均值算法进行。
优选地,所述会话数据转换是将流量切分后的各数据包的内容格式替换为距离集合,所采用的距离计算公式为:
Figure BDA0002634378850000021
其中,Max Subsequence函数为各数据包与各聚类中心之间的最长公共连续序列识别算法;D(x,centroid)为各数据包与各聚类中心的距离。
优选地,所述GRU网络模型包括输入层、Masking层、第一GRU层、第二GRU层、全连接层、输出层;其中:
所述Masking层分别连接至输入层和第一GRU层;
所述第二GRU层分别连接至第一GRU层和全连接层;
所述输出层与全连接层连接。
优选地,所述第一GRU层、第二GRU层提取特征值的维度均设置为64。
优选地,所述全连接层采用ReLU函数作为激活函数。
优选地,所述全连接层采用Dropout设置其比率为0.5。
优选地,所述输出层采用Sigmoid函数作为激活函数。
与现有技术相比,本发明技术方案的有益效果是:
本发明通过数据预处理完成数据包的特征提取,能够有效克服人工提取特征的困难;而且,GRU网络模型的构建和使用,有效提高了协议识别的准确率;另外,流量交互过程中的信息,因为涉及数据包本身空间位置特征、数据包之间时序特征两个层次,使得协议流量识别的效果更加显著。
附图说明
图1为本发明的总流程图;
图2为本发明中所述GRU网络模型识别未知协议流量的流程图;
图3为本发明中所述GRU网络模型的结构示意图。
具体实施方式
为了能够更清楚地理解本发明的上述目的、特征和优点,下面结合附图和具体实施方式对本发明进行进一步的详细描述。需要说明的是,在不冲突的情况下,本申请的实施例及实施例中的特征可以相互组合。
在下面的描述中阐述了很多具体细节以便于充分理解本发明,但是,本发明还可以采用其他不同于在此描述的其他方式来实施,因此,本发明的保护范围并不受下面公开的具体实施例的限制。
实施例1
如图1所示,一种基于GRU网络的协议流量识别方法,包括以下步骤:
S1:对不同协议流量样本进行数据预处理,得到符合GRU网络输入数据格式的训练样本集,并使用该训练样本集对GRU网络模型进行训练;
S2:对未知协议流量进行数据预处理,得到具有时间序列的空间位置特征数据,并输入至训练完成的GRU网络模型中;
S3:使用训练完成的GRU网络模型对数据预处理后的未知协议流量进行识别,最终得到预测标签。
上述方案中,可见本方法分为两个阶段,第一阶段是训练阶段,使用训练样本集完成对GRU网络模型的训练;第二阶段是识别阶段,使用训练完成后的GRU网络模型对数据预处理后的未知协议流量进行识别,得到预测标签。
如图2所示,具体地,步骤S1、S2中所述数据预处理包括流量切分、数据包聚类、会话数据转换。
上述方案中,数据预处理是未知协议流量识别过程中的基础步骤,其中:流量切分,负责将未知协议流量按照一定依据切分成对应形式的数据集;数据包聚类,负责对数据集中的所有数据包进行聚类,并得到聚类中心;会话数据转换,负责将所有数据包的内容转换为各数据包与各聚类中心之间的距离;最后,按照各数据包的时序关系进行整合,将未知协议流量转化为具有时间序列的空间位置特征数据,符合GRU网络模型的输入数据格式。
具体地,所述流量切分的基本单元为会话。
上述方案中,在流量粒度的选择上,采用了目前研究较多的会话,其具有相同五元组(源IP、源端口、目的IP、目的端口、传输层协议)的所有包,且五元组中的源和目的地址可以互换。
具体地,所述数据包聚类采用K均值算法进行。
上述方案中,K均值算法不仅易于实现,而且具有优化迭代功能,能消除训练样本集分类存在的不合理。
具体地,所述会话数据转换是将流量切分后的各数据包的内容格式替换为距离集合,所采用的距离计算公式为:
Figure BDA0002634378850000041
其中,Max Subsequence函数为各数据包与各聚类中心之间的最长公共连续序列识别算法;D(x,centroid)为各数据包与各聚类中心的距离。
上述方案中,采用该距离计算公式,完成各数据包与各聚类中心之间距离的计算。
如图3所示,具体地,所述GRU网络模型包括输入层、Masking层、第一GRU层、第二GRU层、全连接层、输出层;其中:
所述Masking层分别连接至输入层和第一GRU层;
所述第二GRU层分别连接至第一GRU层和全连接层;
所述输出层与全连接层连接。
上述方案中,首先,Masking层将训练样本集中的补齐数据作跳过处理;其次连续两层的GRU门控循环单元,第一GRU层的参数return_sequences=TRUE,将每一个时间步的结果输出到第二GRU层中,在计算过程中,由于GRU网络存在更新门和重置门机制,可以保留前一时刻的状态信息传递至当前时刻,并带入到相同的程度,能充分提取会话流中的时序特征信息;再者,全连接层设有256个神经元,保证GRU网络模型的学习能力非线性表达能力;最后,输出层将识别结果输出。
具体地,所述第一GRU层、第二GRU层提取特征值的维度均设置为64。
上述方案中,所设置的维度能确保两层GRU门控循环单元找出最有效的特征,达到降维效果,避免冗余。
具体地,所述全连接层采用ReLU函数作为激活函数。
上述方案中,采用ReLU函数作为激活函数,不仅时间和空间复杂度更低,而且能避免梯度消失的问题。
具体地,所述全连接层采用Dropout设置其比率为0.5。
上述方案中,采用Dropout机制以丢失50%的特征,能够很大程度上简化结构,以防治神经网络过拟合问题,并且能避免过多时间的花费。
具体地,所述输出层采用Sigmoid函数作为激活函数。
上述方案中,输出层只设置了一个输出节点,输出结果为未知协议流量属于某一种协议类型的概率,而采用Sigmoid函数作为激活函数,使输出值介于0至1,符合二分类的需求。
显然,本发明的上述实施例仅仅是为清楚地说明本发明所作的举例,而并非是对本发明的实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动。这里无需也无法对所有的实施方式予以穷举。凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明权利要求的保护范围之内。

Claims (10)

1.一种基于GRU网络的协议流量识别方法,其特征在于,包括以下步骤:
S1:对不同协议流量样本进行数据预处理,得到符合GRU网络输入数据格式的训练样本集,并使用该训练样本集对GRU网络模型进行训练;
S2:对未知协议流量进行数据预处理,得到具有时间序列的空间位置特征数据,并输入至训练完成的GRU网络模型中;
S3:使用训练完成的GRU网络模型对数据预处理后的未知协议流量进行识别,最终得到预测标签。
2.根据权利要求1所述的一种基于GRU网络的协议流量识别方法,其特征在于,步骤S1、S2中所述数据预处理包括流量切分、数据包聚类、会话数据转换。
3.根据权利要求2所述的一种基于GRU网络的协议流量识别方法,其特征在于,所述流量切分的基本单元为会话。
4.根据权利要求2所述的一种基于GRU网络的协议流量识别方法,其特征在于,所述数据包聚类采用K均值算法进行。
5.根据权利要求2所述的一种基于GRU网络的协议流量识别方法,其特征在于,所述会话数据转换是将流量切分后的各数据包的内容格式替换为距离集合,所采用的距离计算公式为:
Figure FDA0002634378840000011
其中,Max Subsequence函数为各数据包与各聚类中心之间的最长公共连续序列识别算法;D(x,centroid)为各数据包与各聚类中心的距离。
6.根据权利要求1所述的一种基于GRU网络的协议流量识别方法,其特征在于,所述GRU网络模型包括输入层、Masking层、第一GRU层、第二GRU层、全连接层、输出层;其中:
所述Masking层分别连接至输入层和第一GRU层;
所述第二GRU层分别连接至第一GRU层和全连接层;
所述输出层与全连接层连接。
7.根据权利要求6所述的一种基于GRU网络的协议流量识别方法,其特征在于,所述第一GRU层、第二GRU层提取特征值的维度均设置为64。
8.根据权利要求6所述的一种基于GRU网络的协议流量识别方法,其特征在于,所述全连接层采用ReLU函数作为激活函数。
9.根据权利要求6所述的一种基于GRU网络的协议流量识别方法,其特征在于,所述全连接层采用Dropout设置其比率为0.5。
10.根据权利要求6所述的一种基于GRU网络的协议流量识别方法,其特征在于,所述输出层采用Sigmoid函数作为激活函数。
CN202010820902.5A 2020-08-14 2020-08-14 一种基于gru网络的协议流量识别方法 Active CN111970169B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010820902.5A CN111970169B (zh) 2020-08-14 2020-08-14 一种基于gru网络的协议流量识别方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010820902.5A CN111970169B (zh) 2020-08-14 2020-08-14 一种基于gru网络的协议流量识别方法

Publications (2)

Publication Number Publication Date
CN111970169A true CN111970169A (zh) 2020-11-20
CN111970169B CN111970169B (zh) 2022-03-08

Family

ID=73388920

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010820902.5A Active CN111970169B (zh) 2020-08-14 2020-08-14 一种基于gru网络的协议流量识别方法

Country Status (1)

Country Link
CN (1) CN111970169B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112671757A (zh) * 2020-12-22 2021-04-16 无锡江南计算技术研究所 一种基于自动机器学习的加密流量协议识别方法及装置
CN112910881A (zh) * 2021-01-28 2021-06-04 武汉市博畅软件开发有限公司 一种基于通信协议的数据监控方法及***
CN115150165A (zh) * 2022-06-30 2022-10-04 北京天融信网络安全技术有限公司 一种流量识别方法及装置

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190043483A1 (en) * 2017-08-02 2019-02-07 [24]7.ai, Inc. Method and apparatus for training of conversational agents
CN109583656A (zh) * 2018-12-06 2019-04-05 重庆邮电大学 基于a-lstm的城市轨道交通客流量预测方法
CN110011931A (zh) * 2019-01-25 2019-07-12 中国科学院信息工程研究所 一种加密流量类别检测方法及***
CN110287439A (zh) * 2019-06-27 2019-09-27 电子科技大学 一种基于lstm的网络行为异常检测方法
CN110751222A (zh) * 2019-10-25 2020-02-04 中国科学技术大学 基于cnn和lstm的在线加密流量分类方法
CN111209933A (zh) * 2019-12-25 2020-05-29 国网冀北电力有限公司信息通信分公司 基于神经网络和注意力机制的网络流量分类方法和装置
CN111209563A (zh) * 2019-12-27 2020-05-29 北京邮电大学 一种网络入侵检测方法及***

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190043483A1 (en) * 2017-08-02 2019-02-07 [24]7.ai, Inc. Method and apparatus for training of conversational agents
CN109583656A (zh) * 2018-12-06 2019-04-05 重庆邮电大学 基于a-lstm的城市轨道交通客流量预测方法
CN110011931A (zh) * 2019-01-25 2019-07-12 中国科学院信息工程研究所 一种加密流量类别检测方法及***
CN110287439A (zh) * 2019-06-27 2019-09-27 电子科技大学 一种基于lstm的网络行为异常检测方法
CN110751222A (zh) * 2019-10-25 2020-02-04 中国科学技术大学 基于cnn和lstm的在线加密流量分类方法
CN111209933A (zh) * 2019-12-25 2020-05-29 国网冀北电力有限公司信息通信分公司 基于神经网络和注意力机制的网络流量分类方法和装置
CN111209563A (zh) * 2019-12-27 2020-05-29 北京邮电大学 一种网络入侵检测方法及***

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112671757A (zh) * 2020-12-22 2021-04-16 无锡江南计算技术研究所 一种基于自动机器学习的加密流量协议识别方法及装置
CN112671757B (zh) * 2020-12-22 2023-10-31 无锡江南计算技术研究所 一种基于自动机器学习的加密流量协议识别方法及装置
CN112910881A (zh) * 2021-01-28 2021-06-04 武汉市博畅软件开发有限公司 一种基于通信协议的数据监控方法及***
CN115150165A (zh) * 2022-06-30 2022-10-04 北京天融信网络安全技术有限公司 一种流量识别方法及装置
CN115150165B (zh) * 2022-06-30 2024-03-15 北京天融信网络安全技术有限公司 一种流量识别方法及装置

Also Published As

Publication number Publication date
CN111970169B (zh) 2022-03-08

Similar Documents

Publication Publication Date Title
CN111970169B (zh) 一种基于gru网络的协议流量识别方法
Liu et al. CNN and RNN based payload classification methods for attack detection
Bansal et al. Zero-shot object detection
Wu et al. Helmet detection based on improved YOLO V3 deep model
CN109218223B (zh) 一种基于主动学习的鲁棒性网络流量分类方法及***
CN111144448A (zh) 基于多尺度注意力卷积编码网络的视频弹幕情感分析方法
CN110633366B (zh) 一种短文本分类方法、装置和存储介质
CN107368534B (zh) 一种预测社交网络用户属性的方法
CN110532564A (zh) 一种基于cnn和lstm混合模型的应用层协议在线识别方法
CN109194498B (zh) 一种基于lstm的网络流量预测方法
CN111143553A (zh) 一种实时文本数据流的特定信息识别方法及***
CN115292568B (zh) 一种基于联合模型的民生新闻事件抽取方法
Basri et al. Bangla handwritten digit recognition using deep convolutional neural network
Liu et al. WBCaps: a capsule architecture-based classification model designed for white blood cells identification
CN111191033A (zh) 一种基于分类效用的开集分类方法
Guo et al. Offline handwritten Tai Le character recognition using ensemble deep learning
CN114743133A (zh) 一种轻量化的小样本视频分类识别方法及***
CN109002808A (zh) 一种人体行为识别方法及***
CN117633627A (zh) 一种基于证据不确定性评估的深度学习未知网络流量分类方法及***
Gayathri et al. Transfer learning based handwritten character recognition of tamil script using inception-V3 Model
CN116663019A (zh) 一种源代码漏洞检测方法、装置和***
CN115622810A (zh) 一种基于机器学习算法的业务应用识别***及方法
CN113657443B (zh) 一种基于soinn网络的在线物联网设备识别方法
CN115334179A (zh) 一种基于命名实体识别的未知协议逆向解析方法
Blanger et al. A face recognition library using convolutional neural networks

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