本申请提供一种报文接收优化方法、装置、电子设备及存储介质,用于改善上层的业务协议震荡、系统拓扑无法收敛或者堆叠环境设备分裂等等系统的不稳定的问题。该方法包括:获取中央处理器CPU队列的使用状态,并获取系统状态,系统状态是由所有CPU队列组成队列池的使用状态;针对队列池中的每个CPU队列,判断系统状态和该CPU队列的使用状态是否均为拥塞状态;若是,则根据CPU队列的优先级对CPU队列的拥塞最大阈值进行调整,拥塞最大阈值是在系统状态为拥塞状态的情况下,CPU队列的使用空间不能超过的最大空间阈值。过的最大空间阈值。过的最大空间阈值。
【技术实现步骤摘要】
一种报文接收优化方法、装置、电子设备及存储介质
[0001]本申请涉及计算机网络和网络优化的
,具体而言,涉及一种报文接收优化方法、装置、电子设备及存储介质。
技术介绍
[0002]目前,不管是交换机或路由器设备,还是单机设备或分布式设备中,都需要将接收的数据报文上送CPU(中央处理器)处理,完成报文采样或者协议交互。通常使用多个CPU队列来接收上送的数据报文,为了防止系统崩溃,通常会为每个CPU队列设置一个空间使用的最大阈值。然而,在实际过程中发现,当其中一个CPU队列有大量报文时,会随机丢弃报文,导致上层的业务协议震荡、系统拓扑无法收敛或者堆叠环境设备分裂等等系统的不稳定问题。
技术实现思路
[0003]本申请实施例的目的在于提供一种报文接收优化方法、装置、电子设备及存储介质,用于改善上层的业务协议震荡、系统拓扑无法收敛或者堆叠环境设备分裂等等系统的不稳定的问题。
[0004]本申请实施例提供了一种报文接收优化方法,包括:获取CPU队列的使用状态,并获取系统状态,系统状态是由所有CPU队列组成队列池的使用状态;针对队列池中的每个CPU队列,判断系统状态和该CPU队列的使用状态是否均为拥塞状态;若是,则根据CPU队列的优先级对CPU队列的拥塞最大阈值进行调整,拥塞最大阈值是在系统状态为拥塞状态的情况下,CPU队列的使用空间不能超过的最大空间阈值。在上述的实现过程中,通过根据CPU队列的优先级对CPU队列的拥塞最大阈值进行调整,设置的拥塞最大阈值是在系统状态为拥塞状态时CPU队列的使用空间不能超过的最大空间阈值,也就是说,在系统状态为空闲状态下,CPU队列的使用空间可以超过最大空间阈值,该CPU队列可以使用应该是其它CPU队列使用的空间,从而有效地利用了系统空闲状态时的资源,同时在系统拥塞状态时保证了高优先级别的CPU队列能够被正常使用,从而有效地提高了系统的稳定性。
[0005]可选地,在本申请实施例中,根据CPU队列的优先级对CPU队列的拥塞最大阈值进行调整,包括:判断CPU队列的优先级是否高于预设级别;若是,则增加CPU队列的拥塞最大阈值,否则,减少CPU队列的拥塞最大阈值。在上述的实现过程中,通过在CPU队列的优先级高于预设级别的情况下增加CPU队列的拥塞最大阈值,且在CPU队列的优先级低于预设级别的情况下减少CPU队列的拥塞最大阈值,从而使得低优先级的CPU队列的空间优先被高优先级的CPU队列使用,有效地在系统拥塞状态时保证了高优先级别的CPU队列能够被正常使用,从而有效地提高了系统的稳定性。
[0006]可选地,在本申请实施例中,增加CPU队列的拥塞最大阈值,包括:获取队列池的剩余空间;根据预设调整因子乘以队列池的剩余空间,获得待调整空间;根据待调整空间确定新的拥塞最大阈值。
[0007]可选地,在本申请实施例中,获取CPU队列的使用状态,包括:获取CPU队列的可用空间和CPU队列的使用空间;判断CPU队列的可用空间与CPU队列的使用空间的差值是否小于预设阈值;若是,则将CPU队列的使用状态确定为拥塞状态,否则,将CPU队列的使用状态确定为空闲状态。
[0008]可选地,在本申请实施例中,获取系统状态,包括:获取队列池的剩余空间;判断队列池的剩余空间是否小于预设阈值;若是,则将系统状态确定为拥塞状态,否则,将系统状态确定为空闲状态。
[0009]可选地,在本申请实施例中,获取队列池的剩余空间,包括:获取队列池的可用空间和队列池的使用空间,队列池的可用空间是所有CPU队列的可用空间之和,队列池的使用空间是所有CPU队列的使用空间之和;根据队列池的可用空间和队列池的使用空间,确定队列池的剩余空间。
[0010]本申请实施例还提供了一种报文接收优化装置,包括:系统状态获取模块,用于获取CPU队列的使用状态,并获取系统状态,系统状态是由所有CPU队列组成队列池的使用状态;拥塞状态判断模块,用于针对队列池中的每个CPU队列,判断系统状态和该CPU队列的使用状态是否均为拥塞状态;拥塞阈值调整模块,用于若系统状态和该CPU队列的使用状态均为拥塞状态,则根据CPU队列的优先级对CPU队列的拥塞最大阈值进行调整,拥塞最大阈值是在系统状态为拥塞状态的情况下,CPU队列的使用空间不能超过的最大空间阈值。
[0011]可选地,在本申请实施例中,拥塞阈值调整模块,包括:优先级别判断模块,用于判断CPU队列的优先级是否高于预设级别;最大阈值调整模块,用于若CPU队列的优先级高于预设级别,则增加CPU队列的拥塞最大阈值,否则,减少CPU队列的拥塞最大阈值。
[0012]可选地,在本申请实施例中,最大阈值调整模块,包括:剩余空间获取模块,用于获取队列池的剩余空间;调整空间获得模块,用于根据预设调整因子乘以队列池的剩余空间,获得待调整空间;最大阈值确定模块,用于根据待调整空间确定新的拥塞最大阈值。
[0013]可选地,在本申请实施例中,系统状态获取模块,包括:队列空间获取模块,用于获取CPU队列的可用空间和CPU队列的使用空间;空间差值判断模块,用于判断CPU队列的可用空间与CPU队列的使用空间的差值是否小于预设阈值;使用状态确定模块,用于若CPU队列的可用空间与CPU队列的使用空间的差值小于预设阈值,则将CPU队列的使用状态确定为拥塞状态,否则,将CPU队列的使用状态确定为空闲状态。
[0014]可选地,在本申请实施例中,系统状态获取模块,包括:剩余空间获取模块,用于获取队列池的剩余空间;剩余空间判断模块,用于判断队列池的剩余空间是否小于预设阈值;系统状态确定模块,用于若队列池的剩余空间小于预设阈值,则将系统状态确定为拥塞状态,否则,将系统状态确定为空闲状态。
[0015]可选地,在本申请实施例中,剩余空间获取模块,包括:队列池空间获取模块,用于获取队列池的可用空间和队列池的使用空间,队列池的可用空间是所有CPU队列的可用空间之和,队列池的使用空间是所有CPU队列的使用空间之和;队列池空间获取模块,用于根据队列池的可用空间和队列池的使用空间,确定队列池的剩余空间。
[0016]本申请实施例还提供了一种电子设备,包括:处理器和存储器,存储器存储有处理器可执行的机器可读指令,机器可读指令被处理器执行时执行如上面描述的方法。
[0017]本申请实施例还提供了一种计算机可读存储介质,该计算机可读存储介质上存储
有计算机程序,该计算机程序被处理器运行时执行如上面描述的方法。
附图说明
[0018]为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请实施例的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
[0019]图1示出的本申请实施例提供的报文接收优化方法的流程示意图;
[0020]图2示出的本申请实施例提供的队列池的结构示意图;
[00本文档来自技高网...
【技术保护点】
【技术特征摘要】
1.一种报文接收优化方法,其特征在于,包括:获取CPU队列的使用状态,并获取系统状态,所述系统状态是由所有CPU队列组成队列池的使用状态;针对所述队列池中的每个CPU队列,判断所述系统状态和该CPU队列的使用状态是否均为拥塞状态;若是,则根据所述CPU队列的优先级对所述CPU队列的拥塞最大阈值进行调整,所述拥塞最大阈值是在所述系统状态为拥塞状态的情况下,所述CPU队列的使用空间不能超过的最大空间阈值。2.根据权利要求1所述的方法,其特征在于,所述根据所述CPU队列的优先级对所述CPU队列的拥塞最大阈值进行调整,包括:判断所述CPU队列的优先级是否高于预设级别;若是,则增加所述CPU队列的拥塞最大阈值,否则,减少所述CPU队列的拥塞最大阈值。3.根据权利要求2所述的方法,其特征在于,所述增加所述CPU队列的拥塞最大阈值,包括:获取所述队列池的剩余空间;根据预设调整因子乘以所述队列池的剩余空间,获得待调整空间;根据所述待调整空间确定新的拥塞最大阈值。4.根据权利要求1所述的方法,其特征在于,所述获取CPU队列的使用状态,包括:获取所述CPU队列的可用空间和所述CPU队列的使用空间;判断所述CPU队列的可用空间与所述CPU队列的使用空间的差值是否小于预设阈值;若是,则将所述CPU队列的使用状态确定为拥塞状态,否则,将所述CPU队列的使用状态确定为空闲状态。5.根据权利要求1所述的方法,其特征在于,所述获取系统状态,包括:获取所述队列池的剩余空间;判断所述队列池的剩余空间是否小于预设阈值;若是,则将所述系统状态确定为拥塞状态,否则,将所述系统状态确定为空闲状态。6.根据权利要求3或5所述的方法...
【专利技术属性】
技术研发人员:胡明,
申请(专利权)人:迈普通信技术股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。