一种基于定时器和MDRR的队列调度方法技术

技术编号:5229402 阅读:653 留言:0更新日期:2012-04-11 18:40
本发明专利技术公布了一种基于定时器和MDRR的队列调度方法,该方法是基于区分服务模型的,主要由Time定时器、实时权值更新、修改的加权轮询(MDRR)调度算法三部分组成。Time定时器主要用来控制高优先级队列的调度,既保证其获得高的服务质量,又保证了网络中的公平性;根据队列中数据流的实时情况,动态地改变MDRR调度算法中的权值参数,通过在业务量过大时适度的增大权值从而保证对其余队列影响降至最低。本发明专利技术实现了支持队列数目可配置、速率可调节的调度,具有良好的可扩展性,操作简单。

【技术实现步骤摘要】

【技术保护点】
一种基于定时器和MDRR的队列调度方法,其特征在于该方法的步骤为:步骤1)Time定时器是为类1等时延敏感型业务而设置的,主要保障该队列的时延;类2至类n为常规队列,实时测量队列长度并实时测量队列长度并根据业务量来修改队列权值,确保业务量大的队列MDRR调度权值稍微加大;步骤2)调度开始时,初始化Time定时器时间,此时开始服务该队列;步骤3)初始化常规队列预设权值数组W2,W3……,Wn,所述业务权值在【1,10】范围类,当Time时间到后,根据加权轮询调度算法对其余队列轮询;步骤4)经过一定时间Dt,测试类2至类n队列的实时长度length_q[i],并对length_q[i]/Wi在【-0.5,0.5】之间进行归一化处理后得结果DWi,Wi= Wi+DW↓[i]更新权值数组,其中i=2、3、…n;步骤5)根据步骤4)得到的常规队列i的权值Wi,设置每个队列每次权数为MTU + weight*512;步骤6)每个队列都有一个赤字计数器,用于每次调度时该队列所能发送的数据包总和的最大值,初始化为1/2*MTU*weight;步骤7)当调度到该队列i时,权数加到赤字计数器上,如果队列首部的数据包小于该赤字计数器,就发送该数据包,赤字计数器同时减去数据包大小,如果赤字计数器小于0,那么轮询到下一个队列;步骤8)如果有高优先级业务达到,则服务完当前队列后轮询到高优先级队列;步骤9)为高优先队列设置一个速率测量器,实时测试高优先队列速率rate,time表示该队列实时应该得到服务的时间,动态定时器为time=k*log↓[2]rate,K为一固定常数;步骤10)服务高优先级队列时,启动一个计时器,当为0发送完该数据包后,跳转到常规队列的下一个非空队列。...

【技术特征摘要】

【专利技术属性】
技术研发人员:张顺颐宁向延谈玲周井泉周宇航
申请(专利权)人:南京邮电大学
类型:发明
国别省市:84[中国|南京]

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

1