CN113449768A - 一种基于短时傅里叶变换的网络流量分类装置及方法 - Google Patents
一种基于短时傅里叶变换的网络流量分类装置及方法 Download PDFInfo
- Publication number
- CN113449768A CN113449768A CN202110510434.6A CN202110510434A CN113449768A CN 113449768 A CN113449768 A CN 113449768A CN 202110510434 A CN202110510434 A CN 202110510434A CN 113449768 A CN113449768 A CN 113449768A
- Authority
- CN
- China
- Prior art keywords
- classification
- network flow
- unit
- flow characteristic
- network
- 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
- 238000000034 method Methods 0.000 title claims abstract description 40
- 238000000605 extraction Methods 0.000 claims abstract description 45
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 32
- 239000013598 vector Substances 0.000 claims description 82
- 238000004590 computer program Methods 0.000 claims description 26
- 230000009466 transformation Effects 0.000 claims description 26
- 238000010586 diagram Methods 0.000 claims description 22
- 238000012549 training Methods 0.000 claims description 19
- 230000002159 abnormal effect Effects 0.000 claims description 18
- 230000006798 recombination Effects 0.000 claims description 15
- 238000005215 recombination Methods 0.000 claims description 15
- 230000011218 segmentation Effects 0.000 claims description 15
- 238000010801 machine learning Methods 0.000 claims description 13
- 238000004364 calculation method Methods 0.000 claims description 12
- 238000013145 classification model Methods 0.000 claims description 7
- 238000004458 analytical method Methods 0.000 claims description 4
- 238000012544 monitoring process Methods 0.000 claims description 4
- 238000001228 spectrum Methods 0.000 claims description 3
- 238000012545 processing Methods 0.000 abstract description 7
- 238000013135 deep learning Methods 0.000 abstract description 2
- 238000005206 flow analysis Methods 0.000 abstract description 2
- 230000005540 biological transmission Effects 0.000 description 9
- 230000008569 process Effects 0.000 description 7
- 239000003999 initiator Substances 0.000 description 6
- 238000013527 convolutional neural network Methods 0.000 description 5
- 238000013528 artificial neural network Methods 0.000 description 4
- 125000004122 cyclic group Chemical group 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 238000001514 detection method Methods 0.000 description 3
- 239000011159 matrix material Substances 0.000 description 3
- 238000010606 normalization Methods 0.000 description 3
- 238000003860 storage Methods 0.000 description 3
- 230000001502 supplementing effect Effects 0.000 description 3
- 238000013459 approach Methods 0.000 description 2
- 230000006399 behavior Effects 0.000 description 2
- 238000009826 distribution Methods 0.000 description 2
- 230000005856 abnormality Effects 0.000 description 1
- 238000009825 accumulation Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000010485 coping Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000007619 statistical method Methods 0.000 description 1
- 238000013179 statistical model Methods 0.000 description 1
- 238000012360 testing method 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/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- 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)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Evolutionary Computation (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computational Linguistics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Evolutionary Biology (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
技术领域
本发明属于信息安全技术领域,涉及网络流量分类装置及方法,尤其是一种基于短时傅里叶变换的网络流量分类装置及方法。
背景技术
网络流量分类问题主要研究如何根据网络流量的原始数据,判断网络流量属于合法用户产生的正常流量,还是非法用户(攻击者)产生的异常流量。如果网络流量被判定为异常流量,则***管理员可以进一步做出告警和其他应急响应。
网络流量分类问题的主要应对方法有:基于规则的方法、基于统计的方法和基于机器学习的方法。
基于规则的方法大致可以分为两个步骤,先通过设计算法或专家手工制定的方式来获取规则信息,然后再通过一些相对简单的算法去根据已经提出的规则去判断行为是否和异常规则相象。这种方法的检测准确率通常比较高,但对于应用场景上比较苛刻,在众多研究中我们可以发现,这种异常检测的方法多数用于流量异常检测或网络安全方面的异常检测,这些场景中,无论是通过专家知识还是数据积累,都可以掌握大量的异常情况,便于研究者去提取规则。因此这种方法的准确率高就变得很好理解,如果我们所掌握的规则库足够大且足够全面,那么符合这些规则异常情况就很容易被检测出来。也正是因为需要获取足够多且足够全面的规则,受限于专家知识,我们很可能制定的规则库是不完善的,而且规则库也需要时常更新,否则如果出现新的异常种类,那么原有的规则库是永远也检测不到的。此外,对于比较大且比较全面的规则库来说,在将行为和规则库对比时,也会消耗相当长的时间。
基于统计的方法基于以下理论:异常流量是一种被怀疑的部分或完全无关的观测,因为它不是由假定的随机模型生成的。基于统计方法的异常流量检测技术一般认为正常数据发生在随机模型的高概率区域,而异常发生在随机模型的低概率区域。对给定的数据建立一个统计模型(正常数据),然后应用统计推断测试来确定新数据是否符合这个统计分布,若不符合判定为异常。但这种方法对于数据的假设依赖过于严重,面对现在各种各样的数据,我们很难假设出一种完全符合甚至较为符合历史数据的分布。
基于机器学习的有监督方法。这类方法是目前准确率较高的方法,可以使用任意常规机器学习分类器,但需要积累大量的异常样本来解决样本不均衡问题;基于机器学习的无监督方法使用基于距离的方法解决流量分类问题,采用KNN算法,找出每个数据点的K-近邻距离,并将距离与阈值比较,大于阈值则认为是异常点,这里的距离可以选用欧式距离或者角度距离等。但这种方法无论是应用到在线情况还是线下情况,效率都比较低,而且需要不断的调整参数K和阈值,并且无法发现局部异常点。更重要的是,在机器学习中,网络流量特征的选取需要人工干预,而我们往往无法确知流量存在哪些异常特征。
经检索,未发现与本发明相同或相近似的现有技术的公开文献。
发明内容
本发明的目的在于克服现有技术的不足,提出一种基于短时傅里叶变换的网络流量分类装置及方法,通过对网络流量原始数据进行处理,为自动判断网络流量属于合法用户产生的正常流量,还是非法用户(攻击者)产生的异常流量提供一种方案,为网络安全防护提供参考建议。
本发明解决其现实问题是采取以下技术方案实现的:
一种基于短时傅里叶变换的网络流量分类装置,包括:网络流量特征提取单元、网络流量特征图生成单元、分类学习单元和分类判决单元;其中,所述网络流量特征提取单元与网络流量特征图生成单元相连接,该网络流量特征图生成单元的输出端分别与分类学习单元和分类判决单元相连接,该分类学习单元的输出端与分类判决单元相连接;
所述网络流量特征提取单元用于将网络流量特征向量组送至网络流量特征图生成单元;
所述网络流量特征图生成单元用于形成二维时-频图谱,并在模型训练时,将形成的二维时-频图谱与人工标记的分类信息一并送入分类学习单元;在模型使用时,直接将形成的二维时-频图谱送入分类判决单元;
所述分类学习单元用于对网络流量特征图生成单元提供的二维时-频图谱和人工标记的分类信息进行模型训练,并在模型使用时,将训练好的模型提供给分类判决单元;
所述分类判决单元用于利用分类学习单元提供的分类模型,对网络流量特征图生成单元提供的二维时-频图谱进行分类判决并输出判决结果。
而且,所述网络流量特征提取单元包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行该计算机程序时实现:对网络流量原始数据进行切分、重组、合并、匿名化、提取协议栈各层显著信息、计算统计特性等操作,形成网络流量特征向量组,其中每条向量由某一数据流的数据包的各层显著信息和统计特性组成,并将网络流量特征向量组送至网络流量特征图生成单元。
而且,所述网络流量特征图生成单元包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行该程序时实现:利用短时傅里叶变换,对网络流量特征向量组中的每条向量,进行分时频域变换,形成二维时-频图谱,并在模型训练时将二维时-频图谱与人工标记的分类信息一并送入分类学习单元,在模型使用时,直接将二维时-频图谱送入分类判决单元。
而且,所述分类学习单元包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行该程序时实现:依据某一机器学习算法,对网络流量特征图生成单元提供的二维时-频图谱和人工标记的分类信息进行模型训练,并在模型使用时将训练好的模型提供给分类判决单元。
而且,所述分类判决单元包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行该程序时实现:利用分类学习单元提供的分类模型,对网络流量特征图生成单元提供的二维时-频图谱进行分类判决并输出判决结果。
一种基于短时傅里叶变换的网络流量分类方法,包括如下步骤:
步骤1、准备好一定数量的网络流量原始数据,送入网络流量特征提取单元;
步骤2、网络流量特征提取单元对网络流量原始数据进行切分、重组、合并、匿名化、提取协议栈各层显著信息、计算统计特性等操作,形成网络流量特征向量组,其中每条向量由某一数据流的数据包的各层显著信息和统计特性组成,并通过人工分析,标记每一条向量属于正常流量或异常流量,最后将网络流量特征向量组和人工标记的分类信息送入网络流量特征图生成单元;
步骤3、网络流量特征图生成单元利用短时傅里叶变换,对网络流量特征向量组中的每条向量,进行分时频域变换,形成二维时-频图谱,并在模型训练时将二维时-频图谱与人工标记的分类信息一并送入分类学习单元;
步骤4、分类学习单元依据机器学习算法,对网络流量特征图生成单元提供的二维时-频图谱和人工标记的分类信息进行模型训练,形成训练过的模型;
步骤5、在模型使用时,利用网络监控设备捕获网络流量原始数据,送入网络流量特征提取单元;
步骤6、网络流量特征提取单元对网络流量原始数据进行切分、重组、合并、匿名化、提取协议栈各层显著信息、计算统计特性等操作,形成网络流量特征向量组,其中每条向量由某一数据流的数据包的各层显著信息和统计特性组成,最后将网络流量特征向量组送入网络流量特征图生成单元;
步骤7、网络流量特征图生成单元利用短时傅里叶变换,对网络流量特征向量组中的每条向量,进行分时频域变换,形成二维时-频图谱,并送入分类判断单元;
步骤8、分类判决单元依据网络流量特征图生成单元送入的二维时-频图谱和步骤4分类学习单元内形成的训练过的模型进行判决,并输出判决结果。
本发明的优点和有益效果:
本发明引入信号处理领域的短时傅里叶变换算法,将一维的网络流量数据转化为二维的网络流量特征图数据,使得将二维图像识别深度学习算法(比如目前已比较成熟的、通过自学习算法进行“猫-狗”图像分类的卷积神经网络算法)用于一维网络流量分析成为可能,有效减少网络流量特征的选取中的人工干预。
附图说明
图1是本发明的装置结构示意图。
具体实施方式
以下结合附图对本发明实施例作进一步详述:
一种基于短时傅里叶变换的网络流量分类装置,如图1所示,包括:网络流量特征提取单元、网络流量特征图生成单元、分类学习单元和分类判决单元;其中,所述网络流量特征提取单元与网络流量特征图生成单元相连接,该网络流量特征图生成单元的输出端分别与分类学习单元和分类判决单元相连接,该分类学习单元的输出端与分类判决单元相连接;
所述网络流量特征提取单元用于将网络流量特征向量组送至网络流量特征图生成单元;
所述网络流量特征图生成单元用于形成二维时-频图谱,并在模型训练时,将形成的二维时-频图谱与人工标记的分类信息一并送入分类学习单元;在模型使用时,直接将形成的二维时-频图谱送入分类判决单元;
所述分类学习单元用于对网络流量特征图生成单元提供的二维时-频图谱和人工标记的分类信息进行模型训练,并在模型使用时,将训练好的模型提供给分类判决单元;
所述分类判决单元用于利用分类学习单元提供的分类模型,对网络流量特征图生成单元提供的二维时-频图谱进行分类判决并输出判决结果。
在本实施例中,所述网络流量特征提取单元包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行该计算机程序时实现:对网络流量原始数据进行切分、重组、合并、匿名化、提取协议栈各层显著信息、计算统计特性等操作,形成网络流量特征向量组,其中每条向量由某一数据流的数据包的各层显著信息和统计特性组成,并将网络流量特征向量组送至网络流量特征图生成单元。
在本实施例中,所述网络流量特征图生成单元包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行该程序时实现:利用短时傅里叶变换,对网络流量特征向量组中的每条向量,进行分时频域变换,形成二维时-频图谱,并在模型训练时将二维时-频图谱与人工标记的分类信息一并送入分类学习单元,在模型使用时,直接将二维时-频图谱送入分类判决单元。
在本实施例中,所述分类学习单元包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行该程序时实现:依据某一机器学习算法(包括但不限于卷积神经网络算法、循环神经网络算法、生成对抗网络算法等),对网络流量特征图生成单元提供的二维时-频图谱和人工标记的分类信息进行模型训练,并在模型使用时将训练好的模型提供给分类判决单元。
在本实施例中,所述分类判决单元包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行该程序时实现:利用分类学习单元提供的分类模型,对网络流量特征图生成单元提供的二维时-频图谱进行分类判决并输出判决结果。
一种基于短时傅里叶变换的网络流量分类方法,包括如下步骤:
步骤1、准备好一定数量的网络流量原始数据,送入网络流量特征提取单元;
步骤2、网络流量特征提取单元对网络流量原始数据进行切分、重组、合并、匿名化、提取协议栈各层显著信息、计算统计特性等操作,形成网络流量特征向量组,其中每条向量由某一数据流的数据包的各层显著信息和统计特性组成,并通过人工分析,标记每一条向量属于正常流量或异常流量,最后将网络流量特征向量组和人工标记的分类信息送入网络流量特征图生成单元;
步骤3、网络流量特征图生成单元利用短时傅里叶变换,对网络流量特征向量组中的每条向量,进行分时频域变换,形成二维时-频图谱,并在模型训练时将二维时-频图谱与人工标记的分类信息一并送入分类学习单元;
步骤4、分类学习单元依据某一机器学习算法(包括但不限于卷积神经网络算法、循环神经网络算法、生成对抗网络算法等),对网络流量特征图生成单元提供的二维时-频图谱和人工标记的分类信息进行模型训练,形成训练过的模型;
步骤5、在模型使用时,利用网络监控设备捕获网络流量原始数据,送入网络流量特征提取单元;
步骤6、网络流量特征提取单元对网络流量原始数据进行切分、重组、合并、匿名化、提取协议栈各层显著信息、计算统计特性等操作,形成网络流量特征向量组,其中每条向量由某一数据流的数据包的各层显著信息和统计特性组成,最后将网络流量特征向量组送入网络流量特征图生成单元;
步骤7、网络流量特征图生成单元利用短时傅里叶变换,对网络流量特征向量组中的每条向量,进行分时频域变换,形成二维时-频图谱,并送入分类判断单元;
步骤8、分类判决单元依据网络流量特征图生成单元送入的二维时-频图谱和步骤4分类学习单元内形成的训练过的模型进行判决,并输出判决结果。
下面通过具体实例对本发明作进一步说明:
如图1所示,一种基于短时傅里叶变换的网络流量分类装置,包括:网络流量特征提取单元、网络流量特征图生成单元、分类学习单元和分类判决单元;其中网络流量特征提取单元连接网络流量特征图生成单元、网络流量特征图生成单元连接分类学习单元和分类判决单元、分类学习单元也连接到分类判决单元。
网络流量特征提取单元包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行该程序时实现:对网络流量原始数据进行切分、重组、合并、匿名化、提取协议栈各层显著信息、计算统计特性等操作,形成网络流量特征向量组,其中每条向量由某一数据流的数据包的各层显著信息和统计特性组成,并将网络流量特征向量组送至网络流量特征图生成单元。不失一般性,设网络流原始数据为从数据链路层到应用层的数据包组成的二进制数据流,切分操作对二进制数据流进行解析,分割成各个数据链路层数据包;重组操作首先对数据链路层数据包进行处理,从中还原出各个IP层完整数据包,然后对IP层完整数据包进行处理,还原出TCP、UDP、ICMP和其他传输层数据;合并操作对传输层数据进行处理,依据收发主机地址、传输层协议、端口号将相同收发主机地址的数据搜集在一起形成数据流,每个数据流只保留前10个IP数据包(数据流不足十个数据包则补0);匿名化操作对数据流中的主机地址进行模糊化,如去掉精确的MAC地址和IP地址信息,代之以功能角色信息(如HOST、NETDEV、FIREWALL、GATEWAY、INTERNET、DNS);提取协议栈各层显著信息操作对数据流中协议栈各层的包头信息进行规格化操作,以统一各层包头的数据长度,对于应用层数据负载,则取前256字节作为特征(长度不足256字节则补0);在各个数据流的数据包的头部,重复地添加该数据流的统计特征信息,包括但不限于数据流总数据包数、前向数据包数(发起者至接收者)、后向数据包数(接收者至发起者)、平均数据包长度、平均数据包发包时间间隔等。经过如上步骤处理,每个数据流形成等长的字符序列,序列中的字符视为0-255的整数,将此序列进行归一化(即同除以255),形成等长的、[0,1]区间的实数向量,此实数向量的集合即为最后的网络流量特征向量组。
网络流量特征图生成单元包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行该程序时实现:利用短时傅里叶变换,对网络流量特征向量组中的每条向量,进行分时频域变换,形成二维时-频图谱,并在模型训练时将二维时-频图谱与人工标记的分类信息一并送入分类学习单元,在模型使用时,直接将二维时-频图谱送入分类判决单元。分时频域变换可采用以下算法:把向量视为长度为N的离散时间序列{Dn}(n=0,1,…,N-1),划分为步长为64、窗口为128的小段:{D0,D1,…,D127}、{D64,D65,…,D191}、……、{DN-128,DN-127,…DN-1},对每个小段实施128点离散傅里叶变换,得到64点0频及正频域数据(由实数离散傅里叶变换特性,同时得到的负频域的64点数据可以舍去),将每小段频域数据视为纵向量,将每小段频域数据横向拼接,并只取前64个小段,最终得到64x64的一个元素取值在[0,1]之间的矩阵,此矩阵即为二维时-频图谱,并可直接转化为64x64的灰度值图片。
分类学习单元包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行该程序时实现:依据某一机器学习算法(包括但不限于卷积神经网络算法、循环神经网络算法、生成对抗网络算法等),对网络流量特征图生成单元提供的二维时-频图谱和人工标记的分类信息进行模型训练,并在模型使用时将训练好的模型提供给分类判决单元。
分类判决单元包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行该程序时实现:利用分类学习单元提供的分类模型,对网络流量特征图生成单元提供的二维时-频图谱进行分类判决并输出判决结果。
一种基于短时傅里叶变换的网络流量分类方法,包括如下步骤:
步骤1、准备好一定数量的网络流量原始数据,送入网络流量特征提取单元;
步骤2、网络流量特征提取单元对网络流量原始数据进行切分、重组、合并、匿名化、提取协议栈各层显著信息、计算统计特性等操作,形成网络流量特征向量组,其中每条向量由某一数据流的数据包的各层显著信息和统计特性组成,并通过人工分析,标记每一条向量属于正常流量或异常流量,最后将网络流量特征向量组和人工标记的分类信息送入网络流量特征图生成单元,其中,不失一般性,设网络流原始数据为从数据链路层到应用层的数据包组成的二进制数据流,切分操作对二进制数据流进行解析,分割成各个数据链路层数据包;重组操作首先对数据链路层数据包进行处理,从中还原出各个IP层完整数据包,然后对IP层完整数据包进行处理,还原出TCP、UDP、ICMP和其他传输层数据;合并操作对传输层数据进行处理,依据收发主机地址、传输层协议、端口号将相同收发主机地址的数据搜集在一起形成数据流,每个数据流只保留前10个IP数据包(数据流不足十个数据包则补0);匿名化操作对数据流中的主机地址进行模糊化,如去掉精确的MAC地址和IP地址信息,代之以功能角色信息(如HOST、NETDEV、FIREWALL、GATEWAY、INTERNET、DNS);提取协议栈各层显著信息操作对数据流中协议栈各层的包头信息进行规格化操作,以统一各层包头的数据长度,对于应用层数据负载,则取前256字节作为特征(长度不足256字节则补0);在各个数据流的数据包的头部,重复地添加该数据流的统计特征信息,包括但不限于数据流总数据包数、前向数据包数(发起者至接收者)、后向数据包数(接收者至发起者)、平均数据包长度、平均数据包发包时间间隔等。经过如上步骤处理,每个数据流形成等长的字符序列,序列中的字符视为0-255的整数,将此序列进行归一化(即同除以255),形成等长的、[0,1]区间的实数向量,此实数向量的集合即为最后的网络流量特征向量组;
步骤3、网络流量特征图生成单元利用短时傅里叶变换,对网络流量特征向量组中的每条向量,进行分时频域变换,形成二维时-频图谱,并在模型训练时将二维时-频图谱与人工标记的分类信息一并送入分类学习单元,其中,分时频域变换可采用以下算法:把向量视为长度为N的离散时间序列{Dn}(n=0,1,…,N-1),划分为步长为64、窗口为128的小段:{D0,D1,…,D127}、{D64,D65,…,D191}、……、{DN-128,DN-127,…DN-1},对每个小段实施128点离散傅里叶变换,得到64点0频及正频域数据(由实数离散傅里叶变换特性,同时得到的负频域的64点数据可以舍去),将每小段频域数据视为纵向量,将每小段频域数据横向拼接,并只取前64个小段,最终得到64x64的一个元素取值在[0,1]之间的矩阵,此矩阵即为二维时-频图谱,并可直接转化为64x64的灰度值图片;
步骤4、分类学习单元依据某一机器学习算法(包括但不限于卷积神经网络算法、循环神经网络算法、生成对抗网络算法等),对网络流量特征图生成单元提供的二维时-频图谱和人工标记的分类信息进行模型训练,形成训练过的模型;
步骤5、在模型使用时,利用网络监控设备捕获网络流量原始数据,送入网络流量特征提取单元;
步骤6、网络流量特征提取单元对网络流量原始数据进行切分、重组、合并、匿名化、提取协议栈各层显著信息、计算统计特性等操作,形成网络流量特征向量组,其中每条向量由某一数据流的数据包的各层显著信息和统计特性组成,最后将网络流量特征向量组送入网络流量特征图生成单元,其中,不失一般性,设网络流原始数据为从数据链路层到应用层的数据包组成的二进制数据流,切分操作对二进制数据流进行解析,分割成各个数据链路层数据包;重组操作首先对数据链路层数据包进行处理,从中还原出各个IP层完整数据包,然后对IP层完整数据包进行处理,还原出TCP、UDP、ICMP和其他传输层数据;合并操作对传输层数据进行处理,依据收发主机地址、传输层协议、端口号将相同收发主机地址的数据搜集在一起形成数据流,每个数据流只保留前10个IP数据包(数据流不足十个数据包则补0);匿名化操作对数据流中的主机地址进行模糊化,如去掉精确的MAC地址和IP地址信息,代之以功能角色信息(如HOST、NETDEV、FIREWALL、GATEWAY、INTERNET、DNS);提取协议栈各层显著信息操作对数据流中协议栈各层的包头信息进行规格化操作,以统一各层包头的数据长度,对于应用层数据负载,则取前256字节作为特征(长度不足256字节则补0);在各个数据流的数据包的头部,重复地添加该数据流的统计特征信息,包括但不限于数据流总数据包数、前向数据包数(发起者至接收者)、后向数据包数(接收者至发起者)、平均数据包长度、平均数据包发包时间间隔等。经过如上步骤处理,每个数据流形成等长的字符序列,序列中的字符视为0-255的整数,将此序列进行归一化(即同除以255),形成等长的、[0,1]区间的实数向量,此实数向量的集合即为最后的网络流量特征向量组;
步骤7、网络流量特征图生成单元利用短时傅里叶变换,对网络流量特征向量组中的每条向量,进行分时频域变换,形成二维时-频图谱,并送入分类判断单元,其中,分时频域变换可采用以下算法:把向量视为长度为N的离散时间序列{Dn}(n=0,1,…,N-1),划分为步长为64、窗口为128的小段:{D0,D1,…,D127}、{D64,D65,…,D191}、……、{DN-128,DN-127,…DN-1},对每个小段实施128点离散傅里叶变换,得到64点0频及正频域数据(由实数离散傅里叶变换特性,同时得到的负频域的64点数据可以舍去),将每小段频域数据视为纵向量,将每小段频域数据横向拼接,并只取前64个小段,最终得到64x64的一个元素取值在[0,1]之间的矩阵,此矩阵即为二维时-频图谱,并可直接转化为64x64的灰度值图片;
步骤8、分类判决单元依据网络流量特征图生成单元送入的二维时-频图谱和第4步分类学习单元内形成的训练过的模型进行判决,并输出判决结果。
本领域内的技术人员应明白,本申请的实施例可提供为方法、***、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(***)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
Claims (6)
1.一种基于短时傅里叶变换的网络流量分类装置,其特征在于:包括:网络流量特征提取单元、网络流量特征图生成单元、分类学习单元和分类判决单元;其中,所述网络流量特征提取单元与网络流量特征图生成单元相连接,该网络流量特征图生成单元的输出端分别与分类学习单元和分类判决单元相连接,该分类学习单元的输出端与分类判决单元相连接;
所述网络流量特征提取单元用于将网络流量特征向量组送至网络流量特征图生成单元;
所述网络流量特征图生成单元用于形成二维时-频图谱,并在模型训练时,将形成的二维时-频图谱与人工标记的分类信息一并送入分类学习单元;在模型使用时,直接将形成的二维时-频图谱送入分类判决单元;
所述分类学习单元用于对网络流量特征图生成单元提供的二维时-频图谱和人工标记的分类信息进行模型训练,并在模型使用时,将训练好的模型提供给分类判决单元;
所述分类判决单元用于利用分类学习单元提供的分类模型,对网络流量特征图生成单元提供的二维时-频图谱进行分类判决并输出判决结果。
2.根据权利要求1所述的一种基于短时傅里叶变换的网络流量分类装置,其特征在于:所述网络流量特征提取单元包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行该计算机程序时实现:对网络流量原始数据进行切分、重组、合并、匿名化、提取协议栈各层显著信息、计算统计特性等操作,形成网络流量特征向量组,其中每条向量由某一数据流的数据包的各层显著信息和统计特性组成,并将网络流量特征向量组送至网络流量特征图生成单元。
3.根据权利要求1所述的一种基于短时傅里叶变换的网络流量分类装置,其特征在于:所述网络流量特征图生成单元包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行该程序时实现:利用短时傅里叶变换,对网络流量特征向量组中的每条向量,进行分时频域变换,形成二维时-频图谱,并在模型训练时将二维时-频图谱与人工标记的分类信息一并送入分类学习单元,在模型使用时,直接将二维时-频图谱送入分类判决单元。
4.根据权利要求1所述的一种基于短时傅里叶变换的网络流量分类装置,其特征在于:所述分类学习单元包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行该程序时实现:依据某一机器学习算法,对网络流量特征图生成单元提供的二维时-频图谱和人工标记的分类信息进行模型训练,并在模型使用时将训练好的模型提供给分类判决单元。
5.根据权利要求1所述的一种基于短时傅里叶变换的网络流量分类装置,其特征在于:所述分类判决单元包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行该程序时实现:利用分类学习单元提供的分类模型,对网络流量特征图生成单元提供的二维时-频图谱进行分类判决并输出判决结果。
6.一种基于短时傅里叶变换的网络流量分类方法,其特征在于:包括如下步骤:
步骤1、准备好一定数量的网络流量原始数据,送入网络流量特征提取单元;
步骤2、网络流量特征提取单元对网络流量原始数据进行切分、重组、合并、匿名化、提取协议栈各层显著信息、计算统计特性等操作,形成网络流量特征向量组,其中每条向量由某一数据流的数据包的各层显著信息和统计特性组成,并通过人工分析,标记每一条向量属于正常流量或异常流量,最后将网络流量特征向量组和人工标记的分类信息送入网络流量特征图生成单元;
步骤3、网络流量特征图生成单元利用短时傅里叶变换,对网络流量特征向量组中的每条向量,进行分时频域变换,形成二维时-频图谱,并在模型训练时将二维时-频图谱与人工标记的分类信息一并送入分类学习单元;
步骤4、分类学习单元依据机器学习算法,对网络流量特征图生成单元提供的二维时-频图谱和人工标记的分类信息进行模型训练,形成训练过的模型;
步骤5、在模型使用时,利用网络监控设备捕获网络流量原始数据,送入网络流量特征提取单元;
步骤6、网络流量特征提取单元对网络流量原始数据进行切分、重组、合并、匿名化、提取协议栈各层显著信息、计算统计特性等操作,形成网络流量特征向量组,其中每条向量由某一数据流的数据包的各层显著信息和统计特性组成,最后将网络流量特征向量组送入网络流量特征图生成单元;
步骤7、网络流量特征图生成单元利用短时傅里叶变换,对网络流量特征向量组中的每条向量,进行分时频域变换,形成二维时-频图谱,并送入分类判断单元;
步骤8、分类判决单元依据网络流量特征图生成单元送入的二维时-频图谱和步骤4分类学习单元内形成的训练过的模型进行判决,并输出判决结果。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110510434.6A CN113449768A (zh) | 2021-05-11 | 2021-05-11 | 一种基于短时傅里叶变换的网络流量分类装置及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110510434.6A CN113449768A (zh) | 2021-05-11 | 2021-05-11 | 一种基于短时傅里叶变换的网络流量分类装置及方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113449768A true CN113449768A (zh) | 2021-09-28 |
Family
ID=77809613
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110510434.6A Pending CN113449768A (zh) | 2021-05-11 | 2021-05-11 | 一种基于短时傅里叶变换的网络流量分类装置及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113449768A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114629681A (zh) * | 2022-01-28 | 2022-06-14 | 云南电网有限责任公司信息中心 | 一种基于随机傅里叶核函数的异常流量检测方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102821101A (zh) * | 2012-07-27 | 2012-12-12 | 北京中科晶上科技有限公司 | Ip数据包识别方法及网关 |
CN112235314A (zh) * | 2020-10-29 | 2021-01-15 | 东巽科技(北京)有限公司 | 网络流量检测方法和装置及设备 |
-
2021
- 2021-05-11 CN CN202110510434.6A patent/CN113449768A/zh active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102821101A (zh) * | 2012-07-27 | 2012-12-12 | 北京中科晶上科技有限公司 | Ip数据包识别方法及网关 |
CN112235314A (zh) * | 2020-10-29 | 2021-01-15 | 东巽科技(北京)有限公司 | 网络流量检测方法和装置及设备 |
Non-Patent Citations (2)
Title |
---|
SHIQIANG DUAN ET AL.: "A Novel Classification Method for Flutter Signals Based on the CNN and STFT", 《INTERNATIONAL JOURNAL OF AEROSPACE ENGINEERING》 * |
WEIYOU LIU ET AL.: "A novel network intrusion detection algorithm based on Fast Fourier Transformation", 《2019IAI》 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114629681A (zh) * | 2022-01-28 | 2022-06-14 | 云南电网有限责任公司信息中心 | 一种基于随机傅里叶核函数的异常流量检测方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110597734B (zh) | 一种适用于工控私有协议的模糊测试用例生成方法 | |
CN108900432B (zh) | 一种基于网络流行为的内容感知方法 | |
CN111064678A (zh) | 基于轻量级卷积神经网络的网络流量分类方法 | |
CN110611640A (zh) | 一种基于随机森林的dns协议隐蔽通道检测方法 | |
CN111611280A (zh) | 一种基于cnn和sae的加密流量识别方法 | |
Liu et al. | The detection method of low-rate DoS attack based on multi-feature fusion | |
CN109951462B (zh) | 一种基于全息建模的应用软件流量异常检测***及方法 | |
CN112822189A (zh) | 一种流量识别方法及装置 | |
CN111191767A (zh) | 一种基于向量化的恶意流量攻击类型的判断方法 | |
CN113452672B (zh) | 基于协议逆向分析的电力物联网终端流量异常分析方法 | |
CN112583852A (zh) | 一种异常流量检测方法 | |
CN116346384A (zh) | 一种基于变分自编码器的恶意加密流量检测方法 | |
CN111294342A (zh) | 一种软件定义网络中DDos攻击的检测方法及*** | |
CN110839042B (zh) | 一种基于流量的自反馈恶意软件监测***和方法 | |
CN113449768A (zh) | 一种基于短时傅里叶变换的网络流量分类装置及方法 | |
Ning et al. | A novel malware traffic classification method using semi-supervised learning | |
CN112383488B (zh) | 一种适用于加密与非加密数据流的内容识别方法 | |
CN113037748A (zh) | 一种c&c信道混合检测方法及*** | |
CN117857088A (zh) | 一种网络流量异常检测方法、***、设备及介质 | |
CN115225731B (zh) | 一种基于混合神经网络的在线协议识别方法 | |
CN110557402A (zh) | 异常流量的检测方法及装置 | |
CN114979017B (zh) | 基于工控***原始流量的深度学习协议识别方法及*** | |
CN114338437B (zh) | 网络流量分类方法、装置、电子设备及存储介质 | |
CN114268484A (zh) | 恶意加密流量检测方法、装置、电子设备及存储介质 | |
CN114615056B (zh) | 一种基于对抗鲁棒性学习的Tor恶意流量检测方法 |
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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20210928 |
|
RJ01 | Rejection of invention patent application after publication |