令牌管理及信息转发方法、装置、设备、存储介质制造方法及图纸

技术编号:34248661 阅读:55 留言:0更新日期:2022-07-24 11:00
本公开提供了一种令牌管理及信息转发方法、装置、电子设备及存储介质,涉及网络通信领域。本公开利用令牌调度模块对各个自治令牌对象对应的令牌数据进行分析,得到综合令牌供需状态,再根据综合令牌供需状态和各个自治令牌对象对应的令牌数据,为至少一个自治令牌对象分配奖励令牌。其中至少部分自治令牌对象用于生产和消费令牌。由令牌调度模块为各个自治令牌对象统一调配奖励令牌,能够克服多核场景中自治令牌对象在有令牌需求时跨核访问公共令牌桶所导致的性能下降的缺陷,提升了令牌调配效率。另外,本公开中自治令牌对象可以生产令牌,并设置有存放令牌的令牌桶,因此能够有效克服多核访问公共令牌桶造成的CPU缓存冲突的问题。问题。问题。

Token management and information forwarding method, device, device, storage medium

【技术实现步骤摘要】
令牌管理及信息转发方法、装置、设备、存储介质


[0001]本公开涉及网络通信
,尤其涉及一种令牌管理方法及装置、信息转发方法及装置、电子设备及存储有计算机指令的非瞬时计算机可读存储介质。

技术介绍

[0002]在网络传输场景中,经常会有对流量进行限速和整形的需求。用于流量限速和流量整形的主要算法是令牌桶算法和漏桶算法,其基本原理是生产者

消费者模型,一个生产者以恒定速率生产令牌,使用令牌桶存储生产出来的令牌,而消费者则随机到来,消费令牌桶中的令牌,当令牌桶中没有令牌的时候,消费者就无法消费,从而达到限速和整形的效果。
[0003]在高速网络传输场景下,网络流量相当大,网络设备多采用多核处理器去并发处理数据报文,然而对于令牌桶算法来说,就形成了一个生产者多个消费者(每个中央处理器cpu核都是一个消费者)的场景,多核共享相同的令牌桶容易引起cpu缓存冲突,并且消费者在有需求时进行跨核访问容易导致性能下降,令牌调度效率低,以至于造成信息转发效率低下。

技术实现思路

[0004]本公开至少提供了一种令牌管理方法及装置、信息转发方法及装置、电子设备及存储有计算机指令的非瞬时计算机可读存储介质,以解决上述至少一个技术问题。
[0005]根据本公开的一方面,提供了一种令牌管理方法,应用于令牌调度模块,包括:分别获取各个自治令牌对象对应的令牌数据;其中,P个所述自治令牌对象用于生产令牌和消费令牌;P为大于1的正整数;对各个所述自治令牌对象对应的令牌数据进行分析,得到综合令牌供需状态;根据所述综合令牌供需状态和各个所述令牌数据,为至少一个自治令牌对象分配奖励令牌,以使所述至少一个自治令牌对象利用接收奖励令牌后的令牌转发信息。
[0006]在一种可能的实施方式中,生产令牌的所述自治令牌对象生产令牌的速度为预设速率的N分之一;其中,N为生产令牌的所述自治令牌对象的数量;和/或,所述自治令牌对象上设置有用于存放令牌的令牌桶。
[0007]在一种可能的实施方式中,所述对各个所述自治令牌对象对应的令牌数据进行分析,得到综合令牌供需状态,包括:对各个所述自治令牌对象对应的令牌数据进行分析,确定令牌统计数据;根据所述令牌统计数据,确定所述综合令牌供需状态。
[0008]在一种可能的实施方式中,所述令牌数据包括对应的自治令牌对象的欠缺令牌数量;用于生产令牌的自治令牌对象的令牌数据还包括富裕令牌数量;所述令牌统计数据包括富裕令牌总数量、欠缺令牌总数量、基础令牌总数量、负令牌总数量;所述对各个所述自治令牌对象对应的令牌数据进行分析,确定令牌统计数据,包
括:针对每个自治令牌对象,根据该自治令牌对象对应的预设的最大基础令牌数量和欠缺令牌数量,确定该自治令牌对象的基础令牌数量和负令牌数量;计算至少部分自治令牌对象对应的富裕令牌数量的和,得到所述富裕令牌总数量;计算至少部分自治令牌对象对应的欠缺令牌数量的和,得到所述欠缺令牌总数量;计算至少部分自治令牌对象对应的基础令牌数量的和,得到所述基础令牌总数量;计算至少部分自治令牌对象对应的负令牌数量的和,得到所述负令牌总数量。
[0009]在一种可能的实施方式中,所述令牌统计数据包括富裕令牌总数量、欠缺令牌总数量;所述根据所述令牌统计数据,确定所述综合令牌供需状态,包括:在所述富裕令牌总数量大于所述欠缺令牌总数量的情况下,确定所述综合令牌供需状态为第一供需状态;所述第一供需状态用于表征令牌总体生产速度大于令牌总体消费速度,并且为各个自治令牌对象分配奖励令牌后,各个自治令牌对象的基础令牌数量均为预设的最大基础令牌数量。
[0010]在一种可能的实施方式中,所述令牌数据包括对应的自治令牌对象的富裕令牌数量和欠缺令牌数量;所述根据所述综合令牌供需状态和所述令牌数据,为至少一个自治令牌对象分配奖励令牌,包括:在所述综合令牌供需状态为第一供需状态的情况下,针对每个基础令牌数量小于最大基础令牌数量的第一自治令牌对象,将该第一自治令牌对象的奖励令牌数量设置为该第一自治令牌对象的欠缺令牌数量。
[0011]在一种可能的实施方式中,所述令牌统计数据包括富裕令牌总数量、基础令牌总数量、负令牌总数量;所述根据所述令牌统计数据,确定所述综合令牌供需状态,包括:在所述富裕令牌总数量和所述基础令牌总数量的和小于所述负令牌总数量的情况下,确定所述综合令牌供需状态为第二供需状态;所述第二供需状态用于表征令牌总体生产速度小于令牌总体消费速度,并且为各个自治令牌对象分配奖励令牌后,各个自治令牌对象的大令牌数量均小于零。
[0012]在一种可能的实施方式中,所述根据所述综合令牌供需状态和所述令牌数据,为至少一个自治令牌对象分配奖励令牌,包括:在所述综合令牌供需状态为第二供需状态的情况下,计算所述负令牌总数量减去所述富裕令牌总数量以及所述基础令牌总数量得到的差值;计算所述差值除以所述自治令牌对象的数量得到的商,得到负令牌平均数量;针对每个自治令牌对象,根据该自治令牌对象的令牌数据和所述负令牌平均数量,确定该自治令牌对象的奖励令牌数量。
[0013]在一种可能的实施方式中,所述令牌统计数据包括富裕令牌总数量、基础令牌总
数量、负令牌总数量;所述根据所述令牌统计数据,确定所述综合令牌供需状态,包括:在所述富裕令牌总数量和所述基础令牌总数量的和大于所述负令牌总数量,并且所述负令牌总数量大于所述富裕令牌总数量的情况下,确定所述综合令牌供需状态为第三供需状态;所述第三供需状态用于表征令牌总体生产速度小于令牌总体消费速度,并且为各个自治令牌对象分配奖励令牌后,各个自治令牌对象的基础令牌数量均大于零,并且小于或等于最大基础令牌数量。
[0014]在一种可能的实施方式中,所述令牌数据包括对应的自治令牌对象的富裕令牌数量和欠缺令牌数量;所述根据所述综合令牌供需状态和所述令牌数据,为至少一个自治令牌对象分配奖励令牌,包括:在所述综合令牌供需状态为第三供需状态的情况下,针对每个基础令牌数量小于最大基础令牌数量的第二自治令牌对象,根据该第二自治令牌对象的欠缺令牌数量和所述欠缺令牌总数量,确定该第二自治令牌对象的令牌欠缺比例;根据所述富裕令牌总数量和所述令牌欠缺比例,确定该第二自治令牌对象的奖励令牌数量。
[0015]在一种可能的实施方式中,上述令牌管理方法还包括:设置自治令牌对象的令牌桶的平衡水平线;其中,平衡水平线对应的数值为自治令牌对象生产令牌生产和新消费令牌平衡时,令牌桶内的令牌数量;将所述平衡水平线以上的令牌区域内的令牌,作为富裕令牌;将所述平衡水平线以下,并且0线以上的令牌区域内的令牌作为基础令牌;其中,0线表示令牌桶中令牌数量的正负分界线;在令牌桶中令牌数量小于所述平衡水平线对应的数值,并且所述令牌桶中令牌数量为正值的情况下,将基础令牌到平衡水平线之间的空令牌区域内的令牌作为欠缺令牌;在所述令牌桶中令牌数量为负值的情况下,将低于0线的空令牌区域内的令牌作为负令牌,将低于平衡水平线和低于0线的空令牌区域内的令牌作为欠缺令牌。
[0016]根据本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种令牌管理方法,应用于令牌调度模块,其特征在于,包括:分别获取各个自治令牌对象对应的令牌数据;其中,P个所述自治令牌对象用于生产令牌和消费令牌;P为大于1的正整数;对各个所述自治令牌对象对应的令牌数据进行分析,得到综合令牌供需状态;根据所述综合令牌供需状态和各个所述令牌数据,为至少一个自治令牌对象分配奖励令牌,以使所述至少一个自治令牌对象利用接收奖励令牌后的令牌转发信息。2.根据权利要求1所述的方法,其特征在于,所述自治令牌对象上设置有用于存放令牌的令牌桶;和/或;生产令牌的所述自治令牌对象生产令牌的速度为预设速率的N分之一;其中,N为生产令牌的所述自治令牌对象的数量。3.根据权利要求1或2所述的方法,其特征在于,所述对各个所述自治令牌对象对应的令牌数据进行分析,得到综合令牌供需状态,包括:对各个所述自治令牌对象对应的令牌数据进行分析,确定令牌统计数据;根据所述令牌统计数据,确定所述综合令牌供需状态。4.根据权利要求3所述的方法,其特征在于,所述令牌数据包括自治令牌对象的欠缺令牌数量;用于生产令牌的自治令牌对象的令牌数据还包括富裕令牌数量;所述令牌统计数据包括富裕令牌总数量、欠缺令牌总数量、基础令牌总数量、负令牌总数量;所述对各个所述自治令牌对象对应的令牌数据进行分析,确定令牌统计数据,包括:针对每个自治令牌对象,根据该自治令牌对象对应的预设的最大基础令牌数量和欠缺令牌数量,确定该自治令牌对象的基础令牌数量和负令牌数量;计算至少部分自治令牌对象对应的富裕令牌数量的和,得到所述富裕令牌总数量;计算至少部分自治令牌对象对应的欠缺令牌数量的和,得到所述欠缺令牌总数量;计算至少部分自治令牌对象对应的基础令牌数量的和,得到所述基础令牌总数量;计算至少部分自治令牌对象对应的负令牌数量的和,得到所述负令牌总数量。5.根据权利要求4所述的方法,其特征在于,所述令牌统计数据包括富裕令牌总数量、欠缺令牌总数量;所述根据所述令牌统计数据,确定所述综合令牌供需状态,包括:在所述富裕令牌总数量大于所述欠缺令牌总数量的情况下,确定所述综合令牌供需状态为第一供需状态;所述第一供需状态用于表征令牌总体生产速度大于令牌总体消费速度,并且为各个自治令牌对象分配奖励令牌后,各个自治令牌对象的基础令牌数量均为预设的最大基础令牌数量。6.根据权利要求5所述的方法,其特征在于,所述令牌数据包括自治令牌对象的富裕令牌数量和欠缺令牌数量;所述根据所述综合令牌供需状态和各个所述令牌数据,为至少一个自治令牌对象分配奖励令牌,包括:在所述综合令牌供需状态为第一供需状态的情况下,针对每个基础令牌数量小于最大基础令牌数量的第一自治令牌对象,将该第一自治令牌对象的奖励令牌数量设置为该第一自治令牌对象的欠缺令牌数量。7.根据权利要求3所述的方法,其特征在于,所述令牌统计数据包括富裕令牌总数量、
基础令牌总数量、负令牌总数量;所述根据所述令牌统计数据,确定所述综合令牌供需状态,包括:在所述富裕令牌总数量和所述基础令牌总数量的和小于所述负令牌总数量的情况下,确定所述综合令牌供需状态为第二供需状态;所述第二供需状态用于表征令牌总体生产速度小于令牌总体消费速度,并且为各个自治令牌对象分配奖励令牌后,各个自治令牌对象的负令牌数量均大于零。8.根据权利要求7所述的方法,其特征在于,所述根据所述综合令牌供需状态和各个所述令牌数据,为至少一个自治令牌对象分配奖励令牌,包括:在所述综合令牌供需状态为第二供需状态的情况下,计算所述负令牌总数量减去所述富裕令牌总数量以及所述基础令牌总数量得到的差值;计算所述差值除以所述自治令牌对象的数量得到的商,得到负令牌平均数量;针对每个自治令牌对象,根据该自治令牌对象的令牌数据和所述负令牌平均数量,确定该自治令牌对象的奖励令牌数量。9.根据权利要求3所述的方法,其特征在于,所述令牌统计数据包括富裕令牌总数量、基础令牌总数量、...

【专利技术属性】
技术研发人员:王永东华贵斌庄灏陈云鹏
申请(专利权)人:北京轻网科技有限公司
类型:发明
国别省市:

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

1