CN102098217B - 一种基于概率的多优先级队列调度方法 - Google Patents
一种基于概率的多优先级队列调度方法 Download PDFInfo
- Publication number
- CN102098217B CN102098217B CN2011100086278A CN201110008627A CN102098217B CN 102098217 B CN102098217 B CN 102098217B CN 2011100086278 A CN2011100086278 A CN 2011100086278A CN 201110008627 A CN201110008627 A CN 201110008627A CN 102098217 B CN102098217 B CN 102098217B
- Authority
- CN
- China
- Prior art keywords
- value
- queue
- probability
- empty
- multipriority
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种基于概率的多优先级队列调度方法,其特征是在多优先级队列调度时有效的结合多个逻辑或物理队列和概率函数;采用多个逻辑或物理队列可以实现多优先级;在队列调度的每一个调度周期内,调度器会检查是否有空队列;如果没有空队列,调度器就将概率生成器所生成的概率函数值所对应的队列中的数据包取出进行转发;如果存在一个或多个空队列,调度器就先将空队列的概率区间值配给非空队列,然后再将相应的数据包取出进行转发;本发明方法根据概率函数值进行调度保证了公平性,将空队列的概率区间值转借给非空队列,实现了带宽借用;所以本发明在保证多优先级的基础之上实现队列调度的公平性和“带宽借用”。
Description
技术领域
本发明公开了一种基于概率的多优先级队列调度的方法,属于数据通信技术领域,具体涉及在综合信息通信网络中的区分服务或多优先级服务中队列调度的方法。
背景技术
综合信息通信网络中不同的业务流对实时性、安全性、服务质量和业务优先级有着不同的要求。如果不对分组进行合理的调度,将会造成一些实时数据和重要业务数据流得不到及时服务和相应的服务,从而导致时延、抖动过大,服务质量降低甚至数据丢失。
目前的多优先级队列调度技术都能很好的实现多优先级。但这些队列调度技术在实现多优先级的同时,都没有很好的维护数据转发的公平性和带宽的高效利用。当高优先级数据持续的到来时,调度器都在转发高优先级数据,从而阻塞掉了低优先级数据;在实现多优先级的同时,对带宽资源没有充分的利用,总会有空闲的带宽资源闲置。如:优先级队列(PQ)通过将数据包分配到不同的队列中来实现多优先级;队列长度阈值(QLT)算法通过为每个队列设置一个调度阀值,从而在一定程度上提高了公平性;公平队列(FQ)通过轮询的调度算法实现了多优先级,但不能有效的利用带宽;权值循环轮转(WRR)为每个队列分配不同的权值,它支持不同的带宽需求,但不能很好的保证公平性和保证带宽的高效利用;最早期限优先(EDF)按照截止期的大小对任务进行分级,但不能保证公平性。
因此现有的多优先级队列调度方法不能很好的在实现多优先级的队列调度的基础之上很好的实现公平性和带宽的有效利用。
发明内容
本发明所解决的技术问题是提出一种基于概率的多优先级队列调度方法,以采用多个物理或逻辑队列实现多优先级;并结合概率函数随机生成的随机数来实现队列调度的公平性;在每个转发周期中总是根据要转发数据的实际情况来调整各队列的转发概率来提高队列调度的带宽利用率。
本发明一种基于概率的多优先级队列调度的方法,它要求综合信息通信网络能够支持多优先级服务。
所述的基于概率的多优先级队列调度方法的步骤为:
步骤1:在每个调度转发周期中,概率产生器会产生一个0~1之间的随机数(p_value);
步骤2:调度器检查所有队列是否存在空队列;
步骤3:如果没有空队列,则将概率值p_value从最高非空优先级队列开始循环比较,比较过程如下:
内(Qimin≤p_value≤Qimax),则将该队列中的数据包取出进行转发;本次调度转发结束,开始下一次的调度转发,转步骤1;
3-(b).否则,循环i,转3-(a);
步骤4:如果有空队列,则将空队列的概率区间值以等比例的方式分配给非空的队列:
4-(b).将所有空队列的概率区间值的和以等比例的方式进行循环重新分配给非空的队列:
然后转步骤3。
由于本发明有效的结合多队列技术和概率函数技术,在调度之前根据队列的实际情况对各队列的权值区间值进行重新分配并在调度时根据概率函数生成的概率值进行调度;与现有的队列调度技术相比,本发明根据概率函数生成的概率值进行调度,克服了现有队列调度技术按循环调度和按时间期限调度的缺点,保证了调度的公平性;并且在队列调度周期中,将空闲队列的概率区间值等比例的分配给非空队列,从而克服了现有的队列调度技术不能动态的调整各队列带宽的缺点,提高了带宽的利用率。
因此本发明在实现多优先级的基础之上既保证了公平性又实现了‘带宽借用’,有效提高了带宽的利用率。
附图说明
图1是基于概率的多优先级队列调度方法流程图
具体实施方式
实施例:
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述实施例,而不是全部的实施例。
如图1所示,为应用本发明基于概率的多优先级队列调度技术;中间转发节点必须支持综合信息通信网络中的多优先级业务;并且综合信息通信网络的总共有几种优先级和各队列的概率区间值应根据实际情况事先定好范围并作为每个调度周期中的初始值。
在对该队列调度方法的过程进行详细说明之前,对本发明的思想进行阐明。本发明核心思想就是有效的结合了多队列和概率函数技术,对缓存队列是否为空区别对待,将空队列的权值区间值分配给需要的队列,保证了带宽的全额利用,并实现了转发的公平性。
下面对队列调度过程进行详细说明。
队列调度器能提供i个优先级或服务等级,即:调度器中有i个队列缓存器;根据到来数据包的服务要求或优先级要求,将这些数据包分配到相应的队列缓存中去;第i个队列的权值区间为[Qimin,Qimax],并且是恒成立的。
步骤1:如图1,在每个调度转发周期中,概率产生器会产生一个0~1之间的随机数(p_value)。
步骤2:如图1,调度器检查所有的队列是否为空?这主要有三种方式:
(1):通过硬件标识位来实现,当队列为空时,标识位置0或1,通过检测此标志位来判断队列是否为空。
(2):通过记录队列中数据包的数量,数据包进入队列则数量加1,数据包离开队列则减1,当数量为0时代表队列为空。
(3):通过记录队列的现有容量或剩余容量,数据包进入队列则增加相应的容量,数据包离开队列则减少相应的容量;现有容量为0或剩余容量为队列的最大容量时代表队列为空。
步骤3:如图1,如果没有空队列,则初始化i=imax并将概率值p_value从最高非空优先级队列开始循环比较,过程如下:
3-(a).将p_value与非空队列i区间值[Qimin,Qimax]进行比较,如果
Qimin≤p_value≤Qimax,则将该队列中的数据包取出进行转发;本次调度转发结束,开始下一次的调度转发,转步骤1;
3-(b).否则,循环i,转3-(a);
在此比较的过程中,从最高优先级开始,只要比较p_value和Qimin即可,找到p_value≥Qimin的第一个队列就是需要转发的队列;因此只要比较p_value和每个队列的Qimin即可。
在这个比较的过程中,可以通过程序设计的方法提高循环查找速度,如折半查找、二分查找等比较的方法。
步骤4:如果有空队列,则将所有空队列的概率区间值以等比例的方式分配给非空的队列,过程如下:
4-(a)计算k个空队列的权值区间值的和:
4-(b).将vlaue值以等比例的方式分配给非空的队列:
然后转步骤3。
在进行value值的重新分配的过程中,可根据实际的需要采用线性分配或非线性分配,在分配的过程中也可以通过程序设计的方法来减少计算量。
从上面的队列调度过程可以看出,每次的队列调度是根据概率函数产生的概率值进行调度的,由于概率函数生成的随机性,使得队列调度也是随机的,从而保证了调度时的公平性;并且在调度之前总是将空闲队列的概率区间值value值等比例的分配给非空的队列,也就是将空队列的带宽转让给非空队列,从而提高了带宽的利用率。
Claims (3)
1.综合信息通信网络中一种基于概率的多优先级队列分组调度方法,其特征在于,所述步骤为:
步骤1:在每个调度转发周期中,概率产生器会产生一个0~1之间的随机数p_value;
步骤2:调度器检查所有队列是否存在空队列;
步骤3:如果没有空队列,则将概率值p_value从最高非空优先级队列开始循环比较,比较过程如下:
3-(a).将概率值p_value与非空队列i的概率区间值[Qimin,Qimax]且进行比较,如果概率值p_value在非空队列的概率区间内Qimin≤p_value≤Qimax,则将该队列中的数据包取出进行转发;本次调度转发结束,开始下一次的调度转发,转步骤1;
3-(b).否则,循环i,转3-(a);
步骤4:如果有空队列,则将所有空队列的概率区间值以等比例的方式分配给非空的队列:
4-(b).将所有空队列的概率区间值的和value以等比例的方式进行循环重新分配给非空的队列:
2.根据权利要求1所述的一种基于概率的多优先级队列调度方法,其特征在于,所属步骤3中,有效的结合了多逻辑队列或物理队列和概率函数,通过随机生成概率函数值和通过比较该值和队列区间值来实现多优先级、带宽借用以及调度的公平性。
3.根据权利要求1所述的一种基于概率的多优先级队列调度方法,其特征在于,所述步骤4中,调度器在每个转发周期中检查每个队列是否为空,然后再根据是否有空队列进行不同的处理;每个调度周期中将空队列的概率区间值等比例的分配给非空的队列;检查空队列和对概率区间值进行重新分配是在实现多优先级队列的基础之上实现带宽借用、提高带宽利用率的基础。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2011100086278A CN102098217B (zh) | 2011-01-14 | 2011-01-14 | 一种基于概率的多优先级队列调度方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2011100086278A CN102098217B (zh) | 2011-01-14 | 2011-01-14 | 一种基于概率的多优先级队列调度方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102098217A CN102098217A (zh) | 2011-06-15 |
CN102098217B true CN102098217B (zh) | 2013-08-07 |
Family
ID=44131089
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2011100086278A Expired - Fee Related CN102098217B (zh) | 2011-01-14 | 2011-01-14 | 一种基于概率的多优先级队列调度方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102098217B (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103338159B (zh) | 2013-06-19 | 2016-08-10 | 华为技术有限公司 | 轮询调度实现方法和装置 |
CN107231317A (zh) * | 2016-03-25 | 2017-10-03 | 重庆邮电大学 | 一种用于6LoWPAN与Internet互联网关的数据包混合调度策略 |
CN106358215A (zh) * | 2016-08-31 | 2017-01-25 | 上海交通大学 | 基于数据缓存的中继网络下的协作方法 |
CN106533982B (zh) * | 2016-11-14 | 2019-05-21 | 西安电子科技大学 | 基于带宽借用的动态队列调度装置及方法 |
CN110505523B (zh) * | 2019-09-24 | 2020-06-30 | 广州优视云集科技有限公司 | 一种视频转码优先级顺序控制方法及处理终端 |
CN111131083B (zh) * | 2019-12-27 | 2023-02-28 | 广东浪潮大数据研究有限公司 | 节点间数据传输方法、装置、设备及计算机可读存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101261592A (zh) * | 2007-03-07 | 2008-09-10 | 国际商业机器公司 | 用于对任务请求进行调度的方法和设备 |
CN101399590A (zh) * | 2007-09-27 | 2009-04-01 | 株式会社Ntt都科摩 | 一种多用户预编码系统中的反馈选择方法及反馈选择装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2854296A1 (fr) * | 2003-04-24 | 2004-10-29 | France Telecom | Procede et dispositif pour differenciation implicite de la qualite de service dans un reseau |
-
2011
- 2011-01-14 CN CN2011100086278A patent/CN102098217B/zh not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101261592A (zh) * | 2007-03-07 | 2008-09-10 | 国际商业机器公司 | 用于对任务请求进行调度的方法和设备 |
CN101399590A (zh) * | 2007-09-27 | 2009-04-01 | 株式会社Ntt都科摩 | 一种多用户预编码系统中的反馈选择方法及反馈选择装置 |
Non-Patent Citations (2)
Title |
---|
《区分服务中一种动态概率优先级调度算法》;陈冬雷 等;《计算机应用研究》;20071231;第24卷(第12期);全文 * |
陈冬雷 等.《区分服务中一种动态概率优先级调度算法》.《计算机应用研究》.2007,第24卷(第12期), |
Also Published As
Publication number | Publication date |
---|---|
CN102098217A (zh) | 2011-06-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102098217B (zh) | 一种基于概率的多优先级队列调度方法 | |
CN1981484B (zh) | 具有多条调度巷道的流水线调度器及用在其中的调度方法 | |
Wei et al. | QoS-aware resource allocation for video transcoding in clouds | |
CN101009655B (zh) | 流量调度方法及装置 | |
CN103906257B (zh) | 基于gpp的lte宽带通信系统计算资源调度器及其调度方法 | |
CN103731372B (zh) | 一种混合云环境下服务提供者的资源供应方法 | |
CN104079501A (zh) | 一种基于多优先级的队列调度方法 | |
CN102170396A (zh) | 一种基于区分服务的云存储系统QoS控制方法 | |
US9940471B2 (en) | Virtual output queue authorization management method and device, and computer storage medium | |
CN104079502B (zh) | 一种多用户多队列调度方法 | |
CN102868638A (zh) | 动态调整带宽方法及系统 | |
CN102195885A (zh) | 报文处理方法及装置 | |
CN102387076A (zh) | 一种结合整形的分级式队列调度方法 | |
US20150058485A1 (en) | Flow scheduling device and method | |
CN104753809B (zh) | 一种流量整形中添加令牌的方法及装置 | |
CN106789716B (zh) | Tdma自组网的mac层队列调度方法 | |
CN106598727B (zh) | 一种通信系统的计算资源分配方法及系统 | |
CN102981973A (zh) | 在存储系统中执行请求的方法 | |
CN103428099B (zh) | 一种通用多核网络处理器流量控制的方法 | |
CN100466593C (zh) | 一种支持多业务的综合队列调度的实现方法 | |
CN102609307A (zh) | 多核多线程双操作系统网络设备及其控制方法 | |
Rukmani et al. | Scheduling algorithm for real time applications in mobile ad hoc network with opnet modeler | |
CN100456744C (zh) | 一种数据调度方法及系统 | |
CN106549782A (zh) | 一种数据中心内关联流的带宽调度方法及装置 | |
CN104022966B (zh) | 基于NC的PON中保障QoS的ONU内部调度方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20130807 Termination date: 20190114 |