基于硬件实现的弹性的加权公平调度方法及调度系统技术方案

技术编号:14235169 阅读:133 留言:0更新日期:2016-12-21 08:28
本发明专利技术提供了一种基于硬件实现的弹性的加权公平调度方法及调度系统,所述方法包括:每次轮询调度开始前,根据各个通道对应的调度对象的存储属性以及各个转发通道的数据待发送状态判断各个转发通道中调度对象是否需要从备用列表转换至活动列表;若是,根据各个转发通道对应的亏欠计数器的数值获得亏欠计数器的补充颗粒;同时,根据各个转发通道对应的权重系数比,当前各个转发通道的数据待发送状态,以及当前亏欠计数器的补充颗粒修改各个转发通道对应的亏欠计数器的计数值;若否,保持各个转发通道对应的亏欠计数器的计数值。本发明专利技术减小亏欠计数器刷新的时候过度加入的值,从而减小了调度的抖动、提高了调度的精度。

Elastic weighted fair scheduling method and scheduling system based on hardware implementation

The present invention provides a system of weighted fair scheduling method of hardware implementation and scheduling based on elastic, the method comprises the following steps: each polling scheduling before the start of each channel according to the corresponding scheduling object storage property and each forwarding channel data to be sent each forwarding channel scheduling object state judgment is required to list from standby if, according to the supplementary list of conversion; particle numerical counter corresponding to each channel of the debt was owed forwarding counter; at the same time, according to the weight coefficient of each channel than the forwarding, forwarding channel data to be transmitted, counting counter and counter current debt owed to supplement particles modify various corresponding forwarding paths; if no, keep count owe corresponding to each channel of the forwarding counter. The invention reduces the value of the excessive adding when the counter is refreshed, thereby reducing the jitter of the scheduling and improving the precision of the scheduling.

【技术实现步骤摘要】

本专利技术涉及网络通信
,尤其涉及一种基于硬件实现的弹性的加权公平调度方法及调度系统
技术介绍
随着IP业务的发展,尤其是音频、视频等多媒体业务的迅速增长;传统的IP网络不仅要提供传统类型的数据业务,还要对带宽、延迟要求较高的新业务提供支持,即,要求传统的IP网络对不同的业务实现区分,同时还要提供一定的QoS保证。所述QoS的英文全拼为:Quality of Service,译为服务质量。在IETF定义的QoS模型中的DiffServ模型一般通过边缘节点实现大部分复杂的 QoS功能,例如:分类、流量调节、标记等,中间节点则根据差分服务编码对流量进行不同的PHB。所述DiffServ的英文全拼为:Differentiated Services,译为差分服务;所述PHB的英文全拼为:Per Hop Behavior译为逐跳行为。调度,其属于PHB的其中一种行为,目前在报文交换领域中,主要的调度算法有RR、DRR、MDRR等。所述RR的英文全拼为:Round Robin,译为逐跳行为;所述DRR的英文全拼为:Deficit Round Robin,译为补偿型循环轮询;所述MDRR的英文全拼为:Modified Deficit Round Robin,译为修改的补偿型循环轮询。上述几种算法均已成为本领域中较为成熟的算法,其中DRR算法如图1所示,其为一种现有技术,目前已获得普遍的应用,在此不做详细赘述。相应的,在DRR算法的基础上实现MDRR算法,是本领域目前最为成熟的轮询算法。所述MDRR算法实现过程中,在 DRR 的基础上,对每一个调度对象进行轮询调度,每次调度一个数据报文后,判断亏欠计数器是否产生亏欠(为负数)。若不亏欠,将调度对象放到轮询尾部;若亏欠,则将调度对象放到备用列表中,表示当前轮次调度完毕;进过反复轮询调度后,所有调度对象全部进入备用列表,此时,相应的亏欠计数器也全部为负数,此时,确认当前调度轮次完成;同时,将活动调度列表和备用列表进行交换;并且按照预先配置的调度比例填充所有调度对象的亏欠计数器。传统的MDRR算法中,在调度之前,需要指定一个固定的补充颗粒,所述固定的补充颗粒以granularity表示,且不可更改,每次调度过程中,在切换调度轮次的时候,若未能将亏欠计数器补正,切换后的亏欠计数器所对应的调度节点还是会被调度,并亏欠更多的值;考虑到数字逻辑实现的计数器有位宽限制,多次此事件发生后,亏欠计数器将会发生翻转,变成极大的正数,使最终调度比例不准确;如此,为了避免出现上述现象,通常将补充颗粒的数值设置为网络传输过程中报文的最大长度,称作MTU,即设置granularity = MTU;然而,很多情况下,数据报文并不大,若每次都按照 MTU的权重倍数去填充亏欠计数器,势必导致在通过流量是小报文的时候,轮次切换比较少;这样会导致调度出的流量不够平滑、有突发流量情况,最终精度同样达不到用户需求。
技术实现思路
为解决上述技术问题,本专利技术的目的在于提供一种基于硬件实现的弹性的加权公平调度方法及调度系统。为实现上述专利技术目的之一,本专利技术一实施方式提供的基于硬件实现的弹性的加权公平调度方法, 所述方法包括:每次轮询调度开始前,根据各个通道对应的亏欠计数器的计数值,以及各个转发通道的数据待发送状态判断各个转发通道中调度对象是否需要从备用列表转换至活动列表;所述转发通道的数据待发送状态包括:存在数据等待发送和无数据等待发送;若是,根据各个转发通道对应的亏欠计数器的数值获得亏欠计数器的补充颗粒;同时,根据各个转发通道对应的权重系数比,当前各个转发通道的数据待发送状态,以及当前亏欠计数器的补充颗粒修改各个转发通道对应的亏欠计数器的计数值;若否,保持各个转发通道对应的亏欠计数器的计数值。作为本专利技术一实施方式的进一步改进,“根据各个通道对应的亏欠计数器的计数值,以及各个转发通道的数据待发送状态判断各个转发通道中调度对象是否需要从备用列表转换至活动列表”具体包括:若各个通道对应的所述亏欠计数器的计数值均小于零,则同时将各个转发通道中调度对象从备用列表转换至活动列表;若各个通道对应的所述亏欠计数器中至少一个所述亏欠计数器的计数值小于零,同时,至少一个所述亏欠计数器的计数值大于等于零;则判断所述亏欠计数器的计数值大于等于零的所述转发通道的数据待发送状态是否为无数据等待发送,若是,将所有亏欠计数器的计数值小于零的转发通道中的调度对象均从备用列表转换至活动列表;若否,保持各个转发通道中调度对象的当前存储状态。作为本专利技术一实施方式的进一步改进,当确认转发通道中的调度对象需要从备用列表转换至活动列表后,所述方法具体包括: 若当前通道对应的计数器的计数值小于零,则将当前通道的亏欠计数器的计数值均修改为:X. deficitnext= X. deficit+ X.weight* granularity;若当前通道对应的计数器的计数值大于等于零,则将当前通道的亏欠计数器的计数值清零后再进行修改,修改后的亏欠计数器的计数值为:X. deficitnext= X.weight* granularity;其中,X表示转换通道的序号,X. deficitnext表示修改后的亏欠计数器的计数值;X. deficit表示转换前的亏欠计数器的计数值;X.weight表示当前转换通道的权重系数比;granularity表示本次转换过程中填充的补充颗粒大小。作为本专利技术一实施方式的进一步改进,“根据各个转发通道对应的亏欠计数器的数值获得亏欠计数器的补充颗粒”具体包括:依次比对各个转发通道对应的亏欠计数器的计数值;获得亏欠计数器的计数值中绝对值最大的负数值;将所述负数值最接近的2的幂作为本轮次亏欠计数器的补充颗粒。作为本专利技术一实施方式的进一步改进,所述方法具体包括:获得亏欠计数器的计数值中绝对值最大的负数值;将所述负数值转化为二进制数据,并对其取反;查找取反后的所述负数值中第一个二进制数字“1”所在比特位n;将n+1作为本轮次亏欠计数器的补充颗粒偏移值lastshift;将2 lastShift 作为本轮次亏欠计数器的补充颗粒。为了实现上述专利技术目的之一,本专利技术一实施方式提供一种基于硬件实现的弹性的加权公平调度系统,所述系统包括:存储模块,判断模块,调度填充模块;所述存储模块包括:亏欠计数器;每次轮询调度开始前,所述判断模块用于根据各个通道对应的亏欠计数器的计数值,以及各个转发通道的数据待发送状态判断各个转发通道中调度对象是否需要从备用列表转换至活动列表;所述转发通道的数据待发送状态包括:存在数据等待发送和无数据等待发送;若是,所述调度填充模块根据各个转发通道对应的亏欠计数器的数值获得亏欠计数器的补充颗粒;同时,根据各个转发通道对应的权重系数比,当前各个转发通道的数据待发送状态,以及当前亏欠计数器的补充颗粒修改各个转发通道对应的亏欠计数器的计数值;若否,所述调度填充模块用于保持各个转发通道对应的亏欠计数器的计数值。作为本专利技术一实施方式的进一步改进,若所述判断模块确认各个通道对应的所述亏欠计数器的计数值均小于零,则通过所述调度填充模块同时将各个转发通道中调度对象从备用列表转换至活动列表;若所述判断模块确认各个通道对应的计数器中至少一个所述亏欠计本文档来自技高网
...
基于硬件实现的弹性的加权公平调度方法及调度系统

【技术保护点】
一种基于硬件实现的弹性的加权公平调度方法,其特征在于,所述方法包括:每次轮询调度开始前,根据各个通道对应的亏欠计数器的计数值,以及各个转发通道的数据待发送状态判断各个转发通道中调度对象是否需要从备用列表转换至活动列表;所述转发通道的数据待发送状态包括:存在数据等待发送和无数据等待发送;若是,根据各个转发通道对应的亏欠计数器的数值获得亏欠计数器的补充颗粒;同时,根据各个转发通道对应的权重系数比,当前各个转发通道的数据待发送状态,以及当前亏欠计数器的补充颗粒修改各个转发通道对应的亏欠计数器的计数值;若否,保持各个转发通道对应的亏欠计数器的计数值。

【技术特征摘要】
1.一种基于硬件实现的弹性的加权公平调度方法,其特征在于,所述方法包括:每次轮询调度开始前,根据各个通道对应的亏欠计数器的计数值,以及各个转发通道的数据待发送状态判断各个转发通道中调度对象是否需要从备用列表转换至活动列表;所述转发通道的数据待发送状态包括:存在数据等待发送和无数据等待发送;若是,根据各个转发通道对应的亏欠计数器的数值获得亏欠计数器的补充颗粒;同时,根据各个转发通道对应的权重系数比,当前各个转发通道的数据待发送状态,以及当前亏欠计数器的补充颗粒修改各个转发通道对应的亏欠计数器的计数值;若否,保持各个转发通道对应的亏欠计数器的计数值。2.根据权利要求1所述的基于硬件实现的弹性的加权公平调度方法,其特征在于,“根据各个通道对应的亏欠计数器的计数值,以及各个转发通道的数据待发送状态判断各个转发通道中调度对象是否需要从备用列表转换至活动列表”具体包括:若各个通道对应的所述亏欠计数器的计数值均小于零,则同时将各个转发通道中调度对象从备用列表转换至活动列表;若各个通道对应的所述亏欠计数器中至少一个所述亏欠计数器的计数值小于零,同时,至少一个所述亏欠计数器的计数值大于等于零;则判断所述亏欠计数器的计数值大于等于零的所述转发通道的数据待发送状态是否为无数据等待发送,若是,将所有亏欠计数器的计数值小于零的转发通道中的调度对象均从备用列表转换至活动列表;若否,保持各个转发通道中调度对象的当前存储状态。3.根据权利要求2所述的基于硬件实现的弹性的加权公平调度方法,其特征在于,当确认转发通道中的调度对象需要从备用列表转换至活动列表后,所述方法具体包括:若当前通道对应的计数器的计数值小于零,则将当前通道的亏欠计数器的计数值均修改为:X. deficitnext= X. deficit+ X.weight*granularity;若当前通道对应的计数器的计数值大于等于零,则将当前通道的亏欠计数器的计数值清零后再进行修改,修改后的亏欠计数器的计数值为:X. deficitnext= X.weight* granularity;其中,X表示转换通道的序号,X. deficitnext表示修改后的亏欠计数器的计数值;X. deficit表示转换前的亏欠计数器的计数值;X.weight表示当前转换通道的权重系数比;granularity表示本次转换过程中填充的补充颗粒大小。4.根据权利要求1所述的基于硬件实现的弹性的加权公平调度方法,其特征在于,“根据各个转发通道对应的亏欠计数器的数值获得亏欠计数器的补充颗粒”具体包括:依次比对各个转发通道对应的亏欠计数器的计数值;获得亏欠计数器的计数值中绝对值最大的负数值;将所述负数值最接近的2的幂作为本轮次亏欠计数器的补充颗粒。5.根据权利要求3所述的基于硬件实现的弹性的加权公平调度方法,其特征在于,所述方法具体包括:获得亏欠计数器的计数值中绝对值最大的负数值;将所述负数值转化为二进制数据,并对其取反;查找取反后的所述负数值中第一个二进制数字“1”所在比特位n;将n+1作为本轮次亏欠计数器的补充颗粒偏移值lastshift;将2 lastShift 作为本轮次亏欠计数器的补充颗粒。6.一种基于硬件实现的弹性的加权公平调度系统,其特征在于,所述...

【专利技术属性】
技术研发人员:蒋震龚源泉
申请(专利权)人:盛科网络苏州有限公司
类型:发明
国别省市:江苏;32

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

1