一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种流量识别方法、装置、电子设备及存储介质与流程

2022-02-20 12:29:36 来源:中国专利 TAG:
一种流量识别方法、装置、电子设备及存储介质与流程

本申请涉及数据安全技术领域,具体而言,涉及一种流量识别方法、装置、电子设备及存储介质。

背景技术

网络流量分类作为网络管理与网络安全的关键技术之一,不但能够优化网络配置,降低网络安全隐患,而且能够根据用户的行为分析提供更好的服务质量。网络流量分类作为网络管理的基础工作,一直是网络管理人员关注的重点。随着HTTPS、SSL等加密技术的普及和广泛使用,加密流量将占据网络流量的主体地位,加密流量的检测已成为网络流量分析的一个重要内容。此外,在当前大数据通信的环境下,为了保证数据的隐秘性,大量数据在网络传输过程中对原始数据进行了编码处理。对于网络中加密流量和编码流量以及明文流量的区分是一个十分现实而又迫切需要解决的问题。

现有的识别方法,如采用机器学习分类模型算法进行分类识别,该方法对采用基于随机性特征的加密和压缩流量识别时,需要提取大量数据的ECF特征,并且训练模型需要消耗大量时间,且结果存在局限性。



技术实现要素:

本申请实施例的目的在于提供一种流量识别方法、装置、电子设备及存储介质,对明文、编码和加密流量进行压缩,并利用压缩阈值来区分明文、编码和加密流量,解决现有方法训练模型需要消耗大量时间,且结果存在局限性的问题。

本申请实施例提供了一种流量识别方法,该方法包括:

对待识别流量进行压缩,以得到压缩率;

将所述压缩率与预设的每类流量的阈值范围进行比较,以识别所述待识别流量的种类,所述流量的种类包括明文流量、编码流量和加密流量。

在上述实现过程中,利用压缩算法对每类流量进行压缩,以得到阈值范围,利用不同种类的流量的阈值范围不同,可实现对各类流量的识别,有效保证流量数据分类的准确性,避免了使用机器学习算法的局限性,从而解决了现有方法训练模型需要消耗大量时间,且结果存在局限性的问题。

进一步地,在所述将所述压缩率与预设的每类流量的阈值范围进行比较的步骤之前,所述方法还包括:

计算每类流量的阈值范围。

在上述实现过程中,通过计算每类流量的阈值范围,为待识别流量提供识别依据。

进一步地,所述计算每类流量的阈值范围,包括:

从外部网络中获取数据包,并进行解析,以获得载荷数据集,所述载荷数据集包括明文数据载荷数据集、编码数据载荷数据集和加密数据载荷数据集;

利用压缩算法分别对所述载荷数据集中的数据进行压缩,以得到压缩率集合,所述压缩率为压缩后数据长度与压缩前数据长度之比;

根据所述压缩率集合计算每种载荷数据集的阈值范围。

在上述实现过程中,利用压缩算法对载荷数据集中的数据进行压缩,可得到压缩前后的长度比,进而得到压缩率,根据压缩率集合可得到每种流量的阈值范围。

进一步地,所述根据所述压缩率集合计算每种载荷数据集的阈值范围,包括:

计算所述压缩率集合的平均值和标准差;

利用所述平均值加减标准差的值确定每种载荷数据集的阈值范围。

在上述实现过程中,根据平均值加减标准差的值确定阈值范围,由于三种流量数据不同的特性,所得的阈值范围也会有明显的差别,因此可以进行三种流量的识别和区分。

进一步地,所述利用所述平均值加减标准差的值确定每种载荷数据集的阈值范围,包括:

若为明文数据载荷集,所述阈值范围表示为[a-b:a b];

其中,a表示平均值,b表示标准差。

在上述实现过程中,标准差到平均值与标准差之和构成明文数据载荷集的阈值范围,若待检测流量的压缩率落入该范围则为明文流量。

本申请实施例还提供一种流量识别装置,所述装置包括:

压缩模块,用于对待识别流量进行压缩,以得到压缩率;

识别模块,用于将所述压缩率与预设的每类流量的阈值范围进行比较,以识别所述待识别流量的种类,所述流量的种类包括明文流量、编码流量和加密流量。

在上述实现过程中,利用压缩算法对每类流量进行压缩,以得到阈值范围,利用不同种类的流量的阈值范围不同,可实现对各类流量的识别,有效保证流量数据分类的准确性,避免了使用机器学习算法的局限性,从而解决了现有方法训练模型需要消耗大量时间,且结果存在局限性的问题。

进一步地,所述装置还包括:

阈值范围计算模块,用于计算每类流量的阈值范围。

在上述实现过程中,通过计算每类流量的阈值范围,为待识别流量提供识别依据。

所述阈值范围计算模块包括:

解析模块,用于从外部网络中获取数据包,并进行解析,以获得载荷数据集,所述载荷数据集包括明文数据载荷数据集、编码数据载荷数据集和加密数据载荷数据集;

集合获取模块,用于利用压缩算法分别对所述载荷数据集中的数据进行压缩,以得到压缩率集合,所述压缩率为压缩后数据长度与压缩前数据长度之比;

阈值范围获取模块,用于根据所述压缩率集合计算每种载荷数据集的阈值范围。

在上述实现过程中,利用压缩算法对载荷数据集中的数据进行压缩,可得到压缩前后的长度比,进而得到压缩率,根据压缩率集合可得到每种流量的阈值范围。

本申请实施例还提供一种电子设备,所述电子设备包括存储器以及处理器,所述存储器用于存储计算机程序,所述处理器运行计算机程序以使计算机设备执行根据上述中任一项所述的流量识别方法。

本申请实施例还提供一种可读存储介质,所述可读存储介质中存储有计算机程序指令,所述计算机程序指令被一处理器读取并运行时,执行上述中任一项所述的流量识别方法。

附图说明

为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。

图1为本申请实施例提供的一种流量识别方法的流程图;

图2为本申请实施例提供的明文、编码和加密流量的识别流程图;

图3为本申请实施例提供的阈值范围计算过程流程图;

图4为本申请实施例提供的流量识别装置的结构框图;

图5为本申请实施例提供的另一种流量识别装置的结构框图。

图标:

100-压缩模块;200-识别模块;300-阈值范围计算模块;310-解析模块;320-集合获取模块;330-阈值范围获取模块;331-计算模块;332-阈值范围确定模块。

具体实施方式

下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述。

应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本申请的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。

请参看图1,图1为本申请实施例提供的一种流量识别方法的流程图。该方法基于压缩算法区分明文、编码和加密流量,通过对明文、编码和加密流量进行压缩,得到压缩率,进而得到各类流量的阈值范围,基于每种流量的阈值范围不同可对明文、编码和加密流量进行区分,实现利用阈值范围对各类数据流量进行分类的目的。

具体包括以下步骤:

步骤S100:对待识别流量进行压缩,以得到压缩率;

步骤S200:将所述压缩率与预设的每类流量的阈值范围进行比较,以识别所述待识别流量的种类,所述流量的种类包括明文流量、编码流量和加密流量。

如图2所示,为明文、编码和加密流量的识别流程图。在对待识别流量进行检测之前,需要先计算每类流量的阈值范围,为待识别流量提供识别依据,其计算过程具体包括以下步骤:

步骤S310:从外部网络中获取数据包,并进行解析,以获得载荷数据集,所述载荷数据集包括明文数据载荷数据集、编码数据载荷数据集和加密数据载荷数据集;

步骤S320:利用压缩算法分别对所述载荷数据集中的数据进行压缩,以得到压缩率集合,所述压缩率为压缩后数据长度与压缩前数据长度之比;

步骤S330:根据所述压缩率集合计算每种载荷数据集的阈值范围。

如图3所示,为阈值范围计算过程流程图,该步骤具体可以包括:

步骤S331:计算所述压缩率集合的平均值和标准差;

步骤S332:利用所述平均值加减标准差的值确定每种载荷数据集的阈值范围。

例如,若为明文数据载荷集,则阈值范围可以表示为[a-b:a b];其中,a表示平均值,b表示标准差。

对于不同场景下所需要的载荷数据集中数据的个数以及数据的长度,在此不做限定,可根据需要自行设定,并且在不同的场景下,对于具体的数据,需要重新计算阈值范围,以保证识别结果的有效性。

具体地,首先进行初始化,即从外部网络中获取数据包,按照TCP/IP协议格式进行解析,获取数据载荷集,即分别得到明文数据载荷数据集、编码数据载荷数据集和加密数据载荷数据集。

利用压缩算法对载荷数据集中的数据进行压缩得到压缩率,此处所采用的压缩算法,示例地,可以采用DEFLATE算法,具体地:

对每类载荷数据集中的每个数据,使用DEFLATE算法进行压缩,压缩后的数据长度与压缩前的数据长度之比,即为压缩率;进而计算每类数据集得到的压缩率集合的平均值和标准差;对于每类数据集,使用平均值加减标准差的方式,得到一个阈值范围。比如明文数据集,若平均值是0.2,标准差是0.1,则阈值范围是[0.1:0.3]。编码和加密数据集可采用同样的方法分别得到一个阈值范围,在此不再赘述。

而在实际应用中,Python中的ZLIB模块包括使用DEFLATE算法实现数据压缩和解压的函数,增强使用的便利性。

需要说明的是,对于得到压缩率所采用的压缩算法,在此不做任何限定,例如可采用DEFLATE算法,也可以采用其他算法如7-zip。

而每种数据集的阈值范围存在很大区别,因此可以用于流量种类的识别。这是由于,对于加密数据,有着很强的随机性,所以几乎不可能被压缩;对于明文数据,其随机性较差,可以在很大程度上进行压缩;而编码数据,其随机性处于明文和加密数据之间,可以在一定程度上进行压缩;故可以使用压缩率来对三中流量数据进行明显的区分,并且使用该方法对流量数据分类的准确率较高。

因此,在步骤S200中,可使用该三种流量的阈值范围对待识别流量进行区分,将待识别流量的压缩率和三种流量的阈值范围进行比较,从而得到分类结果。例如,待识别流量的压缩率为0.25,落在明文流量的阈值范围内,故可判定该待识别流量的数据类型为明文数据。该分类方法的步骤简单,仅需比对待识别流量的压缩率是否落入某种流量数据的阈值范围。

在实际应用中,网络流量中除了可读性强的明文数据外,还包含使用各种编码算法、加密算法处理的二进制数据,如果在某些场景下出现编码数据或密文数据则需要引起管理人员的注意。因此可使用本方法对各类流量进行简单、高效的识别。

本申请实施例还提供一种流量识别装置,如图4所示,为流量识别装置的结构框图,该装置包括:

压缩模块100,用于对待识别流量进行压缩,以得到压缩率;

识别模块200,用于将所述压缩率与预设的每类流量的阈值范围进行比较,以识别所述待识别流量的种类,所述流量的种类包括明文流量、编码流量和加密流量。

利用压缩算法对每类流量进行压缩,以得到阈值范围,利用不同种类的流量的阈值范围不同,可实现对各类流量的识别,有效保证流量数据分类的准确性,避免了使用机器学习算法的局限性,从而解决了现有方法训练模型需要消耗大量时间,且结果存在局限性的问题。

如图5所示,为另一种流量识别装置的结构框图,在上述实施例的基础上,该装置还包括阈值范围计算模块300,用于计算每类流量的阈值范围,具体包括:

解析模块310,用于从外部网络中获取数据包,并进行解析,以获得载荷数据集,所述载荷数据集包括明文数据载荷数据集、编码数据载荷数据集和加密数据载荷数据集;

集合获取模块320,用于利用压缩算法分别对所述载荷数据集中的数据进行压缩,以得到压缩率集合,所述压缩率为压缩后数据长度与压缩前数据长度之比;

阈值范围获取模块330,用于根据所述压缩率集合计算每种载荷数据集的阈值范围。

阈值范围获取模块330具体可以包括:

计算模块331,用于计算压缩率集合的平均值和标准差;

阈值范围确定模块332,用于利用平均值加减标准差的值确定每种载荷数据集的阈值范围。

例如,若为明文数据载荷集,则阈值范围可以表示为[a-b:a b];其中,a表示平均值,b表示标准差。

基于每种数据载荷集的压缩率存在很大差别,可利用平均值和标准差构成阈值范围来进行区分,该方法计算简单且准确率较高,解决现有方法训练模型需要消耗大量时间,且结果存在局限性的问题。

本申请实施例提供一种电子设备,所述电子设备包括存储器以及处理器,所述存储器用于存储计算机程序,所述处理器运行计算机程序以使计算机设备执行上述的流量识别方法。

本申请实施例还提供一种可读存储介质,所述可读存储介质中存储有计算机程序指令,所述计算机程序指令被一处理器读取并运行时,执行上述的流量识别方法。

在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本申请的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。

另外,在本申请各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。

所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述仅为本申请的实施例而已,并不用于限制本申请的保护范围,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。

以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应所述以权利要求的保护范围为准。

需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献