CN111131292B - 报文分流方法、装置、网络安全检测设备及存储介质 - Google Patents
报文分流方法、装置、网络安全检测设备及存储介质 Download PDFInfo
- Publication number
- CN111131292B CN111131292B CN201911401441.1A CN201911401441A CN111131292B CN 111131292 B CN111131292 B CN 111131292B CN 201911401441 A CN201911401441 A CN 201911401441A CN 111131292 B CN111131292 B CN 111131292B
- Authority
- CN
- China
- Prior art keywords
- message
- detection
- processed
- sum
- coefficients
- 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
- H04L47/00—Traffic control in data switching networks
- H04L47/70—Admission control; Resource allocation
- H04L47/83—Admission control; Resource allocation based on usage prediction
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/14—Network analysis or design
- H04L41/145—Network analysis or design involving simulating, designing, planning or modelling of a network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/50—Queue scheduling
- H04L47/62—Queue scheduling characterised by scheduling criteria
- H04L47/625—Queue scheduling characterised by scheduling criteria for service slots or service orders
- H04L47/6255—Queue scheduling characterised by scheduling criteria for service slots or service orders queue load conditions, e.g. longest queue first
-
- 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/72—Admission control; Resource allocation using reservation actions during connection setup
- H04L47/726—Reserving resources in multiple paths to be used simultaneously
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明涉及一种报文分流方法、装置、网络安全检测设备及存储介质,属于通信领域。该方法包括:网络安全检测设备通过获取待处理报文并进行解析,得到报文特征,并根据检测模型检测报文特征,得到与待处理报文对应的检测系数和,然后网络安全检测设备将待处理报文分配给当前的检测系数总和最小的缓存队列进行处理,同时将检测系数和累加到被分配的缓存队列的当前的检测系数总和上。由于与检测系数总和最小的缓存队列对应的CPU核心的负载压力最小,因此,待处理报文能够被尽快地处理,此外,还可以使得各个CPU核心的负载达到均衡,从而充分利用每个CPU核心的计算能力。
Description
技术领域
本申请属于通信领域,具体涉及一种报文分流方法、装置、网络安全检测设备及存储介质。
背景技术
网络安全检测设备串接在网络中,用于对经过网络的数据包进行实时检测,并阻断各种网络攻击,网络安全监测设备在网络安全层面起着重要作用。
由于网络安全检测设备在对数据包进行检测的过程需要耗费的检测时间较长,所以,在网络安全检测设备的CPU(Central Processing Unit,中央处理器)为多核的前提下,为了提高检测效率,通常将网络安全检测设备的多个CPU核心设置为分工协作,即一部分CPU核心用来管理收发数据包,将数据包放入各个缓存队列,剩余的每个CPU核心从与自身对应的缓存队列中读取数据,使得各个CPU核心以并行处理的方式对读取到的数据进行检测。
在上述前提下,需要将流经网络安全检测设备的数据包合理地分流放入各个缓存队列,以便充分利用每个CPU核心的计算能力,尽可能地保障数据包尽快得到处理。
在现有技术中,通常根据每个CPU核心的使用率对流经网络安全检测设备的数据包进行分流,即将当前获取到的数据包放入CPU使用率最低的CPU核心对应的缓存队列。该方案虽然能够动态地将数据包放入不同的缓存队列,但是CPU使用率反应的是已经发生的事情,各个CPU核心在过去的使用率不能代表各个CPU核心在将来的使用率,而将数据包放入缓存队列后,CPU核心从缓存队列读取数据包并进行检测是将来发生的事情,因此,以过去的CPU的使用率为条件作为数据包分流的依据,可能会导致各个CPU核心的负载不均衡,未能充分利用每个CPU核心的计算能力。
发明内容
有鉴于此,本申请的目的在于提供一种报文分流方法、装置、网络安全检测设备及存储介质,尽量使得各个CPU核心的负载达到均衡,充分利用每个CPU核心的计算能力。
本申请的实施例是这样实现的:
第一方面,本申请实施例提供一种报文分流方法,应用于网络安全检测设备,所述网络安全检测设备包括多个缓存队列及CPU,所述CPU包括多个CPU核心,每个所述缓存队列对应不同的CPU核心,所述方法包括:获取待处理报文并进行解析,得到报文特征;根据预先建立的检测模型检测所述报文特征,得到与所述待处理报文对应的检测系数和,所述检测系数和用于表征所述待处理报文所需要消耗的CPU资源;将所述待处理报文分配给当前的检测系数总和最小的缓存队列进行处理;将所述检测系数和累加到被分配的缓存队列的当前的检测系数总和上,对所述被分配的缓存队列的当前的检测系数总和进行更新。
由于与检测系数总和最小的缓存队列对应的CPU核心的负载压力最小,因此,待处理报文能够被尽快地处理,此外,还可以使得各个CPU核心的负载达到均衡,从而充分利用每个CPU核心的计算能力。
结合第一方面实施例,在一种可能的实施方式中,在所述将所述待处理报文分配给当前的检测系数总和最小的缓存队列进行处理之前,所述方法还包括:确定不存在与所述待处理报文对应的连接信息;相应的,在所述将所述待处理报文分配给当前的检测系数总和最小的缓存队列进行处理之后,所述方法还包括:建立与所述待处理报文对应的连接信息。
结合第一方面实施例,在一种可能的实施方式中,所述方法还包括:在确定存在所述连接信息时,将所述待处理报文分配给所述连接信息建立之时所确定的缓存队列进行处理。
结合第一方面实施例,在一种可能的实施方式中,所述方法还包括:在确定任一缓存队列中的报文出队列时,将该缓存队列的当前的检测系数总和减去出队列的报文的检测系数和,并对该缓存队列的当前的检测系数总和进行更新。
结合第一方面实施例,在一种可能的实施方式中,在所述根据预先建立的检测模型检测所述报文特征,得到与所述待处理报文对应的检测系数和之前,所述方法还包括:测试各种单一报文特征对应的检测系数;将所述各种单一报文特征与其对应的检测系数建立对应关系表保存在所述检测模型内。
结合第一方面实施例,在一种可能的实施方式中,所述根据预先建立的检测模型检测所述报文特征,得到与所述待处理报文对应的检测系数和,包括:将所述待处理报文所包括的报文特征与所述对应关系表内所包括的所述各种单一报文特征进行比对,得到与所述待处理报文所包括的报文特征对应的多个检测系数;将所述多个检测系数进行累加,得到所述检测系数和。
第二方面,本申请实施例提供一种报文分流装置,应用于网络安全检测设备,所述网络安全检测设备包括多个缓存队列及CPU,所述CPU包括多个CPU核心,每个所述缓存队列对应不同的CPU核心,所述装置包括:获取模块、检测模块、分配模块及更新模块。所述获取模块,用于获取待处理报文并进行解析,得到报文特征;所述检测模块,用于根据预先建立的检测模型检测所述报文特征,得到与所述待处理报文对应的检测系数和,所述检测系数和用于表征所述待处理报文所需要消耗的CPU资源;所述分配模块,用于将所述待处理报文分配给当前的检测系数总和最小的缓存队列进行处理;所述更新模块,用于将所述检测系数和累加到被分配的缓存队列的当前的检测系数总和上,对所述被分配的缓存队列的当前的检测系数总和进行更新。
结合第二方面实施例,在一种可能的实施方式中,所述分配模块,用于在确定不存在与所述待处理报文对应的连接信息时,将所述待处理报文分配给当前的检测系数总和最小的缓存队列进行处理;相应的,所述装置还包括建立模块,用于建立与所述待处理报文对应的连接信息。
结合第二方面实施例,在一种可能的实施方式中,所述分配模块,还用于在确定存在所述连接信息时,将所述待处理报文分配给所述连接信息建立之时所确定的缓存队列进行处理。
结合第二方面实施例,在一种可能的实施方式中,所述更新模块,还用于在确定任一缓存队列中的报文出队列时,将该缓存队列的当前的检测系数总和减去出队列的报文的检测系数和,并对该缓存队列的当前的检测系数总和进行更新。
结合第二方面实施例,在一种可能的实施方式中,所述装置还包括测试模块以及保存模块,所述测试模块,用于测试各种单一报文特征对应的检测系数;所述保存模块,用于将所述各种单一报文特征与其对应的检测系数建立对应关系表保存在所述检测模型内。
结合第二方面实施例,在一种可能的实施方式中,所述检测模块,用于将所述待处理报文所包括的报文特征与所述对应关系表内所包括的所述各种单一报文特征进行比对,得到与所述待处理报文所包括的报文特征对应的多个检测系数;将所述多个检测系数进行累加,得到所述检测系数和。
第三方面,本申请实施例还提供一种网络安全检测设备,包括:存储器和处理器,所述存储器和所述处理器连接;所述存储器用于存储程序;所述处理器调用存储于所述存储器中的程序,以执行上述第一方面实施例和/或结合第一方面实施例的任一种可能的实施方式提供的方法。
第四方面,本申请实施例还提供一种非易失性计算机可读取存储介质(以下简称存储介质),其上存储有计算机程序,所述计算机程序被计算机运行时执行上述第一方面实施例和/或结合第一方面实施例的任一种可能的实施方式提供的方法。
本申请的其他特征和优点将在随后的说明书阐述,并且,部分地从说明书中变得显而易见,或者通过实施本申请实施例而了解。本申请的目的和其他优点可通过在所写的说明书以及附图中所特别指出的结构来实现和获得。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。通过附图所示,本申请的上述及其它目的、特征和优势将更加清晰。在全部附图中相同的附图标记指示相同的部分。并未刻意按实际尺寸等比例缩放绘制附图,重点在于示出本申请的主旨。
图1示出了本申请实施例提供的一种网络安全检测设备的结构示意图。
图2示出了本申请实施例提供的一种报文分流方法的流程图之一。
图3示出了本申请实施例提供的一种报文分流方法的流程图之二。
图4示出了本申请实施例提供的一种报文分流装置的结构框图。
标号:100-网络安全检测设备;110-处理器;120-存储器;130-收发器;400-报文分流装置;410-获取模块;420-检测模块;430-分配模块;440-更新模块。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,术语“包括”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
再者,本申请中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。
此外,针对现有技术中的报文分流方法所导致的各个CPU核心的负载不均衡的缺陷是申请人在经过实践并仔细研究后得出的结果,因此,上述缺陷的发现过程以及在下文中本申请实施例针对上述缺陷所提出的解决方案,都应该是申请人在本申请过程中对本申请做出的贡献。
为了解决上述问题,本申请实施例提供一种报文分流方法、装置、网络安全检测设备及存储介质,该方法可以尽量使得各个CPU核心的负载达到均衡,从而可以充分利用每个CPU核心的计算能力。
该技术可采用相应的软件、硬件以及软硬结合的方式实现。以下对本申请实施例进行详细介绍。
首先,参照图1来描述用于实现本申请实施例的报文分流方法、装置的网络安全检测设备100。
网络安全检测设备100可以在获取到报文时对报文进行报文检测,即将报文进行解析,得到报文的报文特征,然后将报文特征与预先设定的恶意报文特征进行比较,通过特征匹配的原则识别出当前获取到的报文是否为恶意数据。
网络安全检测设备100可以包括:处理器110、存储器120、收发器130。其中,处理器110为多核处理器(包括多个CPU核心),每个CPU核心均具备数据管理能力以及数据处理能力,因此,可以将该多核CPU的一部分CPU核心用于数据管理,剩余部分的CPU核心用于数据处理。
此外,在网络安全检测设备100内还形成多个以数据结构的形式而存在的缓存队列。一个缓存队列与一个CPU核心相对应,且各个缓存队列对应的CPU核心均不同。CPU核心可以从与其对应的缓存队列中读取报文,并对读取到的报文进行报文检测,以判断报文是否为恶意数据。
应当注意,图1所示的网络安全检测设备100的组件和结构只是示例性的,而非限制性的,根据需要,网络安全检测设备100也可以具有其他组件和结构。
处理器110、存储器120、收发器130以及其他可能出现于网络安全检测设备100的组件相互之间直接或间接地电性连接,以实现数据的传输或交互。例如,处理器110、存储器120、收发器130以及其他可能出现的组件相互之间可通过一条或多条通讯总线或信号线实现电性连接。
存储器120用于存储程序,例如存储有后文出现的报文分流方法对应的程序或者后文出现的报文分流装置。可选的,当存储器120内存储有报文分流装置时,报文分流装置包括至少一个可以以软件或固件(firmware)的形式存储于存储器120中的软件功能模块。可选的,报文分流装置所包括软件功能模块也可以固化在网络安全检测设备100的操作系统(operatingsystem,OS)中。当然,上述缓存队列也可以存储在存储器120内。
收发器130用于收发报文。
处理器110用于执行存储器120中存储的可执行模块,例如报文分流装置包括的软件功能模块或计算机程序。当处理器110在接收到执行指令后,可以执行计算机程序,例如执行:获取待处理报文并进行解析,得到报文特征;根据预先建立的检测模型检测所述报文特征,得到与所述待处理报文对应的检测系数和,所述检测系数和用于表征所述待处理报文所需要消耗的CPU资源;将所述待处理报文分配给当前的检测系数总和最小的缓存队列进行处理;将所述检测系数和累加到被分配的缓存队列的当前的检测系数总和上,对所述被分配的缓存队列的当前的检测系数总和进行更新。
当然,本申请任一实施例所揭示的方法都可以应用于处理器110中,或者由处理器110实现。
下面将针对本申请所提供的报文分流方法进行介绍。
请参阅图2,本申请实施例提供一种应用于上述网络安全检测设备100的报文分流方法,下面将结合图2对其所包含的步骤进行说明。
步骤S110:获取待处理报文并进行解析,得到报文特征。
网络安全检测设备100在获取到待处理报文后,对报文进行解析,得到与待处理报文对应的多个报文特征,其中,多个报文特征包括但不限于本条报文的报文长度、本条报文所在的数据流的报文发送间隔,本条报文所在的数据流的报文发送持续时间、本条报文所在的数据流预计剩余发包数、本条报文的协议类型、本条报文是否携带协议选项、本条报文的目的端口。值得指出的是,当网络安全检测设备100后续对待处理报文进行报文检测时所需获取的报文特征可以直接来源于此处,即对于网络安全检测设备100而言,在执行步骤S110时对于报文特征的获取并没有占用额外的处理时间以及计算资源。
步骤S120:根据预先建立的检测模型检测所述报文特征,得到与所述待处理报文对应的检测系数和。
其中,某个报文的检测系数和用于表征该报文被CPU核心执行报文检测流程时所需要消耗的CPU资源。
值得指出的是,开发人员预先构建大量样本报文,每个样本报文包括一种单一报文特征,其中,单一报文特征为上述报文特征中的一种。
在此基础上,开发人员将大量的样本报文输入检测模型,使得检测模型模拟报文检测流程,从而输出与各个样本报文对应的检测系数,并建立对应关系表进行保存。其中,与某个样本报文对应的检测系数用于度量该样本报文所包括的单一报文特征被处理时所需占用的CPU资源。
可选的,检测系数可以是检测模型在执行检测流程时所需的时间,还可以是检测模型在执行检测流程时所需要的功率等,此处不做具体限定。在一种可选的实施方式中,当检测系数为时间时,与某个单一报文特征对应的检测系数的值越大,该单一报文特征被处理时所需占用的CPU资源越多。
当后续网络安全检测设备100获取到待处理报文的报文特征后,通过保存有上述对应关系表的检测模型检测待处理报文的报文特征,从而得到与待处理报文所包括的报文特征对应的多个检测系数,然后将得到的多个检测系数进行累加,得到与待处理报文对应的检测系数和。其中,该检测系数和用于表征该待处理报文被执行报文检测流程时所需占用的CPU资源。
步骤S130:将所述待处理报文分配给当前的检测系数总和最小的缓存队列进行处理。
值得指出的是,每个缓存队列的检测系数总和等于与其对应的缓存队列内未被CPU核心读取的所有报文的检测系数和之和。由于报文的检测系数和用于表征报文被CPU核心处理时所需占用的CPU资源,因此,某个缓存队列对应的检测系数总和用于表征与该缓存队列对应的CPU核心即将被消耗的CPU资源,属于对CPU核心的利用率的预测。
还值得指出的是,在初始状态下,每个缓存队列的检测系数总和为0。此外,每个缓存队列的检测系数总和实时变动。一旦某个缓存队列被分配某个报文后,该缓存队列的当前的检测系数总和等于该缓存队列在未获取到该报文前的检测系数总和加上与该报文对应的检测系数和。
当在多个缓存队列中,某个缓存队列的当前的检测系数总和最小时,表征与该缓存对应的CPU核心在将来一段时间内的负载也最小,相应的,与之对应的CPU利用率也较低(假设各个CPU核心的运算能力相同)。基于此,在一种可选的实施方式下,当网络安全检测设备100在得到与待处理报文对应的检测系数和后,网络安全检测设备100可以直接将待处理报文分配给当前的检测系数总和最小的缓存队列。由于与检测系数总和最小的缓存队列对应的CPU核心的负载压力最小,因此,待处理报文能够被尽快地处理,此外,也可以在一定程度上提高与检测系数总和最小的缓存队列对应的CPU核心的CPU利用率。
当网络安全检测设备100每获取到待处理报文时都按照上述流程将待处理报文分配给检测系数总和最小的缓存队列后,可以尽可能地提升网络安全检测设备100的性能。
可选的,当某条数据流的报文第一次流经网络安全检测设备100时,网络安全检测设备100将基于该第一次获取到的报文建立连接信息,连接信息用于表征该条流的报文的存放位置。在这种前提下,作为另一种可选的实施方式,网络安全检测设备100可以在确定不存在与待处理报文对应的连接信息时,将待处理报文分配给当前的检测系数总和最小的缓存队列进行处理。在此之后,网络安全检测设备100建立与待处理报文对应的连接信息。
当然,在这种实施方式下,若网络安全检测设备100在获取到待处理报文时,确定存在与待处理报文对应的连接信息,此时,网络安全检测设备100可以将待处理报文分配给连接信息建立之时所确定的缓存队列进行处理,即,使得同一条流的报文被同一个CPU核心处理。由于同一条流的报文都存放在相邻位置,因此,将属于同一条流的报文交由同一个CPU核心进行处理可以提高CPU的缓存速率,相应的,CPU的处理速率也得到相应的提高。
步骤S140:将所述检测系数和累加到被分配的缓存队列的当前的检测系数总和上,对所述被分配的缓存队列的当前的检测系数总和进行更新。
上文指出,每个缓存队列的检测系数总和实时变动。因此,在将待处理报文分配给某个缓存队列后,该缓存队列的当前的检测系数总和等于该缓存队列在未获取到该报文前的检测系数总和加上与该待处理报文对应的检测系数和。
此外,作为一种可选的实施方式,请参看图3,所述方法还包括:
步骤S150:在确定任一缓存队列中的报文出队列时,将该缓存队列的当前的检测系数总和减去出队列的报文的检测系数和,并对该缓存队列的当前的检测系数总和进行更新。
当某个CPU核心读取与之对应的缓存队列中的某个报文后,该报文将从缓存队列中出队列。此时,该缓存队列的当前的检测系数总和等于报文出队列前的检测系数总和减去出队列的报文的检测系数和。
CPU核心读取某个报文后,CPU核心将对该报文进行报文检测。若某个报文的检测结果为恶意数据,网络安全检测设备100将把该报文丢弃,若某个报文的检测结果不为恶意数据,网络安全检测设备100将把该报文放行。
其中,值得指出的是,步骤S150可以在任何时机执行。
本申请实施例所提供的一种报文分流方法,网络安全检测设备通过获取待处理报文并进行解析,得到报文特征,并根据检测模型检测报文特征,得到与待处理报文对应的检测系数和,然后网络安全检测设备将待处理报文分配给当前的检测系数总和最小的缓存队列进行处理,同时将检测系数和累加到被分配的缓存队列的当前的检测系数总和上。由于与检测系数总和最小的缓存队列对应的CPU核心的负载压力最小,因此,待处理报文能够被尽快地处理,此外,还可以使得各个CPU核心的负载达到均衡,从而充分利用每个CPU核心的计算能力。
如图4所示,本申请实施例还提供一种报文分流装置400,报文分流装置400可以包括:获取模块410、检测模块420、分配模块430及更新模块440。
所述获取模块410,用于获取待处理报文并进行解析,得到报文特征;
所述检测模块420,用于根据预先建立的检测模型检测所述报文特征,得到与所述待处理报文对应的检测系数和,所述检测系数和用于表征所述待处理报文所需要消耗的CPU资源;
所述分配模块430,用于将所述待处理报文分配给当前的检测系数总和最小的缓存队列进行处理;
所述更新模块440,用于将所述检测系数和累加到被分配的缓存队列的当前的检测系数总和上,对所述被分配的缓存队列的当前的检测系数总和进行更新。
在一种可能的实施方式中,所述分配模块430,用于在确定不存在与所述待处理报文对应的连接信息时,将所述待处理报文分配给当前的检测系数总和最小的缓存队列进行处理;相应的,所述装置还包括建立模块,用于建立与所述待处理报文对应的连接信息。
在一种可能的实施方式中,所述分配模块430,还用于在确定存在所述连接信息时,将所述待处理报文分配给所述连接信息建立之时所确定的缓存队列进行处理。
在一种可能的实施方式中,所述更新模块440,还用于在确定任一缓存队列中的报文出队列时,将该缓存队列的当前的检测系数总和减去出队列的报文的检测系数和,并对该缓存队列的当前的检测系数总和进行更新。
在一种可能的实施方式中,所述装置还包括测试模块以及保存模块,所述测试模块,用于测试各种单一报文特征对应的检测系数;所述保存模块,用于将所述各种单一报文特征与其对应的检测系数建立对应关系表并将对应关系表保存在所述检测模型内。
在一种可能的实施方式中,所述检测模块,用于将所述待处理报文所包括的报文特征与所述对应关系表内所包括的所述各种单一报文特征进行比对,得到与所述待处理报文所包括的报文特征对应的多个检测系数;将所述多个检测系数进行累加,得到所述检测系数和。
本申请实施例所提供的报文分流装置400,其实现原理及产生的技术效果和前述方法实施例相同,为简要描述,装置实施例部分未提及之处,可参考前述方法实施例中相应内容。
此外,本申请实施例还提供一种存储介质,该存储介质上存储有计算机程序,该计算机程序被计算机运行时,执行如上述的报文分流方法所包含的步骤。
综上所述,本发明实施例提出的报文分流方法、装置、网络安全检测设备及存储介质,网络安全检测设备通过获取待处理报文并进行解析,得到报文特征,并根据检测模型检测报文特征,得到与待处理报文对应的检测系数和,然后网络安全检测设备将待处理报文分配给当前的检测系数总和最小的缓存队列进行处理,同时将检测系数和累加到被分配的缓存队列的当前的检测系数总和上。由于与检测系数总和最小的缓存队列对应的CPU核心的负载压力最小,因此,待处理报文能够被尽快地处理,此外,还可以使得各个CPU核心的负载达到均衡,从而充分利用每个CPU核心的计算能力。
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本申请的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
另外,在本申请各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,笔记本电脑,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。
Claims (8)
1.一种报文分流方法,其特征在于,应用于网络安全检测设备,所述网络安全检测设备包括多个缓存队列及CPU,所述CPU包括多个CPU核心,每个所述缓存队列对应不同的CPU核心,所述方法包括:
获取待处理报文并进行解析,得到报文特征;
根据预先建立的检测模型检测所述报文特征,得到与所述待处理报文对应的检测系数和,所述检测系数和用于表征所述待处理报文所需要消耗的CPU资源;
将所述待处理报文分配给当前的检测系数总和最小的缓存队列进行处理;
将所述检测系数和累加到被分配的缓存队列的当前的检测系数总和上,对所述被分配的缓存队列的当前的检测系数总和进行更新;
在所述根据预先建立的检测模型检测所述报文特征,得到与所述待处理报文对应的检测系数和之前,所述方法还包括:
测试各种单一报文特征对应的检测系数;
将所述各种单一报文特征与其对应的检测系数建立对应关系表保存在所述检测模型内;
所述根据预先建立的检测模型检测所述报文特征,得到与所述待处理报文对应的检测系数和,包括:
将所述待处理报文所包括的报文特征与所述对应关系表内所包括的所述各种单一报文特征进行比对,得到与所述待处理报文所包括的报文特征对应的多个检测系数;
将所述多个检测系数进行累加,得到所述检测系数和。
2.根据权利要求1所述的方法,其特征在于,在所述将所述待处理报文分配给当前的检测系数总和最小的缓存队列进行处理之前,所述方法还包括:
确定不存在与所述待处理报文对应的连接信息;
相应的,在所述将所述待处理报文分配给当前的检测系数总和最小的缓存队列进行处理之后,所述方法还包括:
建立与所述待处理报文对应的连接信息。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
在确定存在所述连接信息时,将所述待处理报文分配给所述连接信息建立之时所确定的缓存队列进行处理。
4.根据权利要求1-3任一项所述的方法,其特征在于,所述方法还包括:
在确定任一缓存队列中的报文出队列时,将该缓存队列的当前的检测系数总和减去出队列的报文的检测系数和,并对该缓存队列的当前的检测系数总和进行更新。
5.一种报文分流装置,其特征在于,应用于网络安全检测设备,所述网络安全检测设备包括多个缓存队列及CPU,所述CPU包括多个CPU核心,每个所述缓存队列对应不同的CPU核心,所述装置包括:获取模块、检测模块、分配模块及更新模块;
所述获取模块,用于获取待处理报文并进行解析,得到报文特征;
所述检测模块,用于根据预先建立的检测模型检测所述报文特征,得到与所述待处理报文对应的检测系数和,所述检测系数和用于表征所述待处理报文所需要消耗的CPU资源;
所述分配模块,用于将所述待处理报文分配给当前的检测系数总和最小的缓存队列进行处理;
所述更新模块,用于将所述检测系数和累加到被分配的缓存队列的当前的检测系数总和上,对所述被分配的缓存队列的当前的检测系数总和进行更新;
所述装置还包括测试模块以及保存模块,所述测试模块,用于测试各种单一报文特征对应的检测系数;所述保存模块,用于将所述各种单一报文特征与其对应的检测系数建立对应关系表并将对应关系表保存在所述检测模型内;
所述检测模块,用于将所述待处理报文所包括的报文特征与所述对应关系表内所包括的所述各种单一报文特征进行比对,得到与所述待处理报文所包括的报文特征对应的多个检测系数;将所述多个检测系数进行累加,得到所述检测系数和。
6.根据权利要求5所述的装置,其特征在于,所述更新模块,还用于在确定任一缓存队列中的报文出队列时,将该缓存队列的当前的检测系数总和减去出队列的报文的检测系数和,并对该缓存队列的当前的检测系数总和进行更新。
7.一种网络安全检测设备,其特征在于,包括:存储器和处理器,所述存储器和所述处理器连接;
所述存储器用于存储程序;
所述处理器调用存储于所述存储器中的程序,以执行如权利要求1-4中任一项所述的方法。
8.一种存储介质,其特征在于,其上存储有计算机程序,所述计算机程序被计算机运行时执行如权利要求1-4中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911401441.1A CN111131292B (zh) | 2019-12-30 | 2019-12-30 | 报文分流方法、装置、网络安全检测设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911401441.1A CN111131292B (zh) | 2019-12-30 | 2019-12-30 | 报文分流方法、装置、网络安全检测设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111131292A CN111131292A (zh) | 2020-05-08 |
CN111131292B true CN111131292B (zh) | 2022-04-26 |
Family
ID=70505814
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911401441.1A Active CN111131292B (zh) | 2019-12-30 | 2019-12-30 | 报文分流方法、装置、网络安全检测设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111131292B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112532533A (zh) * | 2020-10-30 | 2021-03-19 | 东风汽车集团有限公司 | 一种架构设计前网络负载率的量化方法、电子设备及存储介质 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105373433A (zh) * | 2015-11-25 | 2016-03-02 | 浙江宇视科技有限公司 | 多核cpu负载均衡方法及装置 |
CN106713185A (zh) * | 2016-12-06 | 2017-05-24 | 瑞斯康达科技发展股份有限公司 | 一种多核cpu的负载均衡方法及装置 |
CN107404443A (zh) * | 2017-08-03 | 2017-11-28 | 北京东土军悦科技有限公司 | 队列缓存资源控制方法及装置、服务器及存储介质 |
CN107659515A (zh) * | 2017-09-29 | 2018-02-02 | 曙光信息产业(北京)有限公司 | 报文处理方法、装置、报文处理芯片及服务器 |
CN108092913A (zh) * | 2017-12-27 | 2018-05-29 | 杭州迪普科技股份有限公司 | 一种报文分流的方法和多核cpu网络设备 |
CN109246023A (zh) * | 2018-11-16 | 2019-01-18 | 锐捷网络股份有限公司 | 流量控制方法、网络设备及存储介质 |
CN109901921A (zh) * | 2019-02-22 | 2019-06-18 | 北京致远互联软件股份有限公司 | 任务队列执行时间预测方法、装置及实现装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9639403B2 (en) * | 2013-03-15 | 2017-05-02 | Genband Us Llc | Receive-side scaling in a computer system using sub-queues assigned to processing cores |
-
2019
- 2019-12-30 CN CN201911401441.1A patent/CN111131292B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105373433A (zh) * | 2015-11-25 | 2016-03-02 | 浙江宇视科技有限公司 | 多核cpu负载均衡方法及装置 |
CN106713185A (zh) * | 2016-12-06 | 2017-05-24 | 瑞斯康达科技发展股份有限公司 | 一种多核cpu的负载均衡方法及装置 |
CN107404443A (zh) * | 2017-08-03 | 2017-11-28 | 北京东土军悦科技有限公司 | 队列缓存资源控制方法及装置、服务器及存储介质 |
CN107659515A (zh) * | 2017-09-29 | 2018-02-02 | 曙光信息产业(北京)有限公司 | 报文处理方法、装置、报文处理芯片及服务器 |
CN108092913A (zh) * | 2017-12-27 | 2018-05-29 | 杭州迪普科技股份有限公司 | 一种报文分流的方法和多核cpu网络设备 |
CN109246023A (zh) * | 2018-11-16 | 2019-01-18 | 锐捷网络股份有限公司 | 流量控制方法、网络设备及存储介质 |
CN109901921A (zh) * | 2019-02-22 | 2019-06-18 | 北京致远互联软件股份有限公司 | 任务队列执行时间预测方法、装置及实现装置 |
Also Published As
Publication number | Publication date |
---|---|
CN111131292A (zh) | 2020-05-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP2715539B1 (en) | Distributed computing framework | |
CN106713396B (zh) | 服务器调度方法和系统 | |
CN106452818B (zh) | 一种资源调度的方法和系统 | |
JP4058038B2 (ja) | 負荷監視装置および負荷監視方法 | |
CN108023967B (zh) | 一种数据平衡方法、装置及分布式存储系统中的管理设备 | |
TW201636839A (zh) | 一種實現資源調度的方法與設備 | |
KR102134547B1 (ko) | 리스크 식별 방법, 리스크 식별 장치, 및 클라우드 리스크 식별 장치와 시스템 | |
CN103856337B (zh) | 资源占用率获取方法、提供方法、系统及服务器 | |
CN111045782A (zh) | 日志处理方法、装置、电子设备和计算机可读存储介质 | |
US10305974B2 (en) | Ranking system | |
CN113067875B (zh) | 基于微服务网关动态流控的访问方法和装置以及设备 | |
KR101908377B1 (ko) | 계량데이터 관리 시스템 및 컴퓨터 판독가능 기록 매체 | |
CN108572898A (zh) | 一种控制接口的方法、装置、设备、以及存储介质 | |
US20170279654A1 (en) | Data Processing System and Data Processing Method | |
CN116700920A (zh) | 云原生混合部署集群资源调度方法及装置 | |
CN114461407B (zh) | 数据处理方法、装置、分发服务器、系统及存储介质 | |
CN111400045B (zh) | 一种负载均衡方法及装置 | |
CN111131292B (zh) | 报文分流方法、装置、网络安全检测设备及存储介质 | |
CN116909714A (zh) | 任务运行时的慢节点检测方法、装置、电子设备和介质 | |
CN105471938B (zh) | 服务器负载管理方法及装置 | |
CN112000657A (zh) | 数据管理方法、装置、服务器及存储介质 | |
CN113055493B (zh) | 数据包处理方法、装置、系统、调度设备和存储介质 | |
CN108667740A (zh) | 流量控制的方法、装置及系统 | |
CN109165147A (zh) | 日志打印控制方法、装置、系统、后端服务器及前端设备 | |
US20060037018A1 (en) | System, method and software providing an adaptive job dispatch algorithm for large distributed jobs |
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 |