CN113242205B - 网络流量分类控制方法、装置、服务器及存储介质 - Google Patents
网络流量分类控制方法、装置、服务器及存储介质 Download PDFInfo
- Publication number
- CN113242205B CN113242205B CN202110295808.7A CN202110295808A CN113242205B CN 113242205 B CN113242205 B CN 113242205B CN 202110295808 A CN202110295808 A CN 202110295808A CN 113242205 B CN113242205 B CN 113242205B
- Authority
- CN
- China
- Prior art keywords
- network
- protocol
- flow
- traffic
- application
- 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.)
- Active
Links
Images
Classifications
-
- 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 Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请提供一种网络流量分类控制方法、装置、服务器及存储介质;通过分析网络应用生成的流量,可以依次确认网络应用在使用时会利用的多个不同的网络协议;进而分别对多个不同的网络协议进行控制,控制每个网络协议所生成的流量,实现对网络流量的分类和控制,避免对网络应用流量识别不全面和控制不准确的问题。
Description
技术领域
本申请涉及网络安全技术领域,具体涉及一种网络流量分类控制方法、装置、服务器及存储介质。
背景技术
随着智能手机等移动终端设备的普及,用户越来越多的基于移动终端中的各种网络应用(Application,APP)进行各种上网操作。
每个网络应用在使用的过程中均会生成一定的数据流量,而在复杂的现网环境中,当部分网络应用由于种种原因无法正常连接网络时,这些网络应用的流量会就发生变化,甚至于使用第三方流量进行通信。如果使用正常手段,则无法获取这些网络应用生成的流量,并且也无法对这些流量进行识别和控制,导致网络应用流量识别不全面且网络应用控制不准确。
发明内容
本申请提供一种网络流量分类控制方法、装置、服务器及存储介质,旨在解决现有技术下对网络流量识别不准,且对网络应用控制不准确的问题。
一方面,本申请提供一种网络流量分类控制方法,所述方法包括:
获取网络应用在预设时间段内生成的第一流量,所述第一流量为所述网络应用基于第一网络协议产生的;
分析所述第一流量,确定所述第一网络协议,以确定所述第一网络协议对应的第一协议特征码;
根据所述第一协议特征码,对所述网络应用进行流量控制,以控制所述网络应用通过所述第一网络协议产生流量;
判断所述网络应用是否正常生成新的第二流量;
若所述网络应用正常生成所述第二流量,判断所述第二流量是否为所述网络应用基于所述第一网络协议生成的流量;
当第二流量为所述网络应用基于所述第一网络协议生成的流量时,继续分析所述第二流量,并提取补全所述第一网络协议对应的所述第一网络协议特征码;
当第二流量不为所述网络应用利用所述第一网络协议生成的流量时,则分析所述第二流量,确定生成所述第二流量的第二网络协议,以确定所述第二网络协议对应的第二协议特征码;
根据所述第二协议特征码,对所述网络应用进行流量控制,以控制所述网络应用通过所述第二网络协议产生流量,直至所述网络应用无法正常使用。
在本申请一种可能的实现方式中,所述分析所述第一流量,确定所述第一网络协议,以确定所述第一网络协议对应的第一协议特征码,包括:
获取所述第一流量中的域名信息、数据头部特征、数据负载部分特征和端口特征中的至少一种信息;
根据所述第一流量中的域名信息、数据头部特征、数据负载部分特征和端口特征中的至少一种信息,以确定所述第一网络协议的第一特征信息;
获取预设的特征信息和网络协议之间的对应表;
根据所述第一特征信息和所述对应表,确定与所述第一特征信息对应的第一网络协议,所述第一特征信息为所述第一网络协议对应的第一协议特征码。
在本申请一种可能的实现方式中,所述根据所述第一协议特征码,对所述网络应用进行流量控制,以控制所述网络应用通过所述第一网络协议产生流量,包括:
根据所述第一协议特征码,判断所述网络应用生成的流量是否为,所述网络应用基于所述第一网络协议生成的流量;
若是,则对所述网络应用基于所述第一网络协议生成的流量进行丢包或不予转发处理。
在本申请一种可能的实现方式中,所述当第二流量不为所述网络应用利用所述第一网络协议生成的流量时,分析所述第二流量,确定生成所述第二流量的第二网络协议,以确定所述第二网络协议对应的第二协议特征码,包括:
获取所述第二流量中的域名信息、数据头部特征、数据负载部分特征和端口特征中的至少一种信息,以确定所述第二网络协议的第二特征信息;
根据所述第二特征信息和所述对应表,确定与所述第二特征信息对应的第二网络协议,所述第二特征信息为所述第二网络协议对应的第二协议特征码。
在本申请一种可能的实现方式中,所述方法还包括:
获取第一流量控制策略,所述第一流量控制策略包括对放行所述网络应用基于所述第一网络协议生成的第一目标流量,对所述网络应用生成的流量中除所述第一目标流量之外的其他流量进行丢包或不予转发处理;
基于所述第一流量控制策略对所述网络应用进行流量控制;
获取所述网络应用不能正常使用时丢包的第三流量;
判断所述第三流量对应的第三网络协议;
根据所述第三网络协议,更新所述第一流量控制策略,得到第二流量控制策略;
基于所述第二流量控制策略重新对所述网络应用进行流量控制,直至所述网络应用能正常使用。
在本申请一种可能的实现方式中,所述根据所述第三网络协议,更新所述第一流量控制策略,得到第二流量控制策略,包括:
放行所述网络应用利用第三网络协议生成的流量;
将放行所述网络应用利用所述第三网络协议生成的流量,更新至所述第一流量控制策略,得到第二流量控制策略。
所述基于所述第二流量控制策略重新对所述网络应用进行流量控制,直至所述网络应用能正常使用,包括:
放行所述网络应用利用所述第三网络协议生成的流量;
重新获取所述网络应用不能正常使用时丢包的第四流量;
判断所述第四流量对应的第四网络协议;
放行所述网络应用基于所述第四网络协议生成的流量,直至所述网络应用能正常使用。
另一方面,本申请提供一种网络流量分类控制装置,所述装置包括:
获取模块,用于获取网络应用在预设时间段内生成的第一流量,所述第一流量为所述网络应用基于第一网络协议产生的;
第一分析模块,用于分析所述第一流量,确定所述第一网络协议,以确定所述第一网络协议对应的第一协议特征码;
第一控制模块,用于根据所述第一协议特征码,对所述网络应用进行流量控制,以控制所述网络应用通过所述第一网络协议产生流量;
判断模块,用于若所述网络应用正常生成所述第二流量,判断所述第二流量是否为所述网络应用基于所述第一网络协议生成的流量;
第二分析模块,用于当第二流量为所述网络应用基于所述第一网络协议生成的流量时,继续分析所述第二流量,并提取补全所述第一网络协议对应的所述第一协议特征码;
第三分析模块,用于当第二流量不为所述网络应用利用所述第一网络协议生成的流量时,分析所述第二流量,确定生成所述第二流量的第二网络协议,以确定所述第二网络协议对应的第二协议特征码;
第二控制模块,用于根据所述第二协议特征码,对所述网络应用进行流量控制,直至所述网络应用能正常使用。
在本申请一种可能的实现方式中,第一分析模块分析所述第一流量,确定生成所述第一流量的第一网络协议对应的第一协议特征码,包括:
获取所述第一流量中的域名信息、数据头部特征、数据负载部分特征和端口特征中的至少一种信息;
根据所述第一流量中的域名信息、数据头部特征、数据负载部分特征和端口特征中的至少一种信息,以确定所述第一网络协议的第一特征信息;
获取预设的特征信息和网络协议之间的对应表;
根据所述第一特征信息和所述对应表,确定与所述第一特征信息对应的第一网络协议,所述第一特征信息为所述第一网络协议对应的第一协议特征码。
在本申请一种可能的实现方式中,第一控制模块根据所述第一协议特征码,对所述网络应用进行流量控制,以控制所述网络应用通过所述第一网络协议产生流量,包括:
根据所述第一协议特征码,判断所述网络应用生成的流量是否为,所述网络应用基于所述第一网络协议生成的流量;
若是,则对所述网络应用基于所述第一网络协议生成的流量进行丢包或不予转发处理。
在本申请一种可能的实现方式中,第二分析模块分析所述第二流量,确定生成所述第二流量的第二网络协议对应的第二协议特征码,包括:
获取所述第二流量中的域名信息、数据头部特征、数据负载部分特征和端口特征中的至少一种信息,以确定所述第二网络协议的第二特征信息;
根据所述第二特征信息和所述对应表,确定与所述第二特征信息对应的第二网络协议,所述第二特征信息为所述第二网络协议对应的第二协议特征码。
另一方面,本申请还提供一种服务器,所述服务器包括:
一个或多个处理器;
存储器;以及
一个或多个网络应用程序,其中所述一个或多个网络应用程序被存储于所述存储器中,并配置为由所述处理器执行以实现所述的网络流量分类控制方法。
另一方面,本申请还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器进行加载,以执行所述的网络流量分类控制方法中的步骤。
本申请提供一种网络流量分类控制方法,通过分析网络应用生成的流量,可以依次确认网络应用在使用时会利用的多个不同的网络协议;进而分别对多个不同的网络协议进行控制,控制每个网络协议所生成的流量,实现对网络流量的分类和控制,避免对网络应用流量识别不全面和控制不准确的问题。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的网络系统的场景示意图;
图2为本申请实施例中提供的网络流量分类控制方法的一实施例流程示意图;
图3为本申请实施例中提供的确定第一协议特征码的一实施例流程示意图;
图4为本申请实施例中提供的网络流量分类控制方法另一实施例流程示意图;
图5为本申请实施例中提供的第二流量控制策略的一实施例结构示意图;
图6为本申请实施例中提供的拓扑结构的一个实施例结构示意图;
图7为本申请实施例提供的流量正向控制一实施例示意图;
图8为本申请实施例提供的流量反向控制一实施例示意图;
图9为本申请实施例中提供的网络流量分类控制装置一实施例示意图;
图10示出了本申请实施例所涉及到的服务器的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在本发明的描述中,需要理解的是,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个所述特征。在本发明的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。
在本申请中,“示例性”一词用来表示“用作例子、例证或说明”。本申请中被描述为“示例性”的任何实施例不一定被解释为比其它实施例更优选或更具优势。为了使本领域任何技术人员能够实现和使用本发明,给出了以下描述。在以下描述中,为了解释的目的而列出了细节。应当明白的是,本领域普通技术人员可以认识到,在不使用这些特定细节的情况下也可以实现本发明。在其它实例中,不会对公知的结构和过程进行详细阐述,以避免不必要的细节使本发明的描述变得晦涩。因此,本发明并非旨在限于所示的实施例,而是与符合本申请所公开的原理和特征的最广范围相一致。
本申请实施例提供一种网络流量分类控制方法、装置、服务器及存储介质,以下分别进行详细说明。
如图1所示,为本申请实施例提供的网络系统的场景示意图,该网络系统可以包括多个终端100和服务器200,终端100和服务器200网络连接,服务器200中集成有网络流量分类控制装置,如图1中的服务器,终端100可以访问服务器200。
本发明实施例中服务器200主要用于获取网络应用在预设时间段内生成的第一流量,第一流量为网络应用基于第一网络协议产生的;分析第一流量,确定第一网络协议,以确定第一网络协议对应的第一协议特征码;根据第一协议特征码,对网络应用进行流量控制,以控制网络应用通过第一网络协议产生流量;若网络应用正常生成第二流量,判断第二流量是否为网络应用基于第一网络协议生成的流量;当第二流量为所述网络应用基于所述第一网络协议生成的流量时,继续分析所述第二流量,并提取补全所述第一网络协议对应的所述第一协议特征码;当第二流量不为所述网络应用利用所述第一网络协议生成的流量时,分析第二流量,确定生成第二流量的第二网络协议,以确定第二网络协议对应的第二协议特征码;根据第二协议特征码,对网络应用进行流量控制,以控制网络应用通过第二网络协议产生流量,直至网络应用无法正常使用。
本发明实施例中,该服务器200可以是独立的服务器,也可以是服务器组成的服务器网络或服务器集群,例如,本发明实施例中所描述的服务器200,其包括但不限于计算机、网络终端、单个网络服务器、多个网络服务器集或多个服务器构成的云服务器。其中,云服务器由基于云计算(Cloud Computing)的大量计算机或网络服务器构成。本发明的实施例中,服务器与终端之间可通过任何通信方式实现通信,包括但不限于,基于第三代合作伙伴计划(3rd Generation Partnership Project,3GPP)、长期演进(Long Term Evolution,LTE)、全球互通微波访问(Worldwide Interoperability for Microwave Access,WiMAX)的移动通信,或基于TCP/IP协议族(TCP/IP Protocol Suite,TCP/IP)、用户数据报协议(User Datagram Protocol,UDP)的计算机网络通信等。
可以理解的是,本发明实施例中所使用的终端100可以是既包括接收和发射硬件的设备,即具有能够在双向通信链路上,执行双向通信的接收和发射硬件的设备。这种终端可以包括:蜂窝或其他通信设备,其具有单线路显示器或多线路显示器或没有多线路显示器的蜂窝或其他通信设备。具体的终端100具体可以是台式终端或移动终端,终端100具体还可以是手机、平板电脑、笔记本电脑等中的一种。
本领域技术人员可以理解,图1中示出的应用环境,仅仅是与本申请方案一种应用场景,并不构成对本申请方案应用场景的限定,其他的应用环境还可以包括比图1中所示更多或更少的服务器,或者服务器网络连接关系,例如图1中仅示出1个服务器和2个终端,可以理解的,该网络系统还可以包括一个或多个其他服务器,或/且一个或多个与服务器网络连接的终端,具体此处不作限定。
另外,如图1所示,该网络系统还可以包括存储器300,用于存储数据,如存储终端数据,例如终端运行时的终端状态数据等。
需要说明的是,图1所示的网络系统的场景示意图仅仅是一个示例,本发明实施例描述的网络系统以及场景是为了更加清楚的说明本发明实施例的技术方案,并不构成对于本发明实施例提供的技术方案的限定,本领域普通技术人员可知,随着网络系统的演变和新业务场景的出现,本发明实施例提供的技术方案对于类似的技术问题,同样适用。
如图2所示,为本申请实施例中网络流量分类控制方法的一个实施例流程示意图,该网络流量分类控制方法包括:
21、获取网络应用在预设时间段内生成的第一流量。
在本申请实施例中,网络应用通常指网络应用程序(Application,APP);而流量通常指网络流量,具体为网络上传输的数据量。每一个网络应用在访问互联网时均会生成一定的流量。
流量中具体包括数据流,而数据流通常为互联网数据中具有相同五元组(源IP、源端口、目的IP、目的端口、协议)的所有包。其中,数据流是网络应用基于多种不同的网络协议访问互联网时生成的,网络协议是指计算机网络中进行数据交换而建立的规则、标准或约定的集合。网络协议包括超级文本协议(HyperText Transfer Protocol,http)、传输控制协议(Transmission Control Protocol,tcp)、用户数据包协议(User DatagramProtocol,UDP)等多种不同的协议;网络应用基于多种协议访问互联网,进而实现上网功能。
本申请所提供的网络流量分类控制方法是对网络流量,即主要对网络应用在访问互联网时生成的数据流进行分类控制。
具体的,可以先获取预设时间段内,某个网络应用访问互联网时所生成的第一流量。即获取某个网络应用在预设时间段内,基于网络协议访问互联网时所生成的数据流。在上述实施例中,第一流量可以为网络应用基于第一网络协议产生的。
需要说明的是,在获取第一流量时,不对网络应用进行任何流量限制;即获取网络应用在正常情况下所生成的第一流量。
22、分析第一流量,确定第一网络协议,以确定第一网络协议对应的第一协议特征码。
在本申请的实施例中,不同的网络协议对应不同的协议特征码,用以区分不同的网络协议。而网络应用基于不同的网络协议得到的流量数据会存在差异,因此可以对网络应用生成的第一流量进行分析,以确定网络应用所利用的不同的网络协议,进而确定第一网络协议对应的第一协议特征码。
需要说明的是,在网络应用实际访问互联网的过程中,网络应用会同时利用多种不同的网络协议。即第一网络协议中可以包括多个不同的网络协议,而第一流量中可以包括多个不同的网络协议生成的流量。
23、根据第一协议特征码,对网络应用进行流量控制,以控制网络应用通过第一网络协议产生流量。
在本申请的实施例中,当获取了每个网络协议对应的协议特征码后,就可以根据协议特征码对网络应用产生的流量进行控制。通过判断网络应用生成的流量是否能命中第一协议特征码,即是否与第一协议特征码匹配;若匹配则可以控制基于第一网络协议生成的流量。
同时,由于未确定网络应用所利用的其他网络协议,此时只能控制网络应用利用第一网络协议产生流量。
24、若网络应用正常生成第二流量,判断第二流量是否为网络应用基于第一网络协议生成的流量。
由于前述实施例中对网络应用进行了流量控制,正常情况下,网络应用不会再产生新的流量。若是网络应用正常生成了新的第二流量,则说明网络应用基于其它未被控制的网络协议产生了新的流量。
当判断出网络应用正常生成了第二流量时,需要先判断第二流量是否为网络应用基于第一网络协议所生成的流量;以判断是否没有获取完整的第一协议特征码,导致对第一网络协议的控制出现了异常。
25、当第二流量为网络应用基于第一网络协议生成的流量时,继续分析第二流量,并提取补全第一网络协议对应的第一协议特征码。
由于网络应用基于第一网络协议生成了新的第二流量,说明在前述实施例中因对第一网络协议的控制后,网络应用本身触发了应变机制(即应用检测到生成的流量多次发送失败或多次未收到正常回复等异常),进而通过含有其他特征码的第一网络协议形式进行通信,导致没有控制住第一网络协议对应的流量。因此可以重新提取第二流量中的第一网络协议对应的第一协议特征码,以补全在前述实施例中获取到的第一协议特征码。
26、当第二流量不为所述网络应用利用所述第一网络协议生成的流量时,分析第二流量,确定生成第二流量的第二网络协议,以确定第二网络协议对应的第二协议特征码。
若第二流量不是网络应用基于已经被控制的第一网络协议生成的流量,则进一步确认了第二流量是网络应用基于其它网络协议生成的流量。此时需要对第二流量进行分析,确定生成第二流量的第二网络协议对应的第二协议特征码;即确认此时网络应用利用的第二网络协议的特征信息等。
27、根据第二协议特征码,对网络应用进行流量控制,以控制网络应用通过第二网络协议产生流量,直至网络应用无法正常使用。
当获取了网络应用生成流量所利用的第二协议的协议特征码后,即确定了网络应用在访问互联网时可能会利用的第二网络协议,因此在本申请的实施例中,再次对网络应用进行流量控制,以控制网络应用会利用的第二网络协议;进而控制网络应用基于第二网络协议所生成的流量。
在上述实施例的基础上,可以进行多次重复循环操作,以对不同的网络协议进行控制,进而实现对流量的控制。若是网络应用生成的所有流量均被控制,则网络应用无法利用产生的流量进行通信,使得网络应用无法实现各种功能,即网络应用无法正常使用。此时,说明对网络应用会利用的网络协议,以及网络协议对应的流量进行了完整且准确的分类控制。
本申请提供的网络流量分类控制方法,通过分析网络应用生成的流量,可以依次确认网络应用在使用时会利用的多个不同的网络协议;进而分别对多个不同的网络协议进行控制,控制每个网络协议所生成的流量,实现对网络流量的分类和控制,避免对网络应用流量识别不全面和控制不准确的问题。
如图3所示,为本申请实施例提供的确定第一协议特征码的一实施例流程示意图。其中,分析第一流量,确定第一流量对应的第一网络协议,以确定第一网络协议对应的第一协议特征码,可以包括:
31、获取第一流量中的域名信息、数据头部特征、数据负载部分特征和端口特征中的至少一种信息。
其中,域名(Domain Name),又称网域,是由一串用点分隔的名字组成的网络上某一台计算机或计算机组的名称,用于在数据传输时对计算机进行定位标识。对于一种网络协议来说,它的域名信息通常是唯一且确定的,因此可以基于域名来区分不同的网络协议。
在本申请的一个具体实施例中,当网络应用为kakaotalk时,在正常情况下使用kakaotalk会生成两种流量,一种为https类型流量,一种为tcp类型流量。对于https类型的流量可以通过解析https流量中,服务器名称指示字段(Server Name Indication,SNI)包含的域名信息,以确定该流量是基于哪种网络协议生成的。
具体的,获取到的第一流量中的其中一个数据包如下:
1.624166 192.168.252.10 110.66.141.38 TLSv1.2 ac-talk.kakao.com
其中,ac-talk.kakao.com即为第一流量中的域名信息,根据基础协议特征先判断网络协议类型为https,且继续判断https带有的SNI字段包含的域名信息并查询其归属,可以确定kakaotalk应用在使用时生成了私有网络协议,而上述第一流量则是kakaotalk应用利用私有网络协议生成的流量。
而对于tcp类型的流量来说,根据基础协议特征判断网络协议类型为tcp。继续可以通过判断第一流量中的tcp负载部分,来判断网络流量对应的私有网络协议。
具体的,对于第一流量的tcp负载部分,若是从数据负载部分的第一个字节开始满足:\x00\x01\x00\x00\x0c\x00\x00\x00\x02\x00\x00,则可以认为kakaotalk应用在使用是生成了私有网络协议,且第一流量是利用私有网络协议生成的。
需要说明的是,在本申请的实施例中,网络应用在使用时会产生自己的私有网络协议,并利用私有网络协议实现通信,即实现各种功能。然而这些私有网络协议通常承载于基础网络协议(如http、https、tcp、udp等),并带有自己私有网络协议独有的特征。因此首先需要确定流量对应的基础网络协议,再确定流量对应的特征信息,以确定网络应用对应的私有网络协议。
32、根据第一流量中的域名信息、数据头部特征、数据负载部分特征和端口特征中的至少一种信息,确定第一网络协议的第一特征信息。
在本申请的实施例中,可以通过判断流量(即数据流)中包含的域名信息、数据头部特征、数据负载部分特征和端口特征中的至少一种信息来区分不同数据流对应的网络协议。
但对于某些流量来说,仅基于域名信息或数据头部特征或数据负载部分特征或端口特征中的一种可能无法准确的区分,因此需要域名信息、数据头部特征、数据负载部分特征以及端口特征中的一种或多种信息一起进行区分。
对于不同的网络协议来说,网络协议的特征信息实际上就是网络应用基于网络协议生成的数据流之间的差异;即不同的网络协议生成的数据流中的域名信息、数据头部特征、数据负载部分特征和端口特征之间的差异。
因此,在本申请的实施例中,第一网络协议对应的第一特征信息,实际上就是基于第一网络协议生成的数据流中的域名信息、数据头部特征、数据负载部分特征和端口特征中的至少一种。
在上述实施例中,不同网络协议对应的特征信息是不同的,且并不是每个网络协议对应的特征信息均包括域名信息、数据头部特征、数据负载部分特征和端口特征。若是仅基于域名信息就可以区分不同的网络协议,则网络协议对应的特征信息仅包括域名信息即可;若是需要基于域名信息和端口特征才能完全区分不同的网络协议,那么此时网络协议对应的特征信息不仅包括域名信息,也包括端口特征。
33、获取预设的特征信息和网络协议之间的对应表。
在本申请的实施例中,每个网络应用在使用时对应的网络协议包括多个,但每个网络协议对应的特征信息通常是唯一的。
因此可以获取预设的特征信息与网络协议之间的对应表,一个网络协议对应唯一且确定的特征信息。根据数据流中获取到的特征信息,即可以确定数据流是基于何种网络协议生成的。
34、根据第一特征信息和对应表,确定与第一特征信息对应的第一网络协议。
在本申请的实施例中,在获取了预设的特征信息和网络协议之间的对应表之后,由于网络协议与特征信息之间是一一对应的;因此根据获取到的第一流量中的第一特征信息,可以确定第一特征信息对应的第一网络协议。而第一网络协议对应的第一协议特征码即为第一特征信息;即可以基于第一特征信息确定某个数据流是基于第一网络协议生成的。
需要说明的是,在本申请的实施例中,网络应用对应的网络协议实际上是,每个网络应用各自对应的私有网络协议,但这些私有网络协议承载于基础网络协议之上。
而在确定了第一网络协议对应的第一协议特征码后,需要从正向对网络应用产生的流量进行控制。具体的,根据第一协议特征码,对网络应用进行流量控制,以控制网络应用通过第一网络协议产生流量,可以包括:
根据第一协议特征码,判断网络应用生成的流量是否为,网络应用基于第一网络协议生成的流量。若是,则对网络应用基于第一网络协议生成的流量进行丢包或不予转发处理。
具体的,对网络应用产生的流量进行判断,若该流量是网络应用基于第一网络协议生成的,则将该流量进行丢包或不予转发处理;即拦截基于第一网络协议产生的流量。若是网络应用仍能够产生新的流量,则说明网络应用利用了除第一网络协议之外的其他网络协议进行数据传输,以此将第一网络协议产生的流量与基于其他网络协议产生的流量区分开;以此实现对第一网络协议的单独监控。
而在上述实施例的基础上,由于已经对网络应用基于第一网络协议产生流量的过程进行了控制,理论上网络应用无法正常使用。若是判断出网络应用正常生成的新的第二流量,则说明此时网络应用是基于其他网络协议产生了新的第二流量,还需要对新产生的第二流量进行单独控制。
因此,可以进一步再对新产生的第二流量进行判断,判断第二流量是否为网络应用基于第一网络协议生成的流量。当第二流量为网络应用利用第一网络协议生成的流量,则说明没有完全控制住第一网络协议,使得网络应用利用第一网络协议正常进行通信。
此时,需要继续对第二流量进行分析,重新提取第二流量中的第一网络协议对应的第一协议特征码,以补全前述实施例中获取到的,不完整的第一协议特征码。
当第二流量不为网络应用利用第一网络协议生成的流量时,也需要第二流量进行分析,确定此时的第二流量对应的第二网络协议,以确定第二网络协议对应的第二网络协议特征码。
具体的,在本申请的实施例中,当第二流量不为网络应用利用第一网络协议生成的流量时,分析第二流量,确定生成第二流量的第二网络协议,以确定第二网络协议对应的第二特征码,可以包括:
获取第二流量中的域名信息、数据头部特征、数据负载部分特征和端口特征中的至少一种信息,以确定第二网络协议的第二特征信息。根据第二特征信息和对应表,确定与第二特征信息对应的第二网络协议。
其中,第二特征信息为第二网络协议对应的第二协议特征码。
根据第二流量中的域名信息、数据头部特征、数据负载部分特征和端口特征中的至少一种信息,以及预设的特征信息与网络协议之间的对应表,确定第二流量对应的第二网络协议的过程,可以参考前述确定第一流量对应的第一网络协议之间的过程,此处不再赘述。
而在确定了第二网络协议以及对应的第二协议特征码后,也根据第二协议特征码对网络应用进行流量控制。具体的,可以为对网络应用产生的流量中,基于第二网络协议产生的流量进行丢包或不予转发处理,以此实现对第二网络协议的控制,且实现对基于第二网络协议生成的流量的控制。
在上述实施例中,分别对网络应用会利用的第一网络协议和第二网络协议进行了控制,还可以基于上述方法不断的控制网络应用会利用的网络协议,直至网络应用无法正常使用,说明已经完全控制了网络应用会利用的所有的网络协议。
上述实施例中,是从正向控制对流量进行控制,即对流量进行丢包或不予转发处理。而在本申请的另一些实施例中,还可以从反向对流量进行控制,即对流量进行放行处理。这样操作是为了避免,在正常控制(即丢包或不予转发处理流量)时,可能会存在网络应用产生的正常流量未被触发,导致没有收集到这部分流量,导致流量识别不全面,不准确。
如图4所示,为本申请实施例提供的网络流量分类控制方法另一实施例流程示意图,可以包括:
41、获取第一流量控制策略。
其中,第一流量控制策略可以包括:放行网络应用基于第一网络协议生成的第一目标流量,对网络应用生成的流量中除第一目标流量之外的其他流量,进行丢包或不予转发处理。
42、基于第一流量控制策略对网络应用进行流量控制。
43、获取网络应用不能正常使用时丢包的第三流量。
由于第一流量控制策略中,对第一网络协议生成的第一目标流量进行了放行,因此网络应用是可以正常使用的;即网络应用正常基于第一网络协议产生了第一目标流量,网络应用可以正常实现某些功能。
而若是网络应用不能正常使用,则说明网络应用产生的流量被丢包,无法实现各种功能。此时需要获取网络应用不能正常使用时,所丢包的第三流量。
44、判断第三流量对应的第三网络协议。
由于网络应用利用第一网络协议产生的流量被放行,若是网络应用正常,则网络应用可以基于第一网络协议实现各种功能。而此时网络应用无法正常使用,说明网络应用利用第一网络协议的其他新的变化形式通信或利用了除第一网络协议之外的其他网络协议进行通信。
因此需要判断第三流量里是否是第一网络协议的其他新的变化形式,如果是,则提取补全第一网络协议特征码,并继续放行。如果判断不是第一网络协议,则需要获取被丢包的第三流量对应的第三网络协议:具体可以根据第三流量中的域名信息、数据头部特征、数据负载部分特征和端口特征中的至少一种信息,以确定第三网络协议对应的目标特征信息;根据目标特征信息和特征信息与网络协议之间的对应表,可以确定与目标特征信息对应的第三网络协议,而目标特征信息即为第三网络协议对应的第三网络协议特征码。
45、根据第三网络协议,更新第一流量控制策略,得到第二流量控制策略。
46、基于第二流量控制策略重新对网络应用进行流量控制,直至网络应用能正常使用。
在上述实施例的基础上,获取了第三网络协议以及对应的第三网络协议特征码之后,可以对原有的第一流量控制策略进行更新,得到第二流量控制策略;并基于第二流量控制策略重新对网络应用进行流量控制,直到网络应用能够正常使用。
具体的,由于第一网络协议生成的流量被放行,若是网络应用基于第一网络协议生成流量,则网络应用可以正常使用实现各种功能。而在上述实施例中,网络应用无法正常使用,说明网络应用生成的流量被丢包,且被丢包的流量可能是第一网络协议生成的其他形式流量或者其他网络协议生成的。
在对被丢包的流量进行分析后,确定了网络应用是基于第三网络协议生成的被丢包的流量,则此时可以重新放行第三网络协议生成的流量,使得网络应用生成的流量不被丢包,网络应用可以利用第三网络协议实现各种功能。
如图5所示,为本申请实施例提供的得到第二流量控制策略的一实施例流程示意图,包括:
51、放行网络应用利用第三网络协议产生的流量。
52、将放行网络应用利用第三网络协议生成的流量,更新至第一流量控制策略,得到第二流量控制策略。
具体的,对于第三网络协议产生的流量来说,也是网络应用实现各种功能时生成的流量;对于这类流量,需要放行而非丢包或不予转发处理,使得网络应用可以实现功能。由于第一流量控制策略中对第一网络协议产生的流量实现了放行,因此只需将“放行网络应用利用第三网络协议产生的流量”更新至第一流量控制策略中,得到第二流量控制策略即可。
此时,第二流量控制策略包括:放行网络应用基于第一网络协议和第三网络协议生成的流量;对网络应用生成的流量中,除基于第一网络协议和第三网络协议生成的流量之外的,其他流量进行丢包或不予转发处理。基于更新后的第二流量控制策略对网络应用重新进行流量控制,使得网络应用可以更好的区分并控制第一网络协议和第三网络协议,以及各自生成的流量。
在上述实施例的基础中,利用第二流量控制策略对网络应用进行流量控制,可以控制住所述网络应用基于第一网络协议和第三网络协议生成的流量。若是网络应用还利用了其他网络协议,也可以利用上述方法实现控制。具体的,可以包括:
放行网络应用基于第三网络协议生成的流量;重新获取网络应用不能正常使用时丢包的第四流量;判断第四流量对应的第四网络协议;放行网络应用基于第四网络协议生成的流量,直至网络应用能正常使用。
其中,由于第二流量控制策略是在第一网络流量控制策略的基础上更新的,因此,虽然上述实施例中描述的是放行网络应用基于第三网络协议生成的流量,但实际上也放行了网络应用基于第一网络协议生成的流量。
此时若是网络应用仅利用了第一网络协议和第三网络协议,则网络应用在不能正常使用时不会产生被丢包的流量。因此可以重新获取网络应用不能正常使用时丢包的第四流量;若是存在第四流量,则说明此时网络应用利用了其他网络协议产生了流量,但这些流量被丢包。
可以再次判断第四流量对应的第四网络协议,具体步骤可以参考前述内容,此处不做赘述。而在确定了第四流量对应的第四网络协议后,可以再次放行网络应用基于第四网络协议生成的流量。
在本申请的实施例中,利用上述方法可以多次获取网络应用不能正常使用被丢包的流量,以确认被丢包的流量对应的网络协议;以对网络协议以及网络应用利用网络协议生成的流量进行控制。
在上述实施例中,利用上述方法直至网络应用能正常使用,此时说明网络应用在访问互联网时,会利用的所有网络协议均得到分类以及控制,实现了对网络协议的识别以及流量的控制。
需要说明的是,在网络应用正常使用的情况下,会产生一些非功能性流量,如推送,广告,第三方后台数据收集等非必要流量,这些流量即使被丢包也不影响网络应用的使用;因此在本申请的实施例中,应该以网络应用是否能正常使用来判断对网络协议的控制,以及对产生的流量的控制是否成功。
基于上述方法可以将网络应用产生的流量全面进行解析,并对网络应用利用的所有网络协议进行分类和控制。由于每分类出一种网络协议,均会对该网络协议生成的流量进行放行,使得被丢包的流量逐渐减少;因此当网络应用可以正常使用,说明已经对网络应用产生的流量,进行了分类和控制。此时,对网络应用所基于的网络协议识别和控制完成。
如图6所示,为本申请实施例提供的拓扑结构一实施例示意图。其中,拨测设备主要用于测试应用或网络是否异常,而报文检测设备(Deep Packet Inspection,DPI)设备主要对网络应用产生的流量进行采集和分析,且DPI设备中还包括有DPI设备规则协议库,该协议库中存储不同网络协议对应的协议特征码;且DPI设备可以加载流量控制策略,以对应用产生的流量进行分类控制。
如图7所示,为本申请实施例提供的流量正向控制一实施例示意图。首先在未对流量进行任何限制的情况下,拨测设备拨测网络应用,而DPI设备收集应用A在预设时间段内生成的第一流量。若是网络应用正常,则网络应用可以正常访问互联网,即网络应用产生的流量会正常发送给互联网。
其次,DPI设备分析第一流量,以确定应用A生成第一流量所基于的第一网络协议,以及第一网络协议对应的第一协议特征码。并将第一协议特征码放入DPI设备协议规则库中,以便后续基于第一协议特征码对第一网络协议产生的流量进行控制。
具体的,可以获取预设的DPI设备控制策略,即流量控制策略,对应用A基于第一网络协议产生的流量进行丢包或不予转发处理。此时,拨测设备重新拨测应用A,并将产生的第二流量发送给DPI设备。
此时,DPI设备接收到第二流量后,仍对第二流量进行采集和分析。但此时DPI设备中加载了流量控制策略。即应用A产生的流量,在经过DPI设备后,应用A基于第一网络协议产生的流量被丢包或不予转发;其他网络协议产生的流量不做处理,正常放行。
具体的,若是应用A能正常使用,则应用A可以产生新的流量。此时还需要先判断第二流量是否为应用A基于第一网络协议生成的流量。
若是,则说明没有控制住第一网络协议,以及对应产生的流量。此时需要重新分析第二流量,并提取补全第一应用协议对应的第一协议特征码。在获取了新的第一协议特征码后,更新流量控制策略,重新获取应用A产生的流量;利用更新后的流量控制策略对应用A进行流量控制,直至应用A无法正常使用。
若不是,则可以重新对第二流量进行分析,确定生成第二流量的第二网络协议,以及第二网络协议对应的第二协议特征码。并将第二协议特征码也加载在DPI协议规则库中。
同时,更新DPI设备控制策略,即更新流量控制策略,对应用A基于第二网络协议产生的流量也进行丢包或不予转发处理。重复上述操作,直至应用A无法正常使用。
此时,应用A在使用过程中,会利用的所有的网络协议均得到分类和控制,可以有效识别应用A所产生的流量。
上述实施例是从正向控制应用产生的流量,而在本身的实施例中,还需要反向控制流量。反向控制流量的目的在于,正向控制流量时,应用产生的其他正常流量可能无法被触发,因此无法产生,也就无法被收集到;即无法确认应用是否产生这类正常的流量。
其中,正向控制是丢包应用产生的流量;而反向控制则是放行应用产生的流量。具体的,由于反向控制是放行应用A产生的流量,此时DPI设备清空原有的流量控制策略,并重新加载新的流量控制策略。此时DPI设备上加载的新的第一流量控制策略,包括:放行应用A基于第一网络协议产生的第一目标流量;同时对应用A中产生的流量中除第一目标流量之外的其他流量均进行丢包或不予转发处理。
如图8所示,为本申请实施例提供的流量反向控制一实施例示意图,其中拨测设备重新拨测应用A。而DPI设备中加载新的流量控制策略,使得应用A产生的流量在经过DPI设备后,基于第一网络协议产生的第一目标流量被放行,而除第一目标流量之外的其他流量被丢包或不予转发。
基于上述新加载的第一流量控制策略对应用A进行流量控制。而DPI设备重新收集并分析进行流量控制后的流量;若是应用A能够正常使用,则说明应用A产生的流量没有被丢包或不予转发;应用A产生的流量可以发送至互联网,应用A可以基于第一网络协议进行通信以实现各种功能,此时对第一网络协议的识别完成。而若是应用A无法正常使用,则说明应用A所产生的流量无法发出,流量被丢包。
当应用A无法正常使用时,此时需要获取应用A无法正常时,应用A产生且被丢包的第三流量。具体的可以基于网络数据包分析软件(wireshark)等实时排查应用A无法正常使用时所丢包的流量。
由于新的流量控制策略保证了基于第一网络协议产生的流量被放行,若是存在被丢包的第三流量,需要先判断第三流量是否为应用A利用第一网络协议产生的流量。若是,则说明对没有控制住第一网络协议以及对应产生的流量。此时需要重新分析第三流量,补全第一网络协议对应的第一协议特征码;并重复上述步骤,直至被丢包的流量中没有应用A利用第一网络协议生成的流量。
而若是第三流量不是应用A利用第一网络协议生成的,则说明应用A利用了除第一网络协议之外的其他网络协议产生了新的第三流量,由于新的流量控制策略,该第三流量被丢包。
在得到第三流量后,需要判断第三流量对应的第三网络协议,具体可以参考上述判断第一网络协议的步骤来判断第三网络协议,以及获取第三网络协议的协议特征码。
应用A利用了第三网络协议生成了新的流量,为了获取应用A所产生的所有流量,以及应用A会利用的所有网络协议;此时需要更新第一流量控制策略,得到第二流量控制策略。其中,第二流量控制策略中可以包括:放行应用A基于第一网络协议和第三网络协议产生的流量;同时对应用A基于除第一网络协议和第三网络协议之外的其他协议所产生的流量,进行丢包或不予转发处理。
此时,将第三网络协议对应的协议特征码加入协议识别库,并将新的流量控制策略重新下发给DPI设备,DPI设备利用新的流量控制策略对应用A产生的流量进行控制。在该实施例中,重复上述步骤,直至应用A无法正常使用时,不再产生新的被丢包的流量。此时,说明应用A在无法正常使用时,不再基于网络协议产生新的流量,不存在被丢包的流量;应用A正常使用时所利用的网络协议均被分类和控制,对应用A会的网络协议的识别结束,且对应用A产生的流量也得到的全面的识别。
在本申请的另一些实施例中,上述方法还可以对网络应用中的具体某个动作所产生的流量,以及网络应用进行具体操作时所利用的网络协议进行分类和控制。其中,当网络应用为聊天软件时,网络应用的具体动作包括但不限于:聊天软件发送文字动作、发送图片动作等。
前述第一流量、第二流量、第三流量以及第一目标流量等,均为网络应用进行具体操作时所产生的流量。此时,流量中不仅可以获取到网络协议对应的协议特征码,还可以获取具体动作的动作流量特征码,以便基于动作流量特征码对具体操作进行分类和控制。
其中,具体的步骤可以参考前述对不同网络协议,以及不同网络协议产生的流量的分类控制的步骤,此处不做赘述。
在一个具体实施例中,当网络应用为手机kakaotalk时,当kakaotalk基于第一网络协议生成的流量被控制住后,kakaotalk发送文字和接收通话的通知仍能进行,说明kakaotalk使用了其他网络协议进行通信。检测后发现kakaotalk使用了域名为courier.push.apple.com的https流量,该流量域名归属于苹果公司。通过对手机操作和观察流量变化,判断出courier.push.apple.com的https流量即为kakaotalk软件接收文字流量和接收语音通话通知的流量。而通过域名判断,该流量归属与苹果第三方的通讯流量,若是控制该流量,则kakaotalk的所有功能都无法使用。此时可以确认kakaotalk会利用的不同网络协议进行通信。
为了更好实施本申请实施例中网络流量分类控制方法,在网络流量分类控制方法基础之上,本申请实施例中还提供一种网络流量分类控制装置,如图9所示,为本申请实施例提供的网络流量分类控制方法一实施例示意图,所述网络流量分类控制装置900包括:
获取模块901,用于获取网络应用在预设时间段内生成的第一流量,第一流量为网络应用基于第一网络协议产生的;
第一分析模块902,用于分析第一流量,确定第一网络协议,以确定第一网络协议对应的第一协议特征码;
第一控制模块903,用于根据第一协议特征码,对网络应用进行流量控制,以控制网络应用通过第一网络协议产生流量;
判断模块904,用于若网络应用正常生成第二流量,判断第二流量是否为网络应用基于第一网络协议生成的流量;
第二分析模块905,用于当第二流量为网络应用基于第一网络协议生成的流量时,继续分析第二流量,并提取补第一网络协议对应的第一协议特征码;
第三分析模块906,用于当第二流量不为所述网络应用利用所述第一网络协议生成的流量时,分析第二流量,确定生成第二流量的第二网络协议,以确定第二网络协议对应的第二协议特征码;
第二控制模块907,用于根据第二协议特征码,对网络应用进行流量控制,直至网络应用能够正常使用。
本申请实施例提供的网络流分类控制装置,通过分析网络应用生成的流量,可以依次确认网络应用在使用时会利用的多个不同的网络协议;进而分别对多个不同的网络协议进行控制,控制每个网络协议所生成的流量,实现对网络流量的分类和控制,避免对网络应用流量识别不全面和控制不准确的问题。
在本申请的另一些实施例中,第一控制模块903根据第一协议特征码,对网络应用进行流量控制,以控制网络应用通过第一网络协议产生流量,包括:
根据所述第一协议特征码,判断网络应用生成的流量是否为,网络应用基于第一网络协议生成的流量;若是,则对网络应用基于第一网络协议生成的流量进行丢包或不予转发处理。
在本申请的另一些实施例中,第三分析模块906分析第二流量,确定生成第二流量的第二网络协议对应的第二协议特征码,包括:
获取第二流量中的域名信息、数据头部特征、数据负载部分特征和端口特征中的至少一种信息,以确定第二网络协议的第二特征信息;根据第二特征信息和对应表,确定与第二特征信息对应的第二网络协议,第二特征信息为第二网络协议对应的第二协议特征码。
本申请还提供一种服务器,其集成了本申请实施例所提供的任一种网络流量分类控制装置,如图10所示,其示出了本申请实施例所涉及到的服务器的结构示意图,具体来讲:
该服务器可以包括一个或者一个以上处理核心的处理器1001、一个或一个以上计算机可读存储介质的存储单元1002、电源1003和输入单元1004等部件。本领域技术人员可以理解,图10中示出的服务器结构并不构成对服务器的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。其中:
处理器1001是该服务器的控制中心,基于各种接口和线路连接整个服务器的各个部分,通过运行或执行存储在存储单元1002内的软件程序和/或模块,以及调用存储在存储单元1002内的数据,执行服务器的各种功能和处理数据,从而对服务器进行整体监控。可选的,处理器1001可包括一个或多个处理核心;优选的,处理器1001可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器1001中。
存储单元1002可用于存储软件程序以及模块,处理器1001通过运行存储在存储单元1002的软件程序以及模块,从而执行各种功能应用以及数据处理。存储单元1002可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据服务器的使用所创建的数据等。此外,存储单元1002可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。相应地,存储单元1002还可以包括存储器控制器,以提供处理器1001对存储单元1002的访问。
服务器还包括给各个部件供电的电源1003,优选的,电源1003可以通过电源管理系统与处理器1001逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。电源1003还可以包括一个或一个以上的直流或交流电源、再充电系统、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。
该服务器还可包括输入单元1004,该输入单元1004可用于接收输入的数字或字符信息,以及生成与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。
尽管未示出,服务器还可以包括显示单元等,在此不再赘述。具体在本实施例中,服务器中的处理器1001会按照如下的指令,将一个或一个以上的应用程序的进程对应的可执行文件加载到存储单元1002中,并由处理器1001来运行存储在存储单元1002中的应用程序,从而实现各种功能,如下:
获取网络应用在预设时间段内生成的第一流量,第一流量为网络应用基于第一网络协议产生的;分析第一流量,确定第一网络协议,以确定第一网络协议对应的第一协议特征码;根据第一协议特征码,对网络应用进行流量控制,以控制网络应用通过第一网络协议产生流量;若网络应用正常生成第二流量,判断第二流量是否为网络应用基于第一网络协议生成的流量;当第二流量为网络应用基于第一网络协议生成的流量时,继续分析第二流量,并提取补全第一网络协议对应的第一协议特征码;当第二流量不为网络应用利用第一网络协议生成的流量时,分析第二流量,确定生成第二流量的第二网络协议,以确定第二网络协议对应的第二协议特征码;根据第二协议特征码,对网络应用进行流量控制,以控制网络应用通过第二网络协议产生流量,直至网络应用没有新的流量生成。
本申请还提供一种计算机可读存储介质,该存储介质可以包括:只读存储器(ROM,Read Only Memory)、随机存取记忆体(RAM,Random Access Memory)、磁盘或光盘等。存储介质存储有计算机程序,该计算机程序被处理器进行加载,以执行本申请实施例所提供的任一种网络流量分类控制方法中的步骤。例如,所述计算机程序被处理器进行加载可以执行如下步骤:
获取网络应用在预设时间段内生成的第一流量,第一流量为网络应用基于第一网络协议产生的;分析第一流量,确定第一网络协议,以确定第一网络协议对应的第一协议特征码;根据第一协议特征码,对网络应用进行流量控制,以控制网络应用通过第一网络协议产生流量;当第二流量为网络应用基于第一网络协议生成的流量时,继续分析第二流量,并提取补全第一网络协议对应的第一协议特征码;当第二流量不为网络应用利用第一网络协议生成的流量时,分析第二流量,确定生成第二流量的第二网络协议,以确定第二网络协议对应的第二协议特征码;根据第二协议特征码,对网络应用进行流量控制,以控制网络应用通过第二网络协议产生流量,直至网络应用没有新的流量生成。
需要说明的是,本申请实施例方法由于是在电子设备中执行,各电子设备的处理对象均以数据或信息的形式存在,例如时间,实质为时间信息,可以理解的是,后续实施例中若提及尺寸、数量、位置等,均为对应的数据存在,以便电子设备进行处理,具体此处不作赘述。
以上对本申请实施例所提供的一种网络流量分类控制方法、装置、服务器及存储介质进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的技术人员,依据本发明的思想,在具体实施方式及网络应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (10)
1.一种网络流量分类控制方法,其特征在于,所述方法包括:
获取网络应用在预设时间段内生成的第一流量,所述第一流量为所述网络应用基于第一网络协议产生的;
分析所述第一流量,确定所述第一网络协议,以确定所述第一网络协议对应的第一协议特征码;
根据所述第一协议特征码,对所述网络应用进行流量控制,以对所述网络应用通过所述第一网络协议产生的流量进行丢包或不予处理;
若所述网络应用正常生成第二流量,判断所述第二流量是否为所述网络应用基于所述第一网络协议生成的流量;
当第二流量为所述网络应用基于所述第一网络协议生成的流量时,继续分析所述第二流量,并提取补全所述第一网络协议对应的所述第一协议特征码;
当第二流量不为所述网络应用利用所述第一网络协议生成的流量时,分析所述第二流量,确定生成所述第二流量的第二网络协议,以确定所述第二网络协议对应的第二协议特征码;
根据补全后的第一协议特征码以及所述第二协议特征码,对所述网络应用进行流量控制,以对所述网络应用通过所述第二网络协议和所述补全后的第一协议特征码产生的流量进行丢包或不予处理,进行多次重复循环操作,直至所述网络应用无法实现所述网络应用对应的功能,实现对不同的网络协议的控制。
2.根据权利要求1所述的网络流量分类控制方法,其特征在于,所述分析所述第一流量,确定所述第一网络协议,以确定所述第一网络协议对应的第一协议特征码,包括:
获取所述第一流量中的域名信息. 数据头部特征. 数据负载部分特征和端口特征中的至少一种信息;
根据所述第一流量中的域名信息. 数据头部特征. 数据负载部分特征和端口特征中的至少一种信息,以确定所述第一网络协议的第一特征信息;
获取预设的特征信息和网络协议之间的对应表;
根据所述第一特征信息和所述对应表,确定与所述第一特征信息对应的第一网络协议,所述第一特征信息为所述第一网络协议对应的第一协议特征码。
3.根据权利要求2所述的网络流量分类控制方法,其特征在于,所述根据所述第一协议特征码,对所述网络应用进行流量控制,以控制所述网络应用通过所述第一网络协议产生流量,包括:
根据所述第一协议特征码,判断所述网络应用生成的流量是否为,所述网络应用基于所述第一网络协议生成的流量;
若是,则对所述网络应用基于所述第一网络协议生成的流量进行丢包或不予转发处理。
4.根据权利要求2所述的网络流量分类控制方法,其特征在于,所述当第二流量不为所述网络应用利用所述第一网络协议生成的流量时,分析所述第二流量,确定生成所述第二流量的第二网络协议,以确定所述第二网络协议对应的第二协议特征码,包括:
获取所述第二流量中的域名信息. 数据头部特征. 数据负载部分特征和端口特征中的至少一种信息,以确定所述第二网络协议的第二特征信息;
根据所述第二特征信息和所述对应表,确定与所述第二特征信息对应的第二网络协议,所述第二特征信息为所述第二网络协议对应的第二协议特征码。
5.根据权利要求1所述的网络流量分类控制方法,其特征在于,所述方法还包括:
获取第一流量控制策略,所述第一流量控制策略包括:放行所述网络应用基于所述第一网络协议生成的第一目标流量,对所述网络应用生成的流量中除所述第一目标流量之外的其他流量进行丢包或不予转发处理;
基于所述第一流量控制策略对所述网络应用进行流量控制;
获取所述网络应用不能正常使用时丢包的第三流量;
判断所述第三流量对应的第三网络协议;
根据所述第三网络协议,更新所述第一流量控制策略,得到第二流量控制策略;
基于所述第二流量控制策略重新对所述网络应用进行流量控制,进行多次重复循环操作,直至所述网络应用能实现所述网络应用对应的功能,实现对不同的网络协议的控制。
6.根据权利要求5所述的网络流量分类控制方法,其特征在于,所述根据所述第三网络协议,更新所述第一流量控制策略,得到第二流量控制策略,包括:
放行所述网络应用利用所述第三网络协议生成的流量;
将放行所述网络应用利用所述第三网络协议生成的流量,更新至所述第一流量控制策略,得到第二流量控制策略。
7.根据权利要求5所述的网络流量分类控制方法,其特征在于,所述基于所述第二流量控制策略重新对所述网络应用进行流量控制,直至所述网络应用能正常使用,包括:
放行所述网络应用利用所述第三网络协议生成的流量;
重新获取所述网络应用不能正常使用时丢包的第四流量;
判断所述第四流量对应的第四网络协议;
放行所述网络应用基于所述第四网络协议生成的流量,直至所述网络应用能正常使用。
8.一种网络流量分类控制装置,其特征在于,所述装置包括:
获取模块,用于获取网络应用在预设时间段内生成的第一流量,所述第一流量为所述网络应用基于第一网络协议产生的;
第一分析模块,用于分析所述第一流量,确定所述第一网络协议,以确定所述第一网络协议对应的第一协议特征码;
第一控制模块,用于根据所述第一协议特征码,对所述网络应用进行流量控制,以对所述网络应用通过所述第一网络协议产生的流量进行丢包或不予处理;
判断模块,用于若所述网络应用正常生成第二流量,判断所述第二流量是否为所述网络应用基于所述第一网络协议生成的流量;
第二分析模块,用于当第二流量为所述网络应用基于所述第一网络协议生成的流量时,继续分析所述第二流量,并提取补全所述第一网络协议对应的所述第一协议特征码;
第三分析模块,用于当第二流量不为所述网络应用利用所述第一网络协议生成的流量时,分析所述第二流量,确定生成所述第二流量的第二网络协议,以确定所述第二网络协议对应的第二协议特征码;
第二控制模块,用于根据补全后的第一协议特征码以及所述第二协议特征码,对所述网络应用进行流量控制,以对所述网络应用通过所述第二网络协议和所述补全后的第一协议特征码产生的流量进行丢包或不予处理,进行多次重复循环操作,直至所述网络应用无法实现所述网络应用对应的功能,实现对不同的网络协议的控制。
9.一种服务器,其特征在于,所述服务器包括:
一个或多个处理器;
存储器;以及
一个或多个网络应用程序,其中所述一个或多个网络应用程序被存储于所述存储器中,并配置为由所述处理器执行以实现权利要求1至7中任一项所述的网络流量分类控制方法。
10.一种计算机可读存储介质,其特征在于,其上存储有计算机程序,所述计算机程序被处理器进行加载,以执行权利要求1至7任一项所述的网络流量分类控制方法中的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110295808.7A CN113242205B (zh) | 2021-03-19 | 2021-03-19 | 网络流量分类控制方法、装置、服务器及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110295808.7A CN113242205B (zh) | 2021-03-19 | 2021-03-19 | 网络流量分类控制方法、装置、服务器及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113242205A CN113242205A (zh) | 2021-08-10 |
CN113242205B true CN113242205B (zh) | 2022-07-01 |
Family
ID=77130334
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110295808.7A Active CN113242205B (zh) | 2021-03-19 | 2021-03-19 | 网络流量分类控制方法、装置、服务器及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113242205B (zh) |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101547207A (zh) * | 2009-05-07 | 2009-09-30 | 杭州迪普科技有限公司 | 一种基于应用行为模式的协议识别控制方法和设备 |
CN102045363B (zh) * | 2010-12-31 | 2013-10-09 | 华为数字技术(成都)有限公司 | 网络流量特征识别规则的建立方法、识别控制方法及装置 |
CN109756512B (zh) * | 2019-02-14 | 2021-08-13 | 深信服科技股份有限公司 | 一种流量应用识别方法、装置、设备及存储介质 |
US11088952B2 (en) * | 2019-06-12 | 2021-08-10 | Juniper Networks, Inc. | Network traffic control based on application path |
CN111277570A (zh) * | 2020-01-10 | 2020-06-12 | 中电长城网际系统应用有限公司 | 数据的安全监测方法和装置、电子设备、可读介质 |
CN111726264B (zh) * | 2020-06-18 | 2021-11-19 | 中国电子科技集团公司第三十六研究所 | 网络协议变种检测方法、装置、电子设备和存储介质 |
CN111917777B (zh) * | 2020-08-03 | 2023-04-18 | 中国电子科技集团公司第三十六研究所 | 网络数据解析方法、装置和电子设备 |
-
2021
- 2021-03-19 CN CN202110295808.7A patent/CN113242205B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN113242205A (zh) | 2021-08-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9716645B2 (en) | Systems and methods for content type classification | |
US9467360B2 (en) | System, device and method for managing network traffic by using monitoring and filtering policies | |
CN108259425A (zh) | 攻击请求的确定方法、装置及服务器 | |
US11336545B2 (en) | Network device measurements employing white boxes | |
CN108718347A (zh) | 一种域名解析方法、系统、装置及存储介质 | |
CN112165445B (zh) | 用于检测网络攻击的方法、装置、存储介质及计算机设备 | |
WO2024060408A1 (zh) | 网络攻击检测方法和装置、设备及存储介质 | |
CN112769633A (zh) | 一种代理流量检测方法、装置、电子设备及可读存储介质 | |
US10775751B2 (en) | Automatic generation of regular expression based on log line data | |
CN113810408A (zh) | 网络攻击组织的探测方法、装置、设备及可读存储介质 | |
CN117176802B (zh) | 一种业务请求的全链路监控方法、装置、电子设备及介质 | |
US20130305090A1 (en) | Test configuration resource manager | |
CN113242205B (zh) | 网络流量分类控制方法、装置、服务器及存储介质 | |
US11595419B2 (en) | Communication monitoring system, communication monitoring apparatus, and communication monitoring method | |
CN112688924A (zh) | 网络协议分析系统 | |
CN103326892B (zh) | Web接口的操作方法及装置 | |
CN114553546B (zh) | 基于网络应用的报文抓取的方法和装置 | |
CN108363922A (zh) | 一种自动化恶意代码仿真检测方法及系统 | |
CN116260747A (zh) | 终端测试设备的监测方法、装置及电子设备 | |
CN114726763A (zh) | Dpi系统的业务识别能力的检测方法及系统 | |
CN114244755B (zh) | 一种资产探测方法、装置、设备及存储介质 | |
US20170214732A1 (en) | Techniques to detect and react to proxy interference | |
Tung et al. | VoIP packets filtering for mobile instant messaging using N-gram models | |
CN116527541A (zh) | 网络交易延迟影响时间预测方法、装置、设备及介质 | |
Ognibene | Toward efficient DDoS detection with eBPF |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |