CN113762299A - 一种异常流量检测方法和装置 - Google Patents
一种异常流量检测方法和装置 Download PDFInfo
- Publication number
- CN113762299A CN113762299A CN202010597342.1A CN202010597342A CN113762299A CN 113762299 A CN113762299 A CN 113762299A CN 202010597342 A CN202010597342 A CN 202010597342A CN 113762299 A CN113762299 A CN 113762299A
- Authority
- CN
- China
- Prior art keywords
- data stream
- neural network
- convolutional neural
- data
- 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.)
- Pending
Links
- 230000002159 abnormal effect Effects 0.000 title claims abstract description 59
- 238000001514 detection method Methods 0.000 title claims abstract description 46
- 238000013527 convolutional neural network Methods 0.000 claims abstract description 79
- 238000010276 construction Methods 0.000 claims abstract description 32
- 238000000034 method Methods 0.000 claims abstract description 26
- 230000004913 activation Effects 0.000 claims abstract description 22
- 238000013507 mapping Methods 0.000 claims abstract description 16
- 238000011176 pooling Methods 0.000 claims abstract description 11
- 238000012549 training Methods 0.000 claims description 51
- 230000006870 function Effects 0.000 claims description 49
- 238000004422 calculation algorithm Methods 0.000 claims description 21
- 230000000694 effects Effects 0.000 claims description 20
- 238000005457 optimization Methods 0.000 claims description 15
- 238000012545 processing Methods 0.000 claims description 13
- 238000004590 computer program Methods 0.000 claims description 9
- 230000005540 biological transmission Effects 0.000 claims description 7
- 230000001131 transforming effect Effects 0.000 claims description 6
- 238000012512 characterization method Methods 0.000 claims 2
- 238000010586 diagram Methods 0.000 description 15
- 238000003860 storage Methods 0.000 description 13
- 238000004891 communication Methods 0.000 description 7
- 238000004364 calculation method Methods 0.000 description 6
- 230000009467 reduction Effects 0.000 description 5
- 230000003287 optical effect Effects 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 238000010801 machine learning Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 238000011144 upstream manufacturing Methods 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 238000003066 decision tree Methods 0.000 description 2
- 239000000835 fiber Substances 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 238000005070 sampling Methods 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 230000003213 activating effect Effects 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 230000002779 inactivation Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000029052 metamorphosis Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 210000002569 neuron Anatomy 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- 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
- 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/213—Feature extraction, e.g. by transforming the feature space; Summarisation; Mappings, e.g. subspace methods
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- General Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Evolutionary Biology (AREA)
- Bioinformatics & Computational Biology (AREA)
- Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种异常流量检测方法和装置,涉及计算机技术领域。该方法的一具体实施方式包括:将第一数据包拆解为预设格式的数据流,并按照特征构造规则构造数据流的特征;将数据流的特征输入选定的卷积神经网络,在选定的卷积神经网络中,通过卷积层捕获所述数据流的特征,并通过选定激活函数对卷积层的输出结果进行非线性映射,通过池化层对非线性映射后的特征降维之后,通过全连接层确定数据流是否为异常流量。该实施方式能够避免对交换机等硬件的依赖,检测精度高,减小网络消耗量,并避免导致过拟合。
Description
技术领域
本发明涉及计算机技术领域,尤其涉及一种异常流量检测方法和装置。
背景技术
SDN(Software Defined Network,软件定义网络)实现从网络部署到对网络进行编程式部署的蜕变,只有对网络流量的实时监控,才能对网络流量进行及时把控和有效管理,而大流就是异常流量中的一种。大流的定义为在单位时间内占用八成带宽(或八成以上带宽)的小部分数据流,而其余二成带宽却是由大量的小流(单位时间内占用二成或二成以下带宽)占用,由于大流数据传输量过大的特点,导致网络交通问题、网络工具问题以及信息安全问题等,严重地影响了网络功能。因而大流检测是对网络流量有效控制的有力手段。现有技术中,对大流进行检测的方法有迭代检测法,采样检测法,决策树检测法等。
迭代检测法的原型是一个分布式流量检测系统,其系统自身存在瓶颈区,导致检测精度存在一定阈值(约80%),如在此基础上想再提升精度将耗费前期的倍数成本;其次,该方法涉及专业硬件设备(交换机)进行网络流量的计算以及任务的分配,造成一定量资源消耗(网络带宽、节点存储和计算等),也限制了可拓展性。采样检测法的局限性依旧为对硬件的依赖。决策树检测法由于树结构是分叉的,必然导致各属性值分布存在偏差不合理,进而消极的影响分类精度,而且此算法仅有树的生成,因而可能导致过拟合。
在实现本发明过程中,发明人发现现有技术中至少存在如下问题:
存在对硬件依赖的局限,检测精度不够高,网络消耗量大,还可能导致过拟合。
发明内容
有鉴于此,本发明实施例提供一种异常流量检测方法和装置,能够避免对交换机等硬件的依赖,检测精度高,减小网络消耗量,并避免导致过拟合。
为实现上述目的,根据本发明实施例的一个方面,提供了一种异常流量检测方法。
一种异常流量检测方法,包括:将第一数据包拆解为预设格式的数据流,并按照特征构造规则构造所述数据流的特征;将所述数据流的特征输入选定的卷积神经网络,在所述选定的卷积神经网络中,通过卷积层捕获所述数据流的特征,并通过选定激活函数对所述卷积层的输出结果进行非线性映射,通过池化层对所述非线性映射后的特征降维之后,通过全连接层确定所述数据流是否为异常流量。
可选地,所述将第一数据包拆解为预设格式的数据流,包括:将所述第一数据包拆分为至少一个第二数据包,所述第二数据包具有五元组参数,所述五元组参数包括源IP地址、源端口、目的IP地址、目的端口和传输协议;将所述五元组参数相同的所述第二数据包组建为所述预设格式的数据流。
可选地,所述按照特征构造规则构造所述数据流的特征,包括:对所述数据流按照量级选取规则选取特征,所述量级选取规则与特征数量相关,并对选取的特征按照效级选取规则进行特征组合,得到所述数据流的特征,所述效级选取规则为优先组合代表异常流量的特征。
可选地,还包括:选取一个特征周期内的数据流样本集,按照所述特征构造规则,对所述数据流样本集中的上行、下行两个方向的数据流样本构造数据流样本特征,所述数据流样本对应有真实值,所述真实值指示所述数据流样本是否为异常流量;基于所述数据流样本特征训练所述卷积神经网络,并进行过拟合处理,然后利用选定的损失函数计算本轮训练中所述卷积神经网络输出的预测值与对应的所述真实值的误差,如果所述误差不满足预设要求,则更新所述卷积神经网络的参数,并继续进行下一轮训练,直到所述误差满足所述预设要求时训练结束。
可选地,通过变换所述卷积神经网络的激活函数、卷积维度、参数、损失函数、优化算法中的一种或多种,对所述卷积神经网络进行重复训练,以其中训练结果最优的卷积神经网络作为所述选定的卷积神经网络,所述优化算法用于更新所述卷积神经网络的节点中的权重和偏移量。
根据本发明实施例的另一方面,提供了一种异常流量检测装置。
一种异常流量检测装置,包括:数据流特征构造模块,用于将第一数据包拆解为预设格式的数据流,并按照特征构造规则构造所述数据流的特征;异常流量检测模块,用于将所述数据流的特征输入选定的卷积神经网络,在所述选定的卷积神经网络中,通过卷积层捕获所述数据流的特征,并通过选定激活函数对所述卷积层的输出结果进行非线性映射,通过池化层对所述非线性映射后的特征降维之后,通过全连接层确定所述数据流是否为异常流量。
可选地,所述数据流特征构造模块包括数据包拆解子模块,用于:将所述第一数据包拆分为至少一个第二数据包,所述第二数据包具有五元组参数,所述五元组参数包括源IP地址、源端口、目的IP地址、目的端口和传输协议;将所述五元组参数相同的所述第二数据包组建为所述预设格式的数据流。
可选地,所述数据流特征构造模块包括特征构造子模块,用于:对所述数据流按照量级选取规则选取特征,所述量级选取规则与特征数量相关,并对选取的特征按照效级选取规则进行特征组合,得到所述数据流的特征,所述效级选取规则为优先组合代表异常流量的特征。
可选地,还包括训练模块,用于:选取一个特征周期内的数据流样本集,按照所述特征构造规则,对所述数据流样本集中的上行、下行两个方向的数据流样本构造数据流样本特征,所述数据流样本对应有真实值,所述真实值指示所述数据流样本是否为异常流量;基于所述数据流样本特征训练所述卷积神经网络,并进行过拟合处理,然后利用选定的损失函数计算本轮训练中所述卷积神经网络输出的预测值与对应的所述真实值的误差,如果所述误差不满足预设要求,则更新所述卷积神经网络的参数,并继续进行下一轮训练,直到所述误差满足所述预设要求时训练结束。
可选地,所述训练模块还用于:通过变换所述卷积神经网络的激活函数、卷积维度、参数、损失函数、优化算法中的一种或多种,对所述卷积神经网络进行重复训练,以其中训练结果最优的卷积神经网络作为所述选定的卷积神经网络,所述优化算法用于更新所述卷积神经网络的节点中的权重和偏移量。
根据本发明实施例的又一方面,提供了一种电子设备。
一种电子设备,包括:一个或多个处理器;存储器,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现本发明实施例所提供的异常流量检测方法。
根据本发明实施例的又一方面,提供了一种计算机可读介质。
一种计算机可读介质,其上存储有计算机程序,所述程序被处理器执行时实现本发明实施例所提供的异常流量检测方法。
上述发明中的一个实施例具有如下优点或有益效果:将第一数据包拆解为预设格式的数据流,并按照特征构造规则构造数据流的特征,将该数据流的特征输入选定的卷积神经网络,以通过卷积层捕获该数据流的特征,并通过选定激活函数对卷积层的输出结果进行非线性映射,通过池化层对非线性映射后的特征降维之后,通过全连接层确定该数据流是否为异常流量。能够避免对交换机等硬件的依赖,检测精度高,减小网络消耗量,并避免导致过拟合。
上述的非惯用的可选方式所具有的进一步效果将在下文中结合具体实施方式加以说明。
附图说明
附图用于更好地理解本发明,不构成对本发明的不当限定。其中:
图1是根据本发明一个实施例的异常流量检测方法的主要步骤示意图;
图2是根据本发明一个实施例的异常流量检测流程示意图;
图3是根据本发明一个实施例的数据包拆解示意图;
图4是根据本发明一个实施例的异常流量检测装置的主要模块示意图;
图5是本发明实施例可以应用于其中的示例性系统架构图;
图6是适于用来实现本发明实施例的终端设备或服务器的计算机系统的结构示意图。
具体实施方式
以下结合附图对本发明的示范性实施例做出说明,其中包括本发明实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本发明的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
图1是根据本发明一个实施例的异常流量检测方法的主要步骤示意图。
如图1所示,本发明一个实施例的异常流量检测方法主要包括如下的步骤S101至步骤S102。
步骤S101:将第一数据包拆解为预设格式的数据流,并按照特征构造规则构造数据流的特征。
步骤S102:将该数据流的特征输入选定的卷积神经网络,在选定的卷积神经网络中,通过卷积层捕获数据流的特征,并通过选定激活函数对卷积层的输出结果进行非线性映射,通过池化层对非线性映射后的特征降维之后,通过全连接层确定数据流是否为异常流量。
在一个实施例中,将第一数据包拆解为预设格式的数据流,包括:将第一数据包拆分为至少一个第二数据包,第二数据包具有五元组参数,五元组参数包括源IP地址、源端口、目的IP地址、目的端口和传输协议;将五元组参数相同的第二数据包组建为预设格式的数据流,例如Pcap数据流,Pcap是一种常用的数据报存储格式,Pcap数据流中的数据是按照特定格式存储的。
第一数据包即原始数据包,其可以是trace数据包(追踪数据包),第一数据包内部还可以包含数据包,即第二数据包,第二数据包是在第一数据包内的更小的数据包。例如trace数据包(trace文件)包含多个数据包,也就是网络中的交互单位,将trace数据包中的独立数据包拆解出来,以方便整合成数据流。
在一个实施例中,按照特征构造规则构造数据流的特征,包括:
对数据流按照量级选取规则选取特征,量级选取规则与特征数量相关,并对选取的特征按照效级选取规则进行特征组合,得到数据流的特征,效级选取规则为优先组合代表异常流量的特征。在构造特征时第一需考虑量级,特征过多会因为卷积层的卷积计算导致维度巨大,特征过少又会导致精准度下降;第二需考虑的是效级,首要组合最能代表异常流量的特征,例如字节数目、包数量、包长度、比特数目,以达到最短时间内做出最精准预测。量级选取规则即根据需求选择合适的特征数量,效级选取规则即根据需求优先组合代表异常流量的特征。
本发明实施例的异常流量检测方法还包括:选取一个特征周期内的数据流样本集,按照特征构造规则,对数据流样本集中的上行、下行两个方向的数据流样本构造数据流样本特征,数据流样本对应有真实值,真实值指示数据流样本是否为异常流量;基于数据流样本特征训练卷积神经网络,并进行过拟合处理,然后利用选定的损失函数计算本轮训练中卷积神经网络输出的预测值与对应的真实值的误差,如果误差不满足预设要求,则更新卷积神经网络的参数,并继续进行下一轮训练,直到误差满足预设要求时训练结束。
在一个实施例中,可以将数据流样本集中的一部分(例如80%)数据流样本作为训练数据集中的样本,其余(剩下的20%)作为测试数据集中的样本。在训练时,基于训练数据集的数据流样本特征训练卷积神经网络。
可以通过变换卷积神经网络的激活函数、卷积维度、参数、损失函数、优化算法中的一种或多种,对卷积神经网络进行重复训练,以其中训练结果最优的卷积神经网络作为选定的卷积神经网络,优化算法用于更新卷积神经网络的节点中的权重和偏移量。训练结果最优是指的训练后的卷积神经网络的精度最高。
本发明实施例能够避免对交换机等硬件的依赖,检测精度高,并避免导致过拟合。并且由于现有技术涉及专业硬件设备(交换机)进行网络流量的计算以及任务的分配,造成一定量资源消耗(网络带宽、节点存储和计算等),也局限了可拓展性,而本发明则克服了上述缺陷,可以减小网络消耗量。
图2是根据本发明一个实施例的异常流量检测流程示意图,本发明实施例的异常流量主要是指大流,大流即在单位时间内占用八成带宽(或八成以上带宽)的数据流。
如图2所示,首先将数据包(即第一数据包)拆解为独立的数据流。具体地,可以先将数据包拆分成更小的独立数据包(即第二数据包),然后将拥有相同五元组参数(IP地址、源端口、目的IP地址、目的端口和传输协议)的上述独立数据包按照通用数据流标准组建为一条Pcap数据流,其中Pcapplusplus(一个多平台C++网络嗅探和数据包解析及制作框架)可以作为拆解数据包的工具。数据包拆解示意图可如图3所示,第一数据包为trace数据包,其中I表示拆分成的更小的独立数据包,II表示将拥有相同五元组参数的独立数据包组建的Pcap数据流。通用数据流标准是指整合数据流的通用标准,本发明实施例也可以用自定义标准替代通用标准来整合数据流,具体自定义标准可以根据需要定义。
选取一个特征周期,特征周期即选定的一个时间段,在该特征周期内对流上行(即上行方向,在上行方向上向外部发出信息流量(数据流))以及流下行(即下行方向,在下行方向上从外部接收信息流量(数据流))两个方向中进行字节数目、包数量、包长度、比特数目、包平均字节数、包到达时间最大值或最小值等特征的局部组合。本发明实施例在构造数据流特征时,按照预设的特征构造规则进行构造,具体涉及量级选取规则和效级选取规则。量级选取规则需考虑量级,即特征数量,特征过多会因为卷积层的卷积计算导致维度巨大,特征过少又会导致精准度下降;效级选取规则需考虑的是效级,即首要组合最能代表大流的特征,例如字节数目、包数量、包长度、比特数目,以达到最短时间内做出最精准预测。
特征的局部组合具体可以根据需要对各特征分别赋予不同的权重,例如每秒字节数最重要,则赋予其0.5的权重,然后按照特征的权重对各特征加权,然后拼接为包括加权后的各特性的向量。
在训练阶段,按照上述方法选取一个特征周期内的数据流样本集,并按照特征构造规则,可以对数据流样本集中的上行、下行两个方向的数据流样本构造出数据流样本集的特征,即数据流样本集中各数据流样本的特征。数据流样本即作为样本的数据流,数据流样本对应有真实值,真实值指示了对应的数据流样本是否为大流,具体一个数据流样本是否为大流是根据单位时间内占用的带宽比例来确定的,一个数据流样本占用八成带宽(或八成以上带宽)即真实值指示为大流(即或称流量较大数据流),否则真实值指示为正常流(或称小流,流量正常数据流)。大量的数据流样本即构成数据流样本集(或称数据集),其中包括大流和正常流。本发明实施例将其中80%的数据集作为训练数据集,20%的数据集作为测试数据集,分别对卷积神经网络进行训练和测试。
本发明实施例的卷积神经网络的结构组件如表1所示。
表1
卷积神经网络训练的核心过程为初始化权重和偏移量(权重和偏移量均为卷积神经网络的参数),通过卷积层捕获数据流的特征,对数据流特征进行卷积计算,通过激活函数非线性映射卷积结果,能够起到突出特征的作用,进而进行特征降维的数据处理,在这一轮训练中求得分类结果,即大流或正常流。基于Dropout(随机失活)或正则化等方法进行过拟合处理之后,计算出真实值与预测值的误差,通过反向传播法反馈结果至卷积神经网络的前面节点,通过优化算法(例如梯度下降算法)更新卷积神经网络节点中的权重和偏移量,然后进行下一轮训练,直至获得最终符合预设要求的误差时,结束训练。
本发明实施例可以通过变换卷积神经网络的激活函数、卷积维度、参数、损失函数、优化算法中的一种或多种,对卷积神经网络进行重复训练,以其中训练结果最优的卷积神经网络用于大流检测。
例如,可以采用三种常规激活函数(Sigmoid(是神经元的非线性作用函数)、ReLU(线性整流函数)、ELU(一种激活函数))对比,最高精度可达到92.1%,最短训练时间也控制在九分半以内。具体如表2所示。
表2
Sigmoid | ReLU | RLU | |
训练精度 | 0.855 | 0.921 | 0.912 |
训练时间 | 10分15秒 | 9分21秒 | 9分56秒 |
并且,由于卷积神经网络每一层结构中参数量大,方法丰富,函数量大,因此其可调节性极强,可以通过调节参数,增加维度,更换方法,组合函数等方式进行精度的拔高训练,所以精度和训练时间可能会在此基础上达到更理想的效果。例如,卷积神经网络中可以调节的参数非常多,参数不同可以达到的效果(预测结果)完全不一样,而且参数的调节没有规则,所以结果完全无法预期。维度主要是卷积维度,卷积神经网络的维度也是可以调整的,例如可以是一维卷积、二维卷积、三维卷积。上述的更换方法是指更换激活函数、损失函数、优化算法等。上文已经列出三种激活函数,另外,损失函数、优化算法也可以在多种之间进行选择。组合函数是指在不同的算法(激活函数、损失函数、优化算法等)之间可以多次进行匹配尝试,对卷积神经网络进行重复训练,以得到训练结果最优的卷积神经网络,从而提升卷积神经网络的预测精度。
本发明实施例的卷积神经网络还可以支持更多的数据处理方式防止过拟合,并且在数据量极大的情况下,由于反复反向传播回前序节点,以调整卷积神经网络的参数进行优化,使得训练结果更加精确。
同时,本发明实施例还避免一味的增添算法压力而导致训练时间成本增长,性能下降,而是从多次数据对比中达到需求和成本共赢的平衡状态,即:可以既兼顾精度的提高,又考虑训练的时间成本,避免精度需求与时间效率的失衡。
在进行大流检测时,将数据包拆解为Pcap数据流,并构造Pcap数据流的特征,然后输入训练后的卷积神经网络,例如上述的训练结果最优的卷积神经网络,通过卷积层捕获Pcap数据流的特征,并通过激活函数对卷积层的输出结果进行非线性映射,通过池化层对非线性映射后的特征降维之后,通过全连接层确定Pcap数据流是大流或是正常流。
本发明实施例基于机器学习实现大流检测,通过机器学习算法实现,避免对交换机等硬件的依赖,检测精度高,减小网络消耗量,并避免导致过拟合。作为机器学习的替换实施方式,还可以采用深度学习算法来实现。
图4是根据本发明一个实施例的异常流量检测装置的主要模块示意图。
本发明一个实施例的异常流量检测装置400主要包括:数据流特征构造模块401、异常流量检测模块402。
数据流特征构造模块401,用于将第一数据包拆解为预设格式的数据流,并按照特征构造规则构造数据流的特征。
异常流量检测模块402,用于将数据流的特征输入选定的卷积神经网络,在选定的卷积神经网络中,通过卷积层捕获数据流的特征,并通过选定激活函数对卷积层的输出结果进行非线性映射,通过池化层对非线性映射后的特征降维之后,通过全连接层确定数据流是否为异常流量。
数据流特征构造模块401可以包括数据包拆解子模块,用于:将第一数据包拆分为至少一个第二数据包,第二数据包具有五元组参数,五元组参数包括源IP地址、源端口、目的IP地址、目的端口和传输协议;将五元组参数相同的第二数据包组建为预设格式的数据流。
数据流特征构造模块401还可以包括特征构造子模块,用于:对数据流按照量级选取规则选取特征,量级选取规则与特征数量相关,并对选取的特征按照效级选取规则进行特征组合,得到数据流的特征,效级选取规则为优先组合代表异常流量的特征。
异常流量检测装置400还可以包括训练模块,用于:选取一个特征周期内的数据流样本集,按照特征构造规则,对数据流样本集中的上行、下行两个方向的数据流样本构造数据流样本特征,数据流样本对应有真实值,真实值指示数据流样本是否为异常流量;基于数据流样本特征训练卷积神经网络,并进行过拟合处理,然后利用选定的损失函数计算本轮训练中卷积神经网络输出的预测值与对应的真实值的误差,如果误差不满足预设要求,则更新卷积神经网络的参数,并继续进行下一轮训练,直到误差满足预设要求时训练结束。
在一个实施例中,训练模块具体可以用于:通过变换卷积神经网络的激活函数、卷积维度、参数、损失函数、优化算法中的一种或多种,对卷积神经网络进行重复训练,以其中训练结果最优的卷积神经网络作为选定的卷积神经网络,其中,该参数包括卷积神经网络的节点中的权重和偏移量等,该优化算法用于更新卷积神经网络的节点中的权重和偏移量。
另外,在本发明实施例中所述异常流量检测装置的具体实施内容,在上面所述异常流量检测方法中已经详细说明了,故在此重复内容不再说明。
图5示出了可以应用本发明实施例的异常流量检测方法或异常流量检测装置的示例性系统架构500。
如图5所示,系统架构500可以包括终端设备501、502、503,网络504和服务器505。网络504用以在终端设备501、502、503和服务器505之间提供通信链路的介质。网络504可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
用户可以使用终端设备501、502、503通过网络504与服务器505交互,以接收或发送消息等。终端设备501、502、503上可以安装有各种通讯客户端应用,例如购物类应用、网页浏览器应用、搜索类应用、即时通信工具、邮箱客户端、社交平台软件等(仅为示例)。
终端设备501、502、503可以是具有显示屏并且支持网页浏览的各种电子设备,包括但不限于智能手机、平板电脑、膝上型便携计算机和台式计算机等等。
服务器505可以是提供各种服务的服务器,例如对用户利用终端设备501、502、503所浏览的购物类网站提供支持的后台管理服务器(仅为示例)。后台管理服务器可以对接收到的产品信息查询请求等数据进行分析等处理,并将处理结果(例如目标推送信息、产品信息--仅为示例)反馈给终端设备。
需要说明的是,本发明实施例所提供的异常流量检测方法一般由服务器505执行,相应地,异常流量检测装置一般设置于服务器505中。
应该理解,图5中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。
下面参考图6,其示出了适于用来实现本申请实施例的终端设备或服务器的计算机系统600的结构示意图。图6示出的终端设备或服务器仅仅是一个示例,不应对本申请实施例的功能和使用范围带来任何限制。
如图6所示,计算机系统600包括中央处理单元(CPU)601,其可以根据存储在只读存储器(ROM)602中的程序或者从存储部分608加载到随机访问存储器(RAM)603中的程序而执行各种适当的动作和处理。在RAM 603中,还存储有系统600操作所需的各种程序和数据。CPU 601、ROM 602以及RAM 603通过总线604彼此相连。输入/输出(I/O)接口605也连接至总线604。
以下部件连接至I/O接口605:包括键盘、鼠标等的输入部分606;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分607;包括硬盘等的存储部分608;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分609。通信部分609经由诸如因特网的网络执行通信处理。驱动器610也根据需要连接至I/O接口605。可拆卸介质611,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器610上,以便于从其上读出的计算机程序根据需要被安装入存储部分608。
特别地,根据本发明公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本发明公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分609从网络上被下载和安装,和/或从可拆卸介质611被安装。在该计算机程序被中央处理单元(CPU)601执行时,执行本申请的系统中限定的上述功能。
需要说明的是,本发明所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本申请中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本申请中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、RF等等,或者上述的任意合适的组合。
附图中的流程图和框图,图示了按照本申请各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本发明实施例中所涉及到的模块可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的模块也可以设置在处理器中,例如,可以描述为:一种处理器包括数据流特征构造模块、异常流量检测模块。其中,这些模块的名称在某种情况下并不构成对该模块本身的限定,例如,数据流特征构造模块还可以被描述为“用于将第一数据包拆解为预设格式的数据流,并按照特征构造规则构造数据流的特征的模块”。
作为另一方面,本发明还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的设备中所包含的;也可以是单独存在,而未装配入该设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被一个该设备执行时,使得该设备包括:将第一数据包拆解为预设格式的数据流,并按照特征构造规则构造所述数据流的特征;将所述数据流的特征输入选定的卷积神经网络,在所述选定的卷积神经网络中,通过卷积层捕获所述数据流的特征,并通过选定激活函数对所述卷积层的输出结果进行非线性映射,通过池化层对所述非线性映射后的特征降维之后,通过全连接层确定所述数据流是否为异常流量。
根据本发明实施例的技术方案,将第一数据包拆解为预设格式的数据流,并按照特征构造规则构造数据流的特征,将该数据流的特征输入选定的卷积神经网络,以通过卷积层捕获该数据流的特征,并通过选定激活函数对卷积层的输出结果进行非线性映射,通过池化层对非线性映射后的特征降维之后,通过全连接层确定该数据流是否为异常流量。
上述具体实施方式,并不构成对本发明保护范围的限制。本领域技术人员应该明白的是,取决于设计要求和其他因素,可以发生各种各样的修改、组合、子组合和替代。任何在本发明的精神和原则之内所作的修改、等同替换和改进等,均应包含在本发明保护范围之内。
Claims (10)
1.一种异常流量检测方法,其特征在于,包括:
将第一数据包拆解为预设格式的数据流,并按照特征构造规则构造所述数据流的特征;
将所述数据流的特征输入选定的卷积神经网络,在所述选定的卷积神经网络中,通过卷积层捕获所述数据流的特征,并通过选定激活函数对所述卷积层的输出结果进行非线性映射,通过池化层对所述非线性映射后的特征降维之后,通过全连接层确定所述数据流是否为异常流量。
2.根据权利要求1所述的方法,其特征在于,所述将第一数据包拆解为预设格式的数据流,包括:
将所述第一数据包拆分为至少一个第二数据包,所述第二数据包具有五元组参数,所述五元组参数包括源IP地址、源端口、目的IP地址、目的端口和传输协议;
将所述五元组参数相同的所述第二数据包组建为所述预设格式的数据流。
3.根据权利要求1所述的方法,其特征在于,所述按照特征构造规则构造所述数据流的特征,包括:
对所述数据流按照量级选取规则选取特征,所述量级选取规则与特征数量相关,并对选取的特征按照效级选取规则进行特征组合,得到所述数据流的特征,所述效级选取规则为优先组合代表异常流量的特征。
4.根据权利要求1或3所述的方法,其特征在于,还包括:
选取一个特征周期内的数据流样本集,按照所述特征构造规则,对所述数据流样本集中的上行、下行两个方向的数据流样本构造数据流样本特征,所述数据流样本对应有真实值,所述真实值指示所述数据流样本是否为异常流量;
基于所述数据流样本特征训练所述卷积神经网络,并进行过拟合处理,然后利用选定的损失函数计算本轮训练中所述卷积神经网络输出的预测值与对应的所述真实值的误差,如果所述误差不满足预设要求,则更新所述卷积神经网络的参数,并继续进行下一轮训练,直到所述误差满足所述预设要求时训练结束。
5.根据权利要求4所述的方法,其特征在于,通过变换所述卷积神经网络的激活函数、卷积维度、参数、损失函数、优化算法中的一种或多种,对所述卷积神经网络进行重复训练,以其中训练结果最优的卷积神经网络作为所述选定的卷积神经网络,所述优化算法用于更新所述卷积神经网络的节点中的权重和偏移量。
6.一种异常流量检测装置,其特征在于,包括:
数据流特征构造模块,用于将第一数据包拆解为预设格式的数据流,并按照特征构造规则构造所述数据流的特征;
异常流量检测模块,用于将所述数据流的特征输入选定的卷积神经网络,在所述选定的卷积神经网络中,通过卷积层捕获所述数据流的特征,并通过选定激活函数对所述卷积层的输出结果进行非线性映射,通过池化层对所述非线性映射后的特征降维之后,通过全连接层确定所述数据流是否为异常流量。
7.根据权利要求6所述的装置,其特征在于,所述数据流特征构造模块包括数据包拆解子模块,用于:
将所述第一数据包拆分为至少一个第二数据包,所述第二数据包具有五元组参数,所述五元组参数包括源IP地址、源端口、目的IP地址、目的端口和传输协议;
将所述五元组参数相同的所述第二数据包组建为所述预设格式的数据流。
8.根据权利要求6所述的装置,其特征在于,所述数据流特征构造模块包括特征构造子模块,用于:
对所述数据流按照量级选取规则选取特征,所述量级选取规则与特征数量相关,并对选取的特征按照效级选取规则进行特征组合,得到所述数据流的特征,所述效级选取规则为优先组合代表异常流量的特征。
9.一种电子设备,其特征在于,包括:
一个或多个处理器;
存储器,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现如权利要求1-5中任一所述的方法。
10.一种计算机可读介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时实现如权利要求1-5中任一所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010597342.1A CN113762299A (zh) | 2020-06-28 | 2020-06-28 | 一种异常流量检测方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010597342.1A CN113762299A (zh) | 2020-06-28 | 2020-06-28 | 一种异常流量检测方法和装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113762299A true CN113762299A (zh) | 2021-12-07 |
Family
ID=78785434
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010597342.1A Pending CN113762299A (zh) | 2020-06-28 | 2020-06-28 | 一种异常流量检测方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113762299A (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110261710A1 (en) * | 2008-09-26 | 2011-10-27 | Nsfocus Information Technology (Beijing) Co., Ltd. | Analysis apparatus and method for abnormal network traffic |
CN109040141A (zh) * | 2018-10-17 | 2018-12-18 | 腾讯科技(深圳)有限公司 | 异常流量的检测方法、装置、计算机设备和存储介质 |
US20190036952A1 (en) * | 2017-07-28 | 2019-01-31 | Penta Security Systems Inc. | Method and apparatus for detecting anomaly traffic |
CN109787958A (zh) * | 2018-12-15 | 2019-05-21 | 深圳先进技术研究院 | 网络流量实时检测方法及检测终端、计算机可读存储介质 |
CN110138787A (zh) * | 2019-05-20 | 2019-08-16 | 福州大学 | 一种基于混合神经网络的异常流量检测方法及系统 |
CN111064721A (zh) * | 2019-12-11 | 2020-04-24 | 中国科学院深圳先进技术研究院 | 网络流量异常检测模型的训练方法及检测方法 |
CN111092873A (zh) * | 2019-12-11 | 2020-05-01 | 中国科学院深圳先进技术研究院 | 非对称卷积网络的流量检测模型的训练方法及检测方法 |
-
2020
- 2020-06-28 CN CN202010597342.1A patent/CN113762299A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110261710A1 (en) * | 2008-09-26 | 2011-10-27 | Nsfocus Information Technology (Beijing) Co., Ltd. | Analysis apparatus and method for abnormal network traffic |
US20190036952A1 (en) * | 2017-07-28 | 2019-01-31 | Penta Security Systems Inc. | Method and apparatus for detecting anomaly traffic |
CN109040141A (zh) * | 2018-10-17 | 2018-12-18 | 腾讯科技(深圳)有限公司 | 异常流量的检测方法、装置、计算机设备和存储介质 |
CN109787958A (zh) * | 2018-12-15 | 2019-05-21 | 深圳先进技术研究院 | 网络流量实时检测方法及检测终端、计算机可读存储介质 |
CN110138787A (zh) * | 2019-05-20 | 2019-08-16 | 福州大学 | 一种基于混合神经网络的异常流量检测方法及系统 |
CN111064721A (zh) * | 2019-12-11 | 2020-04-24 | 中国科学院深圳先进技术研究院 | 网络流量异常检测模型的训练方法及检测方法 |
CN111092873A (zh) * | 2019-12-11 | 2020-05-01 | 中国科学院深圳先进技术研究院 | 非对称卷积网络的流量检测模型的训练方法及检测方法 |
Non-Patent Citations (3)
Title |
---|
MATLAB中文论坛编著: "《MATLAB神经网络30个案例分析》", vol. 1, 30 April 2010, 北京航空航天大学出版社, pages: 187 * |
张艳升;李喜旺;李丹;杨华;: "基于卷积神经网络的工控网络异常流量检测", 计算机应用, no. 05, 18 December 2018 (2018-12-18) * |
李道全等: "基于一维卷积神经网络的网络流量分类方法", 《计算机工程与应用》, no. 3, 23 August 2019 (2019-08-23), pages 94 - 98 * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10812358B2 (en) | Performance-based content delivery | |
CN109032801B (zh) | 一种请求调度方法、系统及电子设备和存储介质 | |
US10027739B1 (en) | Performance-based content delivery | |
CN111769998B (zh) | 一种网络时延状态的探测方法及装置 | |
US10034222B2 (en) | System and method for mapping a service-level topology to a service-specific data plane logical topology | |
WO2021023149A1 (zh) | 一种动态返回报文的方法和装置 | |
CN113467910B (zh) | 基于业务等级的过载保护调度方法 | |
RU2697648C2 (ru) | Система классификации трафика | |
CN110058937B (zh) | 用于调度专用处理资源的方法、设备和介质 | |
CN114339135A (zh) | 一种负载均衡方法、装置、电子设备和存储介质 | |
CN108153803A (zh) | 一种数据获取方法、装置及电子设备 | |
CN110650209A (zh) | 实现负载均衡的方法和装置 | |
CN113422699B (zh) | 数据流处理方法、装置、计算机可读存储介质及电子设备 | |
US11700221B2 (en) | Rule-based annotation service in a cloud platform | |
CN112436951B (zh) | 一种预知流量路径的方法和装置 | |
CN113778818A (zh) | 优化系统的方法、装置、设备和计算机可读介质 | |
CN110247847B (zh) | 节点之间回源选路的方法和装置 | |
CN113762299A (zh) | 一种异常流量检测方法和装置 | |
CN111368190B (zh) | 信息推荐方法及装置 | |
CN115277504A (zh) | 一种网络流量监控方法、装置和系统 | |
CN107665241A (zh) | 一种实时数据多维度去重方法和装置 | |
CN114423049A (zh) | 一种感知预测方法、装置、电子设备及存储介质 | |
CN111770121B (zh) | 一种基于定向流量进行服务访问的方法和装置 | |
KR101968259B1 (ko) | 로컬 네트워크 환경에서 링크 사용량이 최소인 경로를 고려한 포그 서버 배치를 위한 장치 및 방법 | |
Xue et al. | Packet Scheduling for Multiple‐Switch Software‐Defined Networking in Edge Computing Environment |
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 |