CN101651629A - 一种cpu接收报文分级动态调度的方法及设备 - Google Patents

一种cpu接收报文分级动态调度的方法及设备 Download PDF

Info

Publication number
CN101651629A
CN101651629A CN200910176491A CN200910176491A CN101651629A CN 101651629 A CN101651629 A CN 101651629A CN 200910176491 A CN200910176491 A CN 200910176491A CN 200910176491 A CN200910176491 A CN 200910176491A CN 101651629 A CN101651629 A CN 101651629A
Authority
CN
China
Prior art keywords
speed limit
message
packet loss
busy percentage
cpu
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.)
Granted
Application number
CN200910176491A
Other languages
English (en)
Other versions
CN101651629B (zh
Inventor
刘刀桂
曹雷
祁正林
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
New H3C Technologies Co Ltd
Original Assignee
Hangzhou H3C Technologies Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Hangzhou H3C Technologies Co Ltd filed Critical Hangzhou H3C Technologies Co Ltd
Priority to CN2009101764914A priority Critical patent/CN101651629B/zh
Publication of CN101651629A publication Critical patent/CN101651629A/zh
Application granted granted Critical
Publication of CN101651629B publication Critical patent/CN101651629B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明公开了一种CPU接收报文分级动态调度的方法和设备,设备的CPU利用率达到门限值时,设备通过调整不同报文类型的限速值、或者不同报文优先级对应的限速值、或者设备CPU的总限速值,降低CPU利用率,实现对CPU接收报文的动态调整,有效防止报文冲击。

Description

一种CPU接收报文分级动态调度的方法及设备
技术领域
本发明涉及通信领域,尤其涉及一种CPU接收报文分级动态调度的方法及设备。
背景技术
网络设备收到报文后,交由软件处理,或者下发表项、或者进行转发。如果某些报文过多,就会大量占用CPU的处理时间,导致部分协议报文不能及时处理,出现网络震荡;或者使设备响应用户操作的速度变慢,甚至很长时间都没有响应。
现有技术中,为了应对报文攻击,网络设备通常设置分级限速的能力。具体如图1所示,预先在转发芯片中配置报文的硬件限速值。达到该硬件限速值时,转发芯片拒绝将报文上送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接收报文分级动态调度的设备,所述设备将向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是本发明提供的CPU接收报文分级动态调度的方法的流程示意图;
图3是本发明应用场景中优先级对应的限速值与CPU Code对应的限速值的关系示意图;
图4是本发明应用场景提供的CPU接收报文分级动态调度的方法的流程示意图;
图5是在图4提供的CPU接收报文分级动态调度的方法中,设备对硬件限速值的调整示意图;
图6是在图4提供的CPU接收报文分级动态调度的方法中,设备对CPU利用率的调整示意图;
图7是本发明提供的CPU接收报文分级动态调度的设备的结构示意图。
具体实施方式
本发明的核心思想在于:设备将向CPU发送的报文划分为不同类型及优先级,每一类型报文或者每一优先级报文具有相应的限速值,设备还配置CPU利用率门限值;当设备检测到CPU利用率持续大于或者等于CPU利用率门限值的时间达到预设最长时间时,设备通过调整不同报文类型、和/或优先级对应的限速值,和/或CPU总限速值,动态降低CPU利用率,有效防止报文冲击对CPU的损害。
具体的,本发明提供了一种CPU接收报文分级动态调度的方法,应用于调整CPU利用率的设备中,所述设备将向CPU发送的报文划分为不同类型及优先级,每一类型报文或者每一优先级报文具有相应的限速值,所述设备还配置CPU利用率门限值,如图2所示,该方法包括:
步骤201,当所述设备检测到CPU利用率持续大于或者等于所述CPU利用率门限值的时间达到预设最长时间时,所述设备检测是否存在限速丢包;如果设备检测存在硬件限速丢包,执行步骤202;或者设备检测存在软件限速丢包,执行步骤203;或者执行步骤204;
步骤202,所述设备获取所述硬件限速丢包对应的报文类型,调整该类型报文的限速值;
步骤203,所述设备获取所述软件限速丢包对应的优先级,调整所述优先级的限速值;
步骤204,所述设备调整预设的CPU的总限速值。
下面结合具体应用场景详细介绍本发明提供的CPU接收报文分级动态调度的方法,其中,CPU设置CPU利用率门限值,当CPU利用率超过该门限值时,对CPU接收报文进行动态调度,动态调度的方法可以包括:动态调整硬件限速值、软件限速值和/或总限速值。
本应用场景中的硬件限速值设置在转发芯片中,并且转发芯片动态调整硬件限速值。转发芯片为每个上CPU的报文分配一个报文类型标识,例如一个CPU Code,CPU Code的数量可以根据实际需要进行设置,例如设置为1-256个,每个CPU Code配置预设的限速值。基于CPU Code的硬件限速机制限制了在设置的窗口时间内带有给定CPU Code的报文上送CPU的个数,即与CPUCode相应的限速值。当在该窗口时间内,转发芯片上送CPU的报文个数超过设定的限速值时,转发芯片丢弃报文,并在硬件寄存器中设置丢包标志位。
本应用场景中还可以设置软件限速值,具体设定了多个报文优先级、以及每一优先级的报文在设置的窗口时间内对应的报文个数。优先级的个数小于CPU Code的数量,例如设置0-7共8个优先级,本应用场景中还可以设置每个CPU Code绑定一个优先级。由于优先级只有0-7共8个,因此存在多CPU Code对应同一优先级的情况,每一优先级对应的限速值通常大于每一CPU Code对应的限速值,如图3所示,携带CPU Code16、24和209的报文优先级都被设置为6,此时,CPU Code16、24和209对应的限速值都为200,优先级6对应的限速值为400,单位都是个数/秒。
本应用场景中还可以设置总限速值,总限速值根据CPU的报文处理能力设置,例如可以设置为1000,即每秒钟CPU最多处理1000个报文。
具体的,本应用场景提供的CPU接收报文分级动态调度的方法,如图4所示,包括以下步骤:
步骤401,设备持续检测CPU利用率。
步骤402,当CPU利用率超过预设的CPU利用率门限值时,设备读取硬件寄存器,查找是否存在硬件限速丢包;如果存在硬件限速丢包,则执行步骤403,否则,执行步骤406。
具体的,设备读取硬件寄存器查找硬件限速丢包时,查找硬件寄存器中是否存在CPU Code对应的丢包标识,如果存在,则相应的CPU Code丢包;否则,不存在CPU Code丢包。
步骤403,设备记录硬件限速丢包的CPU Code,进而查找每一CPU Code对应的优先级。
步骤404,设备根据CPU Code的优先级从低到高调整每一CPU Code的硬件限速值。
具体的,设备根据预先设置的调整值和调整次数调整每一CPU Code对应的硬件限速值。为了避免每次调整过大导致硬件丢包现象严重,本应用场景中采用多轮次、小间隔的方式调整硬件限速值,即每一次硬件限速值的调整范围较小,通过多次调整的方式达到预设的硬件限速最低值;或者,预先设置对应每一CPU Code的硬件限速值最大调整次数,在该最大调整次数内,根据目的硬件限速值与当前硬件限速值的差灵活确定每一次硬件限速值的调整范围。
每一次硬件限速值的调整可以以报文个数为递减单位,也可以以比率为递减单位。
若在硬件限速值调整结束之前,CPU利用率降低到CPU利用率门限值以下,例如80%以下,则设备停止硬件限速值调整。如果CPU利用率低于预设的CPU利用率最低值,例如60%,且持续预设时间以上,例如5S以上,则根据优先级从高到低的顺序恢复CPU Code的硬件限速值。
本应用场景中,设备对硬件限速值的调整如图5所示,采用两轮次、每次减少默认限速值25%的方式。
步骤405,设备CPU利用率依然高于预设CPU利用率门限值时,执行步骤406。
每一CPU Code的限速值可以根据需要灵活设置,所有CPU Code对应的限速值的和可以大于预设的CPU利用率门限值,因此,有可能将所有CPUCode的限速值调整后,不发生硬件丢包的情况下,依然存在CPU利用率高于预设CPU利用率门限值的情况。
步骤406,设备检测到软件丢包时,记录发生软件丢包的优先级。
具体的,设备为每一优先级设置报文计数器以及标识位,在每一窗口时间开始时,设备从零计数,记录CPU接收该优先级对应的报文的数量,当超过该优先级的限速值时,设置该优先级的标识位为丢包。每一优先级对应的限速值根据实际需要灵活设置,由于优先级不同时,对应的报文传输速率可能不同,所以,不同的优先级设置不同的限速值。同时,考虑到所有优先级对应的报文的传输速率同时达到限速值的几率较小,设置所有优先级对应的限速值的和大于预设CPU利用率门限值。当CPU利用率高于预设CPU利用率门限值时,设备根据预先配置检测是否存在软件丢包。
步骤407,设备比较记录的软件丢包的优先级的高低,并从低到高顺序递减每一优先级对应的软件限速值。
具体的,设备对软件限速值的调整同硬件限速值的调整相同或类似,可参考步骤404,此处不再重复。
由于设备设置优先级的数量小于报文类型,即上述CPU Code,因此,对于每一优先级的限速值的调整,相当于同时调整多个CPU Code对应的报文的传输速率,其效果要更加明显。
步骤408,当通过对软件限速值的调整依然不能使CPU利用率降低到动态调整门限以下时,设备调整总限速值。
由于所有优先级对应的限速值的和大于预设CPU利用率门限值,因此,存在以下情况:没有出现软件限速丢包,但是CPU利用率高于预设CPU利用率门限值,此时,需要直接调整总限速值,保证CPU利用率降低到预设CPU利用率门限值以下。
具体的,结合图6所示为例,设备初始检测到CPU Code16、32和120的硬件丢包,调整CPU Code为16、32和120的报文的硬件限速值;当CPU利用率依然高于动态调整门限时,设备根据硬件丢包对应的优先级,调整优先级为2、3和5的报文的软件限速值;当CPU利用率依然高于动态调整门限时,设备通过将总限速值调整为1000来降低CPU利用率。
本应用场景中,设备对硬件限速值、软件限速值以及总限速值的调整顺序并不限定,具体可以根据实际需要灵活设置。
本应用场景中,设备对CPU利用率的调整可以仅通过步骤402-404所述的硬件限速值的调整,或者仅通过步骤406、407所述的软件限速值的调整,也可以直接通过步骤408所述总限速值的调整,还可以通过对硬件限速值、软件限速值以及总限速值其中的任意两个的调整来达到调整CPU利用率的效果,具体可以根据实际需要灵活设置。
通过采用本发明提供的方法,设备的CPU利用率达到门限值时,设备通过调整不同报文类型的限速值、或者不同报文优先级对应的限速值、或者设备CPU的总限速值,降低CPU利用率,实现对CPU接收报文的动态调整,有效防止报文冲击。
本发明提供一种CPU接收报文分级动态调度的设备,所述设备将向CPU发送的报文划分为不同类型及优先级,每一类型报文或者每一优先级报文具有相应的限速值,所述设备还配置CPU利用率门限值,如图7所示,所述设备包括:
检测单元11,用于检测CPU利用率是否大于所述CPU利用率门限值,并当所述CPU利用率持续大于或者等于所述CPU利用率门限值的时间达到预设最长时间时,检测是否存在限速丢包。CPU利用率门限值具体根据实际需要灵活设置,例如可以设置为80%,若CPU利用率持续高于80%,则说明当前报文流量很大,CPU长期保持很高的利用率会导致丢包以及对CPU等设备器件的损害,此时,设备通过检测限速丢包对CPU利用率进行调整。
限速调整单元12,用于对硬件限速丢包进行调整时,获取所述硬件限速丢包对应的报文类型,调整该类型报文的限速值;对软件限速丢包进行调整时,获取所述软件限速丢包对应的优先级,调整所述优先级的限速值;和/或调整预设的CPU的总限速值。本发明中,设备可以设置通过调整硬件限速丢包、软件限速丢包、和/或CPU的总限速值中的一个或者多个实现对CPU利用率的调整,根据实际需要灵活设置调整方式。
所述硬件限速丢包对应的报文类型为一种或者多种。当所述硬件限速丢包对应的报文类型为一种时,所述限速调整单元12通过多次调整将所述报文类型的限速值调整为目标值;当所述硬件限速丢包对应的报文类型为多种时,获取所述多种报文类型的优先级,所述限速调整单元12根据优先级从小到大的顺序逐一降低所述报文类型对应的限速值。为了避免每次调整过大导致硬件丢包现象严重,本应用场景中采用多轮次、小间隔的方式调整硬件限速值,即每一次硬件限速值的调整范围较小,通过多次调整的方式达到预设的硬件限速最低值;或者,预先设置对应每一报文类型的硬件限速值最大调整次数,在该最大调整次数内,根据目的硬件限速值与当前硬件限速值的差灵活确定每一次硬件限速值的调整范围。
所述限速调整单元12还用于:若在限速值调整结束之前,所述设备的CPU利用率降低到所述CPU利用率门限值以下,停止调整限速值;进一步的,如果所述设备的CPU利用率持续低于预设的CPU利用率最低值,根据优先级从高到低的顺序恢复所述多种报文类型对应的限速值。
所述软件限速丢包对应的优先级为一个或者多个。当所述软件限速丢包对应的优先级为多个时,所述限速调整单元12根据优先级从小到大的顺序逐一降低优先级对应的限速值。所述限速调整单元12还用于:若在限速值调整结束之前,所述设备的CPU利用率降低到所述CPU利用率门限值以下,停止调整限速值;进一步的,如果所述设备的CPU利用率持续降低到预设的CPU利用率最低值,根据优先级从高到低的顺序恢复优先级对应的限速值。
所述限速调整单元12还用于:当所述检测单元11检测到硬件限速丢包时,对硬件限速丢包进行调整,获取所述硬件限速丢包对应的报文类型,调整该类型报文的限速值;若所述检测单元11检测到CPU利用率依然大于或者等于所述CPU利用率门限值,且存在软件限速丢包,获取所述软件限速丢包对应的优先级,调整所述优先级的限速值。
进一步的,在获取所述软件限速丢包对应的优先级,调整所述优先级的限速值之后,若所述检测单元11检测到CPU利用率依然大于或者等于所述CPU利用率门限值,所述限速调整单元12调整预设的CPU的总限速值。
通过采用本发明提供的设备,设备的CPU利用率达到门限值时,设备通过调整不同报文类型的限速值、或者不同报文优先级对应的限速值、或者设备CPU的总限速值,降低CPU利用率,实现对CPU接收报文的动态调整,有效防止报文冲击。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
本领域技术人员可以理解附图只是一个优选实施例的示意图,附图中的模块或流程并不一定是实施本发明所必须的。
本领域技术人员可以理解实施例中的装置中的模块可以按照实施例描述进行分布于实施例的装置中,也可以进行相应变化位于不同于本实施例的一个或多个装置中。上述实施例的模块可以合并为一个模块,也可以进一步拆分成多个子模块。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
以上公开的仅为本发明的几个具体实施例,但是,本发明并非局限于此,任何本领域的技术人员能思之的变化都应落入本发明的保护范围。

Claims (14)

1、一种CPU接收报文分级动态调度的方法,其特征在于,应用于调整CPU利用率的设备中,所述设备将向CPU发送的报文划分为不同类型及优先级,每一类型报文或者每一优先级报文具有相应的限速值,所述设备还配置CPU利用率门限值,该方法包括:
当所述设备检测到CPU利用率持续大于或者等于所述CPU利用率门限值的时间达到预设最长时间时,所述设备检测是否存在限速丢包;
如果存在硬件限速丢包,所述设备获取所述硬件限速丢包对应的报文类型,调整该类型报文的限速值;或者
如果存在软件限速丢包,所述设备获取所述软件限速丢包对应的优先级,调整所述优先级的限速值;或者
所述设备调整预设的CPU的总限速值。
2、如权利要求1所述的方法,其特征在于,所述硬件限速丢包对应的报文类型为一种或者多种;
所述设备获取所述硬件限速丢包对应的报文类型,调整该类型报文的限速值包括:
当所述硬件限速丢包对应的报文类型为一种时,所述设备通过多次调整将所述报文类型的限速值调整为目标值;
当所述硬件限速丢包对应的报文类型为多种时,所述设备获取所述多种报文类型的优先级,根据优先级从小到大的顺序逐一降低所述报文类型对应的限速值。
3、如权利要求2所述的方法,其特征在于,所述根据优先级从小到大的顺序逐一降低所述报文类型对应的限速值包括:
若在限速值调整结束之前,所述设备的CPU利用率降低到所述CPU利用率门限值以下,所述设备停止调整限速值;
进一步的,如果所述设备的CPU利用率持续低于预设的CPU利用率最低值,所述设备根据优先级从高到低的顺序恢复所述多种报文类型对应的限速值。
4、如权利要求1所述的方法,其特征在于,
当所述软件限速丢包对应的优先级为多个时,所述设备根据优先级从小到大的顺序逐一降低优先级对应的限速值。
5、如权利要求4所述的方法,其特征在于,所述设备根据优先级从小到大的顺序逐一降低优先级对应的限速值包括:
若在限速值调整结束之前,所述设备的CPU利用率降低到所述CPU利用率门限值以下,所述设备停止调整限速值;
进一步的,如果所述设备的CPU利用率持续降低到预设的CPU利用率最低值,所述设备根据优先级从高到低的顺序恢复优先级对应的限速值。
6、如权利要求1所述的方法,其特征在于,所述设备获取所述硬件限速丢包对应的报文类型,调整该类型报文的限速值之后,还包括:
若所述设备检测到CPU利用率依然大于或者等于所述CPU利用率门限值,所述设备检测是否存在软件限速丢包;
如果存在软件限速丢包,所述设备获取所述软件限速丢包对应的优先级,调整所述优先级的限速值。
7、如权利要求6所述的方法,其特征在于,所述设备获取所述软件限速丢包对应的优先级,调整所述优先级的限速值之后,还包括:
若所述设备检测到CPU利用率依然大于或者等于所述CPU利用率门限值,所述设备调整预设的CPU的总限速值。
8、一种CPU接收报文分级动态调度的设备,其特征在于,所述设备将向CPU发送的报文划分为不同类型及优先级,每一类型报文或者每一优先级报文具有相应的限速值,所述设备还配置CPU利用率门限值,所述设备包括:
检测单元,用于检测CPU利用率是否大于所述CPU利用率门限值,并当所述CPU利用率持续大于或者等于所述CPU利用率门限值的时间达到预设最长时间时,检测是否存在限速丢包;
限速调整单元,用于当所述检测单元检测到硬件限速丢包时,对硬件限速丢包进行调整,获取所述硬件限速丢包对应的报文类型,调整该类型报文的限速值;或者,当所述检测单元检测到软件限速丢包时,对软件限速丢包进行调整,获取所述软件限速丢包对应的优先级,调整所述优先级的限速值;或者,调整预设的CPU的总限速值。
9、如权利要求8所述的设备,其特征在于,所述硬件限速丢包对应的报文类型为一种或者多种;
所述限速调整单元具体用于:
当所述硬件限速丢包对应的报文类型为一种时,通过多次调整将所述报文类型的限速值调整为目标值;
当所述硬件限速丢包对应的报文类型为多种时,获取所述多种报文类型的优先级,根据优先级从小到大的顺序逐一降低所述报文类型对应的限速值。
10、如权利要求9所述的设备,其特征在于,所述限速调整单元还用于:
若在限速值调整结束之前,所述设备的CPU利用率降低到所述CPU利用率门限值以下,停止调整限速值;
进一步的,如果所述设备的CPU利用率持续低于预设的CPU利用率最低值,根据优先级从高到低的顺序恢复所述多种报文类型对应的限速值。
11、如权利要求8所述的设备,其特征在于,所述限速调整单元具体用于:
当所述软件限速丢包对应的优先级为多个时,所述设备根据优先级从小到大的顺序逐一降低优先级对应的限速值。
12、如权利要求11所述的设备,其特征在于,所述限速调整单元还用于:
若在限速值调整结束之前,所述设备的CPU利用率降低到所述CPU利用率门限值以下,停止调整限速值;
进一步的,如果所述设备的CPU利用率持续降低到预设的CPU利用率最低值,根据优先级从高到低的顺序恢复优先级对应的限速值。
13、如权利要求8所述的设备,其特征在于,所述限速调整单元还用于:
当所述检测单元检测到硬件限速丢包时,对硬件限速丢包进行调整,获取所述硬件限速丢包对应的报文类型,调整该类型报文的限速值;若所述检测单元检测到CPU利用率依然大于或者等于所述CPU利用率门限值,且存在软件限速丢包,获取所述软件限速丢包对应的优先级,调整所述优先级的限速值。
14、如权利要求13所述的设备,其特征在于,所述限速调整单元还用于:
在获取所述软件限速丢包对应的优先级,调整所述优先级的限速值之后,若所述检测单元检测到CPU利用率依然大于或者等于所述CPU利用率门限值,调整预设的CPU的总限速值。
CN2009101764914A 2009-09-17 2009-09-17 一种cpu接收报文分级动态调度的方法及设备 Active CN101651629B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2009101764914A CN101651629B (zh) 2009-09-17 2009-09-17 一种cpu接收报文分级动态调度的方法及设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2009101764914A CN101651629B (zh) 2009-09-17 2009-09-17 一种cpu接收报文分级动态调度的方法及设备

Publications (2)

Publication Number Publication Date
CN101651629A true CN101651629A (zh) 2010-02-17
CN101651629B CN101651629B (zh) 2012-05-23

Family

ID=41673749

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2009101764914A Active CN101651629B (zh) 2009-09-17 2009-09-17 一种cpu接收报文分级动态调度的方法及设备

Country Status (1)

Country Link
CN (1) CN101651629B (zh)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102158416A (zh) * 2011-05-04 2011-08-17 杭州华三通信技术有限公司 一种基于内存分配的报文处理方法和设备
CN103812687A (zh) * 2012-11-15 2014-05-21 华为技术有限公司 处理器的防护方法和设备
CN104283643A (zh) * 2014-10-24 2015-01-14 杭州华三通信技术有限公司 报文限速方法和装置
CN105357184A (zh) * 2015-10-08 2016-02-24 上海斐讯数据通信技术有限公司 一种交换机cpu的二级保护方法
CN105743679A (zh) * 2014-12-11 2016-07-06 中兴通讯股份有限公司 一种多核网络设备中cpu保护方法和装置
CN106411780A (zh) * 2016-11-10 2017-02-15 杭州迪普科技有限公司 报文控制的方法和装置
CN107094103A (zh) * 2017-02-09 2017-08-25 北京小度信息科技有限公司 数据采集方法和装置
CN108306830A (zh) * 2017-01-11 2018-07-20 腾讯科技(深圳)有限公司 一种过载阈值的动态调整方法及装置
CN112231107A (zh) * 2020-10-28 2021-01-15 新华三信息安全技术有限公司 防火墙的报文限速系统、方法、设备及介质

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1184781C (zh) * 2002-05-22 2005-01-12 华为技术有限公司 网络通信中报文的封装转发方法
CN100525301C (zh) * 2005-02-01 2009-08-05 华为技术有限公司 一种多协议标签交换网络保护切换方法
CN100479432C (zh) * 2005-10-10 2009-04-15 华为技术有限公司 一种报文编辑电路及方法

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102158416B (zh) * 2011-05-04 2013-12-11 杭州华三通信技术有限公司 一种基于内存分配的报文处理方法和设备
CN102158416A (zh) * 2011-05-04 2011-08-17 杭州华三通信技术有限公司 一种基于内存分配的报文处理方法和设备
CN103812687B (zh) * 2012-11-15 2017-12-15 华为技术有限公司 处理器的防护方法和设备
CN103812687A (zh) * 2012-11-15 2014-05-21 华为技术有限公司 处理器的防护方法和设备
CN104283643B (zh) * 2014-10-24 2018-06-12 新华三技术有限公司 报文限速方法和装置
CN104283643A (zh) * 2014-10-24 2015-01-14 杭州华三通信技术有限公司 报文限速方法和装置
CN105743679A (zh) * 2014-12-11 2016-07-06 中兴通讯股份有限公司 一种多核网络设备中cpu保护方法和装置
CN105357184A (zh) * 2015-10-08 2016-02-24 上海斐讯数据通信技术有限公司 一种交换机cpu的二级保护方法
CN106411780A (zh) * 2016-11-10 2017-02-15 杭州迪普科技有限公司 报文控制的方法和装置
CN108306830A (zh) * 2017-01-11 2018-07-20 腾讯科技(深圳)有限公司 一种过载阈值的动态调整方法及装置
CN107094103A (zh) * 2017-02-09 2017-08-25 北京小度信息科技有限公司 数据采集方法和装置
CN107094103B (zh) * 2017-02-09 2020-05-05 北京星选科技有限公司 数据采集方法和装置
CN112231107A (zh) * 2020-10-28 2021-01-15 新华三信息安全技术有限公司 防火墙的报文限速系统、方法、设备及介质
CN112231107B (zh) * 2020-10-28 2023-06-30 新华三信息安全技术有限公司 防火墙的报文限速系统、方法、设备及介质

Also Published As

Publication number Publication date
CN101651629B (zh) 2012-05-23

Similar Documents

Publication Publication Date Title
CN101651629B (zh) 一种cpu接收报文分级动态调度的方法及设备
US20200412660A1 (en) Congestion Control Method And Network Device
CN101547159B (zh) 一种避免网络拥塞的方法和设备
US8165066B2 (en) Method and apparatus for performing buffer status reporting
CN104301066A (zh) 数据包传输方法及装置
CN101291194B (zh) 报文保序的方法和系统
CN101873269B (zh) 数据转发设备和端口缓存的分配方法
CN106412861B (zh) 一种短信分发方法及系统
CN105191216A (zh) 用于多流聚合的缓冲区状态报告的系统和方法
US11160097B2 (en) Enforcing station fairness with MU-MIMO deployments
CN103442391A (zh) 一种数据传输的方法及用户终端、系统
CN102045253A (zh) 链路聚合网络中发送视频监控业务报文的方法及设备
CN101420736A (zh) 无线控制器、无线基站、通信系统和呼叫准入控制方法
US8451747B2 (en) Method and device for transmitting data based on time division duplexing (TDD) standard
EP2730051B1 (en) Network congestion control with adaptive qos bit-rate differentiation
US20080192633A1 (en) Apparatus and method for controlling data flow in communication system
US10044833B2 (en) Data processing method and apparatus used for terminal application
US20220045960A1 (en) Data packet marking method and device, and data transmission system
WO2019051759A1 (zh) 一种载波选择方法、终端设备及计算机存储介质
CN109890082B (zh) 一种时间触发的tt帧报文传输方法
US20120243413A1 (en) Data Packet Priority Level Management
EP2477366A1 (en) Data transmission method, apparatus and system
CN105939282A (zh) 分组大小的调整方法及装置
CN107454170A (zh) 一种待执行任务的信息传输方法及装置
CN112737970B (zh) 一种数据传输方法及相关设备

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CP03 Change of name, title or address
CP03 Change of name, title or address

Address after: 310052 Binjiang District Changhe Road, Zhejiang, China, No. 466, No.

Patentee after: Xinhua three Technology Co., Ltd.

Address before: 310053 Hangzhou hi tech Industrial Development Zone, Zhejiang province science and Technology Industrial Park, No. 310 and No. six road, HUAWEI, Hangzhou production base

Patentee before: Huasan Communication Technology Co., Ltd.