本申请涉及通信,更具体地说,涉及一种异常流量识别方法、装置及一种电子设备和一种计算机可读存储介质。
背景技术:
1、相关技术中的异常流量识别方法,采用同一线程进行异常流量的识别和结果上报,也即在进行异常流量识别时,一旦识别出异常流量,则需要进行结果上报,结果上报会导致线程阻塞。为了避免结果上报导致无法继续进行流量识别,在相关技术中,会开辟多条线程,保证在一条线程阻塞时,可以通过另一线程实现流量识别以及结果上报。但这种方式显然会由于系统维护的线程数量过多使得资源消耗比较大。
2、因此,如何减少异常流量识别过程中的资源消耗是本领域技术人员需要解决的技术问题。
技术实现思路
1、本申请的目的在于提供一种异常流量识别方法、装置及一种电子设备和一种计算机可读存储介质,减少了异常流量识别过程中的资源消耗。
2、为实现上述目的,本申请提供了一种异常流量识别方法,应用于异常流量识别模块,所述异常流量识别模块包括识别线程和结果上报线程,所述方法包括:
3、创建识别线程以及结果上报线程;
4、利用所述识别线程进行异常流量识别;
5、利用所述结果上报线程将所述识别线程的识别结果上报至管理平台。
6、其中,所述方法还包括:
7、读取配置信息,以获取识别线程数量以及结果上报线程数量;
8、相应地,所述创建识别线程以及结果上报线程,包括:
9、根据所述识别线程数量创建识别线程,以及,根据所述结果上报线程数量创建结果上报线程。
10、其中,所述识别线程包括tcp识别线程以及udp识别线程;所述tcp识别线程通过针对tcp协议的异常流量识别方法进行异常流量识别,所述udp识别线程通过针对udp协议的异常流量识别方法进行异常流量识别;
11、相应地,所述方法还包括:
12、读取配置信息,以获取tcp识别线程数量以及udp识别线程数量;
13、相应地,所述创建识别线程,包括:
14、根据所述tcp识别线程数量创建tcp识别线程,以及根据所述udp识别线程数量创建udp识别线程。
15、其中,所述结果上报线程包括tcp结果上报线程以及udp结果上报线程;所述tcp结果上报线程对tcp识别线程的识别结果上报给管理平台,所述udp结果上报线程对udp识别线程的识别结果上报给管理平台;
16、相应地,所述方法还包括:
17、获取tcp结果上报线程数量以及udp结果上报线程数量;
18、相应地,所述创建结果上报线程,包括:
19、根据所述tcp结果上报线程数量创建tcp结果上报线程,以及根据所述udp结果上报线程数量创建udp结果上报线程。
20、其中,还包括:
21、每间隔一段时间,获取识别线程中的空闲线程比例,以及,结果上报线程的空闲线程比例,并根据得到的空闲线程比例,增加或减少相应的线程数量。
22、其中,所述异常流量识别模块还包括任务监听线程,所述方法还包括:
23、利用所述任务监听线程从特征提取模块持续接收以流为单位的特征数据;其中,流与五元组一一对应;
24、当满足预设条件时,利用所述任务监听线程基于接收到的特征数据创建识别任务,并将所述识别任务加入识别任务队列中;其中,所述预设条件包括任务流数达到第一预设值或任务生存时间达到第二预设值;
25、相应地,所述利用所述识别线程进行异常流量识别,包括:
26、利用所述识别线程从所述识别任务队列中取出识别任务,基于取出的识别任务中的特征数据进行异常流量识别;
27、所述利用所述结果上报线程将所述识别线程的识别结果上报至管理平台,包括:
28、利用所述结果上报线程从结果上报任务队列中取出结果上报任务,并将取出的结果上报任务中的识别结果上报至管理平台;其中,所述识别结果存储至结果上报任务队列中。
29、其中,所述识别任务包括tcp识别任务以及udp识别任务;所述识别线程包括tcp识别线程以及udp识别线程;
30、相应地,在所述利用所述任务监听线程从特征提取模块持续接收以流为单位的特征数据之后,包括:
31、根据所述流的五元组,或者,与所述特征提取模块通信时自定义数据格式,确定所述流量的协议类型,所述协议类型包括tcp协议以及udp协议;
32、相应地,所述利用所述任务监听线程基于接收到的特征数据创建识别任务,包括:
33、利用所述任务监听线程基于接收到的特征数据,以及协议类型,创建识别任务,所述识别任务包括tcp识别任务以及udp识别任务。
34、为实现上述目的,本申请提供了一种异常流量识别装置,应用于异常流量识别模块,所述异常流量识别模块包括识别线程和结果上报线程,所述装置包括:
35、创建单元,用于创建识别线程以及结果上报线程;
36、识别单元,用于利用所述识别线程进行异常流量识别;
37、上报单元,用于利用所述结果上报线程将所述识别线程的识别结果上报至管理平台。
38、为实现上述目的,本申请提供了一种电子设备,包括:
39、存储器,用于存储计算机程序;
40、处理器,用于执行所述计算机程序时实现如上述异常流量识别方法的步骤。
41、为实现上述目的,本申请提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上述异常流量识别方法的步骤。
42、为实现上述目的,本申请提供了一种计算机程序产品,包含指令,当所述计算机程序产品由计算机执行时,所述指令使计算机执行如上述异常流量识别方法的步骤。
43、通过以上方案可知,本申请提供的一种异常流量识别方法,应用于异常流量识别模块,所述异常流量识别模块包括识别线程和结果上报线程,所述方法包括:创建识别线程以及结果上报线程;利用所述识别线程进行异常流量识别;利用所述结果上报线程将所述识别线程的识别结果上报至管理平台。
44、本申请提供的异常流量识别方法,将识别异常流量和结果上报分别作为独立的线程拆分执行,也即分别创建识别线程和结果上报线程,利用识别线程进行异常流量识别,利用结果上报线程进行识别结果的上报,从而使得在结果上报线程阻塞时,还能够采用识别线程继续进行异常流量识别,使得流量识别以及结果上报两个过程互相不影响,能够分别对二者数量分别配置,所以相比现有技术,可以减少系统维护的总的线程数量,进而减少异常流量识别过程中的资源消耗。本申请还公开了一种异常流量识别装置及一种电子设备和一种计算机可读存储介质,同样能实现上述技术效果。
45、应当理解的是,以上的一般描述和后文的细节描述仅是示例性的,并不能限制本申请。
1.一种异常流量识别方法,其特征在于,应用于异常流量识别模块,所述异常流量识别模块包括识别线程和结果上报线程,所述方法包括:
2.根据权利要求1所述的异常流量识别方法,其特征在于,所述方法还包括:
3.根据权利要求1所述的异常流量识别方法,其特征在于,所述识别线程包括tcp识别线程以及udp识别线程;所述tcp识别线程通过针对tcp协议的异常流量识别方法进行异常流量识别,所述udp识别线程通过针对udp协议的异常流量识别方法进行异常流量识别;
4.根据权利要求3所述的异常流量识别方法,其特征在于,所述结果上报线程包括tcp结果上报线程以及udp结果上报线程;所述tcp结果上报线程对tcp识别线程的识别结果上报给管理平台,所述udp结果上报线程对udp识别线程的识别结果上报给管理平台;
5.根据权利要求1所述的异常流量识别方法,其特征在于,还包括:
6.根据权利要求1至5任一项所述异常流量识别方法,其特征在于,所述异常流量识别模块还包括任务监听线程,所述方法还包括:
7.根据权利要求6所述的异常流量识别方法,其特征在于,所述识别任务包括tcp识别任务以及udp识别任务;所述识别线程包括tcp识别线程以及udp识别线程;
8.一种异常流量识别装置,其特征在于,应用于异常流量识别模块,所述异常流量识别模块包括识别线程和结果上报线程,所述装置包括:
9.一种电子设备,其特征在于,包括:
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述异常流量识别方法的步骤。