CN113726686A - 流量识别方法、装置、电子设备及存储介质 - Google Patents
流量识别方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN113726686A CN113726686A CN202010456450.7A CN202010456450A CN113726686A CN 113726686 A CN113726686 A CN 113726686A CN 202010456450 A CN202010456450 A CN 202010456450A CN 113726686 A CN113726686 A CN 113726686A
- Authority
- CN
- China
- Prior art keywords
- preset
- probability
- traffic
- type
- flow type
- 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 58
- 238000012549 training Methods 0.000 claims description 80
- 238000003058 natural language processing Methods 0.000 claims description 26
- 230000011218 segmentation Effects 0.000 claims description 13
- 238000004590 computer program Methods 0.000 claims description 5
- 238000004891 communication Methods 0.000 abstract description 2
- 238000004422 calculation algorithm Methods 0.000 description 13
- 230000008569 process Effects 0.000 description 10
- 238000013145 classification model Methods 0.000 description 9
- 238000004364 calculation method Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 7
- 238000013528 artificial neural network Methods 0.000 description 4
- 238000012512 characterization method Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 238000013527 convolutional neural network Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000000605 extraction Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 238000007781 pre-processing Methods 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000002457 bidirectional effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000007619 statistical method Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 238000000844 transformation Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/24—Traffic characterised by specific attributes, e.g. priority or QoS
- H04L47/2441—Traffic characterised by specific attributes, e.g. priority or QoS relying on flow classification, e.g. using integrated services [IntServ]
-
- 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
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
-
- 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/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
- G06N3/084—Backpropagation, e.g. using gradient descent
-
- 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
- G06N3/088—Non-supervised learning, e.g. competitive learning
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/02—Capturing of monitoring data
- H04L43/026—Capturing of monitoring data using flow identification
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/24—Traffic characterised by specific attributes, e.g. priority or QoS
- H04L47/2483—Traffic characterised by specific attributes, e.g. priority or QoS involving identification of individual flows
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/2866—Architectures; Arrangements
- H04L67/30—Profiles
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/16—Threshold monitoring
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- General Engineering & Computer Science (AREA)
- Life Sciences & Earth Sciences (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明实施例涉及通信领域,公开了一种流量识别方法、装置、电子设备及存储介质。本发明中,方法包括:确定待识别的数据流属于各预设流量类型的概率;其中,将属于各预设流量类型的概率记作各预设流量类型的归属概率;比较各预设流量类型的归属概率与各预设流量类型的预设概率门限的大小关系;若各预设流量类型中,不存在归属概率大于或等于预设概率门限的预设流量类型,则识别出待识别的数据流的流量类型为未知类型。预先为各流量类型设置概率门限,根据归属概率和概率门限的关系,识别出不属于预设流量类型的未知流量,避免了对开放数据集中待识别数据流的流量类型误识别,提高流量识别的准确性和实用性。
Description
技术领域
本发明实施例涉及通信领域,特别涉及一种流量识别方法、装置、电子设备及存储介质。
背景技术
流量识别的发展经历了几个重要阶段,在最早期主要是基于源IP、源端口、目的IP、目的端口与协议名称的五元组的识别手段,但是其识别能力对网络动态IP与端口变动十分敏感,已经无法满足现今的流量识别的需求。目前被广泛使用的流量手段为深度报文检测方法(Deep packet Inspection,DPI),DPI是通过对报文解析来获取流量的匹配模式、关键字等报文特征来实现对流量的识别,但是其依赖于对报文的明文信息的获取,使得其对加密流量的识别能力偏弱。相关技术中进行加密流量识别时,通过人工对数据流特征构造得到最佳分类特征实现对部分加密流量的识别,或者通过构建的一维卷积神经网络模型对固定类别的加密流量进行识别。对加密流量识别过程中,流量识别方法的实用性和准确性都较差。
发明内容
本发明实施例的目的在于提供一种流量识别方法、装置、电子设备及存储介质,实现对开放集数据中加密流量准确、高效的识别,提高流量识别的实用性。
为解决上述技术问题,本发明的实施例提供了一种流量识别方法,包括:确定待识别的数据流属于各预设流量类型的概率;其中,将属于各预设流量类型的概率记作各预设流量类型的归属概率;比较各预设流量类型的归属概率与各预设流量类型的预设概率门限的大小关系;若各预设流量类型中,不存在归属概率大于或等于预设概率门限的预设流量类型,则识别出待识别的数据流的流量类型为未知类型。
本发明的实施例还提供了一种流量识别装置,包括:确定模块,用于确定待识别的数据流属于各预设流量类型的概率;其中,将属于各预设流量类型的概率记作各预设流量类型的归属概率;比较模块,用于比较各预设流量类型的归属概率与各预设流量类型的预设概率门限的大小关系;识别模块,用于确定待识别的数据流的流量类型,若各预设流量类型中,不存在归属概率大于或等于预设概率门限的预设流量类型,则识别出待识别的数据流的流量类型为未知类型。
本发明的实施例还提供了一种电子设备,包括:至少一个处理器;以及,与至少一个处理器通信连接的存储器;其中,存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够执行上述的流量识别方法。
本发明的实施方式还提供了一种计算机可读存储介质,存储有计算机程序,计算机程序被处理器执行时实现上述的流量识别方法。
本发明实施例相对于现有技术而言,获取待识别的数据流属于各预设流量类型的概率,并将属于各预设流量类型的概率记作各预设流量类型的归属概率,比较各预设流量类型的归属概率和各预设流量类型预设概率门限的大小关系,若不存在归属概率大于或等于预设概率门限的预设流量类型,则识别出待识别的数据流的流量类型为未知类型。在开放数据集中流量类型的识别中通过预先为各预设流量类型设置预设概率门限,在获取到待识别的数据流属于各预设流量类型的概率后,根据归属概率和预设概率门限的关系,识别出不属于任何预设流量类型的未知类型的流量,从而避免了将不属于预设流量类型的待识别数据流的流量类型误识别为已知的预设流量类型,提高了流量识别的准确性和实用性。
另外,在比较各预设流量类型的归属概率与各预设流量类型的预设概率门限的大小关系后,还包括:若各预设流量类型中,存在归属概率大于或等于预设概率门限的预设流量类型,则将归属概率最大的预设流量类型作为待识别的数据流的流量类型。通过将归属概率最大的预设流量类型作为待识别的数据流的流量类型,实现对待识别的数据流的流量类型尽可能准确的识别。
另外,每个预设流量类型的预设概率门限,通过以下方式计算得到:创建预设流量类型的一对多分类网络;通过一对多分类网络,获取各训练样本的输出概率;其中,训练样本为属于预设流量类型的数据流;将各训练样本的输出概率拟合成高斯分布;根据高斯分布的均值和标准差,计算预设流量类型的预设概率门限。通过创建的一对多分类网络获取预设流量类型多个训练样本的输出概率,并将输出概率拟合为高斯分布,根据高斯分布的均值和标准差确定预设概率门限,提高了得到的预设概率门限的准确性。
另外,将各训练样本的输出概率拟合成一个高斯分布,包括:将各训练样本的输出概率拟合成均值为1的高斯分布。通过将输出概率拟合为均值为1的高斯分布,简化了预设概率门限的计算,提高了预设概率门限的计算效率,同时降低了系统的处理负担。
另外,确定待识别的数据流属于各预设流量类型的概率,包括:从待识别的数据流的未加密数据包中获取应用层的有效载荷payload数据;对payload数据进行切词,生成待识别的数据流的自然语言处理NLP单词列表;根据NLP单词列表,通过预先训练出的识别模型确定所述待识别的数据流属于各所述预设流量类型的概率。通过根据对获取的payload数据进行切词得到的待识别的数据流的NLP单词列表,并通过预先训练出的识别模型计算出待识别的数据流属于各预设流量类型的概率,充分的利用待识别的数据流的流量信息,提高获取到的流特征的准确性,进而提高得到的归属概率的准确性。
另外,识别模型通过以下方式训练得到:提供用于进行预训练的动态词向量模型;根据第一文本数据对动态词向量模型进行预训练;其中,预训练包括无监督训练;将预训练后的动态词向量模型的编码网络参数输入识别模型,根据第二文本数据进行对识别模型监督训练。通过采用基于动态词向量模型预训练与微调机制的训练方法得到识别模型,提高了识别模型对待识别的数据流流特征和所属流量类型的识别能力,进而提高了流量识别的准确性。
另外,对payload数据进行切词,包括:通过二元文法对payload数据进行切词。通过采用二元文法对payload数据进行切词,拓展了词库的大小,使得词库中包含的词语数量更加贴近自然语言,进一步提高后续流量类型识别结果的准确性。
附图说明
一个或多个实施例通过与之对应的附图中的图片进行示例性说明,这些示例性说明并不构成对实施例的限定。
图1是根据本发明第一实施例中的流量识别方法流程图;
图2是根据本发明第一实施例中的归属概率计算方法流程图;
图3是根据本发明第一实施例中的二元文法切词示意图;
图4是根据本发明第一实施例中的识别模型训练方法示意图;
图5是根据本发明第二实施例中的预设概率门限计算方法流程图;
图6是根据本发明第三实施例中的流量识别装置结构示意图;
图7是根据本发明第一实施例中的电子设备结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合附图对本发明的各实施例进行详细的阐述。然而,本领域的普通技术人员可以理解,在本发明各实施例中,为了使读者更好地理解本申请而提出了许多技术细节。但是,即使没有这些技术细节和基于以下各实施例的种种变化和修改,也可以实现本申请所要求保护的技术方案。以下各个实施例的划分是为了描述方便,不应对本发明的具体实现方式构成任何限定,各个实施例在不矛盾的前提下可以相互结合相互引用。
本发明的第一实施例涉及一种流量识别方法,确定待识别的数据流属于各预设流量类型的概率;其中,将属于各预设流量类型的概率记作各预设流量类型的归属概率;比较各预设流量类型的归属概率与各预设流量类型的预设概率门限的大小关系;若各预设流量类型中,不存在归属概率大于或等于预设概率门限的预设流量类型,则识别出待识别的数据流的流量类型为未知类型。通过预先为各预设流量类型设置预设概率门限,在获取到待识别的数据流属于各预设流量类型的概率后,根据归属概率和预设概率门限的关系,识别出不属于任何预设流量类型的未知类型的流量,从而避免了对待识别的数据流的流量类型误识别,提高流量识别的准确性,并且使得流量识别方法能够应用的开放数据集中流量类型的识别中,提高了流量识别方法的实用性。
下面对本实施例的流量识别方法的实现细节进行具体的说明,以下内容仅为方便理解提供的实现细节,并非实施本方案的必须。
本发明第一实施例中的流量识别方法的具体流程如图1所示,具体包括以下步骤:
步骤101,确定待识别的数据流属于各预设流量类型的概率。
具体地说,在接收到流量识别任务后,识别系统会接收传输到识别系统的一整条流量,然后通过数据包捕获函数对输入流量进行抓包,并将抓取的数据包存储为pcap格式的文件,并对输入流量进行数据流切分,生成多个待识别的数据流,供识别系统逐一或同步的对各数据流进行识别。识别过程中,识别系统根据待识别的数据流的流量信息和流特征,结合预先设置的预设流量类型,确定待识别的数据流属于各预设流量类型的概率;其中,将属于各预设流量类型的概率记作各预设流量类型的归属概率。
在一个例子中,识别系统确定待识别的数据流属于各预设流量类型时,从待识别的数据流的未加密数据包中获取应用层的有效载荷payload数据;对payload数据进行切词,生成待识别的数据流的自然语言处理NLP单词列表;根据NLP单词列表,通过预先训练出的识别模型确定待识别的数据流属于各预设流量类型的概率,识别系统获取待识别的数据流属于各预设流量类型概率的方法的具体流程图如图2所示,具体包括以下步骤:
子步骤1011,对流量进行切分,获取待识别的数据流。
具体地说,识别系统在接受到一条完整的流量后,根据源IP、源端口、目标IP、目标端口、协议名称这五个参数组成的五元组对流量输入流量的pcap数据进行切分,并将每条数据流里面的报文按照时间顺序排列,生成至少一个待识别的数据流,并将获取到的待识别的数据流通过一个输入端口有序的传输到识别系统中分类系统的数据输入接口或者通过多个端口将多个待识别的数据流并行传入识别系统中分类系统的数据输入接口,从而使得识别系统获取到待识别的各数据流。
子步骤1012,对待识别的数据流进行预处理。
具体地说,在获取到待识别的数据流后,识别系统从待识别的数据流的未加密数据包中获取应用层的有效载荷payload数据,对payload数据进行切词,生成待识别的数据流的自然语言处理NLP单词列表。从而将待识别的数据流的抽象特征提取到NLP单词列表中,供后续识别步骤使用。
在一个例子中,识别系统在对payload数据进行切词时,通过二元文法对payload数据进行切词,由于报文字节范围为“0x00”到“0xff”,若以单字节作为NLP单词列表中的独立单词,则词库仅能包含256个单词,与自然语言中词的数量具有较大的差距,而采用二元文法对payload数据进行切词时,字节范围变更为“0x0000”至“0xffff”,词库能包含的单词数量变为65536个,基本符合自然语言的词库要求,从而便于将得到的词组与自然语言贴合。
例如,根据二元文法对payload数据进行切词的得到NLP单词流量的切词示意图如图3所示,获取到的原始payload数据为:1601031122334455aa,根据二元文法(Bigram)切词后得到的NLP单词列表为:1601,0103,0311,1122,2233,3344,4455,55aa。
子步骤1013,确定待识别的数据流属于各预设流量类型的概率。
具体地说,在对待识别的数据流进行预处理,得到待识别的数据流的NLP单词列表后,将NLP单词列表输入识别系统的识别模型中,识别模型根据输入的NLP单词列表,确定待识别的数据流的特征向量,并根据特征向量确定待识别的数据流属于各预设流量类型的概率。
在一个例子中,根据NLP单词列表,确定待识别的数据流的特征向量时,识别模型根据获取到的NLP单词列表,通过动态词向量算法获取待识别的数据流的特征向量,再通过识别模型中的分类模型,例如softmax多分类器,根据特征向量计算出待识别的数据流属于各预设流量类型的概率。通过采用动态词向量算法获取待识别的数据流的特征向量,利用动态词向量算法根据输入的NLP单词列表的上下文自行调整的特性,解决静态词向量仅能实现1对1映射导致抽象特征提取不准确的问题,提高得到的词向量对应的抽象特征的指向性。
其中,识别模型通过以下方式训练得到:提供用于进行预训练的动态词向量模型;根据第一文本数据对动态词向量模型进行预训练;其中,预训练包括无监督训练;将预训练后的动态词向量模型的编码网络参数输入识别模型,根据第二文本数据进行对识别模型监督训练。
例如,识别模型的训练示意图如图4所示,第一文本数据无流量类型标签的Bigram文本数据,第二文本数据为包含流量类型标签的Bigram文本数据,识别模型的训练包括动态词向量编码网络的表征学习以及分类模型上层分类网络的分类学习,在动态词向量编码网络进行表征训练的时候,可以直接从预先得到的无监督数据集中抽取Bigram文本数据,在上层预训练网络中采用无监督学习的方式训练提供的动态词向量模型的表征能力。分类系统中的分类模型分为上层分类器网络和下层编码网络,在进行分类模型的训练时,下层编码网络中的参数可以直接从经过预训练后的动态词向量编码网络中进行复制,复用预训练后的动态词向量编码网络,然后直接调用在监督学习集中抽取的Bigram文本数据进行训练,并结合上层分类网络分类训练结果对模型中动态词向量编码网络的参数进行微调,直到训练完成。通过预训练加微调机制进行识别模型的训练,预先使用大量无标签数据对动态词向量编码网络进行预训练,进行分类训练时,复用动态向量编码网络的参数,从而在分类训练前完成了编码网络的初始化,提高了分类训练的拟合速度和分类的准确性、通过将分类系统训练过程中的表征训练和分类训练分离,利用了更多的数据进行数据流特征的学习,提高了识别模型对待识别的数据流流特征和所属流量类型的识别能力,进而提高了识别模型进行特征向量提取和待识别的数据流属于各预设流量类型的概率计算的准确性,从而提高流量识别的准确性。
另外,本实施例中采用的动态词向量模型包括但不限于是以下任一种动态词向量模型:Bert(Bidirectional Encoder Representations from Transformers),Albert(ALite Bert),RoBERTa(A Robustly Optimized Bert)。
步骤102,检测是否存在归属概率大于预设概率门限的预设流量类型,若不存在归属概率大于预设概率门限的预设流量类型,则进入步骤103;若存在归属概率大于预设概率门限的预设流量类型,则进入步骤104。
具体地说,根据经过切分后的待识别的数据流属于各预设流量的概率得出各预设流量类型的归属概率后,识别系统读取自身预存的各预设流量类型的预设概率门限,然后比较各预设流量类型的归属概率和各预设流量类型的预设概率门限的大小关系,检测是否存在归属概率大于预设概率门限的预设流量类型,若不存在归属概率大于预设概率门限的预设流量类型,则进入步骤103;若存在归属概率大于预设概率门限的预设流量类型,则进入步骤104。
步骤103,判定待识别的数据流的流量类型为未知类型。
具体地说,在比较完各预设流量类型的归属概率和各预设流量类型的预设概率门限的大小关系后,根据比较的结果,若各预设流量类型中,不存在归属概率大于或等于预设概率门限的预设流量类型,则识别出待识别的数据流的流量类型为未知类型。
例如,预设流量类型共有3种,待识别的数据流属于类型1的概率为0.3,属于类型2的概率为0.35,属于类型3的概率为0.28,类型1的预设概率门限为0.45,类型2的预设概率门限为0.42,类型的预设概率门限为0.55,则不存在归属概率大于预设概率门限的预设流量类型,判定待识别的数据流的流量类型为未知类型。
步骤104,将归属概率最大的预设流量类型作为待识别的数据流的流量类型。
具体地说,在完成对各预设流量类型的归属概率与预设概率门限的大小的比较后,若各预设流量类型中,存在归属概率大于或等于预设概率门限的预设流量类型,则将归属概率最大的预设流量类型作为所述待识别的数据流的流量类型。
另外,在确定待识别的数据流的流量类型时,也可以在归属概率大于预设概率门限的预设流量类型中随机选取一个流量类型作为待识别的数据流的流量类型,本实施例对于待识别的数据流的流量类型的具体选定方式不做限制。
由此,本实施例提供了一种流量识别方法,对接收到的流量进行切分后,根据待识别的数据流中未加密数据包的payload数据获取待识别流量的NLP单词列表,然后根据动态词向量算法提取出待识别的数据流的特征向量,再将通过卷积神经网络计算出待识别的数据流属于各预设流量类型的概率作为预设流量类型的归属概率,根据各预设流量类型的归属概率和预设概率门限的关系识别出不属于预设流量类型的未知类型的流量,或者在归属概率大于预设门限的流量类型中确定待识别数据流的流量类型,充分利用流量信息和流特征对流量类型进行识别,实现对开放集数据流量中流量类型的准确识别,避免将属于未知类型的流量误识别为已知类型的流量,提高流量识别的准确性。
本发明的第二实施例涉及一种流量识别方法。第二实施例与第一实施例大致相同,在本实施例中,在得到各预设流量类型的预设概率门限时,将训练样本通过创建的一对多分类网络得到的输出概率拟合成的高斯分布,根据高斯分布的均值和标准差计算出预设概率门限,保证设置的概率门限的准确性;得到未知类型的流量后,可以借助人工识别对识别系统中的模型进行扩充,提高识别系统的实用性。
本实施例中的流量识别方法的流程与第一实施例中的流程基本一致,本实施例中,在获取预先存储的各预设流量类型的预设概率门限前,可以根据以下方式获取各预设流量类型的预设概率门限,创建预设流量类型的一对多分类网络;通过一对多分类网络,获取各训练样本的输出概率;其中,训练样本为属于预设流量类型的数据流;将各训练样本的输出概率拟合成高斯分布;根据高斯分布的均值和标准差,计算预设流量类型的预设概率门限。
在一个例子中,获取各预设流量类型的预设概率门限时,将预设概率门限通过采用的深开式分级算法(DOC)计算出的各预设流量类型的开放数据集识别OSR拒绝值进行表征,预设概率门限获取流程示意图如图5所示,包括以下步骤:
步骤501,创建二分类网络。
具体地说,分类模型中包括了N个预设流量类型,将预先训练完成的分类模型,例如softmax分类器,修改为N个二分类网络,并将各训练样本输入各二分类网络,根据各训练样本的输出概率,获取各二分类网络的交叉熵损失,进而获取N个交叉熵损失的平均值,然后根据交叉熵损失的平均值利用优化器反向传播训练,对各二分类网络进行最终损失调参,得到二分类网络。
步骤502,获取各训练样本的输出概率。
具体地说,在二分类神经网络训练完成后,将各预设流量类型的多个训练样本输入到训练完成的二分类神经网络中,通过二分类神经网络获取各训练样本的输出概率,并根据训练样本所属的预设流量类型对各训练样本的输出概率进行存储。
步骤503,获取各预设流量类型的预设概率门限。
具体地说,在获取到各训练样本经过二分类神经网络的输出概率后然后将各预设类型多个训练样本的输出概率分别拟合为一个高斯分布,求出各个高斯分布的标准差σ,并获取各高斯分布的均值μ,根据DOC算法的拒绝条件输出概率p与均值μ的差,大于标准差σ的a倍,即“p-μ>>a×σ”,结合各高斯分布的均值μ、标准差σ以及预先设置的超参倍数a,得到各预设流量类型的OSR拒绝值M=μ-a×σ,然后将各预设流量类型的OSR拒绝值作为预设概率门限存储在存储区间中。从而将根据DOC算法的拒绝条件计算出各预设流量类型的OSR拒绝值作为各预设流量类型的预设概率门限,尽可能保证各预设流量类型的预设概率门限的准确性。
其中,将各训练样本的输出概率拟合为高斯分布时,可以将各训练样本的输出概率拟合成均值为1的高斯分布,通过在拟合时将均值设置为1,使得OSR拒绝值的计算公式变更为M=1-a×σ,简化了各预设流量类型的预设概率门限的计算,从而提高各预设概率门限的计算效率,减轻了系统的负担。
计算OSR拒绝值的时候,可以选择使用DOC算法、Open Max算法或者分类领域中其余的开放数据集识别算法,本实施例对计算OSR拒绝值所选用的算法不做限制。
另外,本实施例中的各预设流量类型的OSR拒绝值获取过程中,可以跟随整个识别系统的识别模型的训练进行同步更新,在识别模型的训练过程中,识别模型的训练时长达到预设的时间间隔后,根据最新的分类模型参数重新创建一对多分类网络,然后根据各训练样本在新创建的一对多分类网络中的最新输出概率,获取各预设流量类型当前的OSR拒绝值。然后根据获取到的新的OSR拒绝值对各预设流量类型的预设概率门限进行更新。在识别模型的训练过程中,每隔预设时间间隔就对OSR拒绝值进行更新,直到识别模型训练完成,将最后一次获取到的OSR拒绝值用于表征各预设流量类型的预设概率门限。
通过按照预设的更新间隔对各预设流量类型的OSR拒绝值进行更新,保证了最终得到的OSR拒绝值是最贴近训练完成的分类识别模型实际情况的数据,提高得到的OSR拒绝值的准确性,从而提高各预设概率门限的准确性。
进一步的,在识别出属于未知类型的数据流后,将未知类型的流量分别存储并归总,然后传入线下分析流程,在线下分析阶段,借助技术人员对流量的统计分析以及专家的经验,将能够识别出流量打上具体的标签,若标记的流量属于现有的预设流量类型,则将标记后的数据流加入标签对应的预设流量类型的监督训练集中;若标记的数据流不属于任意一种预设流量类型,则将标记后的数据流作为独立的流量类型,并将标记后的数据流导入监督学习集,并对分类网络的参数进行调整,拓展新的预设流量类型。在完成数据的添加和导入后,对分类模型重新进行训练,从而拓展识别模型的识别能力和准确性。
另外,本实施例的方法还可以结合现有技术中的DPI识别技术,先有DPI设备对分流后的待识别的数据流进行识别,若DPI设备能够完成对所有待识别的数据流所属流量类型的识别,则直接输出识别结果,若DPI设备无法完成对所有待识别的数据流所属流量类型的识别,则将DPI设备无法识别的待识别数据流传输到训练好的识别模型中进行识别,从而在保证流量识别效率的同时,尽可能的提升流量识别的准确性和实用性。
此外,本领域技术人员可以理解,上面各种方法的步骤划分,只是为了描述清楚,实现时可以合并为一个步骤或者对某些步骤进行拆分,分解为多个步骤,只要包括相同的逻辑关系,都在本专利的保护范围内;对算法中或者流程中添加无关紧要的修改或者引入无关紧要的设计,但不改变其算法和流程的核心设计都在该专利的保护范围内。
本发明第三实施例涉及一种流量识别装置,如图6所示,包括:
确定模块601,用于确定待识别的数据流属于各预设流量类型的概率;其中,将属于各预设流量类型的概率记作各预设流量类型的归属概率;
比较模块602,用于比较各预设流量类型的归属概率与各预设流量类型的预设概率门限的大小关系;
识别模块503,用于确定待识别的数据流的流量类型,若各预设流量类型中,不存在归属概率大于或等于预设概率门限的预设流量类型,则识别出待识别的数据流的流量类型为未知类型。
在一个例子中,识别模块603还用于在各预设流量类型中,存在归属概率大于或等于预设概率门限的预设流量类型时,将归属概率最大的预设流量类型作为待识别的数据流的流量类型。
在另一个例子中,每个预设流量类型的预设概率门限,通过以下方式计算得到:创建预设流量类型的一对多分类网络;通过一对多分类网络,获取各训练样本的输出概率;其中,训练样本为属于预设流量类型的数据流;将各训练样本的输出概率拟合成高斯分布;根据高斯分布的均值和标准差,计算预设流量类型的预设概率门限。
在另一个例子中,将各训练样本的输出概率拟合成一个高斯分布,包括:将各训练样本的输出概率拟合成均值为1的高斯分布。
在另一个例子中,确定模块601具体用于,从待识别的数据流的未加密数据包中获取应用层的有效载荷payload数据;对payload数据进行切词,生成待识别的数据流的自然语言处理NLP单词列表;根据NLP单词列表,通过预先训练出的识别模型确定待识别的数据流属于各预设流量类型的概率。
在另一个例子中,识别模型通过以下方式训练得到:提供用于进行预训练的动态词向量模型;根据第一文本数据对动态词向量模型进行预训练;其中,预训练包括无监督训练;将预训练后的动态词向量模型的编码网络参数输入识别模型,根据第二文本数据进行对识别模型监督训练。
在另一个例子中,确定模块601具体用于通过二元文法对payload数据进行切词。
不难发现,本实施例为与第一实施例相对应的装置实施例,本实施例可与第一实施例互相配合实施。第一实施例中提到的相关技术细节在本实施例中依然有效,为了减少重复,这里不再赘述。相应地,本实施例中提到的相关技术细节也可应用在第一实施例中。
值得一提的是,本实施例中所涉及到的各模块均为逻辑模块,在实际应用中,一个逻辑单元可以是一个物理单元,也可以是一个物理单元的一部分,还可以以多个物理单元的组合实现。此外,为了突出本发明的创新部分,本实施例中并没有将与解决本发明所提出的技术问题关系不太密切的单元引入,但这并不表明本实施例中不存在其它的单元。
本发明第四实施例涉及一种电子设备,如图7所示,包括至少一个处理器701;以及,与至少一个处理器701通信连接的存储器702;其中,存储器702存储有可被至少一个处理器701执行的指令,指令被至少一个处理器701执行,以使至少一个处理器701能够执行上述的流量识别方法。
其中,存储器和处理器采用总线方式连接,总线可以包括任意数量的互联的总线和桥,总线将一个或多个处理器和存储器的各种电路连接在一起。总线还可以将诸如外围设备、稳压器和功率管理电路等之类的各种其他电路连接在一起,这些都是本领域所公知的,因此,本文不再对其进行进一步描述。总线接口在总线和收发机之间提供接口。收发机可以是一个元件,也可以是多个元件,比如多个接收器和发送器,提供用于在传输介质上与各种其他装置通信的单元。经处理器处理的数据通过天线在无线介质上进行传输,进一步,天线还接收数据并将数据传送给处理器。
处理器负责管理总线和通常的处理,还可以提供各种功能,包括定时,外围接口,电压调节、电源管理以及其他控制功能。而存储器可以被用于存储处理器在执行操作时所使用的数据。
本发明第五实施例涉及一种计算机可读存储介质,存储有计算机程序。计算机程序被处理器执行时实现上述方法实施例。
即,本领域技术人员可以理解,实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等)或处理器(processor)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
本领域的普通技术人员可以理解,上述各实施例是实现本发明的具体实施例,而在实际应用中,可以在形式上和细节上对其作各种改变,而不偏离本发明的精神和范围。
Claims (10)
1.一种流量识别方法,其特征在于,包括:
确定待识别的数据流属于各预设流量类型的概率;其中,将所述属于各预设流量类型的概率记作各所述预设流量类型的归属概率;
比较各预设流量类型的归属概率与各预设流量类型的预设概率门限的大小关系;
若各所述预设流量类型中,不存在归属概率大于或等于预设概率门限的预设流量类型,则识别出所述待识别的数据流的流量类型为未知类型。
2.根据权利要求1所述的流量识别方法,其特征在于,在所述比较各所述预设流量类型的归属概率与各所述预设流量类型的预设概率门限的大小关系后,还包括:
若各所述预设流量类型中,存在归属概率大于或等于预设概率门限的预设流量类型,则将归属概率最大的所述预设流量类型作为所述待识别的数据流的流量类型。
3.根据权利要求1所述的流量识别方法,其特征在于,每个所述预设流量类型的预设概率门限,通过以下方式计算得到:
创建所述预设流量类型的一对多分类网络;
通过所述一对多分类网络,获取各训练样本的输出概率;其中,所述训练样本为属于所述预设流量类型的数据流;
将各所述训练样本的输出概率拟合成高斯分布;
根据所述高斯分布的均值和标准差,计算所述预设流量类型的预设概率门限。
4.根据权利要求3所述的流量识别方法,其特征在于,所述将各所述训练样本的输出概率拟合成一个高斯分布,包括:
将各所述训练样本的输出概率拟合成均值为1的高斯分布。
5.根据权利要求1所述的流量识别方法,其特征在于,所述确定待识别的数据流属于各预设流量类型的概率,包括:
从所述待识别的数据流的未加密数据包中获取应用层的有效载荷payload数据;
对所述payload数据进行切词,生成所述待识别的数据流的自然语言处理NLP单词列表;
根据所述NLP单词列表,通过预先训练出的识别模型确定所述待识别的数据流属于各所述预设流量类型的概率。
6.根据权利要求5所述的流量识别方法,其特征在于,所述识别模型通过以下方式训练得到:
提供用于进行预训练的动态词向量模型;
根据第一文本数据对所述动态词向量模型进行预训练;其中,所述预训练包括无监督训练;
将预训练后的所述动态词向量模型的编码网络参数输入所述识别模型,根据第二文本数据进行对所述识别模型监督训练。
7.根据权利要求5所述的流量是被方法,其特征在于,所述对所述payload数据进行切词,包括:
通过二元文法对所述payload数据进行切词。
8.一种流量识别装置,其特征在于,包括:
确定模块,用于确定待识别的数据流属于各预设流量类型的概率;其中,将所述属于各预设流量类型的概率记作各所述预设流量类型的归属概率;
比较模块,用于比较各所述预设流量类型的归属概率与各所述预设流量类型的预设概率门限的大小关系;
识别模块,用于确定所述待识别的数据流的流量类型,若各所述预设流量类型中,不存在归属概率大于或等于预设概率门限的预设流量类型,则识别出所述待识别的数据流的流量类型为未知类型。
9.一种电子设备,其特征在于,包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如权利要求1至7中任一项所述的流量识别方法。
10.一种计算机可读存储介质,存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的流量识别方法。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010456450.7A CN113726686A (zh) | 2020-05-26 | 2020-05-26 | 流量识别方法、装置、电子设备及存储介质 |
EP21813861.8A EP4161007A4 (en) | 2020-05-26 | 2021-03-04 | TRAFFIC IDENTIFICATION METHOD AND APPARATUS, AND ELECTRONIC DEVICE AND RECORDING MEDIUM |
PCT/CN2021/079068 WO2021238324A1 (zh) | 2020-05-26 | 2021-03-04 | 流量识别方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010456450.7A CN113726686A (zh) | 2020-05-26 | 2020-05-26 | 流量识别方法、装置、电子设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113726686A true CN113726686A (zh) | 2021-11-30 |
Family
ID=78672043
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010456450.7A Pending CN113726686A (zh) | 2020-05-26 | 2020-05-26 | 流量识别方法、装置、电子设备及存储介质 |
Country Status (3)
Country | Link |
---|---|
EP (1) | EP4161007A4 (zh) |
CN (1) | CN113726686A (zh) |
WO (1) | WO2021238324A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114818974A (zh) * | 2022-05-23 | 2022-07-29 | 北京航空航天大学 | 对智能信息系统下用户活动监测的推断攻击方法及系统 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118233331A (zh) * | 2022-12-12 | 2024-06-21 | 中兴通讯股份有限公司 | 流量识别方法、终端设备及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107239529A (zh) * | 2017-05-27 | 2017-10-10 | 中国矿业大学 | 一种基于深度学习的舆情热点类别划分方法 |
CN108416284A (zh) * | 2018-03-02 | 2018-08-17 | 北京航空航天大学 | 一种交通信号灯的分割方法 |
CN109299742A (zh) * | 2018-10-17 | 2019-02-01 | 深圳信息职业技术学院 | 自动发现未知网络流的方法、装置、设备及存储介质 |
US20200042829A1 (en) * | 2017-07-24 | 2020-02-06 | Huawei Technologies Co., Ltd. | Classification Model Training Method and Apparatus |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108986801B (zh) * | 2017-06-02 | 2020-06-05 | 腾讯科技(深圳)有限公司 | 一种人机交互方法、装置及人机交互终端 |
CN107360032B (zh) * | 2017-07-20 | 2020-12-01 | 中国南方电网有限责任公司 | 一种网络流识别方法及电子设备 |
CN109063777B (zh) * | 2018-08-07 | 2019-12-03 | 北京邮电大学 | 网络流量分类方法、装置及实现装置 |
-
2020
- 2020-05-26 CN CN202010456450.7A patent/CN113726686A/zh active Pending
-
2021
- 2021-03-04 WO PCT/CN2021/079068 patent/WO2021238324A1/zh unknown
- 2021-03-04 EP EP21813861.8A patent/EP4161007A4/en active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107239529A (zh) * | 2017-05-27 | 2017-10-10 | 中国矿业大学 | 一种基于深度学习的舆情热点类别划分方法 |
US20200042829A1 (en) * | 2017-07-24 | 2020-02-06 | Huawei Technologies Co., Ltd. | Classification Model Training Method and Apparatus |
CN108416284A (zh) * | 2018-03-02 | 2018-08-17 | 北京航空航天大学 | 一种交通信号灯的分割方法 |
CN109299742A (zh) * | 2018-10-17 | 2019-02-01 | 深圳信息职业技术学院 | 自动发现未知网络流的方法、装置、设备及存储介质 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114818974A (zh) * | 2022-05-23 | 2022-07-29 | 北京航空航天大学 | 对智能信息系统下用户活动监测的推断攻击方法及系统 |
CN114818974B (zh) * | 2022-05-23 | 2024-09-13 | 北京航空航天大学 | 对智能信息系统下用户活动监测的推断攻击方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
EP4161007A4 (en) | 2024-07-10 |
WO2021238324A1 (zh) | 2021-12-02 |
EP4161007A1 (en) | 2023-04-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109582793B (zh) | 模型训练方法、客服系统及数据标注系统、可读存储介质 | |
CN112491643B (zh) | 深度报文检测方法、装置、设备及存储介质 | |
CN111191767B (zh) | 一种基于向量化的恶意流量攻击类型的判断方法 | |
US11615166B2 (en) | System and method for classifying image data | |
CN109753987B (zh) | 文件识别方法和特征提取方法 | |
CN113726686A (zh) | 流量识别方法、装置、电子设备及存储介质 | |
CN109376061A (zh) | 一种信息处理方法及系统 | |
CN114490950A (zh) | 编码器模型的训练方法及存储介质、相似度预测方法及系统 | |
CN116416480B (zh) | 一种基于多模板提示学习的视觉分类方法和装置 | |
CN116827873A (zh) | 一种基于局部-全局特征注意力的加密应用流量分类方法及系统 | |
CN113569062A (zh) | 一种知识图谱补全方法与系统 | |
CN112509570A (zh) | 语音信号处理方法、装置、电子设备及存储介质 | |
CN116192997B (zh) | 一种基于网络流的事件检测方法和系统 | |
CN110570877B (zh) | 手语视频生成方法、电子设备及计算机可读存储介质 | |
CN114362982B (zh) | 流量细分识别方法、系统、电子设备和存储介质 | |
CN116010832A (zh) | 联邦聚类方法、装置、中心服务器、系统和电子设备 | |
CN113688953B (zh) | 基于多层gan网络的工控信号分类方法、装置和介质 | |
CN114615052A (zh) | 一种基于知识编译的入侵检测方法及系统 | |
CN112367325A (zh) | 基于闭合频繁项挖掘的未知协议报文聚类方法和系统 | |
CN115834495B (zh) | 一种用于加密流量的识别方法和系统 | |
CN116996527B (zh) | 一种汇聚分流器数据同步的方法及存储介质 | |
CN111901282A (zh) | 一种生成恶意代码流量行为检测结构的方法 | |
CN115146743B (zh) | 性格识别模型的训练方法、性格识别方法、装置及系统 | |
CN112733869B (zh) | 训练文本识别模型的方法、装置、设备及存储介质 | |
CN118800279A (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 |