一种流量整形方法及装置制造方法及图纸

技术编号:24103247 阅读:17 留言:0更新日期:2020-05-09 14:09
本申请公开了一种流量整形方法及装置;上述流量整形方法,包括:通过监控任一队列的令牌消耗信息,确定该队列是否需要老化;当令牌添加表中的任一队列需要老化,将该队列从令牌添加表中移除,并将该队列的令牌桶内的令牌数量更新为大于令牌桶下限阈值的值。本申请提供的流量整形方法及装置可以实现整形快速响应,并降低功耗。

A flow shaping method and device

【技术实现步骤摘要】
一种流量整形方法及装置
本申请涉及但不限于数据通信
,尤指一种流量整形方法及装置。
技术介绍
随着互联网和移动互联网的快速发展,人们对于网络提出了更新、更快、更稳定的服务需求,带宽和业务访问量极速增加。网络服务质量的保障需要网络处理器(NetworkProcessor,NP)芯片全方位提升性能。其中,流量整形(TrafficShaping)是一种保证速率平滑输出的方法,保证网络数据在协商的速率上稳定转发,防止下游网络设备出现拥塞,避免数据报文出现延迟、丢失甚至错误的情况。常见的网络处理器芯片的流量整形采用定时添加方式。其中,可以为每个业务队列配置一个计时器,根据业务队列的整形权重,计算出某个特定时刻,在特定时刻为业务队列添加令牌,其中,一个令牌等价于若干字节的报文授权;网络处理器发送报文会消耗令牌,通过控制每次下发令牌的数量和时间,就能达到流量整形的作用。随着网络处理器芯片的能力不断提升,业务层次和业务队列较之前芯片规格成倍增加,同时流量整形精度不断提高,采用定时添加方式会消耗大量的资源。为了降低芯片成本,目前大容量高密度队列的网络处理器芯片基本采用WFQ(WeightedFairQueuing,加权公平调度)或类似算法实现流量整形;其中,可以根据总带宽,将业务队列整形值转化为权重,使用一个计时器对大容量高密度队列进行调度和令牌添加。然而,在采用WFQ或类似算法实现整形时,由于业务队列申请服务时有时无,导致整形不能及时生效。
技术实现思路
本申请实施例提供了一种流量整形方法及装置,可以实现整形快速响应,并降低功耗。一方面,本申请实施例提供一种流量整形方法,包括:通过监控任一队列的令牌消耗信息,确定所述队列是否需要老化;当令牌添加表中的任一队列需要老化,将所述队列从所述令牌添加表中移除,并将所述队列的令牌桶内的令牌数量更新为大于令牌桶下限阈值的值。另一方面,本申请实施例提供一种流量整形装置,包括:令牌添加模块、老化模块;其中,所述老化模块,适于通过监控任一队列的令牌消耗信息,确定所述队列是否需要老化;所述令牌添加模块,适于当令牌添加表中的任一队列需要老化,将所述队列从所述令牌添加表中移除,并将所述队列的令牌桶内的令牌数量更新大于令牌桶下限阈值的值。再一方面,本申请实施例提供一种网络处理器,包括上述流量整形装置。再一方面,本申请实施例提供一种计算机可读介质,存储流量整形程序,所述流量整形程序被处理器执行时实现上述流量整形方法的步骤。在本申请实施例中,通过监控队列的令牌消耗信息,确定队列是否需要老化;当令牌添加表中的任一队列需要老化,将该队列从令牌添加表中移除,并将该队列的令牌桶内的令牌数量更新为大于令牌桶下限阈值的值。本实施例中,可以将需要老化的队列从令牌添加表中移除,并将队列的令牌桶内的令牌数量更新为大于令牌桶下限阈值的值,使得一旦该队列再次申请服务时,实现整形快速响应,保证业务流量管理快速生效。而且,将需要老化的队列从令牌添加表中移除可以减少不必要的存储读写访问,从而降低功耗。本申请的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本申请而了解。本申请的目的和其他优点可通过在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。附图说明附图用来提供对本申请技术方案的进一步理解,并且构成说明书的一部分,与本申请的实施例一起用于解释本申请的技术方案,并不构成对本申请技术方案的限制。图1为采用WFQ算法的令牌消耗过程的示意图;图2为本申请实施例提供的流量整形方法的流程图;图3为本申请实施例提供的流量整形装置的示意图;图4为本申请实施例提供的流量整形装置的一种示例图;图5为本申请实施例中的RAM内存储的扫描标记和老化标记的更新示意图。具体实施方式下面将结合附图对本申请的实施例进行详细说明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行。并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。图1为采用WFQ算法的令牌消耗过程的示意图。采用WFQ或类似算法实现队列整形,可以采用链表或者索引形式,依次对当前时刻需要服务的队列进行令牌添加。其中,使用RAM(Random-AccessMemory,随机存取存储器)存储高密度队列的令牌桶内的令牌个数,每一个RAM地址对应一个队列,每个地址的初始令牌个数为配置的令牌个数(如图1(a)所示),初始令牌个数由网络处理器芯片所有整形队列权重之和决定,不能随意配置。当接收到某个队列的令牌消耗信息,会将RAM里对应该队列的令牌桶内的令牌个数减去1个(如图1(b)所示),当令牌个数减为配置的令牌桶下限阈值时,接下来该队列的令牌消耗信息将不会得到令牌授权。令牌添加时,需要逐个队列添加,每次添加都会查询队列的配置信息,若整形使能打开,则按照整形队列的总权重即时添加令牌,直至添加到配置的初始令牌个数,多出的令牌会丢弃。如图1(c)所示,只有队列的当前令牌个数在令牌桶下限阈值附近时整形才会起作用。队列一旦加入过WFQ链表,除非整形使能关闭,否则该队列将一直参与令牌添加。如果该队列在一段时间内停止申请服务,不再消耗令牌,该队列仍然会继续参与令牌添加,直至恢复成初始令牌个数(如图1(d))。当队列重新申请服务时,令牌个数需要重新消耗至令牌桶下限阈值,整形才会起作用。尤其对于大容量高密度队列的网络处理器而言,队列数较多,相同队列下发消耗令牌授权间隔过长,在此情景下,用户的带宽会有短暂的时间超过分配值,网络出现波动,整形的响应速度难以达到令人满意的效果。而且,在实际应用上,网络中的某个数据业务不会一直申请服务,服务申请总是时有时无,每次申请服务都要等到RAM中令牌数量减至令牌桶下限阈值整形才生效,导致整形不能及时生效,无法保证业务流量管理快速生效。本申请实施例提供一种流量整形方法及装置,通过监控队列的令牌消耗信息,确定队列是否需要老化;将需要老化的队列从令牌添加表中移除,并将需要老化的队列的令牌桶内的令牌数量更新为大于令牌桶下限阈值的值。如此一来,一旦该队列再次申请服务,整形会立即生效,保证快速响应;而且可以减少不必要的存储读写访问,从而降低功耗。尤其对于大容量高密度队列的网络处理器芯片,可以实现高密度队列的整形快速响应,从而提高网络处理器芯片的性能和效果。图2为本申请实施例提供的流量整形方法的流程图。本实施例提供的流量整形方法可以应用于网络处理器,比如,大容量高密度队列的网络处理器。如图2所示,本实施例提供的流量整形方法包括以下步骤:步骤201、通过监控任一队列的令牌消耗信息,确定该队列是否需要老化;步骤202、当令牌添加表中的任一队列需要老化,将该队列从令牌添加表中移除,并将该队列的令牌桶内的令牌数量更新为大于令本文档来自技高网...

【技术保护点】
1.一种流量整形方法,包括:/n通过监控任一队列的令牌消耗信息,确定所述队列是否需要老化;/n当令牌添加表中的任一队列需要老化,将所述队列从所述令牌添加表中移除,并将所述队列的令牌桶内的令牌数量更新为大于令牌桶下限阈值的值。/n

【技术特征摘要】
1.一种流量整形方法,包括:
通过监控任一队列的令牌消耗信息,确定所述队列是否需要老化;
当令牌添加表中的任一队列需要老化,将所述队列从所述令牌添加表中移除,并将所述队列的令牌桶内的令牌数量更新为大于令牌桶下限阈值的值。


2.根据权利要求1所述的方法,其特征在于,所述通过监控任一队列的令牌消耗信息,确定所述队列是否需要老化,包括:
针对任一队列,当在至少一个监控周期内没有监控到所述队列的令牌消耗信息,则确定所述队列需要老化。


3.根据权利要求1所述的方法,其特征在于,针对任一队列,采用一个老化标记指示所述队列是否需要老化。


4.根据权利要求3所述的方法,其特征在于,针对任一队列,采用一个扫描标记指示一个扫描周期内是否有所述队列的令牌消耗信息;
所述方法还包括:周期性扫描一个或多个队列的扫描标记和老化标记;其中,当扫描到任一队列的扫描标记指示在前一个扫描周期内有所述队列的令牌消耗信息,则将所述扫描标记更新为初始值;当扫描到任一队列的扫描标记指示在前一个扫描周期内没有所述队列的令牌消耗信息,且所述队列的老化标记指示所述队列不需要老化,则将所述队列的老化标记更新为指示所述队列需要老化。


5.根据权利要求1所述的方法,其特征在于,所述将所述队列的令牌桶内的令牌数量更新为大于令牌桶下限阈值的值,包括:将所述队列...

【专利技术属性】
技术研发人员:陈炳烨
申请(专利权)人:深圳市中兴微电子技术有限公司
类型:发明
国别省市:广东;44

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

1