CN110691003A - 一种网络流量分类方法、装置和存储介质 - Google Patents
一种网络流量分类方法、装置和存储介质 Download PDFInfo
- Publication number
- CN110691003A CN110691003A CN201910830895.4A CN201910830895A CN110691003A CN 110691003 A CN110691003 A CN 110691003A CN 201910830895 A CN201910830895 A CN 201910830895A CN 110691003 A CN110691003 A CN 110691003A
- Authority
- CN
- China
- Prior art keywords
- application
- reference characteristic
- network traffic
- classified
- training sample
- 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
Images
Classifications
-
- 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/06—Generation of reports
- H04L43/062—Generation of reports related to network traffic
-
- 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
- G06F18/2415—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on parametric or probabilistic models, e.g. based on likelihood ratio or false acceptance rate versus a false rejection rate
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Artificial Intelligence (AREA)
- Life Sciences & Earth Sciences (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Evolutionary Computation (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种网络流量分类方法、装置和存储介质,用以提高网络流量分类的准确性。网络流量分类方法,包括:从待分类网络流量中获取若干个数据包;根据预先针对每一应用确定出的参考特征基准值,将各数据包的参考特征值进行转换得到所述待分类网络流量对应于每一应用的参考特征序列;基于所述待分类网络流量对应每一应用的参考特征序列,利用预先训练得到的网络流量分类器,确定所述待分类网络流量对应于每一应用的概率;确定对应概率最大的应用为所述待分类网络流量所属类别。
Description
技术领域
本发明涉及网络通信技术领域,尤其涉及一种网络流量分类方法、装置和存储介质。
背景技术
随着信息技术的飞速发展,新的网络应用不断涌现,网络流量更是飞速增长,这给网络流量分析带来的巨大的压力和挑战。网络流量分类是指从网络流量中通过相关特征识别出相关的协议或应用并对其进行分类,其对网络流量分析有重大意义。例如,流量分类有助于网络运营商识别网络中存在的特定应用和协议,并能够发现异常流量。这可用于许多不同的目的,例如网络规划、区分应用优先级、用于QoS(服务质量)保证以及安全控制的策略部署。例如,网络运营商为了更好的用户体验可能希望为具有更高优先级的应用分配更多的流量;企业网络运营商可能通过应用级防火墙阻止来自给定应用程序的流量等。
将马尔可夫模型应用到流量分类,这种方法可以分为两类,一种是对TLS(Transport Layer Security,安全传输层协议)加密流量进行分类,另一种是对所有流量进行分类。使用马尔可夫模型进行TLS加密流量分类的基本思路是使用TLS握手过程中的各个状态之间的转换生成一阶或二阶马尔可夫模型,然后根据生成的模型来计算单条流TLS握手状态序列属于各个应用的概率,最后根据概率大小确定流量所属分类。
由于TLS握手过程中的状态有限,因此误分类的概率较大,降低了网络流量分类的准确性。
发明内容
本发明实施例提供一种网络流量分类方法、装置和存储介质,用以提高网络流量分类的准确性。
第一方面,提供一种网络流量分类方法,包括:
从待分类网络流量中获取若干个数据包;
根据预先针对每一应用确定出的参考特征基准值,将各数据包的参考特征值进行转换得到所述待分类网络流量对应于每一应用的参考特征序列;
基于所述待分类网络流量对应每一应用的参考特征序列,利用预先训练得到的网络流量分类器,确定所述待分类网络流量对应于每一应用的概率;
确定对应概率最大的应用为所述待分类网络流量所属类别。
在一种可能的实施方式中,针对每一应用,按照以下方法确定该应用对应的参考特征基准值:
针对每一应用,从该应用对应的网络流量中抓取若干个数据包组成训练样本;
针对不同的数据包参考特征,统计不同参考特征值的出现次数;
针对每一参考特征值,根据其出现次数确定该参考特征值在训练样本中的占比;
按照各参考特征值在训练样本中的占比由大到小的顺序,依次选择若各个参考特征值组成参考特征基准值。
在一种可能的实施方式中,基于所述训练样本,按照以下流程进行训练得到所述分类器:
针对每一应用,根据该应用对应的参考特征基准值,对该应用每一训练样本对应的参考特征值进行转换得到参考特征序列;
根据每一应用对应的参考特征序列,生成该应用对应的马尔可夫模型;
针对各应用的每一训练样本,利用所述马尔可夫模型确定其对应于每一应用的概率得到第二概率矩阵;
基于所述第二概率矩阵进行训练得到所述分类器。
在一种可能的实施方式中,根据该应用对应的参考特征基准值,按照以下方法将参考特征值进行转换得到参考特征序列:
对于每一训练样本对应的参考特征值,选择最接近的参考特征基准值进行替换得到参考特征序列。
在一种可能的实施方式中,数据包的参考特征包括以下至少一项:数据包包长和数据包到达间隔。
第二方面,本发明实施例提供一种网络流量分类装置,包括:
获取单元,用于从待分类网络流量中获取若干个数据包;
转换单元,用于根据预先针对每一应用确定出的参考特征基准值,将各数据包的参考特征值进行转换得到所述待分类网络流量对应于每一应用的参考特征序列;
预测单元,用于基于所述待分类网络流量对应每一应用的参考特征序列,利用针对每一应用预先建立的马尔可夫模型确定所述待分类网络流量属于各个应用的概率组成第一概率矩阵;将所述第一概率矩阵输入预先训练得到的网络流量分类器得到所述待分类网络流量所属类别。
在一种可能的实施方式中,所述网络流量分类装置,还包括:
确定单元,用于针对每一应用,从该应用对应的网络流量中抓取若干个数据包组成训练样本;针对不同的数据包参考特征,统计不同参考特征值的出现次数;针对每一参考特征值,根据其出现次数确定该参考特征值在训练样本中的占比;按照各参考特征值在训练样本中的占比由大到小的顺序,依次选择若各个参考特征值组成参考特征基准值。
在一种可能的实施方式中,所述网络流量分类装置,还包括:训练单元,用于针对每一应用,根据该应用对应的参考特征基准值,对该应用每一训练样本对应的参考特征值进行转换得到参考特征序列;根据每一应用对应的参考特征序列,生成该应用对应的马尔可夫模型;针对各应用的每一训练样本,利用所述马尔可夫模型确定其对应于每一应用的概率得到第二概率矩阵;基于所述第二概率矩阵进行训练得到所述分类器。
在一种可能的实施方式中,所述网络流量分类装置,还包括:
选择单元,用于针对每一训练样本对应的参考特征值,选择最接近的参考特征基准值进行替换得到参考特征序列。
在一种可能的实施方式中,数据包的参考特征包括以下至少一项:数据包包长和数据包到达间隔。
第三方面,本发明实施例还提供一种计算装置,包括至少一个处理器、以及至少一个存储器,其中,所述存储器存储有计算机程序,当所述程序被所述处理器执行时,使得所述处理器执行上述任一网络流量分类方法所述的步骤。
第四方面,本发明实施例还提供一种计算机可读介质,其存储有可由计算装置执行的计算机程序,当所述程序在计算装置上运行时,使得所述计算装置执行上述任一网络流量分类方法所述的步骤。
本发明实施例提供的网络流量分类方法、装置和存储介质,根据每一应用对应的参考特征基准值,对从数据包中提取的参考特征值进行转换得到待分类网络流量对应每一应用的参考特征序列,基于得到的参考特征序列,利用预先训练得到的分类器确定待分类网络流量对应于每一应用的概率,选择对应概率最大的应用作为待分类网络流量所属类别,这样,通过提取多个维度的参考特征,可以提高网络流量的准确性,而且,上述过程中,与网络协议无关,从而适用于所有网络类型,提高了网络流量分类方法的通用性,另外,根据本发明实施例所提供的网络流量方法,通过在网络流量产生的初期提取有限数量的数据包即可完成网络流量的分类,从而可以实现网络流量实时分类,提高了网络流量分类的效率。
本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本发明的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1为本发明实施例中,分类器训练过程中的数据流图;
图2为本发明实施例中,确定各个应用对应的参考特征基准值的流程图;
图3为本发明实施例中,针对某应用统计的各个数据包包长所占比例示意图;
图4本发明实施例中,对分类器进行训练的流程示意图;
图5为本发明实施例中,网络流量分类方法的实施流程示意图;
图6为本发明实施例中,网络流量分类装置的结构示意图;
图7为根据本发明实施方式的计算装置的结构示意图。
具体实施方式
为了提高网络流量分类方法的准确性和通用性,本发明实施例提供了一种网络流量分类方法、装置和存储介质。
需要说明的是,本发明实施例中的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。
在本文中提及的“多个或者若干个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。
以下结合说明书附图对本发明的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明,并且在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互组合。
本发明实施例中,为了提高网络流量分类的准确性,使用马尔可夫模型对多个维度的数据包参考特征进行建模,然后使用该模型确定数据流的参考特征属于各个应用的概率生成概率矩阵,将概率矩阵作为分类算法的输入,最后生成分类模型输出分类结果,上述过程中,由于不涉及网络协议,因此,对所有类型的网络流量均适用。具体实施时,使用的数据包参考特征可以但不限于为数据包包长和数据包到达间隔中的至少一项,使用的参考特征越多,分类结果越准确,以下结合图1,首先对分类器的训练过程进行说明。为了便于描述,本发明实施例中以数据包参考特征为数据包包长和数据包到达间隔为例进行说明。
如图1所示,其为分类器训练过程中的数据流图。本发明实施例中,可以按照以下方法获得训练数据集:通过抓包工具抓取各种类别的应用流量,图1中表示的训练数据集中有n个应用,m个样本,每个样本对应一条数据流;具体实施时,针对每一数据流,取其前N个数据包进行流量分类,就可以达到可以接受的准确率。
其中,N为整数,应当理解,获取的数据包数量越多,训练得到的分类器的分类结果越准确,相应地,训练计算量也越大,耗费的时间也越长。因此,具体实施时,可以根据分类器输出结果的准确率来确定抓取的数据包数量N,本发明实施例对此不进行限定,例如,N可以设定为50。
针对训练数据集中的样本,提取每个样本(对应一个数据流)的前N个数据包的数据参考特征值,根据每一应用对应的基准值对其进行转换。
具体实施时,可以按照图2所示的方法确定各个应用对应的参考特征基准值:
S21、针对不同的数据包参考特征,统计不同参考特征值的出现次数。
以参考特征为数据包包长为例,首先统计每个应用各个数据包包长出现的次数。
S22、针对每一参考特征值,根据其出现次数确定该参考特征值在训练样本中的占比。
本步骤中,根据每一数据包包长出现次数计算每个包长出现次数占总数据包个数的比例。例如,对于某个应用来说,取其前50个数据包进行统计,其中,数据包包长为39的数据包共出现5次,则包长为39的数据包占比为5/50*100=10%。
如图3所示,其为针对某应用统计的各个数据包包长所占比例,并按照从大到小排序,对于每一数据包包长,对应两个占比,其中,左边的表示该数据包长的占比,右边的占比表示相应数据包以及出现次数大于该数据包的所有数据包的占比。
S23、按照各参考特征值在训练样本中的占比由大到小的顺序,依次选择若各个参考特征值组成参考特征基准值。
本发明实施例中,按照数据包包长所占比例由大到小进行排序,取排序靠前的包长作为基准包长,如图3所示,从图3中可以看出图中所示的包长占了所有包数的将近90%,因此可以选择图中的包长作为基准包长。
基于得到的参考特征基准值和训练样本,本发明实施例中,可以按照图4所示的流程对分类器进行训练:
S41、针对每一应用,根据该应用对应的参考特征基准值,对该应用每一训练样本对应的参考特征值进行转换得到参考特征序列。
具体地,针对每一应用的每一参考特征确定其对应的参考特征基准值之后,根据参考特征基准值对每一应用的每一参考特征对应的参考特征值进行转换,转换的原则如下:
针对每一参考特征值,选择最接近的参考特征基准值进行替换。如图5所示,假设原特征值序列为131-111-507-759,参考特征基准值为根据图3确定出的{33,39,41,49,55,57,65,97,111,113,133,163,235,401,499,509,565,761,855,1460},则转换后得到的参考特征序列可以表示为133-111-509-761。
S42、根据每一应用对应的参考特征序列,生成该应用对应的马尔可夫模型。
基于转换后得到的参考特征序列,生成各个应用对应的马尔可夫模型,即每个应用各个参考特征值之间跳转的概率。具体实施时,可以生成一阶马尔可夫模型,也可以生成二阶马尔可夫模型,本发明实施例对此不进行限定。二阶马尔可夫模型更准确,相应地,其计算量也更大。
S43、针对各应用的每一训练样本,利用所述马尔可夫模型确定其对应于每一应用的概率得到概率矩阵。
本步骤中,将生成的所有应用的、不同参考特征对应的马尔可夫模型放到模型池(Model Pool)中,对于每个训练样本(针对每一应用获取的所有训练样本)根据模型池中的马尔可夫模型计算其属于各个应用的概率,如图1所示,以数据包参考特征分别为数据包包长和数据包到达间隔为例,P1,1表示根据数据包包长序列的马尔可夫模型计算的样本1属于应用1的概率,P1,n+1表示根据数据包到达间隔序列的马尔可夫模型计算的样本1属于应用1的概率,以此类推,可以确定第二概率矩阵中每个概率所表示的含义。
S44、基于得到的概率矩阵进行训练得到分类器。
具体实施时,可以将概率矩阵进行归一化处理后输入随机森林模型进行训练生成分类器。当然,也可以选择其他分类算法进行训练,本发明实施例对此不进行限定。
基于上述训练得到分类器,如图5所示,可以按照以下方法对待分类的网络流量进行预测:
S51、从待分类网络流量中获取若干个数据包。
例如,可以从待分类网络流量中获取50个数据包。
S52、根据预先针对每一应用确定出的参考特征基准值,将各数据包的参考特征值进行转换得到对应于每一应用的参考特征序列。
本步骤中,利用上述训练过程中确定出的不同应用的不同参考特征对应的参考特征基准值,将各数据包的参考特征值进行转换得到对应于每一应用的参考特征序列。
S53、基于待分类网络流量对应每一应用的参考特征序列,利用针对每一应用预先建立的马尔可夫模型确定所述待分类网络流量属于各个应用的概率组成概率矩阵。
S54、将得到的概率矩阵输入预先训练得到的网络流量分类器得到待分类网络流量所属类别。
本发明实施例提供的网络流量分类方法中,通过引入分类器同时使用了数据流的包长和包到达间隔等多个维度的参考特征生成马尔可夫模型,可以提高分类的准确性,另外,由于本发明实施例提供的网络流量分类方法与网络协议无关,从而适用于任何类型的网络流量,提高了网络流量分类的通用性,而且,本发明实施例提供的网络流量分类方法只需提取网络流量中有限数量的数据包即可确定网络流量类型,因此可以实现实时分类,提高了网络流量分类效率。基于同一发明构思,本发明实施例中还提供了一种网络流量分类装置,由于上述装置及设备解决问题的原理与网络流量分类方法相似,因此上述装置的实施可以参见方法的实施,重复之处不再赘述。
如图6所示,其为本发明实施例提供的网络流量分类装置的结构示意图,包括:
获取单元61,用于从待分类网络流量中获取若干个数据包;
转换单元62,用于根据预先针对每一应用确定出的参考特征基准值,将各数据包的参考特征值进行转换得到对应于每一应用的参考特征序列;
预测单元63,用于基于所述待分类网络流量对应每一应用的参考特征序列,利用针对每一应用预先建立的马尔可夫模型确定所述待分类网络流量属于各个应用的概率组成第一概率矩阵;将所述第一概率矩阵输入预先训练得到的网络流量分类器得到所述待分类网络流量所属类别。
在一种可能的实施方式中,所述网络流量分类装置,还包括:
确定单元,用于针对每一应用,从该应用对应的网络流量中抓取若干个数据包组成训练样本;针对不同的数据包参考特征,统计不同参考特征值的出现次数;针对每一参考特征值,根据其出现次数确定该参考特征值在训练样本中的占比;按照各参考特征值在训练样本中的占比由大到小的顺序,依次选择若各个参考特征值组成参考特征基准值。
在一种可能的实施方式中,所述网络流量分类装置,还包括:训练单元,用于针对每一应用,根据该应用对应的参考特征基准值,对该应用每一训练样本对应的参考特征值进行转换得到参考特征序列;根据每一应用对应的参考特征序列,生成该应用对应的马尔可夫模型;针对各应用的每一训练样本,利用所述马尔可夫模型确定其对应于每一应用的概率得到第二概率矩阵;基于所述第二概率矩阵进行训练得到所述分类器。
在一种可能的实施方式中,所述网络流量分类装置,还包括:
选择单元,用于针对每一训练样本对应的参考特征值,选择最接近的参考特征基准值进行替换得到参考特征序列。
在一种可能的实施方式中,数据包的参考特征包括以下至少一项:数据包包长和数据包到达间隔。
为了描述的方便,以上各部分按照功能划分为各模块(或单元)分别描述。当然,在实施本发明时可以把各模块(或单元)的功能在同一个或多个软件或硬件中实现。
在介绍了本发明示例性实施方式的网络流量分类方法和装置之后,接下来,介绍根据本发明的另一示例性实施方式的计算装置。
所属技术领域的技术人员能够理解,本发明的各个方面可以实现为系统、方法或程序产品。因此,本发明的各个方面可以具体实现为以下形式,即:完全的硬件实施方式、完全的软件实施方式(包括固件、微代码等),或硬件和软件方面结合的实施方式,这里可以统称为“电路”、“模块”或“系统”。
在一些可能的实施方式中,根据本发明的计算装置可以至少包括至少一个处理器、以及至少一个存储器。其中,所述存储器存储有程序代码,当所述程序代码被所述处理器执行时,使得所述处理器执行本说明书上述描述的根据本发明各种示例性实施方式的网络流量分类方法中的步骤。例如,所述处理器可以执行如图5中所示的步骤S51、从待分类网络流量中获取若干个数据包,和步骤S52、根据预先针对每一应用确定出的参考特征基准值,将各数据包的参考特征值进行转换得到对应于每一应用的参考特征序列;以及步骤S53、基于所述待分类网络流量对应每一应用的参考特征序列,利用针对每一应用预先建立的马尔可夫模型确定所述待分类网络流量属于各个应用的概率组成概率矩阵;步骤S54、将得到的概率矩阵输入预先训练得到的网络流量分类器得到待分类网络流量所属类别。
下面参照图7来描述根据本发明的这种实施方式的计算装置70。图7显示的计算装置70仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图7所示,计算装置70以通用计算设备的形式表现。计算装置70的组件可以包括但不限于:上述至少一个处理器71、上述至少一个存储器72、连接不同系统组件(包括存储器72和处理器71)的总线73。
总线73表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器、外围总线、处理器或者使用多种总线结构中的任意总线结构的局域总线。
存储器72可以包括易失性存储器形式的可读介质,例如随机存取存储器(RAM)721和/或高速缓存存储器722,还可以进一步包括只读存储器(ROM)723。
存储器72还可以包括具有一组(至少一个)程序模块724的程序/实用工具725,这样的程序模块724包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
计算装置70也可以与一个或多个外部设备74(例如键盘、指向设备等)通信,还可与一个或者多个使得用户能与计算装置70交互的设备通信,和/或与使得该计算装置70能与一个或多个其它计算设备进行通信的任何设备(例如路由器、调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口75进行。并且,计算装置70还可以通过网络适配器76与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器76通过总线73与用于计算装置70的其它模块通信。应当理解,尽管图中未示出,可以结合计算装置70使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理器、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
在一些可能的实施方式中,本发明提供的网络流量分类方法的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当所述程序产品在计算机设备上运行时,所述程序代码用于使所述计算机设备执行本说明书上述描述的根据本发明各种示例性实施方式的网络流量分类方法中的步骤,例如,所述计算机设备可以执行如图5中所示的步骤S51、从待分类网络流量中获取若干个数据包,和步骤S52、根据预先针对每一应用确定出的参考特征基准值,将各数据包的参考特征值进行转换得到对应于每一应用的参考特征序列;以及步骤S53、基于所述待分类网络流量对应每一应用的参考特征序列,利用针对每一应用预先建立的马尔可夫模型确定所述待分类网络流量属于各个应用的概率组成概率矩阵;步骤S54、将得到的概率矩阵输入预先训练得到的网络流量分类器得到待分类网络流量所属类别。
所述程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
本发明的实施方式的用于网络流量分类的程序产品可以采用便携式紧凑盘只读存储器(CD-ROM)并包括程序代码,并可以在计算设备上运行。然而,本发明的程序产品不限于此,在本文件中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括——但不限于——电磁信号、光信号或上述的任意合适的组合。可读信号介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
可读介质上包含的程序代码可以用任何适当的介质传输,包括——但不限于——无线、有线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言的任意组合来编写用于执行本发明操作的程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、C++等,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
应当注意,尽管在上文详细描述中提及了装置的若干单元或子单元,但是这种划分仅仅是示例性的并非强制性的。实际上,根据本发明的实施方式,上文描述的两个或更多单元的特征和功能可以在一个单元中具体化。反之,上文描述的一个单元的特征和功能可以进一步划分为由多个单元来具体化。
此外,尽管在附图中以特定顺序描述了本发明方法的操作,但是,这并非要求或者暗示必须按照该特定顺序来执行这些操作,或是必须执行全部所示的操作才能实现期望的结果。附加地或备选地,可以省略某些步骤,将多个步骤合并为一个步骤执行,和/或将一个步骤分解为多个步骤执行。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (10)
1.一种网络流量分类方法,其特征在于,包括:
从待分类网络流量中获取若干个数据包;
根据预先针对每一应用确定出的参考特征基准值,将各数据包的参考特征值进行转换得到所述待分类网络流量对应于每一应用的参考特征序列;
基于所述待分类网络流量对应每一应用的参考特征序列,利用针对每一应用预先建立的马尔可夫模型确定所述待分类网络流量属于各个应用的概率组成第一概率矩阵;
将所述第一概率矩阵输入预先训练得到的网络流量分类器得到所述待分类网络流量所属类别。
2.根据权利要求1所述的方法,其特征在于,针对每一应用,按照以下方法确定该应用对应的参考特征基准值:
针对每一应用,从该应用对应的网络流量中抓取若干个数据包组成训练样本;
针对不同的数据包参考特征,统计不同参考特征值的出现次数;
针对每一参考特征值,根据其出现次数确定该参考特征值在训练样本中的占比;
按照各参考特征值在训练样本中的占比由大到小的顺序,依次选择若各个参考特征值组成参考特征基准值。
3.根据权利要求2所述的方法,其特征在于,基于所述训练样本,按照以下流程进行训练得到所述分类器:
针对每一应用,根据该应用对应的参考特征基准值,对该应用每一训练样本对应的参考特征值进行转换得到参考特征序列;
根据每一应用对应的参考特征序列,生成该应用对应的马尔可夫模型;
针对各应用的每一训练样本,利用所述马尔可夫模型确定其对应于每一应用的概率得到第二概率矩阵;
基于所述第二概率矩阵进行训练得到所述分类器。
4.根据权利要求3所述的方法,其特征在于,根据该应用对应的参考特征基准值,按照以下方法将参考特征值进行转换得到参考特征序列:
针对每一训练样本对应的参考特征值,选择最接近的参考特征基准值进行替换得到参考特征序列。
5.根据权利要求1~4中任一项所述的方法,其特征在于,数据包的参考特征包括以下至少一项:数据包包长和数据包到达间隔。
6.一种网络流量分类装置,其特征在于,包括:
获取单元,用于从待分类网络流量中获取若干个数据包;
转换单元,用于根据预先针对每一应用确定出的参考特征基准值,将各数据包的参考特征值进行转换得到所述待分类网络流量对应于每一应用的参考特征序列;
预测单元,用于基于所述待分类网络流量对应每一应用的参考特征序列,利用针对每一应用预先建立的马尔可夫模型确定所述待分类网络流量属于各个应用的概率组成第一概率矩阵;将所述第一概率矩阵输入预先训练得到的网络流量分类器得到所述待分类网络流量所属类别。
7.根据权利要求5所述的装置,其特征在于,还包括:
确定单元,用于针对每一应用,从该应用对应的网络流量中抓取若干个数据包组成训练样本;针对不同的数据包参考特征,统计不同参考特征值的出现次数;针对每一参考特征值,根据其出现次数确定该参考特征值在训练样本中的占比;按照各参考特征值在训练样本中的占比由大到小的顺序,依次选择若各个参考特征值组成参考特征基准值。
8.根据权利要求7所述的装置,其特征在于,还包括:
训练单元,用于针对每一应用,根据该应用对应的参考特征基准值,对该应用每一训练样本对应的参考特征值进行转换得到参考特征序列;根据每一应用对应的参考特征序列,生成该应用对应的马尔可夫模型;针对各应用的每一训练样本,利用所述马尔可夫模型确定其对应于每一应用的概率得到第二概率矩阵;基于所述第二概率矩阵进行训练得到所述分类器。
9.一种计算装置,其特征在于,包括至少一个处理器、以及至少一个存储器,其中,所述存储器存储有计算机程序,当所述程序被所述处理器执行时,使得所述处理器执行权利要求1~5任一权利要求所述方法的步骤。
10.一种计算机可读介质,其特征在于,其存储有可由计算装置执行的计算机程序,当所述程序在计算装置上运行时,使得所述计算装置执行权利要求1~5任一所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910830895.4A CN110691003A (zh) | 2019-09-04 | 2019-09-04 | 一种网络流量分类方法、装置和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910830895.4A CN110691003A (zh) | 2019-09-04 | 2019-09-04 | 一种网络流量分类方法、装置和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110691003A true CN110691003A (zh) | 2020-01-14 |
Family
ID=69107809
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910830895.4A Pending CN110691003A (zh) | 2019-09-04 | 2019-09-04 | 一种网络流量分类方法、装置和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110691003A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112019398A (zh) * | 2020-07-16 | 2020-12-01 | 中国人民财产保险股份有限公司 | 网络流量的预测方法和装置 |
CN112468324A (zh) * | 2020-11-11 | 2021-03-09 | 国网冀北电力有限公司信息通信分公司 | 基于图卷积神经网络的加密流量分类方法及装置 |
CN114338437A (zh) * | 2022-01-13 | 2022-04-12 | 北京邮电大学 | 网络流量分类方法、装置、电子设备及存储介质 |
CN115225583A (zh) * | 2022-07-12 | 2022-10-21 | 北京天融信网络安全技术有限公司 | 流量数据的内容类型识别方法、装置、设备及存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9680832B1 (en) * | 2014-12-30 | 2017-06-13 | Juniper Networks, Inc. | Using a probability-based model to detect random content in a protocol field associated with network traffic |
CN108768986A (zh) * | 2018-05-17 | 2018-11-06 | 中国科学院信息工程研究所 | 一种加密流量分类方法及服务器、计算机可读存储介质 |
CN108900432A (zh) * | 2018-07-05 | 2018-11-27 | 中山大学 | 一种基于网络流行为的内容感知方法 |
CN108923975A (zh) * | 2018-07-05 | 2018-11-30 | 中山大学 | 一种面向分布式网络的流量行为分析方法 |
CN109714343A (zh) * | 2018-12-28 | 2019-05-03 | 北京天融信网络安全技术有限公司 | 一种网络流量异常的判断方法及装置 |
CN109981474A (zh) * | 2019-03-26 | 2019-07-05 | 中国科学院信息工程研究所 | 一种面向应用软件的网络流量细粒度分类系统及方法 |
-
2019
- 2019-09-04 CN CN201910830895.4A patent/CN110691003A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9680832B1 (en) * | 2014-12-30 | 2017-06-13 | Juniper Networks, Inc. | Using a probability-based model to detect random content in a protocol field associated with network traffic |
CN108768986A (zh) * | 2018-05-17 | 2018-11-06 | 中国科学院信息工程研究所 | 一种加密流量分类方法及服务器、计算机可读存储介质 |
CN108900432A (zh) * | 2018-07-05 | 2018-11-27 | 中山大学 | 一种基于网络流行为的内容感知方法 |
CN108923975A (zh) * | 2018-07-05 | 2018-11-30 | 中山大学 | 一种面向分布式网络的流量行为分析方法 |
CN109714343A (zh) * | 2018-12-28 | 2019-05-03 | 北京天融信网络安全技术有限公司 | 一种网络流量异常的判断方法及装置 |
CN109981474A (zh) * | 2019-03-26 | 2019-07-05 | 中国科学院信息工程研究所 | 一种面向应用软件的网络流量细粒度分类系统及方法 |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112019398A (zh) * | 2020-07-16 | 2020-12-01 | 中国人民财产保险股份有限公司 | 网络流量的预测方法和装置 |
CN112468324A (zh) * | 2020-11-11 | 2021-03-09 | 国网冀北电力有限公司信息通信分公司 | 基于图卷积神经网络的加密流量分类方法及装置 |
CN112468324B (zh) * | 2020-11-11 | 2023-04-07 | 国网冀北电力有限公司信息通信分公司 | 基于图卷积神经网络的加密流量分类方法及装置 |
CN114338437A (zh) * | 2022-01-13 | 2022-04-12 | 北京邮电大学 | 网络流量分类方法、装置、电子设备及存储介质 |
CN114338437B (zh) * | 2022-01-13 | 2023-12-29 | 北京邮电大学 | 网络流量分类方法、装置、电子设备及存储介质 |
CN115225583A (zh) * | 2022-07-12 | 2022-10-21 | 北京天融信网络安全技术有限公司 | 流量数据的内容类型识别方法、装置、设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110691003A (zh) | 一种网络流量分类方法、装置和存储介质 | |
CN109587713B (zh) | 一种基于arima模型的网络指标预测方法、装置及存储介质 | |
CN109241418B (zh) | 基于随机森林的异常用户识别方法及装置、设备、介质 | |
CN109726763B (zh) | 一种信息资产识别方法、装置、设备及介质 | |
CN112529023A (zh) | 一种配置化的人工智能场景应用研发方法和系统 | |
US20210012187A1 (en) | Adaptation of Deep Learning Models to Resource Constrained Edge Devices | |
CN116680459B (zh) | 基于ai技术的外贸内容数据处理系统 | |
CN107809766B (zh) | 一种用于网络优化的机器学习样本的生成方法及装置 | |
EP3944058A1 (en) | Methods and apparatus to generate dynamic latency messages in a computing system | |
CN111199469A (zh) | 用户还款模型生成方法、装置及电子设备 | |
CN113743542A (zh) | 一种基于加密流量的网络资产识别方法与系统 | |
US20210049414A1 (en) | Deep graph de-noise by differentiable ranking | |
US11321165B2 (en) | Data selection and sampling system for log parsing and anomaly detection in cloud microservices | |
US20230133541A1 (en) | Alert correlating using sequence model with topology reinforcement systems and methods | |
CN113869521A (zh) | 构建预测模型的方法、装置、计算设备和存储介质 | |
CN108365969B (zh) | 一种基于无线传感网的自适应服务组合方法 | |
WO2020207393A1 (zh) | 算子运算调度方法和装置 | |
CN111355671B (zh) | 基于自注意机制的网络流量分类方法、介质及终端设备 | |
CN114151293A (zh) | 风机变桨系统的故障预警方法、系统、设备及存储介质 | |
Zhang et al. | A framework for resource-aware online traffic classification using CNN | |
CN108073582A (zh) | 一种计算框架选择方法和装置 | |
CN111352820A (zh) | 一种高性能应用运行状态预测和监控方法、设备和装置 | |
US20230376372A1 (en) | Multi-modality root cause localization for cloud computing systems | |
CN115438190B (zh) | 一种配电网故障辅助决策知识抽取方法及系统 | |
CN113095515A (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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20200114 |
|
RJ01 | Rejection of invention patent application after publication |