1.本说明书涉及互联网技术领域,尤其涉及一种攻击流量统计方法及装置。
背景技术:2.分布式拒绝服务(distributed denial of service,ddos)攻击作为网络攻击过程中最具代表性的攻击类型之一,是指多台主机联合起来作为攻击平台,利用各种服务请求耗尽被攻击网络的系统资源,使得被攻击网络无法处理合法用户的正常请求,从而造成重大经济损失。
3.相关技术中提出了可以应对以上情况的流量清洗系统,即在ddos威胁影响关键业务和应用之前,通过对流量进行检测并加以清洗,确保网络稳定的运行以及业务的正常开展。所述流量清洗系统包含一统一管理平台以维护服务器接收到的攻击流量信息。当接收到用户发送的查询请求后,统一管理平台基于所述查询请求遍历所述攻击流量信息,以查询符合所述查询请求中描述的查询条件的攻击流量信息。然而,当面对查询时间区间跨度大的查询请求时,以上查询方式由于需要查询大量的攻击流量信息导致查询响应时长过长。为此相关技术中通过引入多线程技术以应对所述查询方式,一定程度上提高了查询效率,缩短了查询响应时间。
技术实现要素:4.有鉴于此,本技术提供一种攻击流量统计方法及装置,以解决相关技术中存在的不足。
5.具体地,本技术是通过如下技术方案实现的:
6.根据本技术实施例的第一方面,提供了一种攻击流量统计方法,其特征在于,应用于流量清洗系统中的统一管理平台,所述流量清洗系统还包括攻击流量检测设备,所述攻击流量检测设备用于对流经目标路由器的流量进行检测,所述方法包括:
7.接收所述攻击流量检测设备发送的流量构成信息,所述流量构成信息由所述攻击流量检测设备根据流量检测结果生成;
8.根据所述流量构成信息生成对应的告警数据,并对所述告警数据进行存储;
9.根据接收到的查询请求,从已存储的告警数据中确定符合所述查询请求中描述的查询条件的目标告警数据。
10.根据本技术实施例的第二方面,提供了一种攻击流量统计装置,其特征在于,应用于流量清洗系统中的统一管理平台,所述流量清洗系统还包括攻击流量检测设备,所述攻击流量检测设备用于对流经目标路由器的流量进行检测,所述装置包括:
11.流量构成信息接收单元,用于接收所述攻击流量检测设备发送的流量构成信息,所述流量构成信息由所述攻击流量检测设备根据流量检测结果生成;
12.告警数据存储单元,用于根据所述流量构成信息生成对应的告警数据,并对所述告警数据进行存储;
13.告警数据查询单元,用于根据接收到的查询请求,从已存储的告警数据中确定符合所述查询请求中描述的查询条件的目标告警数据。
14.根据本技术实施例的第三方面,提供了一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现如第一方面所述的方法的步骤。
15.根据本技术实施例的第四方面,提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如第一方面所述的方法的步骤。
16.在本技术所提供的技术方案中,通过提前统计告警数据,而非接收到查询请求后再进行流量统计,在确保了查询结果低延时的同时实现了快速响应查询请求的技术效果。
17.应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本技术。
附图说明
18.为了更清楚地说明本技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术中记载的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的附图。
19.图1是一种流量清洗系统的典型组网图;
20.图2是一示例性实施例示出的一种攻击流量统计方法的流程示意图;
21.图3是一示例性实施例示出的另一种攻击流量统计方法的流程示意图;
22.图4是一示例性实施例示出的一种电子设备的结构示意图;
23.图5是一示例性实施例示出的一种攻击流量统计装置的结构示意图。
具体实施方式
24.这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本技术相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本技术的一些方面相一致的装置和方法的例子。
25.在本技术使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本技术。在本技术和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
26.应当理解,尽管在本技术可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本技术范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在
……
时”或“当
……
时”或“响应于确定”。
27.流量清洗系统可以参考图1所示的典型组网图。如图1所示,流量清洗系统可在不改变原有网络拓扑的前提下通过旁挂部署的方式对攻击流量进行清洗,具有不会引起单点
故障、方便扩容以及更容易部署的优势。其中,所述流量清洗系统包括交换机、攻击流量检测设备、攻击流量清洗设备和统一管理平台。所述流量清洗系统与目标路由器相连,所述攻击流量检测设备通过交换机与所述统一管理平台相连,所述统一管理平台通过交换机与所述攻击流量清洗设备相连,所述攻击流量检测设备用于对流经目标路由器的流量进行检测并反馈至,所述攻击流量清洗设备用于联合所述攻击流量检测设备清洗攻击流量,所述统一管理平台用于储存和查询所述攻击流量的数据信息。
28.例如,如图1所示,假设存在一攻击流量将要通过互联网(internet)对主机a(host a)发起流量攻击,所述攻击流量首先对目标路由器“rt1”(router)发送攻击流量。同时,攻击流量检测设备“probe”的eth1_0端口接收并检测来自目标路由器“rt1”的镜像或分光流量,并将所述攻击流量中的攻击流量信息通过交换机(switch,sw)发送至所述统一管理平台“umc”。当统一管理平台“umc”接收到所述攻击流量信息后,通过交换机与eth2_27端口对所述攻击流量清洗设备“guard”下发关于清洗何种攻击流量的防护策略。所述流量清洗设备“guard”负责与目标路由器“rt1”进行交互,当接收到所述防护策略后,对目标路由器“rt1”进行攻击流量清洗。具体地,流量清洗系统将目标路由器“rt1”中需要保护的流量通过eth2_0端口牵引到流量清洗设备“guard”上进行防护与清洗,并将清洗后的合法流量通过eth2_1端口回注到目标路由器“rt1”中,同时上报清洗日志至统一管理平台“umc”。至此,所述攻击流量在经过目标路由器“rt1”时便已被流量清洗系统拦截与记录,被攻击设备a并无受到实际的影响。
29.需要说明的是,上述攻击流量检测设备“probe”的eth1_0端口还可以接收netflow/netstream/nflow流日志信息,并通过eth1_2端口将所述信息发送至第三方分析平台。事实上,任何能够区分攻击流量的流量特征信息都可以作为eth1_0端口的输入信息,本技术对此不作限制。
30.上述统一管理平台还可以为用户查询攻击流量信息。尽管在相关技术中,所述统一管理平台利用多线程查询方式实现了比单线程查询方式更高的查询效率以及更短的查询响应时间,但是在查询效率方面依然无法满足实际应用场景中的实际需求。
31.为解决以上问题,本技术提供一种攻击流量统计方法,该方法应用于诸如图1所示的流量清洗系统中的统一管理平台。下面结合图2所示实施例对本技术的技术方案进行阐述。其中,图2是一示例性实施例示出的一种攻击流量统计方法的流程示意图,如图2所示,该方法可以包括以下步骤:
32.s201,接收所述攻击流量检测设备发送的流量构成信息,所述流量构成信息由所述攻击流量检测设备根据流量检测结果生成。
33.根据上文可知,流量检测设备可用于监测流向待防护服务器的流量。流量检测设备对待防护服务器的流量监测可以是周期性的。其中,当监测周期足够短时,可以认为流量检测设备对待防护服务器实现了实时或接近于实时的流量监测。
34.上述流量监测可以采用多种方式实现。例如,在基于流量大小的监测方式下,当流量达到或超过服务器的安全基线(该安全基线相当于预设流量阈值)时,所述流量检测设备判定该流量为针对待防护服务器的攻击流量,并生成流量构成信息以表征该攻击流量的流量特征。再例如,所述流量检测设备还可以基于深度包检测(deep packet inspection,dpi)或深度/动态流检测(deep/dynamic flow inspection,dfi)等方式检测攻击流量。实
际上,流量检测设备采用的实际检测方式可根据实际情况决定,此处不再一一赘述。
35.上述流量构成信息可以包含能够表征所述攻击流量特征的流量信息(例如所述攻击流量的目的ip、流量类型和流量流向等信息),其具体构成内容可根据所述流量清洗系统的实际需求做出调整,本技术并不对此进行限制。例如:当用户需要清洗特定ip地址发送的所有攻击流量时,可将源ip信息作为流量构成信息所包含的内容之一。
36.s202,根据所述流量构成信息生成对应的告警数据,并对所述告警数据进行存储。
37.告警数据用于记录流量构成信息包含的具体内容,每份告警数据分别对应唯一的流量构成信息。例如:当存在一全新的、从未被记录过的攻击流量正在发起流量攻击时,则将根据所述攻击流量的流量构成信息生成的告警数据作为一个全新的数据文件进行存储,而当所述攻击流量发起后续的流量攻击时,则对已存储的所述数据文件进行更新。
38.在一实施例中,统一管理平台维护有内存表。在存储告警数据时,可以将其写入内存表。其中,所述内存表为内存中预设的表,可以快速地存储告警数据,但内存所在设备重启后所述内存表将会丢失所述告警数据。
39.在另一实施例中,统一管理平台维护有数据库。在存储告警数据时,可以将其写入数据库。其中,所述数据库为硬盘中存放特定数据的存储空间,可以存储大量数据,并且在硬盘断电的情况下仍可保证其数据完整性,但相比上述内存表而言数据库读写告警数据的效率较低。
40.在另一实施例中,统一管理平台维护有内存表和数据库。同时,告警数据可以包括当前告警数据以及历史告警数据。在存储告警数据时,可以将所述当前告警数据写入所述内存表,以及将所述历史告警数据写入所述数据库。
41.由于内存表具有传输效率高的特点且当前告警数据对实时性要求高,即内存表可以满足当前告警数据对存储环境高效传输的需求,故通过内存表存储当前告警数据,可使得统一管理平台快速对当前告警信息查询响应。另一方面,由于数据库具有数据安全性高、容量大的特点且历史告警数据的数量多,即数据库可以满足历史告警数据对存储环境高储量、低风险的需求。同时,无论是何种存储环境,任一流量构成信息对应的告警数据所需要的统计数据均已在下文的查询操作执行之前更新完毕。故与上述通过内存表存储当前告警数据类似,通过数据库存储历史告警数据,可使得统一管理平台快速对历史告警信息查询响应。
42.对于上述当前告警数据与历史告警数据,前者为正在发生的流量攻击事件对应的告警数据,后者为已结束的流量攻击事件对应的告警数据,统一管理平台可以通过多种方式确定、区分当前告警数据与历史告警数据。
43.在一实施例中,可以通过接收攻击流量检测设备发送的与所述流量构成信息相关联的流量状态信息,并基于该流量状态信息确定告警数据为当前告警数据还是历史告警数据。具体地,当所述流量状态信息为攻击状态时,确定所述告警数据为当前告警数据,当所述流量状态信息为结束状态时,确定所述告警数据为历史告警数据。
44.在另一实施例中,可以通过所述流量构成信息中的状态标识确定当前告警数据与历史告警数据。其中,状态标识可作为由攻击流量检测设备判断所述攻击流量状态后加入流量构成信息的信息之一。具体地,当所述状态标识为攻击标识时,确定所述告警数据为当前告警数据,当所述状态标识为结束标识时,确定所述告警数据为历史告警数据。
45.需要说明的是,无论是上述的流量状态信息还是攻击标识,实质上都是一种反映对应攻击流量的攻击状态的表现形式。例如使用二进制“0”表征所述攻击流量正在发起攻击,使用二进制“1”表征所述攻击流量已经结束攻击。又例如:上述攻击标识可作为独立的报文发送至统一管理平台。本技术并不对状态标识的具体表现形式进行限制。
46.由于上述流量攻击事件开始与结束的具体时间点是未知的,故在其期间内需要持续更新上述当前告警数据以保证该数据的实时性。
47.在一实施例中,统一管理平台可以通过线程池实现定时刷新告警数据。为配合所述线程池定时刷新功能的实现,所述告警数据除所述流量构成信息外,还可以包括告警开始时间点和告警下次更新时间点。其中,所述告警下次更新时间点的初始值可以设置为所述告警开始时间点与预设更新间隔之和。
48.具体地,统一管理平台可以定期遍历所述内存表中记录的当前告警数据;如果遍历到的任一当前告警数据所含的下次更新时间点尚未到达,则等待至所述下次更新时间点并启动线程池中的空闲线程,所述空闲线程用于统计与所述任一当前告警数据对应的攻击流量,其中,统计开始时间点为所述下次更新时间点与所述预设更新间隔之差,统计结束时间点为所述下次更新时间点;如果遍历到的所述任一当前告警数据所含的下次更新时间点已到达或已过期,则直接启动所述线程池中的所述空闲线程;将所述空闲线程产生的统计结果更新至所述任一当前告警数据,并将所述任一当前告警数据所含的下次更新时间点递增所述预设更新间隔。例如:已知设置有预设更新间隔δt,在t0时刻存在一当前告警数据a被写入内存表,则此时当前告警数据a至少包括告警开始时间点s0与下次更新时间点s1(s0+δt)。当t1(t0《t1《s1)时刻时,统一管理平台遍历到当前告警数据a,则等待至s1,启动所述空闲线程统计s0~s1时间段内当前告警数据a对应的攻击流量信息并同步至告警数据a,同时将下次更新时间点从s1设置为s2(s1+δt)。当t2(s1《t2)时刻时,且此时当前告警数据a才被遍历时,则直接启动所述空闲线程执行后续所述操作。当下次更新时间点被更新后,重复执行以上操作。
49.需要说明的是,上述统一管理平台的定期遍历周期与上述预设更新间隔不存在任何必然联系,然而根据实际情况设置定期遍历周期与预设更新间隔可以有效的提升当前告警数据的实时性。
50.上述“定期遍历”的实施对象可根据告警数据的存储空间确定。如果告警数据存储于单一的存储空间(如上述内存表或数据库)中,即告警数据不区分当前告警数据或历史告警数据,则统一管理平台对上述存储空间中告警数据进行遍历。如果告警数据分别存储于不同的存储空间(如上述内存表和数据库)中,即告警数据包括当前告警数据或历史告警数据,则统一管理平台对存储当前告警数据的存储空间进行遍历。
51.上述“定期遍历”过程中只要保证所有告警数据按照特定顺序依次遍历即可。例如:可以将告警数据按照其下次更新时间点或告警开始时间点进行正序或倒序遍历。实际上,所述“定期遍历”的具体实施方式可根据实际情况决定,此处不再一一赘述。
52.上述“线程池”大小还可以根据统一管理平台所属服务器的配置文件调整,以使得内存表与线程池大小相匹配。本技术并不对此进行限制。
53.上述告警开始时间点与下次更新时间点作为已确定的时间点进行存储,其中,时间点的存储格式可以根据实际需求进行调整,例如为了便于系统运算所述时间点可以通过
时间戳的方式进行存储;或为了提高用户数据可读性可通过字面表达的方式(即2010/10/1 13:05:12或2020年十月一日13点5分12秒等格式)进行存储。本技术并不对此进行限制。
54.上述实施例利用线程池定时刷新内存表中的当前告警信息的方案,即将告警开始到结束的时间段切割成若干小的时间段,并对所述小的时间段进行更新,有效地将统计告警数据的计算压力平均在整个告警持续的时间段内,避免了下文查询过程中,需要查询告警持续时间长的告警数据时cpu资源可能耗尽的问题。实现了在不提高硬件性能与成本的前提下,减少了查询响应时间。
55.在一实施例中,如果存在一当前告警数据对应的攻击流量已停止攻击,则从内存表中删除所述当前告警数据,并将所述当前告警数据转换为历史告警数据后存储至所述数据库。由于数据库容量远大于内存表容量,故删除内存表中所述当前告警数据,并将其作为历史告警数据进行保存,使得内存表内存在足够的空间写入新的告警数据,同时保证了历史告警数据的数据安全。
56.s203,根据接收到的查询请求,从已存储的告警数据中确定符合所述查询请求中描述的查询条件的目标告警数据。
57.当用户需要查询特定的告警数据时,将包括查询条件的查询请求发送至统一管理平台。在所述统一管理平台根据接收到的查询请求后,将通过查询操作,从已存储的告警数据中查询符合所述查询条件的目标告警数据。
58.在一实施例中,告警数据仅存储于内存表中。如果所述查询条件指示正在进行攻击的攻击流量,则在所述内存表中搜索符合所述查询条件的告警数据,以作为所述目标告警数据。
59.在另一实施例中,告警数据仅存储于数据库中。如果所述查询条件指示正在进行攻击的攻击流量,则在所述数据库中搜索符合所述查询条件的告警数据,以作为所述目标告警数据。
60.在另一实施例中,告警数据包括当前告警数据和历史告警数据,且两者分别存储于内存表和数据库中。如果所述查询条件指示正在进行攻击的攻击流量,则在所述内存表中搜索符合所述查询条件的当前告警数据,以作为所述目标告警数据;如果所述查询条件指示已停止攻击的攻击流量,则在所述数据库中搜索符合所述查询条件的历史告警数据,以作为所述目标告警数据。
61.需要说明的是,上述查询条件包括但不限于攻击流量的攻击状态。例如:用户还可以根据目标ip地址,流量类型等信息从告警数据中查询、筛选获得符合预期的目标告警数据。本技术并不对此进行限制。
62.通过上述实施例可知,统一管理平台根据查询条件中特定的攻击流量的攻击状态,针对性地查询对应存储空间中的告警数据,避免了查询所述目标告警数据不可能存在的存储空间的额外操作,有效地提高了查询效率。
63.不同于相关技术中接收查询请求后通过多线程技术生成告警数据并查询目标告警数据以提高查询效率的常见解决方法,本技术另辟蹊径,通过在接收查询请求之前存储告警数据的流式处理结构实现了查询效率的明显提升,且该设计思路不再限制于多线程或单线程。即两者的处理逻辑存在着本质区别。
64.下面以统一管理平台同时维护内存表与数据库的情况为例,结合图3对本技术的
技术方案进行详细阐述。图3是一示例性实施例示出的另一种攻击流量统计方法的流程示意图,如图3所示,该方法可以包括以下步骤:
65.s310,接收攻击流量的流量状态信息和流量构成信息。
66.在一实施例中,当攻击流量检测设备检测到发生ddos流量攻击时,假设该攻击流量的目的ip为100.0.0.0/24、流量类型为tcp类型、流量流向为输入,则所述攻击流量检测设备根据以上信息生成流量构成信息,并根据所述流量的攻击状态生成流量状态信息,所述流量状态信息存在两种状态:攻击状态以及结束状态,分别以二进制0、1来表征以上两种状态。而后统一管理平台接收到包含所述流量构成信息与流量状态信息的报文数据。
67.s320,判断所述流量状态信息是否为攻击状态。
68.在一实施例中,统一管理平台判断接收得到的流量状态信息是否为攻击状态。如果是,则执行s330;如果否,则执行s360。
69.s330,所述流量构成信息作为新的告警数据写入内存表。
70.在一实施例中,统一管理平台根据流量构成信息在预设的内存表中查找与之对应的当前告警数据。假设此时的内存表中存在n-1个当前告警信息,即所述统一管理平台在所述n-1个当前告警信息中,查询与所述流量构成信息中目标ip、流量类型和流量流向相同的当前告警信息。如果所述内存表中不存在对应的告警数据,则将所述流量构成信息、告警开始时间2010/10/1 12:00:00和告警下次更新时间作为当前告警数据n插入内存表。如果存在,则不作进一步操作。其中,所述告警下次更新时间点的初始值为所述告警开始时间点与预设更新间隔之和,即2010/10/1 12:01:00(假设预设更新间隔为60秒)。
71.s340,遍历内存表。
72.在一实施例中,由于s330中新写入的当前告警数据n,此时内存表中包含n个当前告警数据。统一管理平台定时按照下次更新时间正序遍历内存表中n个当前告警数据。如果当前时刻为2010/10/1 12:00:30,所述统一管理平台遍历到当前告警数据n。显然,所述当前告警数据n所含的下次更新时间点尚未到达,则等待至所述下次更新时间点并执行s350。如果当前时刻为2010/10/1 12:01:30,所述统一管理平台遍历到当前告警数据n。显然,所述当前告警数据n所含的下次更新时间点已到达,则直接执行s350。
73.s350,查询流量数据并更新内存表。
74.在一实施例中,假设存在一线程池包含m条线程。统一管理平台对于遍历到的所述当前告警数据,搜索得到所述线程池中的处于空闲状态的线程m并启动,以统计与所述当前告警数据n对应的攻击流量。如果所述线程池中不存在空闲线程,则等待其中最早转换为空闲状态的线程以执行上述操作。而后将所述空闲线程m产生的统计结果更新至所述当前告警数据n,并将所述当前告警数据n所含的下次更新时间点递增所述预设更新间隔,得到新的下次更新时间点2010/10/1 12:02:00。其中,统计开始时间为所述当前告警数据所含的下次更新时间点与预设更新间隔之差,统计结束时间为所述当前告警数据所含的下次更新时间点,即统计2010/10/1 12:00:00~2010/10/1 12:01:00时间段内与所述当前告警数据n对应的攻击流量。
75.s360,移除内存表中对应的告警数据并写入数据库。
76.在一实施例中,假设此时数据库中存在z-1个历史告警数据。统一管理平台判断此时所述流量构成信息对应的流量攻击事件已结束,故查找并删除内存表中与所述流量构成
信息对应的当前告警数据n,同时将所述当前告警数据n转换为历史告警数据z后存储至所述数据库。
77.s370,当前告警数据查询内存表历史告警数据查询数据库。
78.在一实施例中,当用户希望查找符合特定要求的告警数据时,统一管理平台将接收包含对应查询条件的查询请求。
79.s380,判断是否查询当前告警数据。
80.在一实施例中,统一管理平台判断所述查询请求中描述的查询条件是否指示正在进行攻击的攻击流量。如果是,则在所述内存表中搜索符合所述查询条件的当前告警数据,以作为所述目标告警数据返回。如果否,则在所述数据库中搜索符合所述查询条件的历史告警数据,以作为所述目标告警数据返回。如果数据库中z个历史告警数据均不符合所述查询条件,则返回信息说明查询结果为空。
81.通过上述实施例,可知统一管理平台将接收到的攻击流量提前作为内存表或数据库中的告警数据,使得用户发起查询请求时,所述统一管理平台可以直接根据查询请求查询所述告警数据。避免了相关技术中接收到查询请求后才将流量构成信息储存为告警数据并进行查询所导致的查询延时情况,有效提高了统一管理平台的查询效率与用户体验。
82.图4是一示例性实施例中的一种电子设备的示意结构图。请参考图4,在硬件层面,该电子设备包括处理器、内部总线、网络接口、内存以及非易失性存储器,当然还可能包括其他业务所需要的硬件。处理器从非易失性存储器中读取对应的计算机程序到内存中然后运行,在逻辑层面上形成攻击流量统计装置。当然,除了软件实现方式之外,本技术并不排除其他实现方式,比如逻辑器件抑或软硬件结合的方式等等,也就是说以下处理流程的执行主体并不限定于各个逻辑单元,也可以是硬件或逻辑器件。
83.与前述攻击流量统计方法的实施例对应,本技术还提供了一种攻击流量统计装置的实施例。
84.请参考图5,图5是一示例性实施例示出的一种攻击流量统计装置的结构示意,如图5所示,在软件实施方式中,该攻击流量统计装置可以包括:
85.流量构成信息接收单元510,用于接收所述攻击流量检测设备发送的流量构成信息,所述流量构成信息由所述攻击流量检测设备根据流量检测结果生成;
86.告警数据存储单元520,用于根据所述流量构成信息生成对应的告警数据,并对所述告警数据进行存储;
87.告警数据查询单元530,用于根据接收到的查询请求,从已存储的告警数据中确定符合所述查询请求中描述的查询条件的目标告警数据。
88.可选的,所述统一管理平台维护有内存表或数据库;所述告警数据存储单元520具体用于:
89.将所述告警数据写入所述内存表或所述数据库。
90.可选的,所述统一管理平台维护有内存表和数据库,所述告警数据包括当前告警数据以及历史告警数据,所述当前告警数据为正在发生的流量攻击事件对应的告警数据,所述历史告警数据为已结束的流量攻击事件对应的告警数据;所述告警数据存储单元520具体用于:
91.将所述当前告警数据写入所述内存表,以及将所述历史告警数据写入所述数据
库。
92.可选的,所述装置还包括:
93.流量状态信息接收单元540,用于接收所述攻击流量检测设备发送的与所述流量构成信息相关联的流量状态信息;
94.当所述流量状态信息为攻击状态时,确定所述告警数据为当前告警数据,当所述流量状态信息为结束状态时,确定所述告警数据为历史告警数据。
95.可选的,所述告警数据包括所述流量构成信息、告警开始时间点和告警下次更新时间点,其中,所述告警下次更新时间点的初始值为所述告警开始时间点与预设更新间隔之和,所述装置还包括:
96.告警数据更新单元550,用于定期遍历所述内存表中记录的当前告警数据;
97.如果遍历到的任一当前告警数据所含的下次更新时间点尚未到达,则等待至所述下次更新时间点并启动线程池中的空闲线程,所述空闲线程用于统计与所述任一当前告警数据对应的攻击流量;
98.如果遍历到的所述任一当前告警数据所含的下次更新时间点已到达或已过期,则直接启动所述线程池中的所述空闲线程;
99.将所述空闲线程产生的统计结果更新至所述任一当前告警数据,并将所述任一当前告警数据所含的下次更新时间点递增所述预设更新间隔。
100.可选的,所述装置还包括:
101.告警数据转换单元560,用于如果所述当前告警数据对应的攻击流量已停止攻击,则从所述内存表中删除所述当前告警数据,并将所述当前告警数据转换为历史告警数据后存储至所述数据库。
102.可选的,告警数据查询单元530具体用于:
103.如果所述查询条件指示正在进行攻击的攻击流量,则在所述内存表中搜索符合所述查询条件的当前告警数据,以作为所述目标告警数据;
104.如果所述查询条件指示已停止攻击的攻击流量,则在所述数据库中搜索符合所述查询条件的历史告警数据,以作为所述目标告警数据。
105.上述装置中各个单元的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。
106.对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本技术方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
107.本说明书中描述的主题及功能操作的实施例可以在以下中实现:数字电子电路、有形体现的计算机软件或固件、包括本说明书中公开的结构及其结构性等同物的计算机硬件、或者它们中的一个或多个的组合。本说明书中描述的主题的实施例可以实现为一个或多个计算机程序,即编码在有形非暂时性程序载体上以被数据处理装置执行或控制数据处理装置的操作的计算机程序指令中的一个或多个模块。可替代地或附加地,程序指令可以
被编码在人工生成的传播信号上,例如机器生成的电、光或电磁信号,该信号被生成以将信息编码并传输到合适的接收机装置以由数据处理装置执行。计算机存储介质可以是机器可读存储设备、机器可读存储基板、随机或串行存取存储器设备、或它们中的一个或多个的组合。
108.本说明书中描述的处理及逻辑流程可以由执行一个或多个计算机程序的一个或多个可编程计算机执行,以通过根据输入数据进行操作并生成输出来执行相应的功能。所述处理及逻辑流程还可以由专用逻辑电路—例如fpga(现场可编程门阵列)或asic(专用集成电路)来执行,并且装置也可以实现为专用逻辑电路。
109.适合用于执行计算机程序的计算机包括,例如通用和/或专用微处理器,或任何其他类型的中央处理单元。通常,中央处理单元将从只读存储器和/或随机存取存储器接收指令和数据。计算机的基本组件包括用于实施或执行指令的中央处理单元以及用于存储指令和数据的一个或多个存储器设备。通常,计算机还将包括用于存储数据的一个或多个大容量存储设备,例如磁盘、磁光盘或光盘等,或者计算机将可操作地与此大容量存储设备耦接以从其接收数据或向其传送数据,抑或两种情况兼而有之。然而,计算机不是必须具有这样的设备。此外,计算机可以嵌入在另一设备中,例如移动电话、个人数字助理(pda)、移动音频或视频播放器、游戏操纵台、全球定位系统(gps)接收机、或例如通用串行总线(usb)闪存驱动器的便携式存储设备,仅举几例。
110.适合于存储计算机程序指令和数据的计算机可读介质包括所有形式的非易失性存储器、媒介和存储器设备,例如包括半导体存储器设备(例如eprom、eeprom和闪存设备)、磁盘(例如内部数据库或可移动盘)、磁光盘以及cd rom和dvd-rom盘。处理器和存储器可由专用逻辑电路补充或并入专用逻辑电路中。
111.虽然本说明书包含许多具体实施细节,但是这些不应被解释为限制任何发明的范围或所要求保护的范围,而是主要用于描述特定发明的具体实施例的特征。本说明书内在多个实施例中描述的某些特征也可以在单个实施例中被组合实施。另一方面,在单个实施例中描述的各种特征也可以在多个实施例中分开实施或以任何合适的子组合来实施。此外,虽然特征可以如上所述在某些组合中起作用并且甚至最初如此要求保护,但是来自所要求保护的组合中的一个或多个特征在一些情况下可以从该组合中去除,并且所要求保护的组合可以指向子组合或子组合的变型。
112.类似地,虽然在附图中以特定顺序描绘了操作,但是这不应被理解为要求这些操作以所示的特定顺序执行或顺次执行、或者要求所有例示的操作被执行,以实现期望的结果。在某些情况下,多任务和并行处理可能是有利的。此外,上述实施例中的各种系统模块和组件的分离不应被理解为在所有实施例中均需要这样的分离,并且应当理解,所描述的程序组件和系统通常可以一起集成在单个软件产品中,或者封装成多个软件产品。
113.由此,主题的特定实施例已被描述。其他实施例在所附权利要求书的范围以内。在某些情况下,权利要求书中记载的动作可以以不同的顺序执行并且仍实现期望的结果。此外,附图中描绘的处理并非必需所示的特定顺序或顺次顺序,以实现期望的结果。在某些实现中,多任务和并行处理可能是有利的。
114.以上所述仅为本技术的较佳实施例而已,并不用以限制本技术,凡在本技术的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本技术保护的范围之内。