缓存控制方法技术

技术编号:39749967 阅读:6 留言:0更新日期:2023-12-17 23:47
本申请涉及一种缓存控制方法

【技术实现步骤摘要】
缓存控制方法、装置和设备


[0001]本申请涉及报文转发
,特别是涉及一种缓存控制方法

装置和设备


技术介绍

[0002]网络设备在进行报文转发时,会先将接收到的报文写入缓存空间中,经过相应处理后,再从缓存空间中读取报文并转发

但是,当上述缓存空间已被全部占用时,新接收到的报文则不能被写入缓存空间,会产生丢包现象

[0003]为了尽可能改善上述丢包现象,需要对缓存空间的使用情况进行控制

相关技术,一般先将相同属性的报文划分到一个队列中,并为各队列设置对应的优先级,再根据优先级为各队列设置固定的缓存阈值,以限制各个队列的最大缓存空间

[0004]然而,上述缓存控制方法的缓存利用率较低


技术实现思路

[0005]基于此,有必要针对上述技术问题,提供一种能够提高缓存利用率的缓存控制方法

装置和设备

[0006]第一方面,本申请提供了一种缓存控制方法

所述方法包括:获取目标队列当前的目标缓存状态数据,目标缓存状态数据包括目标队列在缓存空间中的第一缓存占用量以及目标队列的丢包信息中的至少一种;根据目标缓存状态数据,检测目标队列是否满足缓存阈值调整条件;若目标队列满足缓存阈值调整条件,则根据目标缓存状态数据

缓存空间的第二缓存占用量以及其他队列的缓存状态数据对目标缓存状态数据包括的目标缓存阈值进行调整处理<br/>。
[0007]在其中一个实施例中,缓存阈值调整条件包括丢包信息指示目标队列存在丢包情况,或者,第一缓存占用量与目标缓存阈值之间的差值小于预设差值阈值

在其中一个实施例中,缓存空间包括静态空间和共享空间;根据目标缓存状态数据

缓存空间的第二缓存占用量以及其他队列的缓存状态数据对目标缓存状态数据包括的缓存阈值进行调整处理,包括:若缓存空间的目标缓存容量与第二缓存占用量之间的差值大于或者等于预设差值阈值,则获取共享空间的第三缓存占用量;若共享空间的共享缓存容量与第三缓存占用量之间的差值小于预设差值阈值,则将目标缓存阈值包括的静态缓存阈值增加第一静态步长

[0008]在其中一个实施例中,方法还包括:将其他队列中的第一队列的静态缓存阈值减少第一静态步长,第一队列为其他队列中静态缓存占用量最少的队列

[0009]在其中一个实施例中,方法还包括:若共享缓存容量与第三缓存占用量之间的差值大于或者等于预设差值阈值,则检
测目标缓存阈值包括的共享缓存阈值是否小于共享阈值最大值;若目标缓存阈值包括的共享缓存阈值小于共享阈值最大值,则将目标缓存阈值包括的共享缓存阈值增加第一共享步长

[0010]在其中一个实施例中,方法还包括:若目标缓存阈值包括的共享缓存阈值大于或者等于共享阈值最大值,则检测目标缓存阈值包括的静态缓存阈值是否小于静态阈值最大值;若目标缓存阈值包括的静态缓存阈值小于静态阈值最大值,则将目标缓存阈值包括的静态缓存阈值增加第二静态步长

[0011]在其中一个实施例中,方法还包括:将其他队列中的第二队列的静态缓存阈值减少第二静态步长,第二队列为其他队列中优先级低于目标队列的队列

[0012]在其中一个实施例中,方法还包括:若缓存空间的目标缓存容量与第二缓存占用量之间的差值小于预设差值阈值,则检测目标队列的优先级是否均小于其他队列的优先级;若目标队列的优先级部分小于其他队列的优先级,则检测目标队列在共享空间中的共享缓存占用量是否大于或者等于目标缓存阈值包括的共享缓存阈值;若目标队列在共享空间中的共享缓存占用量小于目标缓存阈值包括的共享缓存阈值,则将其他队列中的第二队列的共享缓存阈值减少第二共享步长;若目标队列在共享空间中的共享缓存占用量大于或者等于目标缓存阈值包括的共享缓存阈值,则检测目标缓存阈值包括的共享缓存阈值是否小于共享阈值最大值;若目标缓存阈值包括的共享缓存阈值小于共享阈值最大值,则将目标缓存阈值包括的共享缓存阈值增加第一共享步长

[0013]第二方面,本申请还提供了一种缓存控制装置

所述装置包括:获取模块,用于获取目标队列当前的目标缓存状态数据,目标缓存状态数据包括目标队列在缓存空间中的第一缓存占用量以及目标队列的丢包信息中的至少一种;检测模块,用于根据目标缓存状态数据,检测目标队列是否满足缓存阈值调整条件;调整模块,用于若目标队列满足缓存阈值调整条件,则根据目标缓存状态数据

缓存空间的第二缓存占用量以及其他队列的缓存状态数据对目标缓存状态数据包括的目标缓存阈值进行调整处理

[0014]第三方面,本申请还提供了一种网络设备

所述网络设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现如上述第一方面所述方法的步骤

[0015]上述缓存控制方法

装置和设备,通过获取目标队列当前的目标缓存状态数据,目标缓存状态数据包括目标队列在缓存空间中的第一缓存占用量以及目标队列的丢包信息中的至少一种;根据目标缓存状态数据,检测目标队列是否满足缓存阈值调整条件;若目标队列满足缓存阈值调整条件,则根据目标缓存状态数据

缓存空间的第二缓存占用量以及其他队列的缓存状态数据对目标缓存状态数据包括的目标缓存阈值进行调整处理

这样,根据目标队列的缓存状态数据检测目标队列是否满足缓存阈值调制条件,如果目标队列满
足缓存阈值调整条件,则对目标缓存状态数据保存的目标缓存阈值进行调整处理,使得目标队列的缓存阈值能够更好地适应当前的流量模型;避免了传统技术中采用固定的缓存阈值,可能存于与网络设备当前的流量模型不适应,导致的缓存空间利用率较低的问题,比如,高优先级队列的缓存阈值大于低优先级队列的缓存阈值,但是当前流量模型中高优先级队列的报文量远远小于低优先级队列的报文量,又例如,目标队列的报文量很大,但是其他队列的报文量很小,导致部分缓存空间处于经常闲置的状态;本申请提供的缓存控制方法能够提高缓存空间的利用率

附图说明
[0016]图1为一个实施例中缓存控制方法的应用环境图;
[0017]图2为一个实施例中缓存控制方法的流程示意图;
[0018]图3为一个实施例中网络设备中报文处理芯片的结构框图;
[0019]图4为一个实施例中划分缓存空间的示例性示意图;
[0020]图5为另一个实施中缓存控制方法的流程示意图;
[0021]图6为一个实施例中缓存控制装置的结构框图;
[0022]图7为一个实施例中计算机设备的内部结构图

具体实施方式
[0023]为了使本申请的目的

技术方案及优点更加本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.
一种缓存控制方法,其特征在于,所述方法包括:获取目标队列当前的目标缓存状态数据,所述目标缓存状态数据包括所述目标队列在缓存空间中的第一缓存占用量以及所述目标队列的丢包信息中的至少一种;根据所述目标缓存状态数据,检测所述目标队列是否满足缓存阈值调整条件;若所述目标队列满足所述缓存阈值调整条件,则根据所述目标缓存状态数据

所述缓存空间的第二缓存占用量以及其他队列的缓存状态数据对所述目标缓存状态数据包括的目标缓存阈值进行调整处理
。2.
根据权利要求1所述的方法,其特征在于,所述缓存阈值调整条件包括所述丢包信息指示所述目标队列存在丢包情况,或者,所述第一缓存占用量与所述目标缓存阈值之间的差值小于预设差值阈值
。3.
根据权利要求1所述的方法,其特征在于,所述缓存空间包括静态空间和共享空间;所述根据所述目标缓存状态数据

所述缓存空间的第二缓存占用量以及其他队列的缓存状态数据对所述目标缓存状态数据包括的缓存阈值进行调整处理,包括:若所述缓存空间的目标缓存容量与所述第二缓存占用量之间的差值大于或者等于预设差值阈值,则获取所述共享空间的第三缓存占用量;若所述共享空间的共享缓存容量与所述第三缓存占用量之间的差值小于预设差值阈值,则将所述目标缓存阈值包括的静态缓存阈值增加第一静态步长
。4.
根据权利要求3所述的方法,其特征在于,所述方法还包括:将所述其他队列中的第一队列的静态缓存阈值减少所述第一静态步长,所述第一队列为所述其他队列中静态缓存占用量最少的队列
。5.
根据权利要求3所述的方法,其特征在于,所述方法还包括:若所述共享缓存容量与所述第三缓存占用量之间的差值大于或者等于预设差值阈值,则检测所述目标缓存阈值包括的共享缓存阈值是否小于共享阈值最大值;若所述目标缓存阈值包括的共享缓存阈值小于所述共享阈值最大值,则将所述目标缓存阈值包括的共享缓存阈值增加第一共享步长
。6.
根据权利要求5所述的方法,其特征在于,所述方法还包括:若所述目标缓存阈值包括的共享缓存阈值大于或者等于所述共享阈值最大值,则检测所述目标缓...

【专利技术属性】
技术研发人员:王闯郑德龙谢文斌刘启明王志忠
申请(专利权)人:南京华芯科晟技术有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1