一种处理器的防冲击处理方法及装置的制造方法

文档序号:10538470阅读:416来源:国知局
一种处理器的防冲击处理方法及装置的制造方法
【专利摘要】本发明公开一种处理器的防冲击处理方法及其装置,该方法包括:接收设备上报的报文;至少根据所述报文的时间戳,确定单位时间段内接收到的报文的数量;将所述单位时间段内接收到的报文的数量与第一阈值作比较;若大于所述第一阈值,则根据所述单位时间段内接收到的报文的优先级,将所述单位时间段内接收到的高优先级的报文组成第一报文集合,并将所述第一报文集合发送至处理器,所述第一报文集合中的报文的数量不大于所述第一阈值,用以解决现有处理器的防冲击方法造成报文不能够被实时高效地处理的问题。
【专利说明】
一种处理器的防冲击处理方法及装置
技术领域
[0001]本发明涉及计算机处理领域,尤其涉及一种处理器的防冲击处理方法及装置。
【背景技术】
[0002]通讯设备监控网管系统是针对海量的设备进行集中监控管理,监控设备上下线、设备告警状态、运行状态、设备业务数据采集或设备网络质量状态。随着网络不断扩容,设备的数量也越来越多,网管系统需要处理的数据量呈现几何级趋势,因此对网管系统的数据处理能力提出更高的要求,同时瞬间高峰压力、设备异常情况下压力冲击、恶意攻击等,对压力冲击的防护成为网管系统稳定运行的首要任务之一。
[0003]现有的网管系统防冲击方法是通过监测网络设备中转发单元向处理器发送ICMP(因特网控制消息协议)报文的传输速率,根据所确定的传输速率,控制转发单元向处理器发送ICMP报文的传输速率的上限,即通过对ICMP报文发送至处理器的传输速率进行监控,动态控制处理器的防护阈值,从而能够防止ICMP报文对处理器造成冲击。这种方法的缺点是虽然通过对报文的传输速率设置上限,避免了大流量报文对处理器造成的冲击,但是因为传输速率的上限的设置造成设定时间段内只能够按照先入先出的原则处理一定数量的报文,而对实时性处理要求较高的报文可能因为上限的设置,无法在当前时段内被及时处理掉,可见,亟需一种既可以防护处理器免受冲击,又能够保证实时高效地处理报文的方法。

【发明内容】

[0004]本发明实施例提供一种处理器的防冲击处理方法及装置,用以解决现有处理器的防冲击方法造成报文不能够被实时高效地处理的问题。
[0005]本发明提供一种处理器的防冲击处理方法,该方法包括:接收设备上报的报文;至少根据所述报文的时间戳,确定单位时间段内接收到的报文的数量;将所述单位时间段内接收到的报文的数量与第一阈值作比较;若大于所述第一阈值,则根据所述单位时间段内接收到的报文的优先级,将所述单位时间段内接收到的高优先级的报文组成第一报文集合,并将所述第一报文集合发送至处理器,所述第一报文集合中的报文的数量不大于所述第一阈值。
[0006]基于同样的发明构思,本发明实施例进一步地提供一种处理器的防冲击处理装置,该装置包括:接收单元,用于接收设备上报的报文;确定单元,用于至少根据所述报文的时间戳,确定单位时间段内接收到的报文的数量;处理单元,用于将所述单位时间段内接收到的报文的数量与第一阈值作比较;若大于所述第一阈值,则根据所述单位时间段内接收到的报文的优先级,将所述单位时间段内接收到的高优先级的报文组成第一报文集合,并将所述第一报文集合发送至处理器,所述第一报文集合中的报文的数量不大于所述第一阈值。
[0007]本发明实施例一方面接收设备上报的报文,根据所述报文的时间戳,确定每个单位时间段内接收到的报文的数量,将每个单位时间段内接收到的报文的数量和第一阈值作比较,确定出报文数量大于第一阈值的单位时间段。将该单位时间段接收到的报文进行调整,其中的高优先级的报文组成第一报文集合,该第一报文集合被优先发送给处理器,其中的低优先级的报文则被缓存下来,安排在后续的时间段发送出去。这样,可以保证处理器在单位时间段内接收到的报文的数量小于第一阈值,防止收到冲击,也可以保证高优先报文被优先处理,实现了实时高效地处理报文。
【附图说明】
[0008]为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0009]图1为本发明实施例提供的一种处理器的防冲击处理方法流程示意图;
[0010]图2为本发明实施例提供的系统地防冲击处理方法流程示意图;
[0011]图3为本发明实施例提供的一种处理器的防冲击处理装置;
[0012]图4为本发明实施例提供的一种处理器的防冲击处理系统组网图。
【具体实施方式】
[0013]为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,显然,所描述的实施例仅仅是本发明一部份实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
[0014]参见图1所示,本发明实施例提供一种处理器的防冲击处理方法流程示意图,具体地实现方法包括:
[0015]步骤SlOl,接收设备上报的报文。
[0016]步骤S102,至少根据所述报文的时间戳,确定单位时间段内接收到的报文的数量。
[0017]步骤S103,将所述单位时间段内接收到的报文的数量与第一阈值作比较。
[0018]步骤S104,若大于所述第一阈值,则根据所述单位时间段内接收到的报文的优先级,将所述单位时间段内接收到的高优先级的报文组成第一报文集合,并将所述第一报文集合发送至处理器,所述第一报文集合中的报文的数量不大于所述第一阈值。
[0019]其中,接收的报文可以是不同设备上报的不同类型的报文,例如在网管监护系统中,不同设备上报的报文可以包含如下形式:该设备正在上线或者下线的报文,该设备处于告警状态的报文,该设备处于正常运行状态的报文、携带该设备的业务数据的报文,或者是反映该设备的网络质量状态的报文等。
[0020]因为不同的设备随时都在向网管控制处理器上报报文,那么很有可能某一时刻或者某一时段,部分设备集中向网管控制处理器上报大批量的报文,例如,网管系统接收的通讯报文不均匀,在瞬间压力有可能超过系统所承受的范围,或瞬间压力冲击引起资源恶性竞争、等待等,影响系统正常业务运行,这时就会对网管控制处理器造成瞬间冲击。所以,有必要将报文在上报至处理器之前,将每个时间段接收的报文进行预处理,以解决造成的瞬间冲击的问题。因此,本方案提出了将不同时间接收的报文按照单位时间段进行分段处理,这里的单位时间段可以指每分钟,也可以指每小时,具体的设定方式根据实际需要确定。
[0021]其中,将所述单位时间段内接收到的低优先级的报文组成的第二报文集合;将所述第二报文集合存入至缓冲池中,并延时所述缓冲池中的报文的发送时间。实际应用时结合设备监控业务情况,例如,对实时性要求不是很高或优先级别低的通讯报文,假设,这类通讯报文的实时性要求为5分钟,可以将这类报文先缓存在缓冲器中,然后在5分钟内,将这类报文分到后续的单位时间段中,与要发送的报文一起发送出去,这样做,实际上是将通讯报文的压力平均分摊在5分钟内,保证系统不遭受通讯报文的瞬时冲击。
[0022]进一步地,在确定单位时间段内接收到的报文的数量之前,获取所述报文的标识;根据所述标识确定出无效设备的报文和非法报文,并将所述无效设备的报文和非法报文丢弃。例如,对于同一个站点的多台设备,报文通讯地址有可能是一致的,通过把报文对应的设备的唯一标识预解释出来,就可以准确定位到设备,如果发现是无效设备,那么就可以将该无效设备对应的报文丢弃。另外,当设备工作异常,频繁上报通讯报文给网管系统,或者是黑客恶意攻击系统上报的报文,这类报文就属于影响系统正常运行的报文,根据这类报文的特点,如果发现在设定的时间段内连续收到相同的通讯报文,或者连续收到设备上线的报文,那么就可以将这类报文作为非法报文丢弃,可见,经过上述处理之后,可以有效地降低报文的数量。
[0023]另外,若大于所述第一阈值,则根据所述单位时间段内接收到的报文的类型,进行简化处理,以使相同类型的报文被合并为一个报文。例如,对于实时性要求不是很高的报文,像设备心跳报文,在一段时间内只要收到一条设备心跳报文就可以判断出该设备状态为在线,如果在一段时间内连续收到多条心跳报文,那么可以将多个心跳报文合并为一个报文,这样,简化处理之后,报文的数量就可以被有效的减少,进一步地降低对处理器的冲击。
[0024]进一步地,获取所述处理器的指标参数,根据所述指标参数确定所述处理器的处理报文的速度,所述指标参数至少包括内存利用率、线程数、I/o使用情况;根据所述处理器的处理报文的速度,动态调整向所述处理器发送报文的流量大小;根据所述调整后的发送报文的流量大小,将每个单位时间段内的接收的报文和所述缓存池中的报文发送至所述处理器。
[0025]这样做的目的是根据处理器处理报文的速度调整向处理器发送的报文的流量,当处理器中的内存利用率较高,各线程运行正常时,这时处理器处理报文的速度较快,不容易发生报文的积压;当处理器中线程数较少,部分线程发生挂死,这时处理器处理报文的速度较慢,很容易发生报文的积压。因此可以根据处理器的运行指标,预先设定一个第二阈值,该阈值作为衡量处理器运行状态的一个指标。若所述处理器的处理报文的速度不低于第二阈值,则增大向所述处理器发送报文的流量;若所述处理器的处理报文的速度低于第二阈值,则减小向所述处理器发送报文的流量。当发现处理器的处理速度较慢时,就可以减少向处理器发送报文的数量,当发现处理器的处理速度较快时,就可以增大向处理器发送报文的数量。可见,这样就可以防止报文堆积或流量超出系统承受范围,处理器接收到的报文的量根据监控的指标设有最高与最低流量阀值保护。
[0026]为了更加系统性描述上述处理器的防冲击处理方法,本发明实施例进一步提供如图2所示的流程图,通过图2进行详细阐述。
[0027]步骤一:接收不同的设备上报的报文,并且将接收的报文按照十分钟作为一个时间段分成若干个报文集合。
[0028]步骤二:根据每个报文集合中报文的标识,将每个报文集合中对应的无效设备的报文和非法报文丢弃。
[0029]步骤三:根据每个报文集合中报文的类型,将每个时间段对应的报文集合中类型相同的报文进行简化处理,相同类型的报文被合并为一个报文。
[0030]步骤四:统计经过上述处理之后的报文集合中的报文的数量,然后和第一阈值作比较,如果结果小于第一阈值,则继续后续的处理,如果结果大于第一阈值,则将该报文集合中的高优先级的报文抽出来优先发送至处理器,而低优先级的报文则被缓存在缓冲池中在设定的时间段陆续发送至处理器。
[0031]步骤五:获取处理器当前的处理报文的状态,然后与设定的第二阈值作比较,根据第二阈值调整向处理器发送报文的流量。
[0032]其中,若所述缓冲池中存储有报文,则所述单位时间段内接收到的报文包括缓冲池中的报文及所述单位时间段内接收到的所述设备上报的报文。也就是说按照缓存池中的报文的发送时间段,将缓存池中的报文与发送时间段接收到报文一起继续执行步骤一之后的处理过程。步骤三中的简化处理可以在判断单位时间内接收的报文数量之前,也可以在判断单位时间内接收的报文数量之后,进一步地,在报文数量通常不会大于第一阈值时,当数量大于第一阈值则启动步骤三会减少报文的简化处理时间。
[0033]基于相同的技术构思,本发明实施例还提供一种处理器的防冲击处理装置,该装置可执行上述方法实施例。本发明实施例提供的装置如图3所示,包括:接收单元301,确定单元302,处理单元303,其中:
[0034]接收单元301,用于接收设备上报的报文;
[0035]确定单元302,用于至少根据所述报文的时间戳,确定单位时间段内接收到的报文的数量;
[0036]处理单元303,用于将所述单位时间段内接收到的报文的数量与第一阈值作比较;若大于所述第一阈值,则根据所述单位时间段内接收到的报文的优先级,将所述单位时间段内接收到的高优先级的报文组成第一报文集合,并将所述第一报文集合发送至处理器,所述第一报文集合中的报文的数量不大于所述第一阈值。
[0037]其中,所述防冲击处理装置可以是单独配置的防冲击处理器,也可以是嵌入在处理器中的另一个防冲击处理设备,图4示出防冲击处理装置作为一个单独防冲击处理器时,实现的防护处理系统的组网图。
[0038]进一步地,所述处理单元303还用于:将所述单位时间段内接收到的低优先级的报文组成的第二报文集合;将所述第二报文集合存入至缓冲池中,并延时所述缓冲池中的报文的发送时间
[0039]进一步地,所述确定单元302具体用于:若所述缓冲池中存储有报文,则所述单位时间段内接收到的报文包括缓冲池中的报文及所述单位时间段内接收到的所述设备上报的报文。
[0040]进一步地,所述处理单元303还用于:若大于所述第一阈值,则根据所述单位时间段内接收到的报文的类型,进行简化处理,以使相同类型的报文被合并为一个报文。
[0041]进一步地,还包括:预检单元304,用于获取所述报文的标识;根据所述标识确定出无效设备的报文和非法报文,并将所述无效设备的报文和非法报文丢弃。
[0042]进一步地,还包括:调整单元305,用于获取所述处理器的指标参数,根据所述指标参数确定所述处理器的处理报文的速度,所述指标参数至少包括内存利用率、线程数、输入输出I/o使用情况;根据所述处理器的处理报文的速度,动态调整向所述处理器发送报文的流量大小;根据所述调整后的发送报文的流量大小,将每个单位时间段内的接收的报文和所述缓存池中的报文发送至所述处理器。
[0043]进一步地,所述调整单元305具体用于:若所述处理器的处理报文的速度不低于第二阈值,则增大向所述处理器发送报文的流量;若所述处理器的处理报文的速度低于第二阈值,则减小向所述处理器发送报文的流量。
[0044]综上所述,本发明实施例一方面接收设备上报的报文,根据所述报文的时间戳,确定每个单位时间段内接收到的报文的数量,将每个单位时间段内接收到的报文的数量和第一阈值作比较,确定出报文数量大于第一阈值的单位时间段。将该单位时间段接收到的报文进行调整,其中的高优先级的报文组成第一报文集合,该第一报文集合被优先发送给处理器,其中的低优先级的报文则被缓存下来,安排在后续的时间段发送出去。这样,可以保证处理器在单位时间段内接收到的报文的数量小于第一阈值,防止收到冲击,也可以保证高优先报文被优先处理,实现了实时高效地处理报文,同时对报文进行一定的预检和简化处理之后,也可以有效地缓解对处理器造成的冲击。
[0045]本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0046]这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
[0047]这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0048]尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
[0049]显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
【主权项】
1.一种处理器的防冲击处理方法,其特征在于,该方法包括: 接收设备上报的报文; 至少根据所述报文的时间戳,确定单位时间段内接收到的报文的数量; 将所述单位时间段内接收到的报文的数量与第一阈值作比较; 若大于所述第一阈值,则根据所述单位时间段内接收到的报文的优先级,将所述单位时间段内接收到的高优先级的报文组成第一报文集合,并将所述第一报文集合发送至处理器,所述第一报文集合中的报文的数量不大于所述第一阈值。2.如权利要求1所述的方法,其特征在于,还包括: 将所述单位时间段内接收到的低优先级的报文组成的第二报文集合; 将所述第二报文集合存入至缓冲池中,并延时所述缓冲池中的报文的发送时间。3.如权利要求2所述的方法,其特征在于,至少根据所述报文的时间戳,确定单位时间段内接收到的报文的数量,包括: 若所述缓冲池中存储有报文,则所述单位时间段内接收到的报文包括缓冲池中的报文及所述单位时间段内接收到的所述设备上报的报文。4.如权利要求1至3任一项所述的方法,其特征在于,所述接收设备上报的报文之后,所述确定每个单位时间段内报文的数量之前,还包括: 获取所述报文的标识; 根据所述标识确定出无效设备的报文和非法报文,并将所述无效设备的报文和非法报文丢弃。5.如权利要求1至3任一项所述的方法,其特征在于,所述根据所述单位时间段内接收到的报文的优先级,将所述单位时间段内接收到的高优先级的报文组成第一报文集合之前,还包括: 若大于所述第一阈值,则根据所述单位时间段内接收到的报文的类型,进行简化处理,以使相同类型的报文被合并为一个报文。6.如权利要求1至3任一项所述的方法,其特征在于,所述发送至处理器之后,还包括: 获取所述处理器的指标参数,根据所述指标参数确定所述处理器的处理报文的速度,所述指标参数至少包括内存利用率、线程数、输入输出I/o使用情况; 根据所述处理器的处理报文的速度,动态调整向所述处理器发送报文的流量大小; 根据所述调整后的发送报文的流量大小,将每个单位时间段内的接收的报文和所述缓存池中的报文发送至所述处理器。7.如权利要求6所述的方法,其特征在于,所述根据所述处理器的处理报文的速度,动态调整向所述处理器发送报文的流量大小,包括: 若所述处理器的处理报文的速度不低于第二阈值,则增大向所述处理器发送报文的流量; 若所述处理器的处理报文的速度低于第二阈值,则减小向所述处理器发送报文的流量。8.一种处理器的防冲击处理装置,其特征在于,该装置包括: 接收单元,用于接收设备上报的报文; 确定单元,用于至少根据所述报文的时间戳,确定单位时间段内接收到的报文的数量; 处理单元,用于将所述单位时间段内接收到的报文的数量与第一阈值作比较;若大于所述第一阈值,则根据所述单位时间段内接收到的报文的优先级,将所述单位时间段内接收到的高优先级的报文组成第一报文集合,并将所述第一报文集合发送至处理器,所述第一报文集合中的报文的数量不大于所述第一阈值。9.如权利要求8所述的装置,其特征在于,所述处理单元还用于:将所述单位时间段内接收到的低优先级的报文组成的第二报文集合;将所述第二报文集合存入至缓冲池中,并延时所述缓冲池中的报文的发送时间。10.如权利要求9所述的装置,其特征在于,所述确定单元具体用于: 若所述缓冲池中存储有报文,则所述单位时间段内接收到的报文包括缓冲池中的报文及所述单位时间段内接收到的所述设备上报的报文。11.如权利要求8至10任一项所述的装置,其特征在于,还包括: 预检单元,用于获取所述报文的标识;根据所述标识确定出无效设备的报文和非法报文,并将所述无效设备的报文和非法报文丢弃。12.如权利要求8至10任一项所述的装置,其特征在于,所述处理单元还用于若大于所述第一阈值,则根据所述单位时间段内接收到的报文的类型,进行简化处理,以使相同类型的报文被合并为一个报文。13.如权利要求8至10任一项所述的装置,其特征在于,还包括: 调整单元,用于获取所述处理器的指标参数,根据所述指标参数确定所述处理器的处理报文的速度,所述指标参数至少包括内存利用率、线程数、输入输出I/O使用情况; 根据所述处理器的处理报文的速度,动态调整向所述处理器发送报文的流量大小; 根据所述调整后的发送报文的流量大小,将每个单位时间段内的接收的报文和所述缓存池中的报文发送至所述处理器。14.如权利要求13所述的装置,其特征在于,所述调整单元具体用于: 若所述处理器的处理报文的速度不低于第二阈值,则增大向所述处理器发送报文的流量; 若所述处理器的处理报文的速度低于第二阈值,则减小向所述处理器发送报文的流量。
【文档编号】H04J3/06GK105897365SQ201610173725
【公开日】2016年8月24日
【申请日】2016年3月23日
【发明人】黎志勇, 唐锦坤, 杨云升, 傅锋, 龙飞, 李林杰, 曹鹏飞, 王家乐, 全文斌, 翁忠会, 梁春峰, 张攀, 张春创, 易东明
【申请人】京信通信技术(广州)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1