CN112187652A - 一种特征判定规则建立以及网络流量判定方法和系统 - Google Patents
一种特征判定规则建立以及网络流量判定方法和系统 Download PDFInfo
- Publication number
- CN112187652A CN112187652A CN202011039849.1A CN202011039849A CN112187652A CN 112187652 A CN112187652 A CN 112187652A CN 202011039849 A CN202011039849 A CN 202011039849A CN 112187652 A CN112187652 A CN 112187652A
- Authority
- CN
- China
- Prior art keywords
- traffic
- flow
- feature
- rule
- module
- 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
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/70—Admission control; Resource allocation
- H04L47/80—Actions related to the user profile or the type of traffic
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1408—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1441—Countermeasures against malicious traffic
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请实施例公开了一种特征判定规则建立以及网络流量判定方法和系统。所述特征判定规则建立方法包括:采集一段时间内的多条样本流量;对所述多条样本流量进行聚类,以获得多个样本流量类型;基于所述多个样本流量类型,建立初始特征提取规则和初始特征判定规则,其中,至少基于所述多个样本流量类型的数量,判定所述初始特征提取规则中的预设位置。
Description
技术领域
本申请涉及网络安全领域,特别涉及一种特征判定规则建立以及网络流量判定方法和系统。
背景技术
随着网络技术的飞速发展,在互联网及相关应用中,数据安全问题越来越被大家所关注。准确有效地判定加密流量对于网络犯罪行为分析、舆情分析、国家信息安全等具有重要意义。伴随着互联网上加密流量的种类越来越多,规模越来越大,给流量判定带来了新的挑战。
因此,如何更好地判定各种类型的加密流量,并检测出其中的异常流量成为亟需解决的问题。
发明内容
本申请实施例之一提供一种特征判定规则建立方法,包括:采集一段时间内的多条样本流量;对所述多条样本流量进行聚类,以获得多个样本流量类型;基于所述多个样本流量类型,建立初始特征提取规则和初始特征判定规则,其中,至少基于所述多个样本流量类型的数量,判定所述初始特征提取规则中的预设位置。
本申请实施例之一提供一种网络流量判定方法,包括:获取第一流量;获取特征提取规则和特征判定规则,所述特征提取规则和所述特征判定规则至少根据特征判定规则建立方法建立而成;根据所述特征提取规则在第一流量的预设位置获取所述第一流量的特征数据;基于所述第一流量的特征数据,根据所述特征判定规则判定所述第一流量的流量类型。
本申请实施例之一提供一种特征判定规则建立系统,包括规则判定模块,所述规则判定模块用于:采集一段时间内的多条样本流量;对所述多条样本流量进行聚类,以获得多个样本流量类型;基于所述多个样本流量类型,建立初始特征提取规则和初始特征判定规则,其中,至少基于所述多个样本流量类型的数量,判定所述初始特征提取规则中的预设位置。
本申请实施例之一提供一种网络流量判定系统,包括:获取模块、知识库调取模块、特征提取模块和流量类型判定模块;所述获取模块用于获取第一流量;所述知识库调取模块用于获取特征提取规则和特征判定规则,所述特征提取规则和所述特征判定规则至少根据特征判定规则建立方法建立而成;所述特征提取模块用于根据所述特征提取规则在第一流量的预设位置获取所述第一流量的特征数据;所述流量类型判定模块用于基于所述第一流量的特征数据,根据所述特征判定规则判定所述第一流量的流量类型。
本申请实施例之一提供一种网络流量判定装置,包括处理器,所述处理器用于执行本申请任一实施例所述的网络流量判定方法。
本申请实施例之一提供一种计算机可读存储介质,所述存储介质存储计算机指令,当计算机读取存储介质中的计算机指令后,计算机执行本申请任一实施例所述的网络流量判定方法。
附图说明
本申请将以示例性实施例的方式进一步说明,这些示例性实施例将通过附图进行详细描述。这些实施例并非限制性的,在这些实施例中,相同的编号表示相同的结构或操作,其中:
图1是根据本申请一些实施例所示的网络流量判定系统的模块图;
图2是根据本申请一些实施例所示的更新模块的示意图;
图3是根据本申请一些实施例所示的训练模块的示意图;
图4是根据本申请一些实施例所示的网络流量判定方法的示例性流程图;
图5是根据本申请一些实施例所示的待测定流量判定方法的示例性流程图;
图6是根据本申请一些实施例所示的待测定流量判定方法的示例性流程图;
图7是根据本申请一些实施例所示的流量分类模型训练方法的示例性流程图;
图8是根据本申请一些实施例所示的规则建立方法的示例性流程图;
图9是根据本申请一些实施例所示的网络流量判定方法的示例性流程图;
图10是根据本申请一些实施例所示的网络流量判定方法的示例性流程图
图11是根据本申请一些实施例所示的网络流量判定方法的示例性流程图;
图12是根据本申请一些实施例所示的网络服务系统的应用场景示意图。
具体实施方式
为了更清楚地说明本申请实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单的介绍。显而易见地,下面描述中的附图仅仅是本申请的一些示例或实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图将本申请应用于其它类似情景。除非从语言环境中显而易见或另做说明,图中相同标号代表相同结构或操作。
应当理解,本文使用的“系统”、“装置”、“单元”和/或“模组”是用于区分不同级别的不同组件、元件、部件、部分或装配的一种方法。然而,如果其他词语可实现相同的目的,则可通过其他表达来替换所述词语。
如本申请和权利要求书中所示,除非上下文明确提示例外情形,“一”、“一个”、“一种”和/或“该”等词并非特指单数,也可包括复数。一般说来,术语“包括”与“包含”仅提示包括已明确标识的步骤和元素,而这些步骤和元素不构成一个排它性的罗列,方法或者设备也可能包含其它的步骤或元素。
本申请中使用了流程图用来说明根据本申请的实施例的系统所执行的操作。应当理解的是,前面或后面操作不一定按照顺序来精确地执行。相反,可以按照倒序或同时处理各个步骤。同时,也可以将其他操作添加到这些过程中,或从这些过程移除某一步或数步操作。
本说明书实施例涉及一种网络流量判定方法和系统。该网络流量判定方法和系统是针对互联网数据中心的流量进行的整体方案判定设计,跨过了协议的判定,建立了基于流量的判定模式,构建了以流量为重心的判定思维。该网络流量判定方法通过建立基于模型和/或规则的判定方式、构建自动闭环的知识库迭代机制、运用深度贴合业务模式的流量判定模式等,能够高效准确地判定海量流量和加密流量,为网络安全提供了前提和保障。此外,该网络流量判定方法和系统还能够应用于互联网数据中心的业务模式安全防护,能够解决互联网数据中心的私有协议流量、加密流量或者抽象的可视流量类等的判定。
图1所示为一些实施例所示的网络流量判定系统的模块图。如图1所示,该网络流量判定系统100可以包括获取模块110、特征提取模块120、特征判定模块130、流量类型判定模块140、策略执行模块150、业务模式判定模块112、知识库调取模块114、待测定流量判定模块160、更新模块170、训练模块180和规则判定模块190。
获取模块110可以用于获取网络流量判定过程中的信息/数据。
在一些实施例中,获取模块110可以用于获取第一流量。在一些实施例中,流量可以为网络中的交互数据包。第一流量可以为任意一个或多个交互数据包。在一些实施例中,所披露的网络流量判定系统100可以应用于互联网数据中心(Internet Data Center,简称IDC),获取模块110可以获取进入IDC边界网关后的交互数据包作为第一流量。例如,当用户访问IDC中的应用业务模式和/或使用IDC提供的业务模式时,用户通过终端向IDC发送流量(交互数据包),获取模块110可以获取用户终端发送的交互数据包作为第一流量。实施例所披露的网络流量判定系统100不仅能够应用于IDC,还可以应用于服务器、云平台等场景。
在一些实施例中,第一流量可以是一个数据流(如一次访问所产生的数据流)中前一个或多个数据包。例如,第一流量可以是数据流的数据包包头、前几个数据包,也可以是数据流的所有数据包。所取数据包数量多,有助于提高后续判定的精度,但一般说来,也会提高系统的运算量和存储的数据量。所取数据包的数量可以根据数据流的性质,后续判定策略的需要进行灵活调整。这个数量可以根据系统反馈动态调整,也可以作为系统的基本参数定期调整。在一些实施例中,第一流量是数据流的前三个数据包。通过对数据流的前一个或多个数据包进行判定,能够在有效保证判定精度的基础上兼顾检测性能。在一些实施例中,对于一个数据流,获取模块110可以按序获取其数据包进行判定。例如,在一些实施例中,获取模块110可以先获取数据流的第一个数据包,当通过系统100无法判定出第一个数据包的流量类型时,获取模块110再获取该数据流的第二个数据包。依次类推,直到系统100对该数据流的前多个包(如前三包、前五包等)均进行了判定。若过程中某个数据包被系统100判定出流量类型,则可以停止获取该数据流的数据包。在一些实施例中,系统可以设置一个获取数据流数据包数量上限的阈值,当获取模块110获取数据流的数据包数量达到此阈值,系统100还是无法判定出数据包的流量类型时,不再获取更多数据包,而是对此数据流进行特殊处理,如将其标记为未判定流量或待测定流量。在一些实施例中,该阈值可以由系统预先设定,也可以根据系统反馈动态调整;该阈值可以定期或不定期进行更新;该阈值的更新方式可以包括基于机器学习模型优化更新、基于系统反馈更新、基于人工输入更新等,具体更新方式可参考更新模块170的相关说明。在一些实施例中,第一流量还可以包括应答包。
在一些实施例中,获取模块110包括一个异常流量判定子模块。异常流量判定子模块可以通过异常流量判定模型(如异常流量判定模型205)对流量进行处理,判定其是否为系统定义的非异常流量或者异常流量。当流量进入IDC边界网关后,系统100可以先采用异常流量判定模型对流量进行判定。当异常流量判定模型判定该流量属于异常流量类型时,系统100可以直接对该异常流量采取相应的策略(如不允许访问、上报、告警、特别标记、异常报告等)。当异常流量判定模型判定该流量属于非异常流量类型,或者无法判定出该流量是否异常时,则该流量可以视为非异常流量。获取模块110可以选择性获取经过异常流量判定模型判定后的某一类流量作为第一流量。
在一些实施例中,异常流量判定模型可以为训练好的机器学习模型。仅作为示例,异常流量判定模型可以包括但不限于神经网络模型、支持向量机模型、k近邻模型、决策树模型等一种或多种的组合。其中,神经网络模型可以包括卷积神经网络(CNN)、循环神经网络(RNN)、多层神经网络(MLP)、对抗神经网络(GAN)等一种或多种的组合。在一些实施例中,系统100可以获取多个样本对应组,样本对应组包括流量及其对应的异常/正常标签。其中,该标签可以根据流量的历史表现(如是否产生异常影响)自动标注,或者可以由人工标注获得。系统100可以利用该多个样本对应组训练机器学习模型,以获得训练好的异常流量判定模型。仅作为示例,通过异常流量判定模型所判定出的异常流量可以包括但不限于有攻击性的流量、刷数据的流量、通过异常步骤获得数据的流量等一种或多种的组合。
通过设置异常流量判定模型,系统100能够对流量进行快速地初筛,有助于及时发现异常流量并采取相应措施。同时,设置异常流量判定模型可以减小后续步骤的计算量。设置异常流量判定模型仅为一个实施例,有的实施例可以没有该异常流量判定模型。
在一些实施例中,获取模块110包括一个正常流量判定子模块。正常流量判定子模块可以通过正常流量判定模型对流量进行处理,判定其是否为系统定义的正常流量。当正常流量判定模型判定出该流量属于正常流量时,系统100可以直接对该正常流量采取相应的策略(如允许访问)。当正常流量判定模型判定出该流量不属于正常流量,或者无法判定出该流量是否正常时,则该流量可以视为非正常流量。获取模块110可以选择性获取经过正常流量判定模型判定后的某一类流量作为第一流量。
在一些实施例中,正常流量判定模型可以为训练好的机器学习模型。仅作为示例,正常流量判定模型可以包括但不限于神经网络模型、支持向量机模型、k近邻模型、决策树模型等一种或多种的组合。其中,神经网络模型可以包括卷积神经网络(CNN)、循环神经网络(RNN)、多层神经网络(MLP)、对抗神经网络(GAN)等一种或多种的组合。在一些实施例中,系统100可以获取多个样本对应组,样本对应组包括流量及其对应的正常/非正常标签。其中,该标签可以根据流量的历史表现(如是否产生非正常影响)自动标注,或者可以由人工标注获得。系统100可以利用该多个样本对应组训练机器学习模型,以获得训练好的正常流量判定模型。
通过设置正常流量判定模型,系统100能够对流量进行快速地初筛,有助于及时发现正常流量并采取相应措施。同时,设置正常流量判定模型可以减小后续步骤的计算量。设置正常流量判定模型仅为一个实施例,有的实施例可以没有该正常流量判定模型。
在一些实施例中,第一流量可以为经过正常流量判定模型和/或异常流量判定模型判定后的某一类流量,例如,可以是既非正常又非异常的流量。
特征提取模块120可以用于提取流量的特征数据。
在一些实施例中,特征提取模块120可以根据特征提取规则在第一流量的预设位置获取第一流量的特征数据。在一些实施例中,特征提取规则可以规定预设位置的数量、某个预设位置的起始位置和对应的取位长度。特征提取规则也可以规定预设位置的数量,某个预设位置的起始位置和终止位置。特征提取模块120根据特征提取规则在第一流量预设位置根据特征提取规则提取预设数量的特征数据。第一流量的特征数据可以为第一流量在预设位置处的数据特征。特征提取模块120可以根据特征提取规则提取第一流量的一个或多个预设位置处的指定长度的数据作为第一流量的特征数据。每个预设位置的特征数据长度可以相同也可以不同。例如,预设位置可以包括两个,在每个预设位置的特征数据长度都是2个字节。在一些实施例中,该特征提取规则可以表示为“offset:0;depth:2”(表示起始位置为第0字节,取位长度为2个字节)和“offset:6;depth:4”(表示起始位置为第6字节,取位长度为4个字节)。特征提取模块120可以获取第一流量在上述两个预设位置的各两个字节的数据作为第一流量的特征数据。例如,第一流量在预设位置“offset:0;depth:2”处的数据为“a1 2f”(以十六进制字符表示),第一流量在预设位置“offset:6;depth:4”处的字符为“5c 5e 16 02”(以十六进制字符表示)。在一些实施例中,特征提取规则可以存储在知识库290中。特征提取模块120可以从知识库290中调取相应的特征提取规则294。特征提取规则可以根据流量类型或者业务类型不同而不同。在一些实施例中,特征提取规则可以由系统预先设定,也可以根据系统反馈动态调整;特征提取规则可以定期或不定期进行更新;特征提取规则的更新方式可以包括基于机器学习模型优化更新、基于系统反馈更新、基于人工输入更新等,具体更新方式可参考更新模块170的相关说明。
特征判定模块130可以用于判定流量所属的特征类型。
在一些实施例中,特征判定模块130可以根据特征判定规则判定第一流量的特征类型。特征类型可以是一种协议(如标准网络协议、自定义协议等),也可以是按照既定规则规定的具有某一种特征的流量。一种流量类型可以包含一种或多种特征类型,一般说来,一种特征类型只属于一种流量类型,但如果可以区分,两种以上流量类型也可以包含同一种特征类型。
在一些实施例中,特征判定模块130可以基于第一流量的特征数据,根据特征判定规则判定第一流量的特征类型。在一些实施例中,特征判定规则可以通过判定第一流量在一个或多个预设位置的特征数据与判定规则是否符合来判定第一流量的特征类型。特征判定规则中与预设位置对应的特征数据规则可以在建立或更新特征判定规则的时候判定。仅作为示例,第一流量的特征数据包括第一流量在两个预设位置(如“offset:0;depth:2”和“offset:6;depth:4”)的数据特征(如字符)。当第一流量在第一预设位置的特征数据与特征判定规则中该特征位置的特征类型A在该预设位置的特征数据特征相符时(如均为“a12f”),特征判定模块130可以判定第一流量属于特征类型A。在一些实施例中,特征判定规则可以存储在知识库290中。特征判定模块130可以从知识库290中调取特征判定规则296。在一些实施例中,特征判定规则可以由系统预先设定,也可以根据系统反馈动态调整;特征判定规则可以定期或不定期进行更新。特征判定规则的更新方式可以包括基于机器学习模型优化更新、基于系统反馈更新、基于人工输入更新等,具体更新方式可以参考更新模块170和规则判定模块190的相关描述。在一些实施例中,系统100(如规则判定模块190)可以通过规则建立方法600建立初始的特征提取规则和特征判定规则。关于规则建立方法600的更多细节可以参见规则判定模块190、图8及其相关描述。
流量类型判定模块140可以用于判定流量所属的流量类型。
在一些实施例中,流量类型判定模块140可以根据流量分类模型,判定第一流量的流量类型。
流量类型可以为以流量为基本单元的分类方式。相同流量类型下的多条流量可以具有相同的特征类型,也可以有不同的特征类型。在一些实施例中,一种流量类型可以包含一种或多种网络协议。在一些实施例中,一种流量类型可以仅包含一种网络协议;在此情况下,该流量类型下的所有流量的网络协议相同。在一些实施例中,一种流量类型可以包含两种以上不同的网络协议;在此情况下,该流量类型下存在两种或多种不同网络协议的数据流量。在一些实施例中,可以同时有只包含一种网络协议的流量类型,和包含两种以上的网络协议的流量类型。在一些实施例中,网络协议可以包括明文协议和加密协议。其中,明文协议采用明文进行传输,加密协议通过加密的方式传输。在一些实施例中,至少一种流量类型包含两种以上不同的网络协议。进一步,至少一种流量类型所包含的两种以上不同的网络协议中至少有一种网络协议需加密传输。在一些实施例中,流量类型所包含的一种或多种网络协议可以包括标准网络协议(如HTTPS、HTTP、FTP、SMTP、SSH、NTP、SDP、POP3等);也可以包括自定义的网络协议。在一些实施例中,不同流量类型之间所包含的网络协议互不相同,在此情况下,流量类型的数量小于或等于协议类型的数量。在一些实施例中,流量类型可以作进一步细分;例如,一个流量类型可以包括两个或多个子流量类型,每个子流量类型可以包含一种或多种网络协议。
在一些实施例中,流量分类模型可以为训练好的机器学习模型。仅作为示例,流量分类模型可以包括但不限于神经网络模型、支持向量机模型、k近邻模型、决策树模型等一种或多种的组合。其中,神经网络模型可以包括卷积神经网络(CNN)、循环神经网络(RNN)、多层神经网络(MLP)、对抗神经网络(GAN)等一种或多种的组合。在一些实施例中,流量分类模型可以存储在知识库290中。流量类型判定模块140可以从知识库290中调取流量分类模型292。在一些实施例中,系统100(如训练模块180)可以通过流量分类模型训练方法500训练获得初始的流量分类模型。关于流量分类模型训练方法500的更多细节可以参见图7及其相关描述。
在一些实施例中,第一流量的流量类型可以包括一种或多种。即,第一流量可以同时属于一种或多种流量类型。仅作为示例,流量类型判定模块140可以根据流量分类模型判定出第一流量分别属于多种流量类型的概率。在一些实施例中,当第一流量属于某种流量类型的概率大于设定阈值(如0.5、0.6、0.8等)时,流量类型判定模块140可以判定第一流量属于该种流量类型。
在一些实施例中,流量类型判定模块140可以根据特征判定规则所判定出第一流量的特征类型,判定第一流量的流量类型。例如,流量类型判定模块140可以将特征类型所对应(如所属于)的流量类型作为第一流量的流量类型。
在一些实施例中,根据流量分类模型判定出的第一流量的流量类型可以作为第一初步类型;根据特征判定规则判定出第一流量的特征类型。流量类型判定模块140可以基于第一初步类型和特征类型,判定第一流量的流量类型。
在一些实施例中,流量类型判定模块140可以通过比较第一初步类型和特征类型来判定第一流量的流量类型。具体的,流量类型判定模块140可以判定第一流量的流量类型为第一初步类型和特征类型中共有的流量类型。当第一初步类型和特征类型中没有共有的流量类型时,流量类型判定模块140可以判定第一流量为待测定流量270。例如,第一流量的第一初步类型为A和B,第一流量的特征类型为A和C,则流量类型判定模块140可以判定第一流量的流量类型为A。又例如,第一流量的第一初步类型为A和B,第一流量的特征类型为C,则流量类型判定模块140可以判定第一流量为待测定流量270。在一些实施例中,当流量类型判定模块140将第一流量判定为待测定流量270时,系统100可以上报第一流量待测定或未被判定的消息;同时可以将第一流量存储至待测定流量数据区。
在一些实施例中,流量类型判定模块140还可以根据流量判定引擎,判定第一流量的流量类型,并基于流量判定引擎的判定结果,将第一流量分为已判定流量或待测定流量。在一些实施例中,流量判定引擎可以通过知识库中的流量分类模型,和/或特征提取规则与特征判定规则,判定第一流量的流量类型。
在一些实施例中,当流量类型过多时;例如,当流量类型的数量大于设定阈值(如20、30、50等)时,系统100可以将多个流量类型整合成一个;例如将多个流量类型整合成子业务模式,并将子业务模式当作流量类型进行处理。
策略执行模块150可以用于对流量采取策略。
在一些实施例中,策略执行模块150可以基于第一流量的流量类型对第一流量采取相应的策略。
在一些实施例中,对第一流量采取的策略可以包括但不限于:允许访问、不允许访问、带宽限制、安全级别限制、网络流量优先级设置、上报、告警、特别标记和异常报告等一种或多种的组合。在一些实施例中,策略执行模块150可以基于第一流量的流量类型,按照预设的对应规则对第一流量采取相应的策略。例如,流量类型A可以对应第一策略,流量类型B可以对应第二策略,依次类推。
在一些实施例中,策略执行模块150可以基于业务模式和/或第一流量的流量类型,对第一流量采取相应的策略。在一些实施例中,策略执行模块150可以仅基于第一流量所属的业务模式(而不论第一流量的流量类型是什么)对第一流量采取相应的策略。例如,当第一流量属于业务模式a时,策略执行模块150可以对第一流量采取第一策略;当第一流量属于业务模式b时,策略执行模块150可以对第一流量采取第二策略。在一些实施例中,策略执行模块150可以基于第一流量所属的业务模式和第一流量的流量类型,对第一流量采取相应的策略。当第一流量分别属于同一业务模式下的不同流量类型、不同业务模式下的相同流量类型和不同业务模式下的不同流量类型时,第一流量对应的策略可以相同、部分相同或均不相同。例如,业务模式可以包括业务模式a和业务模式b;业务模式a可以包含流量类型A和B;业务模式b可以包含流量类型A和C;当第一流量属于业务模式a和流量类型A时,策略执行模块150可以对第一流量采取第一策略;当第一流量属于业务模式a和流量类型B时,策略执行模块150可以对第一流量采取第二策略;当第一流量属于业务模式b和流量类型A时,策略执行模块150可以对第一流量采取第三策略;当第一流量属于业务模式b和流量类型C时,策略执行模块150可以对第一流量采取第四策略。
在一些实施例中,策略执行模块150还可以基于第一流量的流量类型以及第一流量的数据大小对第一流量采取相应的策略。其中,第一流量的数据大小可以为第一流量所对应的数据流的大小。例如,第一流量属于流量类型A(如高危流量),当第一流量的数据传输高于第一阈值(如1MB、3MB等)时,策略执行模块150可以对第一流量采取第一策略(如报警);当第一流量的数据传输超过第二阈值(如8MB、10MB、15MB等)时,策略执行模块150可以对第一流量采取第二策略(如对第一流量进行清洗、不允许访问等)。又例如,第一流量属于流量类型B(如中危流量),当第一流量的数据传输高于第三阈值(如20MB、30MB等)时,策略执行模块150可以对第一流量采取第三策略(如上报)。在一些实施例中,策略执行模块150还可以基于第一流量所属的业务模式、第一流量的流量类型以及第一流量的数据大小对第一流量采取相应的策略。
在一些实施例中,策略执行模块150还可以对属于特定流量类型(如高危流量、敏感流量等)的第一流量采取数据提取、数据检测等策略。例如,策略执行模块150可以提取第一流量的各个字段,对这些字段进行数据敏感检测,同时通过数据安全检测引擎对第一流量做数据安全相关的扫描。
业务模式判定模块112可以用于判定流量所属的业务模式。
在一些实施例中,业务模式判定模块112可以判定第一流量对应的业务模式。
业务模式可以为企业运用科学方法和生产工艺生产出可交付用户使用的产品与服务。仅作为示例,业务模式可以包括但不限于金融业务模式、网约车业务模式、共享单车业务模式、代驾业务模式、公交业务模式、导航业务模式、车辆买卖业务模式、快递业务模式、网络安全业务模式等。第一流量对应的业务模式可以为第一流量所访问的业务模式。在一些实施例中,一个业务模式可以包含一种或多种流量类型。在一些实施例中,业务模式可以作进一步细分;例如,一个业务模式可以包括两个或多个子业务模式,每个业务模式可以包含一种或多种流量类型。业务模式判定模块112可以判定第一流量对应的业务模式和/或子业务模式。在一些实施例中,不是业务模式之间所包含的流量类型可以相同、部分相同或完全不同。
在一些实施例中,业务模式判定模块112可以根据业务模式判定模型,判定第一流量对应的业务模式。在一些实施例中,业务模式分类模型可以为训练好的机器学习模型。仅作为示例,业务模式分类模型可以包括但不限于神经网络模型、支持向量机模型、k近邻模型、决策树模型等一种或多种的组合。其中,神经网络模型可以包括卷积神经网络(CNN)、循环神经网络(RNN)、多层神经网络(MLP)、对抗神经网络(GAN)等一种或多种的组合。在一些实施例中,系统100可以获取多个样本对应组,样本对应组包括流量及其对应的业务模式标签。其中,该业务模式标签可以根据流量的历史表现(如该流量最终访问了哪项业务模式)自动标注,或者可以由人工标注获得。系统100可以利用该多个样本对应组训练机器学习模型,以获得训练好的业务模式判定模型。
在一些实施例中,业务模式判定模块112也可以通过其他方式判定第一流量对应的业务模式。例如,业务模式判定模块112可以根据第一流量与不同业务模式下多条流量之间的相似度,判定与第一流量相似度最高的业务模式为该第一流量对应的业务模式。又例如,业务模式判定模块112可以根据业务模式判定规则判定第一流量对应的业务模式。其中,业务模式判定规则可以通过判定第一流量在一个或多个位置的数据特征从而判定第一流量对应的业务模式。在一些实施例中,业务模式判定模块112也可以通过业务模式判定模型、相似度判定、规则判定等两种或多种方式结合以判定第一流量对应的业务模式。
知识库调取模块114可以用于调取知识库中的模型、规则等。
在一些实施例中,知识库调取模块114可以根据系统设置调取不同的流量分类模型、特征提取规则、特征判定规则、业务模式判定模型、业务模式判定规则、策略执行规则、更新方式、训练方法、规则判定方式等内容。
在一些实施例中,知识库调取模块114可以基于业务模式调取流量分类模型、特征提取规则和特征判定规则。
在一些实施例中,对于不同的业务模式,其所对应的流量分类模型以及特征提取规则和特征判定规则可以相同或不同。在一些实施例中,系统100(如训练模块180)可以针对不同的业务模式,分别训练对应的流量分类模型(如根据流量分类模型训练方法500)。系统100(如规则判定模块190)还可以针对不同的业务模式建立对应的特征判定规则和特征判定规则(如通过规则建立方法600)。不同业务模式对应的模型和规则可以存储在知识库290中;知识库调取模块114可以基于业务模式从知识库290中调取对应的流量分类模型292、特征提取规则294和特征判定规则296。
在一些实施例中,由于不同业务模式的重要程度和关注程度等的不同,每个业务模式可以包括一种或多种流量类型。例如,对于某类业务模式来讲(如重要程度较低的业务模式),该业务模式可以仅包括一种流量类型,所有该业务模式下的流量都属于该流量类型,系统100将对所有该业务模式下的流量采取相同的策略(如允许访问)。又例如,对于另一类业务模式(如重要程度较高的业务模式),该业务模式可以包括多种流量类型(如5种、10种、20种等),系统100可以对该业务模式下不同流量类型的流量采取不同的策略。
在一些实施例中,知识库调取模块114可以根据业务模式的等级调取流量分类模型、特征提取规则和特征判定规则。具体的,每个业务模式可以具有相对应的等级。例如,以业务模式的重要程度划分,可以将业务模式等级分为高级业务模式、中级业务模式和低级业务模式。又例如,以业务模式的关注程度分,可以将业务模式等级分为1级业务模式、2级业务模式、3级业务模式、…、10级业务模式。在一些实施例中,每个业务模式等级所对应的流量分类模型、特征提取规则和特征判定规则可以相同。在一些实施例中,业务模式等级的重要程度或关注程度越高,其所对应的流量类型越多,相对应的流量分类模型、特征提取规则和特征判定规则越复杂。
待测定流量判定模块160可以用于判定待测定流量的流量类型。
在一些实施例中,待测定流量判定模块160可以获取多条待测定流量。
在一些实施例中,待测定流量270可以包括无法判定第一初步类型、特征类型和/或流量类型的第一流量。具体的,当流量类型判定模块140根据流量分类模型无法判定出第一流量的第一初步类型时,可以将该第一流量判定为待测定流量270;当特征判定模块130根据特征判定规则无法判定出第一流量的特征类型时,可以将该第一流量判定为待测定流量270;当第一初步类型和特征类型中没有共有的流量类型时,流量类型判定模块140可以将第一流量判定为待测定流量270。不同阶段分化出的待测定流量,可以有相同或者不同的标签。
在一些实施例中,待测定流量判定模块160可以获取一段时间内(如一天、一周、一个月等)累积的多条待测定流量。在一些实施例中,待测定流量判定模块160可以基于聚类模型,判定所述多条待测定流量是否为已知流量类型,或者说判定所述多条待测定流量为已判定流量或未知流量。具体的,未知流量可以为被判定不是已知流量类型的待测定流量。
在一些实施例中,待测定流量判定模块160可以利用无监督聚类模型对多条待测定流量进行聚类,以获得至少一个待定流量组;并根据特征提取规则和特征判定规则判定待定流量组是否为已知流量类型。在一些实施例中,待测定流量判定模块160可以获取多种流量类型,基于所述多种流量类型,利用有监督聚类模型判定所述多条待测定流量是否属于所述多种流量类型;并将所述多条待测定流量中不属于任意一种流量类型的流量判定为未知流量276。关于待测定流量判定方法的更多细节可以参见图5-6及其相关描述。
在一些实施例中,待测定流量270可以包括已经判定第一初步类型、特征类型和/或流量类型的第一流量。在一些实施例中,已经判定第一初步类型、特征类型和/或流量类型的第一流量可以作为待测定流量270进行处理,通过对待测定流量(可以只包括已经判定类型的流量或者同时包括已经判定类型和尚未判定类型的混合流量)进行处理,对流量类型判定规则、特征判定规则和/或其它各类相关规则进行优化、细化或者检验。在一些实施例中,待测定流量270可以根据一定比例混入一部分已经判定第一初步类型、特征类型和/或流量类型的第一流量,以实现对模型和训练方法的监控、优化、检验或者对比。
更新模块170可以用于对知识库(如知识库中的模型、规则、策略等)进行更新。图2是根据本申请一些实施例所示的更新模块的示意图。如图2所示,更新模块170可以进一步包括流量分类模型更新单元172、特征提取规则更新单元174、特征判定规则更新单元176和策略更新单元178。
具体的,流量分类模型更新单元172、特征提取规则更新单元174、特征判定规则更新单元176和策略更新单元178可以分别用于对知识库中的流量分类模型、特征提取规则、特征判定规则和策略进行更新。
在一些实施例中,对于未知流量276,系统100可以通知运营人员(如网络流量领域的专家)介入,运营人员可以对未知流量进行特征提取和分类。例如,运营人员可以将一条或多条未知流量归类到已有的流量类型中。又例如,运营人员可以将一条或多条未知流量判定为一个新的流量类型。再例如,运营人员可以人工提取一条或多条未知流量的特征数据,特征数据可以包括该一条或多条未知流量在一个或多个位置处的数据特征。
在一些实施例中,更新模块170可以获取未知流量的特征提取结果和流量分类结果,并根据所述未知流量的特征提取结果和流量分类结果,更新知识库290中的流量分类模型292、特征提取规则294和/或特征判定规则296。在一些实施例中,未知流量的特征提取结果和流量分类结果可以是人工对未知流量进行特征提取和流量分类的结果。一些实施例通过获取人工对未知流量的特征提取结果和分类结果并更新知识库,能够有效补充和/或校正知识库中的流量分类模型292、特征提取规则294和/或特征判定规则296,可以解决系统100对流量判定的不确定性,保障未来的判定精度和持续性。在一些实施例中,未知流量的特征提取结果和流量分类结果也可以通过机器(如相应的模型)获得。
在一些实施例中,更新模块170(如分类模型更新单元172)可以根据未知流量的分类结果,更新流量分类模型292。例如,更新模块170可以将未知流量及其分类结果作为新增的训练样本对应组,与原流量分类模型292的部分或全部训练样本对应组一起对流量分类模型292进行重新训练。又例如,更新模块170可以将未知流量及其分类结果作为流量分类模型292的验证集和/或测试集,通过对流量分类模型292进行验证和/或测试,从而更新流量分类模型292的参数。
在一些实施例中,更新模块170(如特征提取规则更新单元174和特征判定规则更新单元176)可以根据未知流量的特征提取结果和流量分类结果,更新知识库290中的特征提取规则294和特征判定规则296。仅作为示例,更新模块170可以根据未知流量的特征提取结果更新特征提取规则294,包括但不限于特征提取规则294中预设位置的数量、预设位置的起始位置和取位长度(或者起始位置和终止位置)等。更新模块170还可以进一步根据未知流量的流量分类结果更新特征判定规则296,包括但不限于特征判定规则296中一个或多个预设位置的预设数据特征。
在一些实施例中,更新模块170可以获取流量类型相同的多条流量(如已判定流量)。在一些实施例中,已判定流量280可以包括:经由流量类型判定模块140判定出流量类型的第一流量,以及由待测定流量判定模块160所判定出的已判定流量。在一些实施例中,已判定流量280还可以包括流量类型所对应的历史流量。在一些实施例中,更新模块170可以获取一个或多个流量类型中每个流量下的多条已判定流量。
在一些实施例中,更新模块170可以对多条已判定流量进行聚类,并基于相似度获取多条已判定流量中的至少部分流量。在一些实施例中,更新模块170可以通过无监督聚类模型对多条已判定流量进行聚类。例如,更新模块170可以通过无监督聚类模型将多条已判定流量聚成两类或多类。无监督聚类模型可以包括但不限于K均值聚类模型、分层聚类模型、高斯聚类模型等一种或多种的组合。在此基础上,更新模块170可以计算每一类中已判定流量之间的相似度。进一步,更新模块170可以获取相似度高的一类或多类已判定流量(即所述至少部分流量)。例如,更新模块170可以获取相似度高于设定阈值(如50%、60%、80%等)的一类或多类已判定流量。又例如,更新模块170可以获取剔除了相似度最低的1-2类后所剩余的已判定流量。
在一些实施例中,更新模块170可以提取该至少部分流量的特征数据。在一些实施例中,更新模块170(如特征提取规则更新单元174和特征判定规则更新单元176)可以从该至少部分流量中提取特征数据,并基于所提取的该至少部分流量的特征数据,更新知识库290中的特征提取规则294和/或特征判定规则296。
在一些实施例中,更新模块170可以提取该至少部分流量在一个或多个位置处的数据特征作为该至少部分流量的特征数据。具体的,该至少部分流量中所有流量或大部分(如60%、80%、90%等)流量在该一个或多个位置处的数据特征相同。与此同时,其他流量类型的流量在该一个或多个位置处的数据特征不完全相同。从而更新模块170所提取出的该至少部分流量的特征数据可以用于判定其所对应的流量类型。在一些实施例中,该一个或多个位置与原特征提取规则中的预设位置可以相同、部分相同或完全不同。
在提取了该至少部分流量的特征数据后,更新模块170可以基于所提取的特征构建特征提取规则和特征判定规则,并对知识库290中原有的特征提取规则294和特征判定规则296进行更新(如利用新规则替换原有规则)。
由于已判定流量280中可能存在误判定的流量(如将属于流量类型A的流量判定为流量类型B),通过对流量类型相同的已判定流量进行聚类,能够有效地将各流量类型中的误判定流量剔除;同时通过对相似度高的流量进行特征提取并更新知识库290,能够有效提升特征提取规则294和特征判定规则296对流量的判定准确度。
在一些实施例中,知识库中还可以包括对流量执行的策略。其中,一条策略可以对应一种或多种业务模式和/或一种或多种流量类型。更新模块170(如策略更新单元178)可以对策略进行更新。在一些实施例中,更新模块170可以获取人工针对新增业务模式所制定的策略、针对新增流量类型所制定的策略、针对原有业务模式所作出的策略变更或者针对原有流量类型所作出的策略变更等信息,并根据这些信息更新知识库中的策略。
训练模块180可以用于对模型进行训练。图3是根据本申请一些实施例所示的训练模块的示意图。如图3所示,训练模块180可以包括流量分类模型训练单元182、异常流量判定模型训练单元184和业务模式判定模型训练单元186。
具体的,流量分类模型训练单元182、异常流量判定模型训练单元184和业务模式判定模型训练单元186可以分别用于训练流量分类模型、异常流量判定模型和业务模式判定模型。
在一些实施例中,训练模块180(如流量分类模型训练单元182)可以采集一段时间内的多条样本流量。例如,训练模块180可以采集在一段时间(如一天、一周、一个月等)内,互联网数据中心(或服务器、云平台等)所接收到的流量作为样本流量。在一些实施例中,流量分类模型训练单元182可以获取对所述多条样本流量的分类结果(如人工分类的结果),所述分类结果包括所述多条样本流量分别对应的流量类型。具体的,运营人员(如网络流量领域的专家)可以对多条样本流量进行分类,为每条样本流量判定对应的流量类型。在此过程中,运营人员也可以判定出流量类型的种类和数量。在一些实施例中,流量分类模型训练单元182可以以多条样本流量作为输入,以每条样本流量对应的流量类型作为标签对原始机器学习模型进行训练,以获得初始流量分类模型。在一些实施例中,原始机器学习模型可以包括但不限于神经网络模型、支持向量机模型、k近邻模型、决策树模型等一种或多种的组合。其中,神经网络模型可以包括卷积神经网络(CNN)、循环神经网络(RNN)、多层神经网络(MLP)、对抗神经网络(GAN)等一种或多种的组合。在一些实施例中,针对多个不同的业务模式,训练模块180(如流量分类模型训练单元182)可以分别采用流量分类模型训练方法500训练获得对应的初始流量分类模型。
在一些实施例中,训练模块180(如异常流量判定模型训练单元184)可以获取多个样本对应组,样本对应组包括流量及其对应的异常/正常标签。其中,该标签可以根据流量的历史表现(如是否产生异常影响)自动标注,或者可以由人工标注获得。异常流量判定模型训练单元184可以利用该多个样本对应组训练机器学习模型,以获得训练好的异常流量判定模型。
在一些实施例中,训练模块180(如业务模式判定模型训练单元186)可以获取多个样本对应组,样本对应组包括流量及其对应的业务模式标签。其中,该业务模式标签可以根据流量的历史表现(如该流量最终访问了哪项业务模式)自动标注,或者可以由人工标注获得。业务模式判定模型训练单元186可以利用该多个样本对应组训练机器学习模型,以获得训练好的业务模式判定模型。
在一些实施例中,训练模块180还可以用于训练其他模型(例如,正常流量判定模型等)。
规则判定模块190可以用于建立、更新或者细化规则。例如,规则判定模块190可以用于建立、更新或者细化特征提取规则和/或特征判定规则。
在一些实施例中,规则判定模块190可以采集一段时间内的多条样本流量。例如,规则判定模块190可以采集在一段时间(如一天、一周、一个月等)内,互联网数据中心(或服务器、云平台等)所接收到的流量作为样本流量。在一些实施例中,至少一种样本流量类型包含两种以上不同的网络协议。在一些实施例中,所述至少一种样本流量类型所包含的所述两种以上不同的网络协议中至少有一种所述网络协议需加密传输。
在一些实施例中,规则判定模块190可以对多条样本流量进行聚类,以获得多个样本流量类型。在一些实施例中,规则判定模块190可以采用无监督聚类模型对多条样本流量进行聚类,以获得多个样本流量类型。无监督聚类模型可以包括但不限于K均值聚类模型、分层聚类模型、高斯聚类模型等一种或多种的组合。在一些实施例中,在采用无监督聚类模型对多条样本流量进行聚类时,规则判定模块190可以预设样本流量类型的数量。
在一些实施例中,规则判定模块190可以基于多个样本流量类型,建立初始特征提取规则和初始特征判定规则。在一些实施例中,流量在加密前后一般会有固定位置的数据特征是相同的,或者是加密前后的数据特征分布规则是相同的,以使得可以利用具有区分度的数据特征对流量(不论是明文还是密文)进行区分。规则判定模块190即可以按照上述理论对流量进行处理以建立初始特征提取规则和初始特征判定规则。
在一些实施例中,规则判定模块190可以基于所述多个样本流量类型的数量,判定初始特征提取规则中的预设位置。例如,规则判定模块190可以基于所述多个样本流量类型的数量,判定初始特征提取规则中的预设位置的数量。在一些实施例中,预设位置的数量满足以下判定条件:通过这些数量的预设位置是否分别满足预设数据特征能够区分所述多个样本流量类型。例如,当流量类型为2种时,预设位置的数量≥2。具体的,假设流量类型为A和B,预设位置包括位置1和2;当某一流量在位置1的数据特征满足预设数据特征时,可以认为该流量属于类型A;当某一流量在位置2的数据特征满足预设数据特征时,可以认为该流量属于类型B;当某一流量在位置1和2均满足预设数据特征时,可以认为该流量属于类型A和B;而当某一流量在位置1和2均不满足预设数据特征时,可以认为该流量属于待测定流量。在一些实施例中,考虑到后续流量的多样性以及规则的迭代更新,为了使所构建的规则能够对流量进行更好的判定,可以将预设位置的数据特征与预设数据特征一致的情况用于判定,而不将预设位置的数据特征与预设数据特征不一致的情况用于判定。
在一些实施例中,预设位置的数量可以为能够满足判定条件的最小数量。例如,当流量类型为20种时,预设位置的数量可以为6。具体的,可以通过从6个位置中选择3个位置的组合以用于判定流量类型。根据组合公式,6个位置任意选择3个位置有C(6,3)=20种组合,最少6个位置中选取3个位置可以构成20种不同的预设位置配置方式。在一些实施例中,为了兼顾计算速度、性能和效率,可以对预设位置的数量设定一个阈值(如7、8等)。在一些实施例中,预设位置的数量阈值可以基于流量类型的不同而不同;预设位置的数量阈值可以由系统预先设定,也可以根据系统反馈动态调整;预设位置的数量阈值可以定期或不定期进行更新;预设位置的数量阈值的更新方式可以包括基于机器学习模型优化更新、基于系统反馈更新、基于人工输入更新等,具体更新方式可参考更新模块170的相关说明。预设位置中多个预设位置的组合方式可以由知识库提供。例如,如果有6个预设位置,规则判定方式可以根据预定算法从6个预设位置中选择1个、2个、3个直到6个位置的特征数据进行特征数据提取和判定;也可以根据预定算法从6个预设位置中的3个位置选择不同的特征数据组合进行提取和判定;当预设位置的各种组合无法满足区分各种流量类型的需要时,可以增加预设位置的数量,对预设位置的选取进行迭代更新。
在一些实施例中,规则判定模块190可以基于所判定的预设位置的数量进一步判定预设位置的起始位置和取位长度(或者起始位置和终止位置),从而判定初始特征提取规则。例如,规则判定模块190可以从每个样本流量类型下的多条样本流量中提取一个或多个位置处的数据特征,如该多条样本流量中所有流量或大部分(如60%、80%、90%等)流量在该一个或多个位置处的数据特征相似甚至相同,或者符合一定规律;而其他样本流量类型下的流量在该一个或多个位置处的数据特征有较明显区分。
在判定了特征提取规则后,规则判定模块190可以基于各个样本流量类型下多条样本流量的特征构建特征判定规则。在一些实施例中,初始特征提取规则中包含多个预设位置,至少一个样本流量类型对应至少一个预设位置的特征数据符合特征判定规则。在一些实施例中,至少一个样本流量类型对应至少两个预设位置的特征数据的组合符合特征判定规则。
在一些实施例中,规则判定模块190可以根据规则建立方法600建立初始特征提取规则和初始特征判定规则。在一些实施例中,规则判定模块190可以对特征提取规则和特征判定规则进行检验、优化、更新甚至细化。在一些实施例中,特征提取规则和特征判定规则可以定期或不定期进行更新;特征提取规则和特征判定规则的更新方式可以包括基于机器学习模型优化更新、基于系统反馈更新、基于人工输入更新等,具体更新方式可参考更新模块170的相关说明。
在一些实施例中,针对多个不同的业务模式,规则判定模块190可以分别采用规则建立方法600建立对应的特征提取规则和特征判定规则。
应当理解,图1所示的系统及其模块可以利用各种方式来实现。例如,在一些实施例中,系统及其模块可以通过硬件、软件或者软件和硬件的结合来实现。其中,硬件部分可以利用专用逻辑来实现;软件部分则可以存储在存储器中,由适当的指令执行系统,例如微处理器或者专用设计硬件来执行。本领域技术人员可以理解上述的方法和系统可以使用计算机可执行指令和/或包含在处理器控制代码中来实现,例如在诸如磁盘、CD或DVD-ROM的载体介质、诸如只读存储器(固件)的可编程的存储器或者诸如光学或电子信号载体的数据载体上提供了这样的代码。本申请的系统及其模块不仅可以有诸如超大规模集成电路或门阵列、诸如逻辑芯片、晶体管等的半导体、或者诸如现场可编程门阵列、可编程逻辑设备等的可编程硬件设备的硬件电路实现,也可以用例如由各种类型的处理器所执行的软件实现,还可以由上述硬件电路和软件的结合(例如,固件)来实现。
需要注意的是,以上对于网络流量判定系统及其模块的描述,仅为描述方便,并不能把本申请限制在所举实施例范围之内。可以理解,对于本领域的技术人员来说,在了解该系统的原理后,可能在不背离这一原理的情况下,对各个模块进行任意组合,或者构成子系统与其他模块连接。例如,图1中披露的特征提取模块120、特征判定模块130和流量类型判定模块140可以是一个系统中的不同模块,也可以是一个模块实现上述的两个或两个以上模块的功能。又例如,各个模块可以共用一个存储模块,各个模块也可以分别具有各自的存储模块。诸如此类的变形,均在本申请的保护范围之内。
图4所示为一些实施例的网络流量判定方法的示例性流程图。该网络流量判定方法200可以由网络流量判定系统100实现。如图4所示,网络流量判定方法200可以包括:
步骤210,获取第一流量。具体的,步骤210可以由网络流量判定系统100(如获取模块110)执行。
在一些实施例中,流量可以为网络中的交互数据包。第一流量可以为任意一个或多个交互数据包。在一些实施例中,第一流量可以是一个数据流(如一次访问所产生的数据流)中前一个或多个数据包。例如,第一流量可以是数据流的数据包包头、前几个数据包,也可以是数据流的所有数据包。通过对数据流的前一个或多个数据包进行判定,能够在有效保证判定精度的基础上兼顾检测性能。
在一些实施例中,获取模块110包括一个异常流量判定子模块。异常流量判定子模块可以通过异常流量判定模型205对流量进行处理,判定其是否为系统定义的非异常流量或者异常流量。当流量进入IDC边界网关后,系统100可以先采用异常流量判定模型205对流量进行判定。当异常流量判定模型205判定该流量属于异常流量类型时,系统100可以直接对该异常流量采取相应的策略(如不允许访问、上报、告警、特别标记、异常报告等)。当异常流量判定模型205判定该流量属于非异常流量类型,或者无法判定出该流量是否异常时,则该流量可以视为非异常流量。获取模块110可以选择性获取经过异常流量判定模型205判定后的某一类流量作为第一流量。通过设置异常流量判定模型205,系统100能够对流量进行快速地初筛,有助于及时发现异常流量并采取相应措施。同时,设置异常流量判定模型205可以减小后续步骤的计算量。设置异常流量判定模型205仅为一个实施例,有的实施例可以没有该异常流量判定模型205。
在一些实施例中,获取模块110包括一个正常流量判定子模块。正常流量判定子模块可以通过正常流量判定模型对流量进行处理,判定其是否为系统定义的正常流量。当正常流量判定模型判定出该流量属于正常流量时,系统100可以直接对该正常流量采取相应的策略(如允许访问)。当正常流量判定模型判定出该流量不属于正常流量,或者无法判定出该流量是否正常时,则该流量可以视为非正常流量。获取模块110可以选择性获取经过正常流量判定模型判定后的某一类流量作为第一流量。
在一些实施例中,第一流量可以为经过正常流量判定模型和/或异常流量判定模型判定后的某一类流量,例如,可以是既非正常又非异常的流量。关于获取第一流量的更多细节可参考获取模块110的相关说明。
步骤220,根据流量分类模型,判定第一流量的第一初步类型。具体的,步骤220可以由网络流量判定系统100(如流量类型判定模块140)执行。
在一些实施例中,第一初步类型是指由流量分类模型判定出的第一流量的初步流量类型。在一些实施例中,系统100(如训练模块180)可以通过流量分类模型训练方法500训练获得初始的流量分类模型。关于流量分类模型训练方法500的更多细节可以参见图7及其相关描述。
在一些实施例中,第一流量的第一初步类型可以包括一种或多种。即,第一流量可以同时属于一种或多种流量类型。仅作为示例,流量类型判定模块140可以根据流量分类模型判定出第一流量分别属于多种第一初步类型的概率。当第一流量属于某种流量类型的概率大于设定阈值(如0.5、0.6、0.8等)时,流量类型判定模块140可以判定第一流量属于该种流量类型。关于判定第一流量的第一初步类型的更多细节可参考流量类型判定模块140的相关说明。
在一些实施例中,当流量类型判定模块140根据流量分类模型判定出第一流量的第一初步类型后,系统100将执行步骤230-240。在一些实施例中,当流量类型判定模块140根据流量分类模型无法判定出第一流量的第一初步类型时,可以将该第一流量判定为待测定流量270。
步骤230,根据特征提取规则在预设位置获取第一流量的特征数据。具体的,步骤230可以由网络流量判定系统100(如特征提取模块120)执行。
在一些实施例中,特征提取模块120可以根据特征提取规则在第一流量的预设位置获取第一流量的特征数据。特征提取规则可以规定预设位置的数量、某个预设位置的起始位置和对应的取位长度。特征提取规则也可以规定预设位置的数量,某个预设位置的起始位置和终止位置。第一流量的特征数据可以为第一流量在预设位置处的数据特征。特征提取模块120可以根据特征提取规则提取第一流量的一个或多个预设位置处的指定长度的数据作为第一流量的特征数据。在一些实施例中,特征提取规则可以存储在知识库290中。特征提取模块120可以从知识库290中调取特征提取规则294。关于提取第一流量的特征数据的更多细节可参考特征提取模块120的相关说明。
步骤240,基于第一流量的特征数据,根据特征判定规则判定第一流量的特征类型。具体的,步骤240可以由网络流量判定系统100(如特征判定模块130)执行。
在一些实施例中,特征判定规则可以通过判定第一流量在一个或多个预设位置的数据特征与预设数据特征是否符合来判定第一流量的特征类型。关于判定第一流量的特征类型的更多细节可参考特征判定模块130的相关说明。
在一些实施例中,当特征判定模块130根据特征判定规则判定出第一流量的特征类型后,系统100可以执行步骤250。在一些实施例中,当特征判定模块130根据特征判定规则无法判定出第一流量的特征类型时,系统100可以将该第一流量判定为待测定流量270。
在一些实施例中,在执行步骤220、230和240之前,系统100还可以执行步骤212和214。在一些实施例中,由于不同业务模式的重要程度和关注程度等的不同,每个业务模式可以包括一种或多种流量类型。在进行网络流量判定的时候,系统100可以先判定出网络流量对应的业务模式,然后再从知识库290中调取与该业务模式对应的流量分类模型292、特征提取规则294和/或特征判定规则296;从而使得系统100能够根据不同业务模式进行个性化流量判定,有效提升流量判定效率。
步骤212,判定第一流量对应的业务模式。具体的,步骤212可以由流量判定系统100(如业务模式判定模块112)执行。
在一些实施例中,业务模式判定模块112可以根据业务模式判定模型,判定第一流量对应的业务模式。在一些实施例中,业务模式分类模型可以为训练好的机器学习模型。在一些实施例中,业务模式判定模块112也可以通过其他方式判定第一流量对应的业务模式。例如,业务模式判定模块112可以根据第一流量与不同业务模式下多条流量之间的相似度,判定与第一流量相似度最高的业务模式为该第一流量对应的业务模式。又例如,业务模式判定模块112可以根据业务模式判定规则判定第一流量对应的业务模式。其中,业务模式判定规则可以通过判定第一流量在一个或多个位置的数据特征判定第一流量对应的业务模式。在一些实施例中,业务模式判定模块112也可以通过业务模式判定模型、相似度判定、规则判定等两种或多种方式结合以判定第一流量对应的业务模式。关于判定第一流量对应的业务模式的更多细节可参考业务模式判定模块112的相关说明。
步骤214,基于业务模式调取流量分类模型、特征提取规则和特征判定规则。具体的,步骤214可以由流量判定系统100(如知识库调取模块114)执行。
在一些实施例中,对于不同的业务模式,其所对应的流量分类模型以及特征提取规则和特征判定规则可以相同或不同。在一些实施例中,系统100(如训练模块180)可以针对不同的业务模式,分别训练对应的流量分类模型(如根据流量分类模型训练方法500)。系统100(如规则判定模块190)还可以针对不同的业务模式建立对应的特征判定规则和特征判定规则(如通过规则建立方法600)。不同业务模式对应的模型和规则可以存储在知识库290中;知识库调取模块114可以基于业务模式从知识库290中调取对应的流量分类模型292、特征提取规则294和特征判定规则296。在一些实施例中,知识库调取模块114可以根据业务模式的等级调取流量分类模型、特征提取规则和特征判定规则。关于调取流量分类模型、特征提取规则和特征判定规则的更多细节可参考知识库调取模块114的相关说明。
步骤250,基于第一初步类型和特征类型,判定第一流量的流量类型。具体的,步骤250可以由网络流量判定系统100(如流量类型判定模块140)执行。
在一些实施例中,流量类型判定模块140可以通过比较第一初步类型和特征类型来判定第一流量的流量类型。具体的,流量类型判定模块140可以判定第一流量的流量类型为第一初步类型和特征类型中共有的流量类型。当第一初步类型和特征类型中没有共有的流量类型时,流量类型判定模块140可以判定第一流量为待测定流量270。关于判定第一流量的流量类型的更多细节可参考流量类型判定模块140的相关说明。
通过流量分类模型以及特征提取规则和特征判定规则共同对第一流量所属的流量类型进行判定,能够有效提升流量(尤其是加密流量)判定的准确度。
当流量类型判定模块140判定出第一流量的流量类型后,系统100可以继续执行步骤260。与此同时,系统100可以将第一流量分配到已判定流量280中(如存储到已判定流量的数据库中)。
步骤260,基于第一流量的流量类型对第一流量采取相应的策略。具体的,步骤260可以由网络流量判定系统100(如策略执行模块150)执行。
在一些实施例中,对第一流量采取的策略可以包括但不限于:允许访问、不允许访问、带宽限制、安全级别限制、网络流量优先级设置、上报、告警、特别标记和异常报告等一种或多种的组合。在一些实施例中,策略执行模块150可以基于第一流量的流量类型,按照预设的对应规则对第一流量采取相应的策略。例如,流量类型A可以对应第一策略,流量类型B可以对应第二策略,依次类推。在一些实施例中,策略执行模块150可以基于业务模式和/或第一流量的流量类型,对第一流量采取相应的策略。在一些实施例中,策略执行模块150还可以基于第一流量的流量类型以及第一流量的数据大小对第一流量采取相应的策略。在一些实施例中,策略执行模块150还可以对属于特定流量类型(如高危流量、敏感流量等)的第一流量采取数据提取、数据检测等策略。关于对第一流量采取相应的策略的更多细节可参考策略执行模块150的相关说明。
在一些实施例中,上述步骤210-260可以为在线执行步骤,能够对第一流量实现在线判定。在一些实施例中,当通过上述步骤判定出第一流量为待测定流量270或已判定流量280后,系统100可以进一步对待测定流量270和/或已判定流量280进行处理,以更新知识库290中的流量分类模型292、特征提取规则294和/或特征判定规则296。
步骤272,获取多条待测定流量。具体的,步骤272可以由网络流量判定系统100(如待测定流量判定模块160)执行。
在一些实施例中,待测定流量270可以包括无法判定第一初步类型、特征类型和/或流量类型的第一流量。在一些实施例中,待测定流量判定模块160可以获取一段时间内(如一天、一周、一个月等)累积的多条待测定流量。在一些实施例中,待测定流量270可以包括已经判定第一初步类型、特征类型和/或流量类型的第一流量。关于获取多条待测定流量的更多细节可参考待测定流量判定模块160的相关说明。
步骤274,基于聚类模型,判定所述多条待测定流量是否为已知流量类型。具体的,步骤274可以由网络流量判定系统100(如待测定流量判定模块160)执行。
在一些实施例中,待测定流量判定模块160可以利用无监督聚类模型对多条待测定流量进行聚类,以获得至少一个待定流量组;并根据特征提取规则和特征判定规则判定待定流量组是否为已知流量类型。在一些实施例中,待测定流量判定模块160可以获取多种流量类型,基于所述多种流量类型,利用有监督聚类模型判定所述多条待测定流量是否属于所述多种流量类型;并将所述多条待测定流量中不属于任意一种流量类型的流量判定为未知流量276。关于待测定流量判定方法的更多细节可以参见图5-6及其相关描述。
通过步骤274,系统100能够对多条待测定流量进行再次判定,从而将待测定流量区分为已判定流量280或未知流量276,有效降低系统误判定的概率。此外,系统100可以进一步通过对未知流量的处理以更新知识库290,从而优化知识库290中的流量分类模型292、特征提取规则294和/或特征判定规则296,进而提升对后续流量判定的准确率。
步骤278,获取未知流量的特征提取结果和流量分类结果。具体的,步骤278可以由网络流量判定系统100(如更新模块170)执行。
在一些实施例中,对于未知流量276,系统100可以通知运营人员(如网络流量领域的专家)介入,运营人员可以对未知流量进行特征提取和分类。在一些实施例中,更新模块170可以获取未知流量的特征提取结果和流量分类结果,并根据所述未知流量的特征提取结果和流量分类结果,更新知识库290中的流量分类模型292、特征提取规则294和/或特征判定规则296。在一些实施例中,未知流量的特征提取结果和流量分类结果可以是人工对未知流量进行特征提取和流量分类的结果。通过获取人工对未知流量的特征提取结果和分类结果并更新知识库,能够有效补充和/或校正知识库中的流量分类模型292、特征提取规则294和/或特征判定规则296,可以解决系统100对流量判定的不确定性,保障未来的判定精度和持续性。在一些实施例中,未知流量的特征提取结果和流量分类结果也可以通过机器(如相应的模型)获得。关于获取未知流量的特征提取结果和流量分类结果并更新知识库的更多细节可参考更新模块170的相关说明。
在一些实施例中,对于已判定流量280,系统100可以进一步对其进行深度特征提取,并利用深度提取的特征对知识库290中的特征提取规则294和特征判定规则296进行更新。关于对已判定流量280进行深度特征提取并更新知识库290的细节可以参见下述步骤282-286。
步骤282,获取流量类型相同的多条已判定流量。具体的,步骤282可以由网络流量判定系统100(如更新模块170)执行。
在一些实施例中,如图4所示,已判定流量280可以包括:经由流量类型判定模块140判定出流量类型的第一流量,以及由待测定流量判定模块160所判定出的已判定流量。在一些实施例中,已判定流量280还可以包括流量类型所对应的历史流量。在一些实施例中,更新模块170可以获取一个或多个流量类型中每个流量下的多条已判定流量。
步骤284,对多条已判定流量进行聚类,并基于相似度获取多条已判定流量中的至少部分流量。具体的,步骤284可以由网络流量判定系统100(如更新模块170)执行。
在一些实施例中,更新模块170可以通过无监督聚类模型对多条已判定流量进行聚类。在此基础上,更新模块170可以计算每一类中已判定流量之间的相似度。进一步,更新模块170可以获取相似度高的一类或多类已判定流量(即所述至少部分流量)以执行步骤286。
步骤286,提取该至少部分流量的特征数据。具体的,步骤286可以由网络流量判定系统100(如更新模块170)执行。
在一些实施例中,更新模块170(如特征提取规则更新单元174和特征判定规则更新单元176)可以从该至少部分流量中提取特征数据,并基于所提取的该至少部分流量的特征数据,更新知识库290中的特征提取规则294和/或特征判定规则296。关于获取已判定流量、对多条已判定流量进行聚类并获取至少部分流量、提取至少部分流量的特征数据以及更新知识库290的更多细节可参考更新模块170的相关说明。
应当注意的是,上述有关网络流量判定方法200的描述仅仅是为了示例和说明,而不限定本申请的适用范围。对于本领域技术人员来说,在本申请的指导下可以对网络流量判定方法200进行各种修正和改变。然而,这些修正和改变仍在本申请的范围之内。例如,步骤220与步骤230可以为独立执行的两个步骤,两者可以顺序执行或并行执行。又例如,步骤212和214可以省略,系统100可以不对第一流量的所属的业务模式进行判定。再例如,对于仅包含一种流量类型的业务模式,系统100可以跳过判定第一流量的流量类型的步骤(如步骤220-250),直接根据第一流量所属的业务模式对第一流量执行策略。又例如,对于部分业务模式(如低危业务模式)来说,系统100对第一流量的判定精度要求不高,此时系统100可以省略步骤230-250,仅根据流量分类模型判定第一流量的流量类型。在一些实施例中,当系统100运行一段时间后,系统100对第一流量的判定率会提高,当系统100对第一流量的判定率大于设定阈值(如95%、98%、99%等)时,步骤278可以省略。在一些实施例中,当特征提取规则294和特征判定规则296对第一流量的判定率大于设定阈值(如95%、98%、99%等)时,系统100可以仅采集待测定流量,而无需采集已判定流量对知识库进行更新。
图5所示为一些实施例所示的待测定流量判定方法的示例性流程图。该待测定流量判定方法300可以由网络流量判定系统100(如待测定流量判定模块160)实现。如图5所示,待测定流量判定方法300可以包括:
步骤272,获取多条待测定流量270。
在一些实施例中,待测定流量270可以包括无法判定第一初步类型、特征类型和/或流量类型的第一流量。在一些实施例中,待测定流量判定模块160可以获取一段时间内(如一天、一周、一个月等)累积的多条待测定流量。关于获取多条待测定流量的更多细节可参考待测定流量判定模块160的相关说明。
步骤310,利用无监督聚类模型对所述多条待测定流量进行聚类,以获得至少一个待定流量组。
在一些实施例中,无监督聚类模型可以包括但不限于K均值聚类模型、分层聚类模型、高斯聚类模型等一种或多种的组合。通过步骤310,待测定流量判定模块160可以将多条待测定流量中的相似流量聚在一起,以形成待定流量组。
步骤320,根据特征提取规则和特征判定规则判定待定流量组是否为已知流量类型。
在一些实施例中,待测定流量判定模块160可以根据特征提取规则提取待定流量组中各条流量的特征数据(如预设位置的字符)。然后待测定流量判定模块160可以基于各条流量的特征数据,根据特征判定规则判定各条流量分别对应的流量类型。在一些实施例中,当根据特征提取规则和特征判定规则判定待定流量组中的所有流量均属于某一流量类型(如第一已知流量类型)时,则待测定流量判定模块160可以判定待定流量组为已判定流量。在一些实施例中,当根据特征提取规则和特征判定规则判定待定流量组中至少两条流量属于不同的流量类型时,待测定流量判定模块160可以判定待定流量组为未知流量。在一些实施例中,当根据特征提取规则和特征判定规则无法判定待定流量组中至少一条流量的流量类型时,待测定流量判定模块160可以判定待定流量组为未知流量。
由于待测定流量270中可能有部分流量是漏判定的,通过对待测定流量进行无监督聚类并基于规则进行判定,能够有效分拣出待测定流量中能够被判定出来的已判定流量。进而能够提升对未知流量276和已判定流量280的处理效率。
图6所示为一些实施例所示的待测定流量判定方法的示例性流程图。该待测定流量判定方法400可以由网络流量判定系统100(如待测定流量判定模块160)实现。如图6示,待测定流量判定方法400可以包括:
步骤272,获取多条待测定流量。
在一些实施例中,待测定流量270可以包括无法判定第一初步类型、特征类型和/或流量类型的第一流量。在一些实施例中,待测定流量判定模块160可以获取一段时间内(如一天、一周、一个月等)累积的多条待测定流量。关于获取多条待测定流量的更多细节可参考待测定流量判定模块160的相关说明。
步骤410,获取多种流量类型。
在一些实施例中,待测定流量判定模块160可以获取知识库290中所有的流量类型。在一些实施例中,待测定流量判定模块160也可以获取知识库290中与多条待测定流量对应的业务模式相关的所有流量类型。
步骤420,基于所述多种流量类型,利用有监督聚类模型判定所述多条待测定流量是否属于所述多种流量类型。
在一些实施例中,待测定流量判定模块160可以计算每条待测定流量与多种流量类型的相似度,并基于相似度判定是否将待测定流量归类到一种或多种流量类型中。例如,待测定流量判定模块160可以计算待测定流量与某个流量类型下多条流量的相似度的平均值,并以平均值作为该待测定流量与该流量类型的相似度。又例如,待测定流量判定模块160可以计算待测定流量的特征数据(如预设位置的字符)与某个流量类型下预设位置的字符(可以从特征提取规则和特征判定规则中判定)的相似度。在一些实施例中,当待测定流量与某个流量类型的相似度大于设定阈值(如70%、80%等)时,待测定流量判定模块160可以判定该待测定流量属于该流量类型;与此同时,该待测定流量被视为已判定流量280。在一些实施例中,有监督聚类模型可以为机器学习模型,该机器学习模型可以对多条待测定流量进行分类(如分类到一种或多种流量类型中)。机器学习模型可以包括但不限于神经网络模型、支持向量机模型、k近邻模型、决策树模型等一种或多种的组合。
步骤430,将所述多条待测定流量中不属于任意一种流量类型的流量判定为未知流量。
在一些实施例中,当待测定流量不属于任意一种流量类型时,待测定流量判定模块160可以判定该待测定流量为未知流量276。
图7所示为一些实施例所示的流量分类模型训练方法的示例性流程图。该流量分类模型训练方法可以由网络流量判定系统100(如训练模块180)实现。如图7所示,流量分类模型训练方法500可以包括:
步骤510,采集一段时间内的多条样本流量。
在一些实施例中,训练模块180可以采集在一段时间(如一天、一周、一个月等)内,互联网数据中心(或服务器、云平台等)所接收到的流量作为样本流量。
步骤520,获取所述多条样本流量的分类结果,所述分类结果包括所述多条样本流量分别对应的流量类型。
在一些实施例中,运营人员(如网络流量领域的专家)可以对多条样本流量进行分类,为每条样本流量判定对应的流量类型。在此过程中,运营人员也可以判定出流量类型的种类和数量。
步骤530,以多条样本流量作为输入,以每条样本流量对应的流量类型作为标签对原始机器学习模型进行训练,以获得初始流量分类模型。
在一些实施例中,原始机器学习模型可以包括但不限于神经网络模型、支持向量机模型、k近邻模型、决策树模型等一种或多种的组合。其中,神经网络模型可以包括卷积神经网络(CNN)、循环神经网络(RNN)、多层神经网络(MLP)、对抗神经网络(GAN)等一种或多种的组合。
在一些实施例中,针对多个不同的业务模式,训练模块180可以分别采用流量分类模型训练方法500训练获得对应的初始流量分类模型。具体的,在步骤510中,训练模块180可以采集一段时间内某个具体业务模式下的多条样本流量。在步骤520中,训练模块180可以获取所述多条样本流量的分类结果,该分类结果可以与该具体业务模式相关。例如,可以根据业务模式的重要程度和关注程度将多条样本流量分成两种或多种流量类型。在步骤530中,训练模块180可以以多条样本流量作为输入,以每条样本流量对应的流量类型作为标签对原始机器学习模型进行训练,以获得与该具体业务模式对应的初始流量分类模型。关于流量分类模型训练的更多细节可以参考训练模块180的相关说明。
图8所示为一些实施例所示的规则建立方法的示例性流程图。该规则建立方法可以由网络流量判定系统100(如规则判定模块190)实现。如图8所示,规则建立方法600可以包括:
步骤610,采集一段时间内的多条样本流量。
在一些实施例中,规则判定模块190可以采集在一段时间(如一天、一周、一个月等)内,互联网数据中心(或服务器、云平台等)所接收到的流量作为样本流量。在一些实施例中,至少一种样本流量类型包含两种以上不同的网络协议。在一些实施例中,所述至少一种样本流量类型所包含的所述两种以上不同的网络协议中至少有一种所述网络协议需加密传输。
步骤620,对多条样本流量进行聚类,以获得多个样本流量类型。
在一些实施例中,规则判定模块190可以采用无监督聚类模型对多条样本流量进行聚类,以获得多个样本流量类型。无监督聚类模型可以包括但不限于K均值聚类模型、分层聚类模型、高斯聚类模型等一种或多种的组合。在一些实施例中,在采用无监督聚类模型对多条样本流量进行聚类时,规则判定模块190可以预设样本流量类型的数量。
步骤630,基于所述多个样本流量类型,建立初始特征提取规则和初始特征判定规则。
在一些实施例中,规则判定模块190可以基于所述多个样本流量类型的数量,判定初始特征提取规则中的预设位置的数量。在一些实施例中,预设位置的数量满足以下判定条件:通过这些数量的预设位置满足预设数据特征的情况能够区分所述多个样本流量类型。例如,当流量类型为2种时,预设位置的数量≥2。具体的,假设流量类型为A和B,预设位置包括位置1和2;当某一流量在位置1的数据特征满足预设数据特征时,可以认为该流量属于类型A;当某一流量在位置2的数据特征满足预设数据特征时,可以认为该流量属于类型B;当某一流量在位置1和2均满足预设数据特征时,可以认为该流量属于类型A和B;而当某一流量在位置1和2均不满足预设数据特征时,可以认为该流量属于待测定流量。在一些实施例中,考虑到后续流量的多样性以及规则的迭代更新,为了使所构建的规则能够对流量进行更好的判定,可以将预设位置的数据特征与预设数据特征一致的情况用于判定,而不将预设位置的数据特征与预设数据特征不一致的情况用于判定。
在一些实施例中,预设位置的数量可以为能够满足判定条件的最小数量。例如,当流量类型为20种时,预设位置的数量可以为6。具体的,可以通过从6个位置中选择3个位置的组合以用于判定流量类型。C(6,3)=20,所以通过最少6个位置即可区分出20种流量类型。在此计算过程中,考虑到C(6,2)=C(6,4)=15<20,即从6个位置中选择其他数量位置(如2位、4位)均小于选择3位所能区分的流量类型数量。而且从6个位置中不能够既选择3个位置组合又选择2个位置组合(不然会造成重复而无法唯一区分流量类型)。所以可以判定当流量类型为20种时,能够满足判定条件的最小预设位置数量为6。
在一些实施例中,规则判定模块190可以基于所判定的预设位置的数量进一步判定预设位置的起始位置和取位长度(或者起始位置和终止位置),从而判定初始特征提取规则。例如,规则判定模块190可以从每个样本流量类型下的多条样本流量中提取一个或多个位置处的数据特征,如该多条样本流量中所有流量或大部分(如60%、80%、90%等)流量在该一个或多个位置处的数据特征相同;与此同时,其他样本流量类型下的流量在该一个或多个位置处的数据特征不完全相同。
在判定了初始特征提取规则后,规则判定模块190可以进一步基于各个样本流量类型下多条样本流量的特征构建特征判定规则。在一些实施例中,初始特征提取规则中包含多个预设位置,至少一个样本流量类型对应至少一个预设位置的特征数据符合特征判定规则。在一些实施例中,至少一个样本流量类型对应至少两个预设位置的特征数据的组合符合特征判定规则。
在一些实施例中,针对多个不同的业务模式,规则判定模块190可以分别采用规则建立方法600判定对应的初始特征提取规则和初始特征判定规则。例如,在步骤610中,规则判定模块190可以采集一段时间内某个具体业务模式下的多条样本流量。在步骤620中,规则判定模块190可以根据业务模式的重要程度和关注程度设定流量类型的数量,并基于所设定的流量类型数量对多条样本流量进行聚类,以获得多个样本流量类型。在步骤630中,规则判定模块190可以基于所述多个样本流量类型,判定与该具体业务模式对应的初始特征提取规则和初始特征判定规则。
图9是一些实施例所示的网络流量判定方法的示例性流程图。该网络流量判定方法700可以由网络流量判定系统100实现。如图9所示,网络流量判定方法700可以包括:
步骤710,获取第一流量。具体的,步骤710可以由网络流量判定系统100(如获取模块110)执行。关于获取第一流量的细节可参考获取模块110的相关说明。
步骤720,根据流量判定引擎,判定第一流量的流量类型,并基于流量判定引擎的判定结果,将第一流量分为已判定流量或待测定流量。具体的,步骤720可以由网络流量判定系统100(如流量类型判定模块140)执行。
在一些实施例中,流量判定引擎可以为对流量进行判定的处理装置(如处理器、模块、单元等)。在一些实施例中,流量判定引擎可以通过知识库中的流量分类模型,和/或特征提取规则与特征判定规则,判定第一流量的流量类型。例如,流量类型判定模块140可以从知识库中调取流量分类模型,和/或特征提取规则与特征判定规则,并根据流量判定引擎判定第一流量的流量类型。在一些实施例中,当根据流量判定引擎判定出第一流量的流量类型时,流量类型判定模块140可以将第一流量分为已判定流量750;当根据流量判定引擎无法判定出第一流量的流量类型时,流量类型判定模块140可以将第一流量分为待测定流量740。
在一些实施例中,流量判定引擎可以通过流量分类模型,判定第一流量的流量类型。流量分类模型可以为训练好的机器学习模型。
在一些实施例中,流量判定引擎可以通过特征提取规则提取第一流量的特征数据并通过特征判定规则判定第一流量的特征类型。在一些实施例中,流量判定引擎可以根据第一流量的特征类型判定第一流量的流量类型。例如,第一流量的流量类型可以是第一流量的特征类型所对应(如所属于)的流量类型。
在一些实施例中,根据流量分类模型判定出的第一流量的流量类型可以作为第一初步类型;根据特征判定规则判定出第一流量的特征类型。流量判定引擎可以基于第一初步类型和特征类型,判定第一流量的流量类型。在一些实施例中,流量类型判定模块140可以通过比较第一初步类型和特征类型来判定第一流量的流量类型。具体的,流量类型判定模块140可以判定第一流量的流量类型为第一初步类型和特征类型中共有的流量类型。当第一初步类型和特征类型中没有共有的流量类型时,流量类型判定模块140可以判定第一流量为待测定流量740。关于判定第一流量的流量类型的更多细节可以参考流量类型判定模块140的相关说明。
在一些实施例中,系统100(如业务模式判定模块112)可以根据业务模式判定模型,判定第一流量对应的业务模式。系统100(如知识库调取模块114)可以基于第一流量对应的业务模式调取流量判定引擎对应的流量分类模型,和/或特征提取规则与特征判定规则。
步骤730,基于第一流量的流量类型,对所述第一流量采取相应的策略。具体的,步骤730可以由网络流量判定系统100(如策略执行模块150)执行。关于对第一流量采取相应的策略的细节可参考策略执行模块150的相关说明。
步骤741,获取多条待测定流量。具体的,步骤741可以由网络流量判定系统100(如待测定流量判定模块160)执行。
在一些实施例中,待测定流量740可以包括无法判定流量类型的第一流量。在一些实施例中,待测定流量判定模块160可以获取一段时间内(如一天、一周、一个月等)累积的多条待测定流量。关于获取多条待测定流量的更多细节可参考待测定流量判定模块160的相关说明。
步骤742,基于聚类模型,判定所述多条待测定流量是否为已知流量类型。具体的,步骤742可以由网络流量判定系统100(如待测定流量判定模块160)执行。
在一些实施例中,待测定流量判定模块160可以利用无监督聚类模型对多条待测定流量进行聚类,以获得至少一个待定流量组;并根据特征提取规则和特征判定规则判定待定流量组是否为已知流量类型。在一些实施例中,待测定流量判定模块160可以获取多种流量类型,基于所述多种流量类型,利用有监督聚类模型判定所述多条待测定流量是否属于所述多种流量类型;并将所述多条待测定流量中不属于任意一种流量类型的流量判定为未知流量743。关于待测定流量判定方法的更多细节可以参见图5-6及其相关描述。
通过步骤742,系统100能够对多条待测定流量进行再次判定,从而将待测定流量区分为已判定流量750或未知流量743,有效降低系统误判定的概率。此外,系统100可以进一步通过对未知流量的处理以更新知识库,从而优化知识库中的流量分类模型、特征提取规则和/或特征判定规则,进而提升对后续流量判定的准确率。
步骤744,获取未知流量的特征提取结果和流量分类结果。具体的,步骤744可以由网络流量判定系统100(如更新模块170)执行。
在一些实施例中,未知流量的特征提取结果和流量分类结果可以是人工对未知流量进行特征提取和流量分类的结果。在一些实施例中,未知流量的特征提取结果和流量分类结果也可以通过机器(如相应的模型)获得。
步骤745,根据未知流量的特征提取结果和流量分类结果,更新知识库。具体的,步骤745可以由网络流量判定系统100(如更新模块170)执行。
通过获取未知流量的特征提取结果和分类结果并更新知识库,能够有效补充和/或校正知识库中的流量分类模型、特征提取规则和/或特征判定规则,可以解决系统100对流量判定的不确定性,保障未来的判定精度和持续性。关于获取未知流量的特征提取结果和流量分类结果并更新知识库的更多细节可参考更新模块170的相关说明。
步骤751,获取流量类型相同的多条已判定流量。具体的,步骤751可以由网络流量判定系统100(如更新模块170)执行。
在一些实施例中,已判定流量750可以包括:根据流量判定引擎判定出流量类型的第一流量,以及由待测定流量判定模块160所判定出的已判定流量。在一些实施例中,已判定流量750还可以包括流量类型所对应的历史流量。在一些实施例中,更新模块170可以获取一个或多个流量类型中每个流量下的多条已判定流量。
步骤752,基于多条已判定流量中至少部分流量的特征数据,更新流量判定引擎所对应的知识库。具体的,步骤752可以由网络流量判定系统100(如更新模块170)执行。
在一些实施例中,更新模块170可以对多条已判定流量进行聚类,并基于相似度获取多条已判定流量中的至少部分流量。更新模块170(如特征提取规则更新单元174和特征判定规则更新单元176)可以从该至少部分流量中提取特征数据,并基于所提取的该至少部分流量的特征数据,更新流量判定引擎所对应的知识库。例如,更新模块170可以更新知识库中的特征提取规则和/或特征判定规则。关于获取已判定流量以及更新知识库的更多细节可参考更新模块170的相关说明。
图10是一些实施例所示的网络流量判定方法的示例性流程图。该网络流量判定方法800可以由网络流量判定系统100实现。如图10所示,网络流量判定方法800可以包括:
步骤810,获取第一流量。具体的,步骤810可以由网络流量判定系统100(如获取模块110)执行。关于获取第一流量的细节可参考获取模块110的相关说明。
步骤820,根据业务模式判定模型,判定所述第一流量对应的业务模式。具体的,步骤820可以由流量判定系统100(如业务模式判定模块112)执行。关于判定第一流量对应的业务模式的细节可参考业务模式判定模块112的相关说明。
步骤830,基于业务模式调取流量分类模型。具体的,步骤830可以由流量判定系统100(如知识库调取模块114)执行。
在一些实施例中,对于不同的业务模式,其所对应的流量分类模型可以相同或不同。不同业务模式对应的流量分类模型可以存储在知识库中;知识库调取模块114可以基于业务模式从知识库中调取对应的流量分类模型。关于调取流量分类模型的更多细节可参考知识库调取模块114的相关说明。
步骤840,基于流量分类模型判定第一流量的流量类型。具体的,步骤840可以由网络流量判定系统100(如流量类型判定模块140)执行。关于判定第一流量的流量类型的细节可参考流量类型判定模块140的相关说明。
步骤850,基于业务模式调取特征提取规则和特征判定规则。具体的,步骤850可以由流量判定系统100(如知识库调取模块114)执行。
在一些实施例中,对于不同的业务模式,其所对应的特征提取规则和特征判定规则可以相同或不同。不同业务模式对应的特征提取规则和特征判定规则可以存储在知识库中;知识库调取模块114可以基于业务模式从知识库中调取对应的特征提取规则和特征判定规则。关于调取特征提取规则和特征判定规则的更多细节可参考知识库调取模块114的相关说明。
步骤860,基于特征提取规则和特征判定规则判定第一流量的流量类型。具体的,步骤860可以由网络流量判定系统100(如流量类型判定模块140)执行。
在一些实施例中,系统100(如特征提取模块120)可以根据特征提取规则在第一流量的预设位置获取第一流量的特征数据。系统100(如特征判定模块130)可以基于第一流量的特征数据,根据特征判定规则判定第一流量的特征类型。系统100(如流量类型判定模块140)可以根据特征判定规则所判定出第一流量的特征类型,判定第一流量的流量类型。例如,流量类型判定模块140可以将特征类型所对应(如所属于)的流量类型作为第一流量的流量类型。关于判定第一流量的流量类型的更多细节可参考流量类型判定模块140的相关说明。
步骤870,基于业务模式和/或第一流量的流量类型,对第一流量采取相应的策略。具体的,步骤870可以由网络流量判定系统100(如策略执行模块150)执行。
在一些实施例中,策略执行模块150可以仅基于第一流量所属的业务模式(而不论第一流量的流量类型是什么)对第一流量采取相应的策略。在一些实施例中,策略执行模块150可以基于第一流量所属的业务模式和第一流量的流量类型,对第一流量采取相应的策略。当第一流量分别属于同一业务模式下的不同流量类型、不同业务模式下的相同流量类型和不同业务模式下的不同流量类型时,第一流量对应的策略可以相同、部分相同或均不相同。关于对第一流量采取相应的策略的更多细节可参考策略执行模块150的相关说明。
图11是根据一些实施例所示的网络流量判定方法的示例性流程图。该网络流量判定方法900可以由网络流量判定系统100实现。如图11所示,网络流量判定方法900可以包括:
步骤910,获取第一流量。具体的,步骤910可以由网络流量判定系统100(如获取模块110)执行。关于获取第一流量的细节可参考获取模块110的相关说明。
步骤920,获取特征提取规则和特征判定规则。具体的,步骤920可以由网络流量判定系统100(如知识库调取模块114)执行。
在一些实施例中,知识库调取模块114可以从知识库中调取特征提取规则和特征判定规则。在一些实施例中,知识库调取模块114可以基于第一流量的业务模式调取对应的特征提取规则和特征判定规则。在一些实施例中,特征提取规则和特征判定规则可以根据规则建立方法600建立而成。关于获取特征提取规则和特征判定规则的更多细节可参考知识库调取模块114的相关说明。
步骤930,根据特征提取规则在第一流量的预设位置获取第一流量的特征数据。具体的,步骤930可以由网络流量判定系统100(如特征提取模块120)执行。关于提取第一流量的特征数据的更多细节可参考特征提取模块120的相关说明。
步骤940,基于第一流量的特征数据,根据特征判定规则判定第一流量的流量类型。具体的,步骤940可以由网络流量判定系统100(如特征判定模块130)执行。在一些实施例中,特征判定模块130可以根据特征判定规则判定第一流量的特征类型。在一些实施例中,系统100(如特征判定模块130或流量类型判定模块140)可以将第一流量的特征类型对应的流量类型作为第一流量的流量类型。关于根据特征判定规则判定第一流量的流量类型的更多细节可以参考特征判定模块130的相关说明。
步骤950,基于第一流量的流量类型,对第一流量采取相应的策略。具体的,步骤950可以由网络流量判定系统100(如策略执行模块150)执行。关于对第一流量采取相应的策略的细节可参考策略执行模块150的相关说明。
图12是一些实施例所示的网络服务系统的应用场景示意图。
在一些实施例中,网络服务系统1000可以应用于交通服务系统、地图服务系统、导航系统、运输系统、金融服务系统等一种或多种。例如,该网络服务系统1000可以应用于提供互联网服务的线上服务平台。例如,该网络服务系统1000可以应用于提供运输服务的线上运输服务平台。在一些实施例中,该网络服务系统1000可以应用于网约车服务,例如出租车呼叫、快车呼叫、专车呼叫、小巴呼叫、拼车、公交服务、司机雇佣和接送服务等。在一些实施例中,该网络服务系统1000还可以应用于代驾服务、快递、外卖等。具体的,该网络服务系统1000可以是一个线上服务平台,包含服务器1010、网络1020、终端1030以及数据库1040。该服务器1010可以包含处理设备1012。
在一些实施例中,服务器1010可以用于处理与网络服务相关的信息和/或数据。服务器1010可以是独立的服务器或者服务器组。该服务器组可以是集中式的或者分布式的(如:服务器1010可以是分布系统)。在一些实施例中,该服务器1010可以是区域的或者远程的。服务器1010可以通过网络1020访问存储于终端1030、数据库1040中的信息和/或资料。服务器1010可以直接与终端1030、数据库1040连接以访问存储于其中的信息和/或资料。服务器1010也可以接收终端1030通过网络1020访问的流量数据。在一些实施例中,服务器1010可在云平台上执行。例如,该云平台可包括私有云、公共云、混合云、社区云、分散式云、内部云等中的一种或其任意组合。在一些实施例中,服务器1010可以为互联网数据中心(IDC)。
在一些实施例中,服务器1010可包含处理设备1012。该处理设备1012可处理与网络服务有关的数据和/或信息。在一些实施例中,处理设备1012可以执行一个或多个本申请中描述的功能。例如,处理设备1012可以执行网络流量判定系统100的一个或多个功能。在一些实施例中,处理设备1012可包含一个或多个子处理设备(例如,单芯处理设备或多核多芯处理设备)。仅仅作为范例,处理设备1012可包含中央处理器(CPU)、专用集成电路(ASIC)、专用指令处理器(ASIP)、图形处理器(GPU)、物理处理器(PPU)、数字信号处理器(DSP)、现场可编程门阵列(FPGA)、可编辑逻辑电路(PLD)、控制器、微控制器单元、精简指令集电脑(RISC)、微处理器等或以上任意组合。
网络1020可促进数据和/或信息的交换。在一些实施例中,网络服务系统1000中的一个或多个组件(例如,服务器1010、终端1030、数据库1040)可通过网络1020发送数据和/或信息给网络服务系统1000中的其他组件。在一些实施例中,网络1020可以是任意类型的有线或无线网络。例如,网络1020可包括缆线网络、有线网络、光纤网络、电信网络、内部网络、网际网络、区域网络(LAN)、广域网络(WAN)、无线区域网络(WLAN)、都会区域网络(MAN)、公共电话交换网络(PSTN)、蓝牙网络、ZigBee网络、近场通讯(NFC)网络、蜂窝网络等或以上任意组合。在一些实施例中,网络1020可以包括一个或多个网络进出点。例如,网络1020可包含有线或无线网络进出点,如基站和/或网际网络交换点1020-1、1020-2、…,通过这些进出点,网络服务系统1000的一个或多个组件可连接到网络1020上以交换数据和/或信息。在一些实施例中,网络1020可以包括一个或多个网络设备。网络设备可以包括但不限于防火墙、路由器、网关、交换机、集线器、桥、反向代理、代理服务器、安全设备、入侵检测设备、负载均衡器等,或者类似的设备。在一些实施例中,由终端1030发送的流量数据可以经过网络1020中的一个或多个网络设备传输至服务器1010。在一些实施例中,网络1020中的一个或多个网络设备可以对流量数据执行特定的操作(如允许访问、不允许访问、标记、拦截、清除等)。
在一些实施例中,终端1030的用户可以为任意的人或机器等。在一些实施例中,终端1030可包括移动装置1030-1、平板电脑1030-2、笔记本电脑1030-3、机动车内建装置1030-4等中的一种或其任意组合。在一些实施例中,移动装置1030-1可包括可穿戴装置、智能行动装置、虚拟实境装置、增强实境装置等或其任意组合。在一些实施例中,可穿戴装置可包括智能手环、智能鞋袜、智能眼镜、智能头盔、智能手表、智能衣物、智能背包、智能配饰等或其任意组合。在一些实施例中,智能行动装置可包括智能电话、个人数字助理(PDA)、游戏装置、导航装置、POS装置等或其任意组合。在一些实施例中,虚拟实境装置和/或增强实境装置可包括虚拟实境头盔、虚拟实境眼镜、虚拟实境眼罩、增强实境头盔、增强实境眼镜、增强实境眼罩等或以上任意组合。在一些实施例中,机动车内建装置1030-4可以包括车载导航仪、车载定位仪、行车记录仪等或其任意组合。在一些实施例中,终端1030可包括具有定位功能的装置,以确定用户和/或终端1030的位置。在一些实施例中,终端1030可以向服务器1010发送流量数据。
数据库1040可存储资料和/或指令。在一些实施例中,数据库1040可存储从终端1030获取的资料。在一些实施例中,数据库1040可存储供服务器1010执行或使用的信息和/或指令,以执行本申请中描述的示例性方法。在一些实施例中,数据库1040可以存储流量分类模型、特征提取规则、特征判定规则等。在一些实施例中,数据库1040还可以存储待测定流量、已判定流量、未知流量等。在一些实施例中,数据库1040可包括大容量存储器、可移动存储器、挥发性读写存储器(例如,随机存取存储器RAM)、只读存储器(ROM)等或以上任意组合。在一些实施例中,数据库1040可在云平台上实现。例如,该云平台可包括私有云、公共云、混合云、社区云、分散式云、内部云等或以上任意组合。
在一些实施例中,数据库1040可与网络1020连接以与网络服务系统1000的一个或多个组件(例如,服务器1010、终端1030等)通讯。网络服务系统1000的一个或多个组件可通过网络1020访问存储于数据库1040中的资料或指令。例如,服务器1010可以从数据库1040中调取流量分类模型、特征提取规则、特征判定规则等。在一些实施例中,数据库1040可直接与网络服务系统1000中的一个或多个组件(如,服务器1010、终端1030)连接或通讯。在一些实施例中,数据库1040可以是服务器1010的一部分。
本申请实施例可能带来的有益效果包括但不限于:(1)能够提升加密流量的判定率和/或判定准确度;(2)能够对海量流量进行高效判定;(3)能够根据不同业务模式采取不同的流量判定方法,流量判定的适用性更强、效率更高;(4)流量判定系统能够自动进行迭代更新,不断提升系统的判定率和/或判定准确度;(5)能够高效准确地判定出异常流量,从而保障网络安全。需要说明的是,不同实施例可能产生的有益效果不同,在不同的实施例里,可能产生的有益效果可以是以上任意一种或几种的组合,也可以是其他任何可能获得的有益效果。
上文已对基本概念做了描述,显然,对于本领域技术人员来说,上述详细披露仅仅作为示例,而并不构成对本申请的限定。虽然此处并没有明确说明,本领域技术人员可能会对本申请进行各种修改、改进和修正。该类修改、改进和修正在本申请中被建议,所以该类修改、改进、修正仍属于本申请示范实施例的精神和范围。
同时,本申请使用了特定词语来描述本申请的实施例。如“一个实施例”、“一实施例”、和/或“一些实施例”意指与本申请至少一个实施例相关的某一特征、结构或特点。因此,应强调并注意的是,本说明书中在不同位置两次或多次提及的“一实施例”或“一个实施例”或“一个替代性实施例”并不一定是指同一实施例。此外,本申请的一个或多个实施例中的某些特征、结构或特点可以进行适当的组合。
此外,本领域技术人员可以理解,本申请的各方面可以通过若干具有可专利性的种类或情况进行说明和描述,包括任何新的和有用的工序、机器、产品或物质的组合,或对他们的任何新的和有用的改进。相应地,本申请的各个方面可以完全由硬件执行、可以完全由软件(包括固件、常驻软件、微码等)执行、也可以由硬件和软件组合执行。以上硬件或软件均可被称为“数据块”、“模块”、“引擎”、“单元”、“组件”或“系统”。此外,本申请的各方面可能表现为位于一个或多个计算机可读介质中的计算机产品,该产品包括计算机可读程序编码。
计算机存储介质可能包含一个内含有计算机程序编码的传播数据信号,例如在基带上或作为载波的一部分。该传播信号可能有多种表现形式,包括电磁形式、光形式等,或合适的组合形式。计算机存储介质可以是除计算机可读存储介质之外的任何计算机可读介质,该介质可以通过连接至一个指令执行系统、装置或设备以实现通讯、传播或传输供使用的程序。位于计算机存储介质上的程序编码可以通过任何合适的介质进行传播,包括无线电、电缆、光纤电缆、RF、或类似介质,或任何上述介质的组合。
本申请各部分操作所需的计算机程序编码可以用任意一种或多种程序语言编写,包括面向对象编程语言如Java、Scala、Smalltalk、Eiffel、JADE、Emerald、C++、C#、VB.NET、Python等,常规程序化编程语言如C语言、Visual Basic、Fortran 2003、Perl、COBOL 2002、PHP、ABAP,动态编程语言如Python、Ruby和Groovy,或其他编程语言等。该程序编码可以完全在用户计算机上运行、或作为独立的软件包在用户计算机上运行、或部分在用户计算机上运行部分在远程计算机运行、或完全在远程计算机或服务器上运行。在后种情况下,远程计算机可以通过任何网络形式与用户计算机连接,比如局域网(LAN)或广域网(WAN),或连接至外部计算机(例如通过因特网),或在云计算环境中,或作为服务使用如软件即服务(SaaS)。
此外,除非权利要求中明确说明,本申请所述处理元素和序列的顺序、数字字母的使用、或其他名称的使用,并非用于限定本申请流程和方法的顺序。尽管上述披露中通过各种示例讨论了一些目前认为有用的发明实施例,但应当理解的是,该类细节仅起到说明的目的,附加的权利要求并不仅限于披露的实施例,相反,权利要求旨在覆盖所有符合本申请实施例实质和范围的修正和等价组合。例如,虽然以上所描述的系统组件可以通过硬件设备实现,但是也可以只通过软件的解决方案得以实现,如在现有的服务器或移动设备上安装所描述的系统。
同理,应当注意的是,为了简化本申请披露的表述,从而帮助对一个或多个发明实施例的理解,前文对本申请实施例的描述中,有时会将多种特征归并至一个实施例、附图或对其的描述中。但是,这种披露方法并不意味着本申请对象所需要的特征比权利要求中提及的特征多。实际上,实施例的特征要少于上述披露的单个实施例的全部特征。
一些实施例中使用了描述成分、属性数量的数字,应当理解的是,此类用于实施例描述的数字,在一些示例中使用了修饰词“大约”、“近似”或“大体上”来修饰。除非另外说明,“大约”、“近似”或“大体上”表明所述数字允许有±20%的变化。相应地,在一些实施例中,说明书和权利要求中使用的数值参数均为近似值,该近似值根据个别实施例所需特点可以发生改变。在一些实施例中,数值参数应考虑规定的有效数位并采用一般位数保留的方法。尽管本申请一些实施例中用于确认其范围广度的数值域和参数为近似值,在具体实施例中,此类数值的设定在可行范围内尽可能精确。
针对本申请引用的每个专利、专利申请、专利申请公开物和其他材料,如文章、书籍、说明书、出版物、文档等,特此将其全部内容并入本申请作为参考。与本申请内容不一致或产生冲突的申请历史文件除外,对本申请权利要求最广范围有限制的文件(当前或之后附加于本申请中的)也除外。需要说明的是,如果本申请附属材料中的描述、定义、和/或术语的使用与本申请所述内容有不一致或冲突的地方,以本申请的描述、定义和/或术语的使用为准。
最后,应当理解的是,本申请中所述实施例仅用以说明本申请实施例的原则。其他的变形也可能属于本申请的范围。因此,作为示例而非限制,本申请实施例的替代配置可视为与本申请的教导一致。相应地,本申请的实施例不仅限于本申请明确介绍和描述的实施例。
Claims (26)
1.一种特征判定规则建立方法,其特征在于,包括:
采集一段时间内的多条样本流量;
对所述多条样本流量进行聚类,以获得多个样本流量类型;
基于所述多个样本流量类型,建立初始特征提取规则和初始特征判定规则,其中,至少基于所述多个样本流量类型的数量,判定所述初始特征提取规则中的预设位置。
2.如权利要求1所述的特征判定规则建立方法,其特征在于,至少一种样本流量类型包含两种以上不同的网络协议。
3.如权利要求2所述的特征判定规则建立方法,其特征在于,所述至少一种样本流量类型所包含的所述两种以上不同的网络协议中至少有一种所述网络协议需加密传输。
4.如权利要求1所述的特征判定规则建立方法,其特征在于,所述初始特征提取规则中包含多个预设位置,至少一个样本流量类型对应至少一个预设位置的特征数据符合特征判定规则。
5.如权利要求4所述的特征判定规则建立方法,其特征在于,所述至少一个样本流量类型对应至少两个预设位置的特征数据的组合符合特征判定规则。
6.如权利要求1所述的特征判定规则建立方法,其特征在于,所述方法还包括:
针对多个不同的业务模式,分别采用所述规则建立方法建立对应的初始特征提取规则和初始特征判定规则。
7.一种网络流量判定方法,其特征在于,包括:
获取第一流量;
获取特征提取规则和特征判定规则,所述特征提取规则和所述特征判定规则至少根据权利要求1-6中任一项所述的特征判定规则建立方法建立而成;
根据所述特征提取规则在第一流量的预设位置获取所述第一流量的特征数据;
基于所述第一流量的特征数据,根据所述特征判定规则判定所述第一流量的流量类型。
8.如权利要求7所述的网络流量判定方法,其特征在于,所述获取特征提取规则和特征判定规则包括:
根据业务模式判定模型,判定所述第一流量对应的业务模式;
基于所述业务模式调取与所述业务模式相应的所述特征提取规则和所述特征判定规则。
9.如权利要求7所述的网络流量判定方法,其特征在于,所述方法还包括:
基于所述第一流量的流量类型,对所述第一流量采取相应的策略。
10.如权利要求8或9所述的网络流量判定方法,其特征在于,所述策略包括以下中的至少一种:允许访问、不允许访问、上报、告警、特别标记和异常报告。
11.如权利要求7所述的网络流量判定方法,其特征在于,所述方法还包括:
获取多条待测定流量,其中,所述待测定流量包括无法判定流量类型的所述第一流量;
基于聚类模型,判定所述多条待测定流量是否为已知流量类型;
获取未知流量的特征提取结果和流量分类结果,所述未知流量为被判定不是已知流量类型的待测定流量;
根据所述未知流量的特征提取结果和流量分类结果,更新所述特征提取规则与所述特征判定规则。
12.如权利要求7所述的网络流量判定方法,其特征在于,所述方法还包括:
获取流量类型相同的多条流量;
对所述多条流量进行聚类,并基于聚类后流量之间的相似度获取所述多条流量中的至少部分流量;
提取所述至少部分流量的特征数据;
基于所述至少部分流量的所述特征数据,更新所述特征提取规则和/或所述特征判定规则。
13.一种特征判定规则建立系统,其特征在于,包括规则判定模块,所述规则判定模块用于:
采集一段时间内的多条样本流量;
对所述多条样本流量进行聚类,以获得多个样本流量类型;
基于所述多个样本流量类型,建立初始特征提取规则和初始特征判定规则,其中,至少基于所述多个样本流量类型的数量,判定所述初始特征提取规则中的预设位置。
14.如权利要求13所述的特征判定规则建立系统,其特征在于,至少一种样本流量类型包含两种以上不同的网络协议。
15.如权利要求14所述的特征判定规则建立系统,其特征在于,所述至少一种样本流量类型所包含的所述两种以上不同的网络协议中至少有一种所述网络协议需加密传输。
16.如权利要求13所述的特征判定规则建立系统,其特征在于,所述初始特征提取规则中包含多个预设位置,至少一个样本流量类型对应至少两个预设位置的组合。
17.如权利要求16所述的特征判定规则建立系统,其特征在于,所述至少一个样本流量类型对应至少两个预设位置的特征数据的组合符合特征判定规则。
18.如权利要求13所述的特征判定规则建立系统,其特征在于,所述规则判定模块还用于:
针对多个不同的业务模式,分别采用所述规则建立系统建立对应的初始特征提取规则和初始特征判定规则。
19.一种网络流量判定系统,其特征在于,包括:获取模块、知识库调取模块、特征提取模块和流量类型判定模块;
所述获取模块用于获取第一流量;
所述知识库调取模块用于获取特征提取规则和特征判定规则,所述特征提取规则和所述特征判定规则至少根据权利要求1-6中任一项所述的特征判定规则建立方法建立而成;
所述特征提取模块用于根据所述特征提取规则在第一流量的预设位置获取所述第一流量的特征数据;
所述流量类型判定模块用于基于所述第一流量的特征数据,根据所述特征判定规则判定所述第一流量的流量类型。
20.如权利要求19所述的网络流量判定系统,其特征在于,所述系统还包括业务模式判定模块,所述业务模式判定模块用于:根据业务模式判定模型,判定所述第一流量对应的业务模式;
所述知识库调取模块还用于:基于所述业务模式调取与所述业务模式相应的所述特征提取规则和所述特征判定规则。
21.如权利要求19所述的网络流量判定系统,其特征在于,所述系统还包括策略执行模块,所述策略执行模块用于:
基于所述第一流量的流量类型,对所述第一流量采取相应的策略。
22.如权利要求21所述的网络流量判定系统,其特征在于,所述策略包括以下中的至少一种:允许访问、不允许访问、上报、告警、特别标记和异常报告。
23.如权利要求19所述的网络流量判定系统,其特征在于,所述系统还包括待测定流量判定模块和更新模块;
所述待测定流量判定模块用于:
获取多条待测定流量,其中,所述待测定流量包括无法判定流量类型的所述第一流量;
基于聚类模型,判定所述多条待测定流量是否为已知流量类型;
所述更新模块用于:
获取未知流量的特征提取结果和流量分类结果,所述未知流量为被判定不是已知流量类型的待测定流量;
根据所述未知流量的特征提取结果和流量分类结果,更新所述特征提取规则与所述特征判定规则。
24.如权利要求19所述的网络流量判定系统,其特征在于,所述系统还包括更新模块,所述更新模块用于:
获取流量类型相同的多条流量;
对所述多条流量进行聚类,并基于聚类后流量之间的相似度获取所述多条流量中的至少部分流量;
提取所述至少部分流量的特征数据;
基于所述至少部分流量的所述特征数据,更新所述特征提取规则和/或所述特征判定规则。
25.一种网络流量判定装置,包括处理器,其特征在于,所述处理器用于执行权利要求7~12中任一项所述的网络流量判定方法。
26.一种计算机可读存储介质,所述存储介质存储计算机指令,当计算机读取存储介质中的计算机指令后,计算机执行如权利要求7~12中任一项所述的网络流量判定方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011039849.1A CN112187652A (zh) | 2020-09-28 | 2020-09-28 | 一种特征判定规则建立以及网络流量判定方法和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011039849.1A CN112187652A (zh) | 2020-09-28 | 2020-09-28 | 一种特征判定规则建立以及网络流量判定方法和系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112187652A true CN112187652A (zh) | 2021-01-05 |
Family
ID=73944685
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011039849.1A Pending CN112187652A (zh) | 2020-09-28 | 2020-09-28 | 一种特征判定规则建立以及网络流量判定方法和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112187652A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115550201A (zh) * | 2022-11-29 | 2022-12-30 | 深圳市乙辰科技股份有限公司 | 基于人工智能的网络流量监控处理方法及系统 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102045363A (zh) * | 2010-12-31 | 2011-05-04 | 成都市华为赛门铁克科技有限公司 | 网络流量特征识别规则的建立方法、识别控制方法及装置 |
CN107426049A (zh) * | 2017-05-16 | 2017-12-01 | 国家计算机网络与信息安全管理中心 | 一种网络流量精确检测方法、设备及存储介质 |
US20180247715A1 (en) * | 2017-02-28 | 2018-08-30 | Anixa Diagnostics Corporation | Methods for using artificial neural network analysis on flow cytometry data for cancer diagnosis |
CN109120447A (zh) * | 2018-08-23 | 2019-01-01 | 平安科技(深圳)有限公司 | 流量调配方法、装置、计算机设备及计算机可读存储介质 |
CN111245793A (zh) * | 2019-12-31 | 2020-06-05 | 西安交大捷普网络科技有限公司 | 网络数据的异常分析方法及装置 |
-
2020
- 2020-09-28 CN CN202011039849.1A patent/CN112187652A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102045363A (zh) * | 2010-12-31 | 2011-05-04 | 成都市华为赛门铁克科技有限公司 | 网络流量特征识别规则的建立方法、识别控制方法及装置 |
US20180247715A1 (en) * | 2017-02-28 | 2018-08-30 | Anixa Diagnostics Corporation | Methods for using artificial neural network analysis on flow cytometry data for cancer diagnosis |
CN107426049A (zh) * | 2017-05-16 | 2017-12-01 | 国家计算机网络与信息安全管理中心 | 一种网络流量精确检测方法、设备及存储介质 |
CN109120447A (zh) * | 2018-08-23 | 2019-01-01 | 平安科技(深圳)有限公司 | 流量调配方法、装置、计算机设备及计算机可读存储介质 |
CN111245793A (zh) * | 2019-12-31 | 2020-06-05 | 西安交大捷普网络科技有限公司 | 网络数据的异常分析方法及装置 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115550201A (zh) * | 2022-11-29 | 2022-12-30 | 深圳市乙辰科技股份有限公司 | 基于人工智能的网络流量监控处理方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Xu et al. | Edge server quantification and placement for offloading social media services in industrial cognitive IoV | |
KR101752251B1 (ko) | 파일 식별 방법 및 장치 | |
CN110399925A (zh) | 账号的风险识别方法、装置及存储介质 | |
US20160300242A1 (en) | Driver verification system for transport services | |
CN110011932B (zh) | 一种可识别未知流量的网络流量分类方法和终端设备 | |
CN110059747B (zh) | 一种网络流量分类方法 | |
CN102077201A (zh) | 用于网页的动态及实时归类的系统及方法 | |
CN114610773A (zh) | 基于大数据的数据应用场景识别方法及云计算服务器 | |
US9491186B2 (en) | Method and apparatus for providing hierarchical pattern recognition of communication network data | |
CN111159243B (zh) | 用户类型识别方法、装置、设备及存储介质 | |
CN112134898A (zh) | 一种网络流量判定方法和系统 | |
CN111614690A (zh) | 一种异常行为检测方法及装置 | |
US20210360406A1 (en) | Internet-of-things device classifier | |
CN112765659B (zh) | 针对大数据云服务的数据泄露防护方法及大数据服务器 | |
CN111953757B (zh) | 基于云计算和智能设备交互的信息处理方法及云端服务器 | |
CN107547671A (zh) | 一种url匹配方法及装置 | |
CN111586071B (zh) | 一种基于循环神经网络模型的加密攻击检测方法及装置 | |
CN112187653B (zh) | 一种网络流量判定方法和系统 | |
CN113610156A (zh) | 用于大数据分析的人工智能模型机器学习方法及服务器 | |
CN112187652A (zh) | 一种特征判定规则建立以及网络流量判定方法和系统 | |
US20210352516A1 (en) | Estimating apparatus, system, method, and computer-readable medium, and learning apparatus, method, and computer-readable medium | |
CN114612011A (zh) | 一种风险防控决策方法及装置 | |
CN113765850B (zh) | 物联网异常检测方法、装置、计算设备及计算机存储介质 | |
Fenzl et al. | In-vehicle detection of targeted CAN bus attacks | |
CN112118268A (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 | ||
AD01 | Patent right deemed abandoned |
Effective date of abandoning: 20220517 |
|
AD01 | Patent right deemed abandoned |