CN111385225B - 一种数据调度方法、计算机装置及计算机可读存储介质 - Google Patents
一种数据调度方法、计算机装置及计算机可读存储介质 Download PDFInfo
- Publication number
- CN111385225B CN111385225B CN201811626236.0A CN201811626236A CN111385225B CN 111385225 B CN111385225 B CN 111385225B CN 201811626236 A CN201811626236 A CN 201811626236A CN 111385225 B CN111385225 B CN 111385225B
- Authority
- CN
- China
- Prior art keywords
- item
- queue
- traffic
- gate
- value
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/50—Queue scheduling
- H04L47/52—Queue scheduling by attributing bandwidth to queues
- H04L47/525—Queue scheduling by attributing bandwidth to queues by redistribution of residual bandwidth
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请涉及一种数据调度方法、计算机装置及计算机可读存储介质。其中,数据调度方法包括:获取门控制列表,门控制列表包括第一流量种类和第二流量种类;依次判断第一流量种类中的每个第一流量队列在第一项及第二项的门状态及第二流量种类中的至少一个第二流量队列在第二项的门状态是否满足预设条件;若满足,则第一流量队列在第一项对应的时间区间内设置保护区间;其中,第一项和第二项为门控制列表的相邻行,第一项位于第二项之前。本申请通过合理设置保护区间,使得可保证在第二流量开始传输之前最后一个使用该带宽的第一流量可以传输完毕,故不会影响第二流量的后续传输的确定性,这样可以在一定程度上提高确定性网络带宽利用率。
Description
技术领域
本申请涉及网络通信技术领域,尤其涉及一种数据调度方法、计算机装置及计算机可读存储介质。
背景技术
一些应用程序需要数据帧从开始传输到传播到目的地的全部的时延和抖动等时间因素都是可以预测的。例如工业自动化的控制环路对传输有很严格的要求,需要控制报文能够及时交付。
当一个低优先级的报文正在传输时,高优先级的报文(可能是时间敏感的)需要等待其传输完成之后才能被传输,这就导致了在开始传输高优先级报文之前会有一个最大帧长的报文的传输时延,如果这样的时延在每一跳都存在,那么总的时延将会变得不可接受。
为了确保某一类的时间敏感流量的传输不受其他类的时间敏感流量或者普通流量(即非时间敏感流量)影响,相关技术中,在指定的时间,只有一个流量种类(或者一个流量种类集合)的流量可以传输,即这个时间窗口仅属于该流量种类(或者一个流量种类集合),是被保护的。同时,在该时间窗口之前需要放置一个保护区间,用于保证在被保护流量开始传输之前最后一个未受保护的流量可以传输完毕。
网桥虚拟化技术中的增强的流量调度标准的方式实现上述方案。其定义可以基于时间比例对端口上每一个队列的传输进行调度,为每一个队列设置一个相应的传输门,传输门的状态可以决定该队列的帧能否被选择传输。传输门有两个状态:
开启:队列中排队的帧可以被选择传输,传输方式与该队列的传输选择算法有关;
关闭:队列中排队的帧不能被选择传输。
通过门控制列表控制每个队列的门状态。门操作规则规定一个指定的流量只能在该流量对应的门状态开启时传输,并且必须要在门关闭之前能够完成整个报文的传输,否则就不开始该报文的传输。这是一种隐式的保护区间方法,通过此方法,可以确保时间敏感流量的传输窗口不受普通流量影响。
如图1所示,在T1时间设置队列7,6,5,4,2,1,0门状态为关闭,队列3门状态为开启,因此在T1时间只有队列3可以传输报文;在T2时间,操作颠倒所有队列的门状态,因此队列3不再传输报文,其他队列可以传输。T1到T2的这个时间窗口是专为队列3的数据预留的,可以确保其传输的确定性。
虽然通过门控制方式可以保证某类时间敏感流量的传输不受其他类时间敏感流量或者普通流量影响,同时也保证一定带宽供普通流量使用。但是如果为时间敏感流量预留的带宽未被使用完,那么未用完的带宽也无法被普通流量使用。以图1为例,因为T1至T2之间的时间窗口只有队列3的门状态是开启的,即使在此期间内队列3中没有待传的数据,因为其他队列的门状态均为关闭,也不能传输报文。因此这一段时间的传输机会是被浪费的,换句话说,被预留的带宽即使未用完,也只能被浪费。
发明内容
为了解决上述技术问题或者至少部分地解决上述技术问题,本申请提供了一种数据调度方法、计算机装置及计算机可读存储介质。
第一方面,本申请提供了一种数据调度方法包括:获取门控制列表,门控制列表包括第一流量种类和第二流量种类;依次判断第一流量种类中的每个第一流量队列在第一项及第二项的门状态及第二流量种类中的至少一个第二流量队列在第二项的门状态是否满足预设条件;若满足,则第一流量队列在第一项对应的时间区间内设置保护区间;其中,第一项和第二项为门控制列表的相邻行,第一项位于第二项之前。
进一步地,预设条件为:第一流量种类中的一个第一流量队列在第一项及第二项的门状态为开启,且第二流量种类中的至少一个第二流量队列在第二项的门状态中包括开启。
进一步地,获取门控制列表的步骤之后,还包括:确定至少一个第二流量队列是否具有标记信息;若是,则确定标记信息的标记值;否则,进入判断是否满足预设条件的步骤。
进一步地,若标记值为第一预设值,则控制至少一个第一流量队列在第一项的门状态为开启;若标记值为第二预设值,则控制至少一个第一流量队列在第一项的门状态为关闭。
进一步地,时间区间的区间长度与保护区间的区间长度的差值作为保护区间的起始值;时间区间的终止值作为保护区间的终止值。
第二方面,本申请提供了一种计算机装置包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器用于执行计算机程序时实现:获取门控制列表,门控制列表包括第一流量种类和第二流量种类;依次判断第一流量种类中的每个第一流量队列在第一项及第二项的门状态及第二流量种类中的至少一个第二流量队列在第二项的门状态是否满足预设条件;若满足,则第一流量队列在第一项对应的时间区间内设置保护区间;其中,第一项和第二项为门控制列表的相邻行,第一项位于第二项之前。
进一步地,预设条件为:第一流量种类中的一个第一流量队列在第一项及第二项的门状态为开启,且第二流量种类的至少一个第二流量队列在第二项的门状态中包括开启。
进一步地,处理器用于执行计算机程序时实现获取门控制列表之后,还包括:确定至少一个第二流量队列是否具有标记信息;若是,则确定标记信息的标记值;否则,进入判断是否满足预设条件的步骤。
进一步地,处理器用于执行计算机程序时实现若标记值为第一预设值,则控制至少一个第一流量队列在第一项的门状态为开启;若标记值为第二预设值,则控制至少一个第一流量队列在第一项的门状态为关闭。
进一步地,时间区间的区间长度与保护区间的区间长度的差值作为保护区间的起始值;时间区间的终止值作为保护区间的终止值。
第三方面,本申请提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现如第一方面的数据调度方法的步骤。
本申请实施例提供的上述技术方案与现有技术相比具有如下优点:
本申请实施例提供的该方法,通过将第一流量种类中的每个第一流量队列在第一项及第二项的门状态及第二流量种类中的至少一个第二流量队列在第二项的门状态与预设条件相比较,若第一流量种类中的每个第一流量队列在第一项及第二项的门状态及第二流量种类中的至少一个第二流量队列在第二项的门状态满足预设条件,就可在该第一流量队列在第一项对应的时间区间内设置保护区间,这样,就可以在第二流量预留的带宽未使用完时,将该未使用完的带宽让给第一流量使用,同时保证第一流量的传输不影响第二流量的传输的确定性,即,保护区间的设置可保证在第二流量开始传输之前最后一个使用该带宽的第一流量可以传输完毕,故,不会影响第二流量的后续传输,这样可以在一定程度上提高确定性网络带宽利用率。其中,第一流量包括普通流量,第二流量包括时间敏感流量,普通流量对应的队列为普通流量队列,时间敏感流量对应的队列为时间敏感流量队列。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为相关技术中使用门操作形成保护区间示意图;
图2为本申请实施例提供的一种数据调度方法的流程示意图;
图3为本申请实施例提供的另一种数据调度方法的流程示意图;
图4为本申请实施例提供的再一种数据调度方法的流程示意图;
图5为应用本发明提供的数据调度方法进行操作的过程的一种流程示意图;
图6为应用本发明提供的数据调度方法进行操作的过程的另一种流程示意图;
图7为本申请中一个实施例提供的计算机装置的结构框图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请的一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
图2为本申请的第一个实施例提供的一种数据调度方法的流程图,其中,该控制方法包括:
步骤202,获取门控制列表,门控制列表包括普通流量种类和时间敏感流量种类;
步骤204,依次判断普通流量种类中的每个普通流量队列在第一项及第二项的门状态及时间敏感流量种类中的至少一个时间敏感流量队列在第二项的门状态是否满足预设条件;若满足,则普通流量队列在第一项对应的时间区间内设置保护区间;其中,第一项和第二项为门控制列表的相邻行,第一项位于第二项之前。
本申请实施例提供的该方法通过将普通流量种类中的每个普通流量队列在第一项及第二项的门状态及时间敏感流量种类中的至少一个时间敏感流量队列在第二项的门状态与预设条件相比较,若普通流量种类中的每个普通流量队列在第一项及第二项的门状态及时间敏感流量种类中的至少一个时间敏感流量队列在第二项的门状态满足预设条件,就可在该普通流量队列在第一项对应的时间区间内设置保护区间,这样,就可以在时间敏感流量预留的带宽未使用完时,将该未使用完的带宽让给普通流量使用,同时保证普通流量的传输不影响时间敏感流量的传输的确定性,即,保护区间的设置可保证在时间敏感流量开始传输之前最后一个使用该带宽的普通流量可以传输完毕,故,不会影响时间敏感流量的后续传输,这样可以在一定程度上提高确定性网络带宽利用率。其中,第一流量包括普通流量,第二流量包括时间敏感流量,普通流量对应的队列为普通流量队列,时间敏感流量对应的队列为时间敏感流量队列。且第一项和第二项是相对项,其并于限于门控制列表的第一行和第二行,亦可为第三行及第四行,亦可为第二行和第三行等。
具体地,由于普通流量队列的数量为至少一个,故,当普通流量队列的数量为多个时,要依次判断每个普通流量队列在第一项及第二项的门状态及时间敏感流量种类中的至少一个时间敏感流量队列在第二项的门状态是否满足预设条件,进而确定相应普通流量队列在第一项的时间区间内是否需要设置保护区间。
进一步地,预设条件为:普通流量种类中的一个普通流量队列在第一项及第二项的门状态为开启,且时间敏感流量种类中的至少一个时间敏感流量队列在第二项的门状态中包括开启。
在该实施例中,由于时间敏感流量队列的数量为至少一个,故,当有多个时间敏感流量队列时,只要有一个时间敏感流量队列在第二项的门状态为开启即可。也就是说,预设条件满足公式:Ta_i_gb=Ta_i_g&&Ta_(i+1)_g&&(Tα_(i+1)_g||Tβ_(i+1)_g||Tγ_(i+1)_g……)。其中,T表示流量种类;下标a、b、c……表示普通流量种类;α、β、γ……表示时间敏感流量种类;i表示门控制列表表项索引(如第一项,第二项);g表示门状态;Ta_i_g值为1表示第i个列表项中普通流量种类a的门状态为开启,Ta_i_g值为0表示第i个列表项中普通流量种类a的门状态为关闭;gb表示保护区间状态;通过上述公式,当Ta_i_gb为1时,表示需要在第i个列表项中给普通流量种类a放置一个保护区间,当Ta_i_gb为0时则不需要放保护区间。因此,预设条件为Ta_i_g&&Ta_(i+1)_g&&(Tα_(i+1)_g||
Tβ_(i+1)_g||Tγ_(i+1)_g……)=1。
进一步地,获取门控制列表的步骤之后,还包括:确定至少一个时间敏感流量队列是否具有标记信息;若是,则确定标记信息的标记值;否则,进入判断是否满足预设条件的步骤。
在该实施例中,设备具有处理设置了标记信息的控制列表的功能时,就会对接收到的门控制列表的至少一个时间敏感流量队列是否具有标记信息进行判断,当确定至少一个时间敏感流量队列具有标记信息,就会继续对标记信息的标记值进行确定,进而实现后续对门控制列表的更新操作;当接收到的门控制列表的至少一个时间敏感流量队列不具有标记信息,则会进入判断是否满足预设条件的步骤,即,以当前的门控制列表为基准来进行后续是否要设置保护区域的判定。也就是说,以至少一个时间敏感流量队列是否具有标记为基准来确定是否要对当前门控制列表进行处理,以适应不同的使用需求,以提升方法使用的适应性及广泛性。
进一步地,若标记值为第一预设值,则控制至少一个普通流量队列在第一项的门状态为开启;若标记值为第二预设值,则控制至少一个普通流量队列在第一项的门状态为关闭。
在该实施例中,第一预设值代表了若时间敏感流量队列当前无报文传输时,允许将传输机会让给普通流量队列使用,故,若标记值为第一预设值,则控制至少一个普通流量队列在第一项的门状态为开启,使得普通流量队列中排队的帧可以被选择传输;第二预设值代表了若时间敏感流量队列当前无报文传输时,不允许将传输机会让给普通流量队列使用,如,若标记值为第二预设值,则控制至少一个普通流量队列在第一项的门状态为关闭,使得普通流量队列中排队的帧不能被选择传输。该步骤的设置实现了对门控制列表的处理,进而简化了后续是否设置保护区间的判断的难度,有利于提升对数据的处理效率。
进一步地,时间区间的区间长度与保护区间的区间长度的差值作为保护区间的起始值;时间区间的终止值作为保护区间的终止值。
在该实施例中,合理设置了保护区间的起始值和终止值,将时间区间的区间长度与保护区间的区间长度的差值作为保护区间的起始值,并将时间区间的终止值作为保护区间的终止值。
图3为本申请的第二个实施例提供的一种数据调度方法的流程图,其中,该控制方法包括:
步骤302,获取门控制列表,门控制列表包括a个普通流量队列和b个时间敏感流量队列,且门控制列表的项为c;
步骤304,设置变量i和k,并赋i的初值为0,赋k的初值为1;
步骤306,判断i是否小于等于a-1;若是,则进入步骤308;否则,进入步骤312;
步骤308,判断第i个普通流量队列在第k项及第k+1项的门状态及所有时间敏感流量队列在第k+1项的门状态是否满足预设条件;若满足,则第i个普通流量队列在第k项对应的时间区间内设置保护区间;其中,当k=c时,令k+1=1;
步骤310,i自增加1,并进入步骤306;
步骤312,k自增加1;
步骤314,判断k是否小于等于c;若是,则进入步骤316;否则,进入步骤318;
步骤316,i=0,并进入步骤308;
步骤318,结束对门控制列表的数据处理。
图4为本申请的第三个实施例提供的一种数据调度方法的流程图,其中,该控制方法包括:
步骤402,获取门控制列表,门控制列表包括a个普通流量队列和b个时间敏感流量队列,且门控制列表的项为c;
步骤404,设置变量i和k,并赋i的初值为0,赋k的初值为1;
步骤406,判断i是否小于等于a-1;若是,则进入步骤407;否则,进入步骤412;
步骤407,判断第i个普通流量队列在第k项的门状态是否为开启;若是,则进入步骤408;否则,进入步骤410;
步骤408,当第i普通流量队列在第k+1项的门状态为开启,且所有时间敏感流量队列在第k+1项的门状态包括开启,则第i个普通流量队列在第k项对应的时间区间内设置保护区间;其中,当k=c时,令k+1=1;
步骤410,i自增加1,并进入步骤406;
步骤412,k自增加1;
步骤414,判断k是否小于等于c;若是,则进入步骤416;否则,进入步骤418;
步骤416,i=0,并进入步骤407;
步骤418,结束对门控制列表的数据处理。
具体实施例中,为时间敏感流量队列增加一个标记信息,用于表示当前无报文传输时,是否允许将传输机会让给普通流量队列使用,时间敏感流量队列的门状态为开启时该值有效,标记信息的标记值为第一预设值表示允许,标记信息的标记值为第二预设值表示不允许,时间敏感流量队列的门状态为关闭时,标记信息的标记值表示无效,默认值为N/A。可以在门操作中新增一种设置标记信息的操作,用来设置时间敏感流量对应的队列的标记信息。
具体实施例中,表1示出了门控制列表,其中,该门控制列表的时间敏感流量队列未设置标记信息。网络转发设备某端口有8个队列,其中队列6和7用于不同种类的时间敏感流量,根据需求以及某种分配策略。
表1门控制列表
具体实施例中,应用本发明提供的数据调度方法进行操作的过程,如图5所示:
步骤502,获取门控制列表;
步骤504,是否需要设置标记信息;若是,则进入步骤506;否则,进入步骤512;
步骤506,为这N个队列中供时间敏感流量使用的队列的门控制列表中状态为开启的门控制操作项设置标记信息,根据需要,设置标记信息的标记值;其中,标记值为第一预设值或标记值为第二预设值;
步骤508,从门控制列表第一个门操作项开始,至少有一个时间敏感流量对应的队列的标记信息的标记值为第一预设值时,该项中其余普通流量对应的队列的门状态均设置为开启,反之,标记信息的标记值为第二预设值时,该项中其余普通流量对应的队列的门状态均设置为关闭;
步骤510,是否全部设置完队列的门状态;若是,则进入步骤512;否则,进入步骤508;
步骤512,回到列表第一项;
步骤514,普通流量对应的队列(一个或多个)的门状态是否为开启;若是,则进入步骤516;否则,进入步骤518;
步骤516,当下一个门操作项中某门状态依然为开启,并且至少有一个时间敏感流量对应的队列的门状态也为开启时,为该队列在当前门操作项对应的时间区间结束之前,设置一个保护区间;
步骤518,进行下一个表项的处理;
步骤520,是否全部处理完所有表项;若是,则进入步骤522;若否,则进入步骤514;
步骤522,结束对门控制列表的数据处理。
在该实施例中,已知N个队列的门控制列表,为这N个队列中供时间敏感流量使用的队列的门控制列表中状态为开启的门控制操作项设置标记信息,根据需要,设置标记信息的标记值为第一预设值(第一预设值为T)或者设置标记信息的标记值为第二预设值(第二预设值为F);该步骤为可选操作,如果无需设置标记信息,则直接转至步骤512;从门控制列表第一个门操作项开始,至少有一个时间敏感流量对应的队列的标记信息的标记值为T时,该项中其余普通流量对应的队列的门状态均设置为开启,标记信息的标记值为F则设置该项中其余普通流量对应的队列的门状态均设置为关闭;依次设置门控制列表的每一个门操作项,直至最后一项;从门控制列表第一个门操作项开始,判断普通流量对应的队列(一个或者多个)的门状态,门状态为开启,进入步骤516,门状态为关闭,进入步骤518;若下一个门操作项中普通流量对应的队列的门状态依然为开启,并且至少有一个时间敏感流量对应的队列的门状态也为开启时,为该队列(一个或者多个)在当前门操作项对应的时间区间结束之前,放置一个保护区间;重复步骤514,依次判断门控制列表的每一个门操作项,直至最后一项;流程结束。
具体实施例中,表2示出了新增标记值的门控制列表。
表2新增标记值的门控制列表
如表2所示,在门操作中新增一种设置标记信息操作,用来设置时间敏感流量对应的队列的标记状态,表示当前无报文传输时,是否允许将传输机会让给其他队列或者流量种类使用。时间敏感流量队列的门状态为开启时该值有效,标记值为T表示允许,标记值为F表示不允许,时间敏感流量队列的门状态为关闭时或普通流量对应的队列,标记信息为N/A表示无效。其中,门状态为O表示开启,门状态为C表示关闭。
具体实施例中,表3示出了新增保护区间状态的门控制列表,在队列的门操作时间区间内放置保护区间的操作,可以通过在门操作中新增一种操作设置保护区间来实现,保护区间的状态为TURE表示放置了保护区间,保护区间的状态为FALSE表示没有保护区间;保护区间大小,保护区间的长度不能大于时间区间的长度,当保护区间的状态为TURE时有效。时间区间的区间长度与保护区间的区间长度的差值作为保护区间的起始值;时间区间的终止值作为保护区间的终止值。其中,保护区间的长度可以用最大长度帧的传输时间来确定,如果支持帧抢占功能,则保护区间的长度可以更小化。其中,门状态为O表示开启,门状态为C表示关闭。
表3新增保护区间状态的门控制列表
具体实施例中,表4示出了设置门状态和标记值后的门控制列表,表5示出了根据标记值进一步处理门状态后的门控制列表,表6示出了放置保护区间后的门控制列表。队列6和7为时间敏感流量队列,队列5、4、3、2、1及0为普通流量队列。根据需求设置时间敏感流量队列的门状态和标记信息。其中,门状态为O表示开启,门状态为C表示关闭;第一预设值为T,第二预设值为F,标记值为“/”表示无效,保护区间的状态为TURE表示放置了保护区间,保护区间的状态为FALSE表示没有保护区间。
表4设置门状态和标记值后的门控制列表
表5根据标记值进一步处理门状态后的门控制列表
如表4所示,门控制列表包括7项。列表第1项中,队列7和6的门状态均为关闭,则对队列5,4,3,2,1,0的门状态不做修改,继续保持开启;列表第2项中,队列7的标记值为T,则设置队列5,4,3,2,1,0的门状态为开启;列表第3项中,队列6的标记值为F,则保持队列5,4,3,2,1,0的门状态为关闭;列表第4项中,队列7的标记值为T,则设置队列5,4,3,2,1,0的门状态为开启;根据每一项中队列7和6的标记值,依次设置列表每一项中队列5,4,3,2,1,0的门状态,直至最后一项。此时,门控制列表如表5所示。
表6放置保护区间后的门控制列表
如表6所示,列表第1项中,队列5,4,3,2,1,0的门状态为开启,其下一个表项中上述队列的门状态也为开启,则该第1项中分别在队列5,4,3,2,1,0对应的时间区间内设置保护区间,即分别设置队列5,4,3,2,1,0的操作项设置保护区间中保护区间状态为TURE,保护区间的长度不大于时间区间的长度即可;列表第2项中,队列5,4,3,2,1,0的门状态为开启,其下一个表项中上述队列的门状态为关闭,则第2项中队列5,4,3,2,1,0不需要放置保护区间,即分别设置队列5,4,3,2,1,0的操作项设置保护区间中保护区间状态值为FALSE,保护区间长度值无效;列表第3项中,队列5,4,3,2,1,0的门状态为关闭,不需要做处理;列表第4项的处理同第2项;列表第5项的处理同第3项;列表第6项中,队列5,4,3,2,1,0的门状态为开启,其下一个表项中上述队列的门状态均为开启,同时队列7的门状态为开启,则该表项中分别在队列5,4,3,2,1,0中放置一个保护区间,即分别设置队列5,4,3,2,1,0的操作项设置保护区间中保护区间状态值为TURE,保护区间长度值不大于时间区间长度即可;列表第7项中,队列5,4,3,2,1,0的门状态为开启,其下一个表项(因第7项是门控制列表的最后一项,该控制列表被循环执行,其下一个表项为第1项)中上述队列的门状态均为开启,但队列7和6的门状态均为关闭,则该表项中上述队列不需要放置保护区间,即分别设置队列5,4,3,2,1,0的操作项设置保护区间中保护区间状态值为FALSE,保护区间长度值无效。
具体实施例中,通过进一步处理以后,上述网络转发设备端口上的门控制列表如表7所示,其运行过程如下:门控制列表开始执行,T1时间区间开始,按照门控制列表第1项内容设置各队列门状态,队列7和6的门状态为关闭,队列5,4,3,2,1,0的门状态为开启;因为列表第一项中队列5,4,3,2,1,0中放置了保护区间,根据时间区间长度和保护区间长度得出保护区间的起始值T1’,则从相对时间T1’开始上述队列不再开始新的报文的传输,未传输完成的报文可以继续传输,但是能够确保在T1时间区间结束前可以传输完;T2时间区间开始,按照门控制列表第2项内容设置各队列门状态,队列7的门状态为开启,队列6的门状态为关闭,队列5,4,3,2,1,0的门状态为开启;因为时间敏感流量相关的队列具有更高的传输优先权,则此期间内队列7中的待传报文具有传输机会,如果此时间段内队列7内没有待传报文或者其传输选择算法导致该队列一段时间内不能传输报文,根据网桥虚拟化技术中的增强的流量调度标准定义的传输规则,则队列5,4,3,2,1,0就具有传输机会,具体哪个队列的报文被选择传输,取决于队列使用的传输选择算法,假设上述队列使用SP(Strictpriority,严格优先级)算法,则队列5中的报文被选择传输;因为下一个表项中队列5,4,3,2,1,0的门状态为closed,网桥虚拟化技术中的增强的流量调度标准的机制决定了队列5中正在传输的报文在T2时间区间结束之前一定可以传输完毕,否则不开始该报文的传输;T3时间区间开始,按照门控制列表第3项内容设置各队列门状态,队列7的门状态为关闭,队列6的门状态为开启,队列5,4,3,2,1,0的门状态为关闭;此期间内只有队列6中的待传报文具有传输机会,如果队列6中没有待传报文或者其传输选择算法导致该队列一段时间内不能传输报文,则此时端口上不传输任何报文,该时间窗口的传输机会被浪费;T4时间区间开始,其运行过程同T2时间区间,不再复述;T5时间区间开始,其运行过程类似T3时间区间,不同的是,此期间内只有队列7中待传报文具有传输机会,如果队列7中没有待传报文或者其传输选择算法导致该队列一段时间内不能传输报文,则此时端口上不传输任何报文,该时间窗口的传输机会被浪费;T6时间区间开始,按照门控制列表第6项内容设置各队列门状态,队列7的门状态为关闭,队列6的门状态为开启,队列5,4,3,2,1,0的门状态为开启;此期间内队列6中待传的报文具有传输优先权,如果队列6中没有待传报文或者其传输选择算法导致该队列一段时间内不能传输报文,则传输机会让给队列5,4,3,2,1,0;因为列表第六项中队列5,4,3,2,1,0中放置了保护区间,根据时间区间长度和保护区间长度得出保护区间的起始值T6’,则从相对时间T6’开始上述队列不再开始新的报文的传输,未传输完成的报文可以继续传输,但是能够确保在T6时间区间结束前可以传输完;T7时间区间开始,按照门控制列表第七项内容设置各队列门状态,队列7的门状态为开启,队列6的门状态为关闭,队列5,4,3,2,1,0的门状态为开启;此期间内队列7中待传的报文具有传输优先权,如果队列7中没有待传报文或者其传输选择算法导致该队列一段时间内不能传输报文,则传输机会让给队列5,4,3,2,1,0;控制列表最后一项执行完成以后,重复上述步骤进行新一轮周期运作。
表7门控制列表
具体实施例中,应用本发明提供的数据调度方法进行操作的过程,如图6所示:
步骤602,门控制列表顺序开始执行,根据表项内容设置各队列门状态,此状态在时间区间内有效;
步骤604,判断每个队列在此时间区间内是否放置了保护区间;若是,则进入步骤606;否则,进入步骤608;
步骤606,根据该列表的时间区间的区间长度与保护区间的区间长度的差值作为保护区间的起始值,则从起始值起该队列不再开始新的报文传输,当前正在传输的报文可以继续传输直至传输完毕,此种状态一直保持到本次表项的时间区间结束;
步骤608,判断是否为门控制列表的最后一项;若否,则进入步骤602;否则,进入步骤610;
步骤610,从列表第一项开始进行新一轮周期运作。
图7为本申请一个实施例提供的计算机装置700包括存储器702、处理器704及存储在存储器702上并可在处理器704上运行的计算机程序,处理器704用于执行计算机程序时实现:获取门控制列表,门控制列表包括第一流量种类和第二流量种类;依次判断第一流量种类中的每个第一流量队列在第一项及第二项的门状态及第二流量种类中的至少一个第二流量队列在第二项的门状态是否满足预设条件;若满足,则第一流量队列在第一项对应的时间区间内设置保护区间;其中,第一项和第二项为门控制列表的相邻行,第一项位于第二项之前。
本申请实施例提供的计算机装置700包括存储器702、处理器704及存储在存储器702上并可在处理器704上运行的计算机程序。处理器704用于执行计算机程序时实现:将普通流量种类中的每个普通流量队列在第一项及第二项的门状态及时间敏感流量种类中的至少一个时间敏感流量队列在第二项的门状态与预设条件相比较,若普通流量种类中的每个普通流量队列在第一项及第二项的门状态及时间敏感流量种类中的至少一个时间敏感流量队列在第二项的门状态满足预设条件,就可在该普通流量队列在第一项对应的时间区间内设置保护区间,这样,就可以在时间敏感流量预留的带宽未使用完时,将该未使用完的带宽让给普通流量使用,同时保证普通流量的传输不影响时间敏感流量的传输的确定性,即,保护区间的设置可保证在时间敏感流量开始传输之前最后一个使用该带宽的普通流量可以传输完毕,故,不会影响时间敏感流量的后续传输,这样可以在一定程度上提高确定性网络带宽利用率。其中,第一流量包括普通流量,第二流量包括时间敏感流量。且第一项和第二项是相对项,其并于限于门控制列表的第一行和第二行,亦可为第三行及第四行,亦可为第二行和第三行等。
具体地,由于普通流量队列的数量为至少一个,故,当普通流量队列的数量为多个时,要依次判断每个普通流量队列在第一项及第二项的门状态及时间敏感流量种类中的至少一个时间敏感流量队列在第二项的门状态是否满足预设条件,进而确定相应普通流量队列在第一项的时间区间内是否需要设置保护区间。
进一步地,预设条件为:普通流量种类中的一个普通流量队列在第一项及第二项的门状态为开启,且时间敏感流量种类中的至少一个时间敏感流量队列在第二项的门状态中包括开启。
在该实施例中,由于时间敏感流量队列的数量为至少一个,故,当有多个时间敏感流量队列时,只要有一个时间敏感流量队列在第二项的门状态为开启即可。也就是说,预设条件满足公式:Ta_i_gb=Ta_i_g&&Ta_(i+1)_g&&(Tα_(i+1)_g||Tβ_(i+1)_g||Tγ_(i+1)_g……)。其中,T表示流量种类;下标a、b、c……表示普通流量种类;α、β、γ……表示时间敏感流量种类;i表示门控制列表表项索引(如第一项,第二项);g表示门状态;Ta_i_g值为1表示第i个列表项中普通流量种类a的门状态为开启,Ta_i_g值为0表示第i个列表项中普通流量种类a的门状态为关闭;gb表示保护区间状态;通过上述公式,当Ta_i_gb为1时,表示需要在第i个列表项中给普通流量种类a放置一个保护区间,当Ta_i_gb为0时则不需要放保护区间。因此,预设条件为Ta_i_g&&Ta_(i+1)_g&&(Tα_(i+1)_g||Tβ_(i+1)_g||Tγ_(i+1)_g……)=1。
进一步地,处理器用于执行计算机程序时实现获取门控制列表之后,还包括:确定至少一个第二流量队列是否具有标记信息;若是,则确定标记信息的标记值;否则,进入判断是否满足预设条件的步骤。
在该实施例中,设备具有处理设置了标记信息的控制列表的功能时,就会对接收到的门控制列表的至少一个时间敏感流量队列是否具有标记信息进行判断,当确定至少一个时间敏感流量队列具有标记信息,就会继续对标记信息的标记值进行确定,进而实现后续对门控制列表的更新操作;当接收到的门控制列表的至少一个时间敏感流量队列不具有标记信息,则会进入判断是否满足预设条件的步骤,即,以当前的门控制列表为基准来进行后续是否要设置保护区域的判定。也就是说,以至少一个时间敏感流量队列是否具有标记为基准来确定是否要对当前门控制列表进行处理,以适应不同的使用需求,以提升方法使用的适应性及广泛性。
进一步地,处理器用于执行计算机程序时实现若标记值为第一预设值,则控制至少一个第一流量队列在第一项的门状态为开启;若标记值为第二预设值,则控制至少一个第一流量队列在第一项的门状态为关闭。
在该实施例中,第一预设值代表了若时间敏感流量队列当前无报文传输时,允许将传输机会让给普通流量队列使用,故,若标记值为第一预设值,则控制至少一个普通流量队列在第一项的门状态为开启,使得普通流量队列中排队的帧可以被选择传输;第二预设值代表了若时间敏感流量队列当前无报文传输时,不允许将传输机会让给普通流量队列使用,如,若标记值为第二预设值,则控制至少一个普通流量队列在第一项的门状态为关闭,使得普通流量队列中排队的帧不能被选择传输。该设置实现了对门控制列表的处理,进而简化了后续是否设置保护区间的判断的难度,有利于提升对数据的处理效率。
进一步地,时间区间的区间长度与保护区间的区间长度的差值作为保护区间的起始值;时间区间的终止值作为保护区间的终止值。
在该实施例中,合理设置了保护区间的起始值和终止值,将时间区间的区间长度与保护区间的区间长度的差值作为保护区间的起始值,并将时间区间的终止值作为保护区间的终止值。
第三方面,本申请提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现如第一方面的数据调度方法的步骤。
本申请的第三方面提出的种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现如第一方面的数据调度方法的步骤。因此,具有上述任一实施例的数据调度方法的全部有益效果。
需要说明的是,在本文中,诸如“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上所述仅是本发明的具体实施方式,使本领域技术人员能够理解或实现本发明。对这些实施例的多种修改对本领域的技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所申请的原理和新颖特点相一致的最宽的范围。
Claims (8)
1.一种数据调度方法,包括:
获取门控制列表,所述门控制列表包括第一流量种类和第二流量种类;
依次判断所述第一流量种类中的每个第一流量队列在第一项及第二项的门状态及所述第二流量种类中的至少一个第二流量队列在所述第二项的门状态是否满足预设条件;若满足,则所述第一流量队列在第一项对应的时间区间内设置保护区间;
其中,所述第一项和所述第二项为所述门控制列表的相邻行,所述第一项位于所述第二项之前;
其中,所述预设条件为:所述第一流量种类中的一个第一流量队列在所述第一项及所述第二项的门状态为开启,且所述第二流量种类中的至少一个第二流量队列在所述第二项的门状态中包括开启。
2.根据权利要求1所述的数据调度方法,
所述获取门控制列表的步骤之后,还包括:
确定所述至少一个第二流量队列是否具有标记信息;
若是,则确定所述标记信息的标记值;
否则,进入判断是否满足预设条件的步骤。
3.根据权利要求2所述的数据调度方法,
若所述标记值为第一预设值,则控制所述至少一个第一流量队列在所述第一项的门状态为开启;
若所述标记值为第二预设值,则控制所述至少一个第一流量队列在所述第一项的门状态为关闭。
4.根据权利要求1至3中任一项所述的数据调度方法,
所述时间区间的区间长度与所述保护区间的区间长度的差值作为所述保护区间的起始值;
所述时间区间的终止值作为所述保护区间的终止值。
5.一种计算机装置,其特征在于,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器用于执行所述计算机程序时实现:
获取门控制列表,所述门控制列表包括第一流量种类和第二流量种类;
依次判断所述第一流量种类中的每个第一流量队列在第一项及第二项的门状态及所述第二流量种类中的至少一个第二流量队列在所述第二项的门状态是否满足预设条件;若满足,则所述第一流量队列在第一项对应的时间区间内设置保护区间;
其中,所述第一项和所述第二项为所述门控制列表的相邻行,所述第一项位于所述第二项之前;
其中,所述预设条件为:所述第一流量种类中的一个第一流量队列在所述第一项及所述第二项的门状态为开启,且所述第二流量种类的至少一个第二流量队列在所述第二项的门状态中包括开启。
6.根据权利要求5所述的计算机装置,其特征在于,所述处理器用于执行所述计算机程序时实现所述获取门控制列表之后,还包括:
确定所述至少一个第二流量队列是否具有标记信息;
若是,则确定所述标记信息的标记值;
否则,进入判断是否满足预设条件的步骤。
7.根据权利要求5或6所述的计算机装置,其特征在于,
所述时间区间的区间长度与所述保护区间的区间长度的差值作为所述保护区间的起始值;
所述时间区间的终止值作为所述保护区间的终止值。
8.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至4中任一项所述的数据调度方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811626236.0A CN111385225B (zh) | 2018-12-28 | 2018-12-28 | 一种数据调度方法、计算机装置及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811626236.0A CN111385225B (zh) | 2018-12-28 | 2018-12-28 | 一种数据调度方法、计算机装置及计算机可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111385225A CN111385225A (zh) | 2020-07-07 |
CN111385225B true CN111385225B (zh) | 2022-11-22 |
Family
ID=71216399
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811626236.0A Active CN111385225B (zh) | 2018-12-28 | 2018-12-28 | 一种数据调度方法、计算机装置及计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111385225B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115883485B (zh) * | 2022-11-25 | 2023-08-22 | 华北电力大学 | 一种基于IEEE802.1Qbv的变电站通信网络流量调度方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2262306A1 (en) * | 2009-06-12 | 2010-12-15 | Vodafone Group PLC | Scheduling traffic in a communication channel |
EP3200410A1 (en) * | 2016-01-28 | 2017-08-02 | Alcatel Lucent | Method and system for queueing packets in communication networks |
CN107113246A (zh) * | 2015-02-13 | 2017-08-29 | 三菱电机株式会社 | 用于网络中数据帧的流量整形的方法及其装置和计算机程序产品 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3217614B1 (en) * | 2016-03-09 | 2018-09-19 | Mitsubishi Electric R&D Centre Europe B.V. | Multiplexing method for scheduled frames in an ethernet switch |
US10425321B2 (en) * | 2017-04-25 | 2019-09-24 | Keysight Technologies Singapore (Sales) Pte. Ltd. | Methods, systems, and computer readable media for testing time sensitive network (TSN) elements |
CN108282416B (zh) * | 2017-12-29 | 2021-12-28 | 北京华为数字技术有限公司 | 一种基于数据帧的调度方法和装置 |
-
2018
- 2018-12-28 CN CN201811626236.0A patent/CN111385225B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2262306A1 (en) * | 2009-06-12 | 2010-12-15 | Vodafone Group PLC | Scheduling traffic in a communication channel |
CN107113246A (zh) * | 2015-02-13 | 2017-08-29 | 三菱电机株式会社 | 用于网络中数据帧的流量整形的方法及其装置和计算机程序产品 |
EP3200410A1 (en) * | 2016-01-28 | 2017-08-02 | Alcatel Lucent | Method and system for queueing packets in communication networks |
Also Published As
Publication number | Publication date |
---|---|
CN111385225A (zh) | 2020-07-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109787919B (zh) | 一种信息传输的方法、装置、计算机存储介质及终端 | |
CN113163450B (zh) | 门控制列表生成方法、网络设备及计算机可读存储介质 | |
CN114301851B (zh) | 一种面向工业现场的时间敏感网络流量分级调度方法 | |
US20030187907A1 (en) | Distributed control method and apparatus | |
CN107113246A (zh) | 用于网络中数据帧的流量整形的方法及其装置和计算机程序产品 | |
US20070174511A1 (en) | Transmit rate pacing system and method | |
CN111385225B (zh) | 一种数据调度方法、计算机装置及计算机可读存储介质 | |
CN110413210B (zh) | 用于处理数据的方法、设备和计算机程序产品 | |
DE102020103604A1 (de) | Verfahren zum routing in zeitsensitiven netzwerken | |
CN109714264A (zh) | 基于缓存队列的滑动窗口限流的实现方法 | |
CN109617806B (zh) | 一种数据流量调度方法及装置 | |
KR101373786B1 (ko) | 자원-기반 스케쥴러 | |
Yuan et al. | Adaptive priority adjustment scheduling approach with response-time analysis in time-sensitive networks | |
Gebrehiwot et al. | Energy–performance trade-off for processor sharing queues with setup delay | |
CN112995064A (zh) | 一种时间敏感网络报文转发方法、装置、终端及存储介质 | |
CN115225587B (zh) | 基于约束规划的异步终端系统调度优化方法 | |
CN115695330B (zh) | 嵌入式系统中微程的调度系统、方法、终端及存储介质 | |
WO2022048407A1 (zh) | 报文的混合调度方法、装置、电子设备及存储介质 | |
CN109391558B (zh) | 一种队列的控制方法及控制装置 | |
JP2017022530A (ja) | ネットワークプロセッサ、通信装置、パケット転送方法及びパケット転送プログラム | |
US20190334830A1 (en) | Network source arbitration | |
US20220239397A1 (en) | Centralized control of time gates for time sensitive networking (tsn) | |
CN114205315B (zh) | 一种时间敏感网络中支持Qbv机制的帧输出调度方法 | |
Roy et al. | A high-throughput network processor architecture for latency-critical applications | |
JP6531750B2 (ja) | 送信装置 |
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 |