CN108768887B - 一种基于cicq的调度方法、装置及电子设备 - Google Patents

一种基于cicq的调度方法、装置及电子设备 Download PDF

Info

Publication number
CN108768887B
CN108768887B CN201810547109.5A CN201810547109A CN108768887B CN 108768887 B CN108768887 B CN 108768887B CN 201810547109 A CN201810547109 A CN 201810547109A CN 108768887 B CN108768887 B CN 108768887B
Authority
CN
China
Prior art keywords
queue
buffer
length
difference
waiting time
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.)
Active
Application number
CN201810547109.5A
Other languages
English (en)
Other versions
CN108768887A (zh
Inventor
吴向成
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Jianghan University
Original Assignee
Jianghan University
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Jianghan University filed Critical Jianghan University
Priority to CN201810547109.5A priority Critical patent/CN108768887B/zh
Publication of CN108768887A publication Critical patent/CN108768887A/zh
Application granted granted Critical
Publication of CN108768887B publication Critical patent/CN108768887B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/30Flow control; Congestion control in combination with information about buffer occupancy at either end or at transit nodes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling
    • H04L47/62Queue scheduling characterised by scheduling criteria
    • H04L47/625Queue scheduling characterised by scheduling criteria for service slots or service orders
    • H04L47/6275Queue scheduling characterised by scheduling criteria for service slots or service orders based on priority

Abstract

本发明提供一种基于CICQ的调度方法、装置及电子设备,属于计算机技术领域。所述方法包括获取第一有效队列的第一缓存队列长度和第一队列服务等待时间,第二有效队列的第二缓存队列长度和第二队列服务等待时间;将第一缓存队列长度和第一队列服务等待时间的第一差值,与第二缓存队列长度和第二队列服务等待时间的第二差值进行比较;若第一差值小于第二差值,则将第一有效队列的第一信元发送至第一交叉点缓存;将第一队列服务等待时间设置为0,且将第一有效队列的第一优先级指针进行移动;将第一信元发送至第一输出端进行输出,且在第一有效队列的时隙末将第一优先级指针进行移动。本发明达到提高调度算法性能,能够避免出现LQF‑RR饿死的情况的技术效果。

Description

一种基于CICQ的调度方法、装置及电子设备
技术领域
本发明属于计算机技术领域,特别涉及一种基于CICQ的调度方法、装置及电子设备。
背景技术
计算机网络规模的日益扩大,操作系统管理了系统的有限资源,当有多个进程(或多个进程发出的请求)要使用这些资源时,因为资源的有限性,必须按照一定的原则选择进程(请求)来占用资源。通过调度来控制资源使用者的数量,选取资源使用者许可占用资源。
目前,对于现有的调度算法中,LQF-RR在任何通信模式下可以实现相对更高的吞吐率和延迟性能,但由于总是优先服务队列长度最长的VOQ,占用程度较低的VOQ将受到很差的服务公平性,甚至永久性队列饿死。这样使得现有调度算法的性能低效,容易出现LQF-RR饿死的情况。
综上所述,在现有技术中,存在着调度算法的性能低效,容易出现LQF-RR饿死的情况的技术问题。
发明内容
本发明所要解决的技术问题是现有的调度算法的性能低效,容易出现LQF-RR饿死的情况的技术问题。
为解决上述技术问题,本发明提供了一种基于CICQ的调度方法,所述方法包括获取第一有效队列的第一缓存队列长度和第一队列服务等待时间,以及第二有效队列的第二缓存队列长度和第二队列服务等待时间;依据所述第一缓存队列长度和所述第一队列服务等待时间,以及所述第二缓存队列长度和所述第二队列服务等待时间,将所述第一缓存队列长度和所述第一队列服务等待时间的第一差值,与所述第二缓存队列长度和所述第二队列服务等待时间的第二差值进行比较;若所述第一差值小于所述第二差值,则将所述第一有效队列的第一信元发送至第一交叉点缓存;将所述第一队列服务等待时间设置为0,且将所述第一有效队列的第一优先级指针进行移动;依据所述第一交叉点缓存,将所述第一信元发送至第一输出端进行输出,且在所述第一有效队列的时隙末将所述第一优先级指针进行移动,以对所述第一有效队列进行服务。
进一步地,所述获取第一有效队列的第一缓存队列长度,以及第二有效队列的第二缓存队列长度包括在时隙中,从最高优先级指针的位置开始,获取所述第一有效队列和所述第二有效队列;使得所述第一有效队列对应所述第一缓存队列长度,所述第二有效队列对应所述第二缓存队列长度。
进一步地,所述依据所述第一缓存队列长度和所述第一队列服务等待时间,以及所述第二缓存队列长度和所述第二队列服务等待时间,将所述第一缓存队列长度和所述第一队列服务等待时间的第一差值,与所述第二缓存队列长度和所述第二队列服务等待时间的第二差值进行比较之后还包括若所述第一差值大于所述第二差值,则将所述第二有效队列的第二信元发送至第二交叉点缓存。
进一步地,将所述第二队列服务等待时间设置为0,且将所述第二有效队列的第二优先级指针进行移动。
依据本发明的又一个方面,本发明还提供一种基于CICQ的调度装置,所述装置包括有效队列获取模块,所述有效队列获取模块用于获取第一有效队列的第一缓存队列长度和第一队列服务等待时间,以及第二有效队列的第二缓存队列长度和第二队列服务等待时间;判断分析模块,所述判断分析模块用于依据所述第一缓存队列长度和所述第一队列服务等待时间,以及所述第二缓存队列长度和所述第二队列服务等待时间,将所述第一缓存队列长度和所述第一队列服务等待时间的第一差值,与所述第二缓存队列长度和所述第二队列服务等待时间的第二差值进行比较;信元输送模块,所述信元输送模块用于若所述第一差值小于所述第二差值,则将所述第一有效队列的第一信元发送至第一交叉点缓存;第一指针移动模块,所述第一指针移动模块用于将所述第一队列服务等待时间设置为0,且将所述第一有效队列的第一优先级指针进行移动;第二指针移动模块,所述第二指针移动模块用于依据所述第一交叉点缓存,将所述第一信元发送至第一输出端进行输出,且在所述第一有效队列的时隙末将所述第一优先级指针进行移动,以对所述第一有效队列进行服务。
进一步地,所述装置还包括队列对应模块,所述队列对应模块用于在时隙中,从最高优先级指针的位置开始,获取所述第一有效队列和所述第二有效队列;使得所述第一有效队列对应所述第一缓存队列长度,所述第二有效队列对应所述第二缓存队列长度。
进一步地,所述装置还包括信元发送模块,所述信元发送模块用于若所述第一差值大于所述第二差值,则将所述第二有效队列的第二信元发送至第二交叉点缓存。
进一步地,所述装置还包括时间设置模块,所述时间设置模块用于若所述第一差值大于所述第二差值,将所述第二队列服务等待时间设置为0,且将所述第二有效队列的第二优先级指针进行移动。
依据本发明的又一个方面,本发明还提供一种基于CICQ的调度的电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现以下步骤:获取第一有效队列的第一缓存队列长度和第一队列服务等待时间,以及第二有效队列的第二缓存队列长度和第二队列服务等待时间;依据所述第一缓存队列长度和所述第一队列服务等待时间,以及所述第二缓存队列长度和所述第二队列服务等待时间,将所述第一缓存队列长度和所述第一队列服务等待时间的第一差值,与所述第二缓存队列长度和所述第二队列服务等待时间的第二差值进行比较;若所述第一差值小于所述第二差值,则将所述第一有效队列的第一信元发送至第一交叉点缓存;将所述第一队列服务等待时间设置为0,且将所述第一有效队列的第一优先级指针进行移动;依据所述第一交叉点缓存,将所述第一信元发送至第一输出端进行输出,且在所述第一有效队列的时隙末将所述第一优先级指针进行移动,以对所述第一有效队列进行服务。
依据本发明的又一个方面,本发明还提供一种基于CICQ的调度的计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现以下步骤获取第一有效队列的第一缓存队列长度和第一队列服务等待时间,以及第二有效队列的第二缓存队列长度和第二队列服务等待时间;依据所述第一缓存队列长度和所述第一队列服务等待时间,以及所述第二缓存队列长度和所述第二队列服务等待时间,将所述第一缓存队列长度和所述第一队列服务等待时间的第一差值,与所述第二缓存队列长度和所述第二队列服务等待时间的第二差值进行比较;若所述第一差值小于所述第二差值,则将所述第一有效队列的第一信元发送至第一交叉点缓存;将所述第一队列服务等待时间设置为0,且将所述第一有效队列的第一优先级指针进行移动;依据所述第一交叉点缓存,将所述第一信元发送至第一输出端进行输出,且在所述第一有效队列的时隙末将所述第一优先级指针进行移动,以对所述第一有效队列进行服务。
有益效果:
本发明提供一种基于CICQ的调度方法,通过获取第一有效队列的第一缓存队列长度和第一队列服务等待时间,以及第二有效队列的第二缓存队列长度和第二队列服务等待时间之后,将第一缓存队列长度和第一队列服务等待时间的第一差值,与第二缓存队列长度和第二队列服务等待时间的第二差值进行比较。如果第一差值小于所述第二差值,则将第一有效队列的第一信元发送到第一交叉点缓存,再将第一队列服务等待时间设置为0,并且对第一有效队列的第一优先级指针进行移动。然后将第一信元发送到第一输出端进行输出,并且再在第一有效队列的时隙末,将第一优先级指针进行移动,继而对第一有效队列进行有效服务,保证良好的服务公平性。从而达到提高调度算法的性能,能够避免出现LQF-RR饿死的情况的技术效果。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种基于CICQ的调度方法流程图;
图2为本发明实施例提供的一种基于CICQ的调度的装置结构图;
图3为本发明实施例提供的一种基于CICQ的调度的电子设备的结构图;
图4为本发明实施例提供的一种基于CICQ的调度的计算机可读存储介质的结构图。
具体实施方式
本发明公开了一种基于CICQ的调度方法,通过获取第一有效队列的第一缓存队列长度和第一队列服务等待时间,以及第二有效队列的第二缓存队列长度和第二队列服务等待时间之后,将第一缓存队列长度和第一队列服务等待时间的第一差值,与第二缓存队列长度和第二队列服务等待时间的第二差值进行比较。如果第一差值小于所述第二差值,则将第一有效队列的第一信元发送到第一交叉点缓存,再将第一队列服务等待时间设置为0,并且对第一有效队列的第一优先级指针进行移动。然后将第一信元发送到第一输出端进行输出,并且再在第一有效队列的时隙末,将第一优先级指针进行移动,继而对第一有效队列进行有效服务,保证良好的服务公平性。从而达到提高调度算法的性能,能够避免出现LQF-RR饿死的情况的技术效果。
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员所获得的所有其他实施例,都属于本发明保护的范围;其中本实施中所涉及的″和/或″关键词,表示和、或两种情况,换句话说,本发明实施例所提及的A和/或B,表示了A和B、A或B两种情况,描述了A与B所存在的三种状态,如A和/或B,表示:只包括A不包括B;只包括B不包括A;包括A与B。
为了对本发明实施例提供的一种基于CICQ的调度方法进行详细的说明,首先对本发明实施例中所涉及的技术名词做如下解释说明:
时隙Tn:一个时隙是指以线速率发送一个信元所需的固定时间。
有效的VOQi,j(EVOQ)可以是指若VOQi,j为非空且其对应交叉点缓存CBi,j为非满,则称VOQi,j为有效EVOQ。
有效交叉点缓存(ECB)可以是指若交叉点缓存CBi,j为非空,则称其为有效ECB。
T(i,j)(n)可以是指自上次服务开始直到当前时隙n,连续失去服务机会的VOQi,j队列的服务等待时间。
实施例一
请参见图1,图1是本发明实施例提供的一种基于CICQ的调度方法流程图。本发明实施例提供一种基于CICQ的调度方法,所述方法包括:
步骤S110,获取第一有效队列的第一缓存队列长度和第一队列服务等待时间,以及第二有效队列的第二缓存队列长度和第二队列服务等待时间。
可以通过在时隙中,从最高优先级指针的位置开始,获取所述第一有效队列和所述第二有效队列;使得所述第一有效队列对应所述第一缓存队列长度,所述第二有效队列对应所述第二缓存队列长度。
具体而言,第一有效队列可以是指对于每个输入端i(0≤i≤N-1),在每个时隙n中,第一个有效VOQ队列EVOQj,a;第二有效队列可以是指对于每个输入端i(0≤i≤N-1),第一个EVOQj,b。第一缓存队列长度可以是指最小的缓存队列长度min CBj,a,第二缓存队列长度可以是指最大的队列长度max CBj,b
步骤S120,依据所述第一缓存队列长度和所述第一队列服务等待时间,以及所述第二缓存队列长度和所述第二队列服务等待时间,将所述第一缓存队列长度和所述第一队列服务等待时间的第一差值,与所述第二缓存队列长度和所述第二队列服务等待时间的第二差值进行比较。
如果所述第一差值大于所述第二差值,则将所述第二有效队列的第二信元发送至第二交叉点缓存。将所述第二队列服务等待时间设置为0,并且将所述第二有效队列的第二优先级指针进行移动。依据所述第二交叉点缓存,将所述第二信元发送至第二输出端进行输出,并且在所述第二有效队列的时隙末将所述第二优先级指针进行移动。可以将所述第一有效队列的服务等待时间设置为1。可以将所述第一优先级指针的位置保持不变。
具体而言,在上述步骤S110,获取第一有效队列的第一缓存队列长度和第一队列服务等待时间,以及第二有效队列的第二缓存队列长度和第二队列服务等待时间之后,对第一步选中的两个有效VOQ队列进行权重信息比较,即将队列EVOQj,a对应的CBi,a(n)以及队列服务等待时间CBi,a(n)-Ti,a(n)的差值与队列EVOQi,b对应的CBi,b(n)以及队列服务等待时间Ti,b(n)差值CBi,b(n)-Ti,b(n)进行比较。如果CBi,a(n)-Ti,a(n)>CBi,b(n)-Ti,b(n),则对EVOQi,b进行服务,将队首信元发送到交叉点缓存CBi,b(n)。
步骤S130,若所述第一差值小于所述第二差值,则将所述第一有效队列的第一信元发送至第一交叉点缓存。
具体而言,在上述步骤S120中,对第一差值和第二差值进行比较后,如果第一差值小于所述第二差值,即CBi,a(n)-Ti,a(n)<CBi,b(n)-Ti,b(n),则将优先队列EVOQj,a,将其队首信元发送到交叉点缓存CBi,a(n)。
步骤S140,将所述第一队列服务等待时间设置为0,且将所述第一有效队列的第一优先级指针进行移动。可以将所述第二有效队列的服务等待时间设置为1。
具体而言,可以在时隙n的末尾,更新每个VOQi,jj(0≤j≤N-1)的服务等待时间T(i,j)(n)和最高优先级指针的位置。如果在该时隙内VOQi,j得到信元服务,则设置T(i,j)(n)=0,并且将最高优先级指针移到(j+1)%(mod N)的位置。
步骤S150,依据所述第一交叉点缓存,将所述第一信元发送至第一输出端进行输出,且在所述第一有效队列的时隙末将所述第一优先级指针进行移动,以对所述第一有效队列进行服务。可以将所述第二优先级指针的位置保持不变。
具体而言,对于每个输出端j(0≤j≤N-1),可以在每个时隙n中,从最高优先级指针的当前位置开始,选择第一个有效交叉点缓存ECBi,j
如果发现任一个ECBi,j,则可以将其队首信元发送到输出端j,并且在时隙末将最高优先级指针移到(i+1)%(mod N)的位置。如果没有发现任一个ECBi,j,则可以使得最高优先级指针的位置保持不变。
本发明提供一种基于CICQ的调度方法是基于等待时间最长和最小缓存权重的最公平队列优先的CICQ调度算法,可以命名为MFQF_RR(The Most Fair Queue First)。MFQF的目的是改善现有调度算法的性能低效问题,以及解决LQF-RR存在饿死的情况。为了克服服务公平性差的问题,同时在各种允许业务流量模式保持出色的延迟性能,MFQF_RR利用输入VOQ的队列对应交叉缓存的占用程度和服务等待时间的组合权重信息进行有效的调度决策。输入调度过程中优先组合权重最大的VOQ,也就是说最优先的队列将获得优先服务。这样,具有占有缓存较低占用且服务等待时间更长的VOQ将会得到有效服务,能够保证良好的服务公平性。
尤其需要注意的是本发明提供一种基于CICQ的调度方法是在输入端基于最公平队列优先(MFQF)的仲裁策略,在输出端基于最长内部缓存队列优先的策略。即本发明提供一种基于CICQ的调度方法可以包括输入调度阶段和输出调度阶段,为了对输入调度阶段和输出调度阶段进行详细说明,现提供以下两个实施方式进行详细解释:
第一种实施方式,在输入调度阶段。对于每个输入端i(0≤i≤N-1),在每个时隙n中,首先从最高优先级指针的位置开始,分别选择第一个有效VOQ队列EVOQj,a和第二个EVOQj,b,使得EVOQj,a对应为最小的缓存队列长度min CBj,a,同时EVOQj,b对应最大的队列长度max CBj,b。然后对第一步选中的两个有效VOQ队列进行权重信息比较,即将队列EVOQj,a对应的队列长度CBi,a(n)以及队列服务等待时间CBi,a(n)-Ti,a(n)的差值,与队列EVOQi,b对应的队列长度CBi,b(n)以及队列服务等待时间Ti,b(n)差值CBi,b(n)-Ti,b(n)进行比较。根据比较的情况,如果CBi,a(n)-Ti,a(n)<CBi,b(n)-Ti,b(n),则将优先队列EVOQj,a,将其队首信元发送到交叉点缓存CBi,a(n);如果CBi,a(n)-Ti,a(n)>CBi,b(n)-Ti,b(n),则对EVOQi,b进行服务,将队首信元发送到交叉点缓存CBi,b(n)中。其次,在时隙n的末尾,更新每个VOQi,j j(0≤j≤N-1)的服务等待时间T(i,j)(n)和最高优先级指针的位置。如果在该时隙内VOQi,j得到信元服务,则设置T(i,j)(n)=0,并且将最高优先级指针移到(j+1)%(mod N)的位置。如果在该时隙内VOQi,j未得到信元服务,则设置T(i,j)(n)=T(i,j)(n)+1。
第二种实施方式,在输出调度阶段。对于每个输出端j(0≤j≤N-1),可以在每个时隙n中,从最高优先级指针的当前位置开始,选择第一个有效交叉点缓存ECBi,j。如果发现任一个ECBi,j,则将其队首信元发送到输出端j,并在时隙末将最高优先级指针移到(i+1)%(mod N)的位置。如果未发现任一个ECBi,j,最高优先级指针的位置保持不变。
在上述输入调度阶段和输出调度阶段。输入调度MFQF,根据内部缓存的队列长度CBi,j(n)、服务等待时间Ti,j(n)的组合权重信息来执行仲裁。MFQF将优先权给予组合权重为最小的有效VOQ,以保持良好的延迟性能,并且相对于LQF_RR算法改善服务不公平性的问题。这样可以实现简单性和交叉点缓存之间的公平性,达到输出调度使用类似于内部缓存最大以及RR轮询的公平轮询仲裁机制的技术效果。
本发明提供一种基于CICQ的调度方法,通过获取第一有效队列的第一缓存队列长度和第一队列服务等待时间,以及第二有效队列的第二缓存队列长度和第二队列服务等待时间之后,将第一缓存队列长度和第一队列服务等待时间的第一差值,与第二缓存队列长度和第二队列服务等待时间的第二差值进行比较。如果第一差值小于所述第二差值,则将第一有效队列的第一信元发送到第一交叉点缓存,再将第一队列服务等待时间设置为0,并且对第一有效队列的第一优先级指针进行移动。然后将第一信元发送到第一输出端进行输出,并且再在第一有效队列的时隙末,将第一优先级指针进行移动,继而对第一有效队列进行有效服务,保证良好的服务公平性。从而达到提高调度算法的性能,能够避免出现LQF-RR饿死的情况的技术效果。
基于同一发明构思,本申请提供了与实施例一所对应的一种基于CICQ的调度的装置,详见实施例二。
实施例二
如图2所示,图2是本发明实施例提供的一种基于CICQ的调度的装置结构图。本发明实施例二提供了一种基于CICQ的调度的装置,所述装置包括:
有效队列获取模块,所述有效队列获取模块用于获取第一有效队列的第一缓存队列长度和第一队列服务等待时间,以及第二有效队列的第二缓存队列长度和第二队列服务等待时间;
判断分析模块,所述判断分析模块用于依据所述第一缓存队列长度和所述第一队列服务等待时间,以及所述第二缓存队列长度和所述第二队列服务等待时间,将所述第一缓存队列长度和所述第一队列服务等待时间的第一差值,与所述第二缓存队列长度和所述第二队列服务等待时间的第二差值进行比较;
信元输送模块,所述信元输送模块用于若所述第一差值小于所述第二差值,则将所述第一有效队列的第一信元发送至第一交叉点缓存;
第一指针移动模块,所述第一指针移动模块用于将所述第一队列服务等待时间设置为0,且将所述第一有效队列的第一优先级指针进行移动;
第二指针移动模块,所述第二指针移动模块用于依据所述第一交叉点缓存,将所述第一信元发送至第一输出端进行输出,且在所述第一有效队列的时隙末将所述第一优先级指针进行移动,以对所述第一有效队列进行服务。
所述装置还包括:
本发明实施例二提供了一种基于CICQ的调度的装置还可以包括:队列对应模块,所述队列对应模块用于在时隙中,从最高优先级指针的位置开始,获取所述第一有效队列和所述第二有效队列;使得所述第一有效队列对应所述第一缓存队列长度,所述第二有效队列对应所述第二缓存队列长度。
信元发送模块,所述信元发送模块用于若所述第一差值大于所述第二差值,则将所述第二有效队列的第二信元发送至第二交叉点缓存。
时间设置模块,所述时间设置模块用于将所述第二队列服务等待时间设置为0,且将所述第二有效队列的第二优先级指针进行移动。
本发明提供一种基于CICQ的调度的装置,通过获取第一有效队列的第一缓存队列长度和第一队列服务等待时间,以及第二有效队列的第二缓存队列长度和第二队列服务等待时间之后,将第一缓存队列长度和第一队列服务等待时间的第一差值,与第二缓存队列长度和第二队列服务等待时间的第二差值进行比较。如果第一差值小于所述第二差值,则将第一有效队列的第一信元发送到第一交叉点缓存,再将第一队列服务等待时间设置为0,并且对第一有效队列的第一优先级指针进行移动。然后将第一信元发送到第一输出端进行输出,并且再在第一有效队列的时隙末,将第一优先级指针进行移动,继而对第一有效队列进行有效服务,保证良好的服务公平性。从而达到提高调度算法的性能,能够避免出现LQF-RR饿死的情况的技术效果。
基于同一发明构思,本申请提供了与实施例一所对应的一种基于CICQ的调度的电子设备,详见实施例三。
实施例三
如图3所示,图3是本发明实施例提供的一种基于CICQ的调度的电子设备的结构图。本发明实施例三提供了一种基于CICQ的调度的电子设备,包括存储器310、处理器320及存储在存储器310上并可在处理器上运行的计算机程序311,所述处理器320执行所述程序时实现以下步骤:
获取第一有效队列的第一缓存队列长度和第一队列服务等待时间,以及第二有效队列的第二缓存队列长度和第二队列服务等待时间;
依据所述第一缓存队列长度和所述第一队列服务等待时间,以及所述第二缓存队列长度和所述第二队列服务等待时间,将所述第一缓存队列长度和所述第一队列服务等待时间的第一差值,与所述第二缓存队列长度和所述第二队列服务等待时间的第二差值进行比较;
若所述第一差值小于所述第二差值,则将所述第一有效队列的第一信元发送至第一交叉点缓存;
将所述第一队列服务等待时间设置为0,且将所述第一有效队列的第一优先级指针进行移动;
依据所述第一交叉点缓存,将所述第一信元发送至第一输出端进行输出,且在所述第一有效队列的时隙末将所述第一优先级指针进行移动,以对所述第一有效队列进行服务。
本发明提供一种基于CICQ的调度的电子设备,通过获取第一有效队列的第一缓存队列长度和第一队列服务等待时间,以及第二有效队列的第二缓存队列长度和第二队列服务等待时间之后,将第一缓存队列长度和第一队列服务等待时间的第一差值,与第二缓存队列长度和第二队列服务等待时间的第二差值进行比较。如果第一差值小于所述第二差值,则将第一有效队列的第一信元发送到第一交叉点缓存,再将第一队列服务等待时间设置为0,并且对第一有效队列的第一优先级指针进行移动。然后将第一信元发送到第一输出端进行输出,并且再在第一有效队列的时隙末,将第一优先级指针进行移动,继而对第一有效队列进行有效服务,保证良好的服务公平性。从而达到提高调度算法的性能,能够避免出现LQF-RR饿死的情况的技术效果。
基于同一发明构思,本申请提供了与实施例一所对应的一种基于CICQ的调度的计算机可读存储介质400,详见实施例四。
实施例四
如图4所示,图4是本发明实施例提供的一种基于CICQ的调度的计算机可读存储介质400的结构图。本发明实施例四提供了一种基于CICQ的调度的计算机可读存储介质400,其上存储有计算机程序411,该程序被处理器执行时实现以下步骤:
获取第一有效队列的第一缓存队列长度和第一队列服务等待时间,以及第二有效队列的第二缓存队列长度和第二队列服务等待时间;
依据所述第一缓存队列长度和所述第一队列服务等待时间,以及所述第二缓存队列长度和所述第二队列服务等待时间,将所述第一缓存队列长度和所述第一队列服务等待时间的第一差值,与所述第二缓存队列长度和所述第二队列服务等待时间的第二差值进行比较;
若所述第一差值小于所述第二差值,则将所述第一有效队列的第一信元发送至第一交叉点缓存;
将所述第一队列服务等待时间设置为0,且将所述第一有效队列的第一优先级指针进行移动;
依据所述第一交叉点缓存,将所述第一信元发送至第一输出端进行输出,且在所述第一有效队列的时隙末将所述第一优先级指针进行移动,以对所述第一有效队列进行服务。
本发明提供一种基于CICQ的调度的计算机可读存储介质400,通过获取第一有效队列的第一缓存队列长度和第一队列服务等待时间,以及第二有效队列的第二缓存队列长度和第二队列服务等待时间之后,将第一缓存队列长度和第一队列服务等待时间的第一差值,与第二缓存队列长度和第二队列服务等待时间的第二差值进行比较。如果第一差值小于所述第二差值,则将第一有效队列的第一信元发送到第一交叉点缓存,再将第一队列服务等待时间设置为0,并且对第一有效队列的第一优先级指针进行移动。然后将第一信元发送到第一输出端进行输出,并且再在第一有效队列的时隙末,将第一优先级指针进行移动,继而对第一有效队列进行有效服务,保证良好的服务公平性。从而达到提高调度算法的性能,能够避免出现LQF-RR饿死的情况的技术效果。
最后所应说明的是,以上具体实施方式仅用以说明本发明的技术方案而非限制,尽管参照实例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或者等同替换,而不脱离本发明技术方案的精神和范围,其均应涵盖在本发明的权利要求范围当中。

Claims (10)

1.一种基于CICQ的调度方法,其特征在于,所述方法包括:
获取第一有效队列的第一缓存队列长度和第一队列服务等待时间,以及第二有效队列的第二缓存队列长度和第二队列服务等待时间;
依据所述第一缓存队列长度和所述第一队列服务等待时间,以及所述第二缓存队列长度和所述第二队列服务等待时间,将所述第一缓存队列长度和所述第一队列服务等待时间的第一差值,与所述第二缓存队列长度和所述第二队列服务等待时间的第二差值进行比较;
若所述第一差值小于所述第二差值,则将所述第一有效队列的第一信元发送至第一交叉点缓存;
将所述第一队列服务等待时间设置为0,且将所述第一有效队列的第一优先级指针进行移动;
依据所述第一交叉点缓存,将所述第一信元发送至第一输出端进行输出,且在所述第一有效队列的时隙末将所述第一优先级指针进行移动,以对所述第一有效队列进行服务。
2.依据权利要求1所述的方法,其特征在于,所述获取第一有效队列的第一缓存队列长度,以及第二有效队列的第二缓存队列长度包括:
在时隙中,从最高优先级指针的位置开始,获取所述第一有效队列和所述第二有效队列;
使得所述第一有效队列对应所述第一缓存队列长度,所述第二有效队列对应所述第二缓存队列长度。
3.依据权利要求2所述的方法,其特征在于,所述依据所述第一缓存队列长度和所述第一队列服务等待时间,以及所述第二缓存队列长度和所述第二队列服务等待时间,将所述第一缓存队列长度和所述第一队列服务等待时间的第一差值,与所述第二缓存队列长度和所述第二队列服务等待时间的第二差值进行比较之后还包括:
若所述第一差值大于所述第二差值,则将所述第二有效队列的第二信元发送至第二交叉点缓存。
4.依据权利要求3所述的方法,其特征在于,所述方法包括:
若所述第一差值大于所述第二差值,将所述第二队列服务等待时间设置为0,且将所述第二有效队列的第二优先级指针进行移动。
5.一种基于CICQ的调度装置,其特征在于,所述装置包括:
有效队列获取模块,所述有效队列获取模块用于获取第一有效队列的第一缓存队列长度和第一队列服务等待时间,以及第二有效队列的第二缓存队列长度和第二队列服务等待时间;
判断分析模块,所述判断分析模块用于依据所述第一缓存队列长度和所述第一队列服务等待时间,以及所述第二缓存队列长度和所述第二队列服务等待时间,将所述第一缓存队列长度和所述第一队列服务等待时间的第一差值,与所述第二缓存队列长度和所述第二队列服务等待时间的第二差值进行比较;
信元输送模块,所述信元输送模块用于若所述第一差值小于所述第二差值,则将所述第一有效队列的第一信元发送至第一交叉点缓存;
第一指针移动模块,所述第一指针移动模块用于将所述第一队列服务等待时间设置为0,且将所述第一有效队列的第一优先级指针进行移动;
第二指针移动模块,所述第二指针移动模块用于依据所述第一交叉点缓存,将所述第一信元发送至第一输出端进行输出,且在所述第一有效队列的时隙末将所述第一优先级指针进行移动,以对所述第一有效队列进行服务。
6.依据权利要求5所述的装置,其特征在于,所述装置还包括:
队列对应模块,所述队列对应模块用于在时隙中,从最高优先级指针的位置开始,获取所述第一有效队列和所述第二有效队列;使得所述第一有效队列对应所述第一缓存队列长度,所述第二有效队列对应所述第二缓存队列长度。
7.依据权利要求6所述的装置,其特征在于,所述装置还包括:
信元发送模块,所述信元发送模块用于若所述第一差值大于所述第二差值,则将所述第二有效队列的第二信元发送至第二交叉点缓存。
8.依据权利要求7所述的装置,其特征在于,所述装置还包括:
时间设置模块,所述时间设置模块用于若所述第一差值大于所述第二差值,将所述第二队列服务等待时间设置为0,且将所述第二有效队列的第二优先级指针进行移动。
9.一种基于CICQ的调度的电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现以下步骤:
获取第一有效队列的第一缓存队列长度和第一队列服务等待时间,以及第二有效队列的第二缓存队列长度和第二队列服务等待时间;
依据所述第一缓存队列长度和所述第一队列服务等待时间,以及所述第二缓存队列长度和所述第二队列服务等待时间,将所述第一缓存队列长度和所述第一队列服务等待时间的第一差值,与所述第二缓存队列长度和所述第二队列服务等待时间的第二差值进行比较;
若所述第一差值小于所述第二差值,则将所述第一有效队列的第一信元发送至第一交叉点缓存;
将所述第一队列服务等待时间设置为0,且将所述第一有效队列的第一优先级指针进行移动;
依据所述第一交叉点缓存,将所述第一信元发送至第一输出端进行输出,且在所述第一有效队列的时隙末将所述第一优先级指针进行移动,以对所述第一有效队列进行服务。
10.一种基于CICQ的调度的计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现以下步骤:
获取第一有效队列的第一缓存队列长度和第一队列服务等待时间,以及第二有效队列的第二缓存队列长度和第二队列服务等待时间;
依据所述第一缓存队列长度和所述第一队列服务等待时间,以及所述第二缓存队列长度和所述第二队列服务等待时间,将所述第一缓存队列长度和所述第一队列服务等待时间的第一差值,与所述第二缓存队列长度和所述第二队列服务等待时间的第二差值进行比较;
若所述第一差值小于所述第二差值,则将所述第一有效队列的第一信元发送至第一交叉点缓存;
将所述第一队列服务等待时间设置为0,且将所述第一有效队列的第一优先级指针进行移动;
依据所述第一交叉点缓存,将所述第一信元发送至第一输出端进行输出,且在所述第一有效队列的时隙末将所述第一优先级指针进行移动,以对所述第一有效队列进行服务。
CN201810547109.5A 2018-05-31 2018-05-31 一种基于cicq的调度方法、装置及电子设备 Active CN108768887B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810547109.5A CN108768887B (zh) 2018-05-31 2018-05-31 一种基于cicq的调度方法、装置及电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810547109.5A CN108768887B (zh) 2018-05-31 2018-05-31 一种基于cicq的调度方法、装置及电子设备

Publications (2)

Publication Number Publication Date
CN108768887A CN108768887A (zh) 2018-11-06
CN108768887B true CN108768887B (zh) 2021-09-28

Family

ID=64000828

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810547109.5A Active CN108768887B (zh) 2018-05-31 2018-05-31 一种基于cicq的调度方法、装置及电子设备

Country Status (1)

Country Link
CN (1) CN108768887B (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000316004A (ja) * 1999-03-01 2000-11-14 Nippon Telegr & Teleph Corp <Ntt> 帯域共用回路
CN101695051A (zh) * 2009-10-21 2010-04-14 中国人民解放军理工大学 一种用于缓冲Crossbar的队列长度均衡调度方法
CN105939253A (zh) * 2016-04-14 2016-09-14 江汉大学 一种工业无线网关装置及其协议转换方法
CN108009653A (zh) * 2017-08-16 2018-05-08 北京嘀嘀无限科技发展有限公司 订单管理方法、装置、服务器和计算机可读存储介质

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000316004A (ja) * 1999-03-01 2000-11-14 Nippon Telegr & Teleph Corp <Ntt> 帯域共用回路
CN101695051A (zh) * 2009-10-21 2010-04-14 中国人民解放军理工大学 一种用于缓冲Crossbar的队列长度均衡调度方法
CN105939253A (zh) * 2016-04-14 2016-09-14 江汉大学 一种工业无线网关装置及其协议转换方法
CN108009653A (zh) * 2017-08-16 2018-05-08 北京嘀嘀无限科技发展有限公司 订单管理方法、装置、服务器和计算机可读存储介质

Also Published As

Publication number Publication date
CN108768887A (zh) 2018-11-06

Similar Documents

Publication Publication Date Title
CN110620731B (zh) 一种片上网络的路由装置及路由方法
CN108259383B (zh) 一种数据的传输方法和网络设备
JP5340186B2 (ja) パケット中継装置及びパケットを中継する方法
EP2654341A1 (en) Priority Queues Starvation Avoidance In Wireless Communication Systems
US9001763B2 (en) Wireless service access method and apparatus
CN109614215B (zh) 基于深度强化学习的流调度方法、装置、设备及介质
WO2017000872A1 (zh) 缓存分配方法及装置
WO2020192358A1 (zh) 一种转发报文的方法和网络设备
CN110149401B (zh) 一种用于优化边缘计算任务的方法和系统
US9019832B2 (en) Network switching system and method for processing packet switching in network switching system
CA2484427C (en) Scheduling using quantum and deficit values
US8018958B1 (en) System and method for fair shared de-queue and drop arbitration in a buffer
WO2012171461A1 (zh) 报文转发方法及装置
CN111756586B (zh) 一种数据中心网络中基于优先级队列的公平带宽分配方法、交换机及可读存储介质
US8549193B2 (en) Data transmission method, device and system
WO2021143913A1 (zh) 拥塞控制方法、装置及系统、存储介质
CN102594665B (zh) 业务数据传输方法和装置
WO2019080866A1 (zh) 数据传输方法、设备及计算机存储介质
CN108768887B (zh) 一种基于cicq的调度方法、装置及电子设备
WO2010060291A1 (zh) 轮询的方法和装置
CN111431812B (zh) 一种报文转发控制方法及装置
CN111638986A (zh) 一种QoS队列调度方法、装置、系统及可读存储介质
CN111131081A (zh) 一种支持多进程的高性能单向传输的方法和装置
Hu et al. Dynamic queuing sharing mechanism for per-flow quality of service control
Panju et al. Queuing theoretic models for multicasting under fading

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant