一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

基于时间效益函数的时间敏感网络下的混合流量调度方法

2022-06-11 08:46:08 来源:中国专利 TAG:


1.本发明属于网络流量调度领域,具体涉及一种在时间敏感网络下针对混合流量进行流量调度的方案,尤其涉及一种基于时间效益函数的时隙分配方法。


背景技术:

2.随着工业互联网的发展,时间敏感网络(tsn ieee802.1q)因其能够提供确定性时延而受到越来越多的关注。时间敏感网络标准由一系列子标准组成,比如ieee802.1qbv标准通过控制交换机内部门控开关以离线的方式预先分配好时隙来达到确定性传输;ieee802.1qav标准通过信誉整形器来防止软实时流饿死;ieee802.1qbu通过帧抢占来进一步降低高优级流的端到端时延等。时间效益函数(tuf)是用来描述流的效益值随流的端到端时延变化的效益曲线,它可以由任意非增函数组成,比较常用的有阶跃函数、线性函数、二次函数等,用时间效益函数来描述流的实时服务质量有着重要的实际意义。
3.根据流的到达模式,可以分为时间触发流与事件触发流。其中,时间触发流通常为周期流,具有可预测性;事件触发流通常为非周期流,具有不可预测性。目前,大多数关于时间敏感网络调度问题的研究只针对时间敏感网络下同类型流的分析。但在实际应用中,比如车联网、航天通信、工业互联网等领域中,往往流的组成以及不同流所对应的实际效益都是多样化的,不同的流对于时延的需求也是不一样的。因此需要一个方案使得混合流匹配时间敏感网络下的传输协议,并在此方案下完成高效传输。


技术实现要素:

4.发明目的:针对上述现有时间敏感网络下流量调度方案流量类型的单一性,本发明提供一种基于时间效益函数的时间敏感网络下的混合流量调度方法。
5.技术方案:一种基于时间效益函数的时间敏感网络下的混合流量调度方法,该方法包括以下步骤:
6.s1、建立混合流传输的系统模型和网络约束,包括如下数据流的处理过程:
7.(11)设定每条流所包含的信息为:《si.tuf,si.e2e,si.d,si.t,si.size》,其中,si.tuf为这条流的时间效益函数,si.e2e为这条流实际的端到端时延,si.d为这条流的时间效益函数变为0的时刻,si.t为这条流的周期,si.size为这条流的长度;
8.(12)当一条流的长度超过最大可传输单元时,对该条数据流进一步分为帧,每个帧所包含的信息为:其中,为这个帧的长度,为这个帧的到达时间,为这个帧的实际发出时间,为这个帧从va到vb的传输时间;
9.(13)构建最大化混合流的时间效益问题,公式表达如下:
[0010][0011]
其中,s
p
为混合流中所有周期流的集合,sa为混合流中所有非周期流的集合;
[0012]
s2、混合流中的周期流采用潜在效益密度优先的策略进行调度预处理,潜在效益密度为si.pud,其表达式如下:
[0013][0014]
s3、混合流中的周期流采用无等待时间效益函数优先的策略进行调度预处理,其中周期流端到端时延si.e2e计算如下:
[0015][0016]
s4、混合流中的周期流基于si.pud与无等待约束下的si.e2e采用联合调度算法进行调度;
[0017]
s5、混合流中的非周期流采用非周期流动态传输算法进行调度。
[0018]
进一步的,所述方法将周期流匹配进入tsn交换机内的tt队列,非周期流匹配进入tsn交换机内的avb队列,tt队列内的流需要遵循tsn规范中的ieee802.1qbv协议;对于进入tt队列的周期流,在有限的时隙内,其最优时隙分配问题的函数表达式如下:
[0019][0020]
其中,为第i条流的最后一个帧传输完成的时间,为第i条流的第一个帧开始传输的时间;
[0021]
周期流约束条件:
[0022]
(1)容量限制:实际调度的周期流所占的时隙不能超过规定的时隙容量c;
[0023][0024]
(2)帧实际开始传输时间限制:帧的实际开始传输时间大于等于帧的实际到达时间,小于等于帧的周期时间减去传输时间,关系式如下:
[0025][0026]
(3)帧间隙限制:为了减小非周期流的队列时延,周期流之间需要预留一定的间隙,称为间隙的大小根据实际需求大于等于设定值x,小于等于周期时间减去传输时间,关系式如下:
[0027][0028]
(4)时隙预留限制:任意两个帧在同一条链路的传输中所占的时隙不能互相重叠,并根据约束(3)设置的间隙大小在两个帧之间留下间隙;
[0029][0030]
式中:α、β为任意0到si.t与sj.t最小公倍数之间的整数;
[0031]
(5)端到端时延限制:流传输完成的时间不能超过自身的截止时间,关系式如下所示:
[0032][0033]
进一步的,步骤(s2)中,每条周期流在调度前计算自己的潜在效益密度,即效益值从开始到截止期限内的平均值,令其为si.pud,其表达式如下:
[0034][0035]
在调度前将每条周期流的pud值按从高到低排并依次放入求解器中预先计算能不能调度成功,求解器中的约束为周期流的约束条件;若求解器有解,表明当前流可被调度并分配固定时隙;若求解器无解表明当前流不可被调度,继续寻找下一个可被调度的流,直至所有流都被遍历,得到最后周期流调度集合s1,并记录可被调度的流数量为n1。
[0036]
进一步的,步骤(s3)中每条周期流在调度前计算自己的无等待时间效益函数值,即每条流的端到端时延中队列时延为0,端到端时延可以简化为传输时延,计算表达式如下:
[0037][0038]
无等待效益函数优先值即可由最优时隙分配问题的函数表达式求解;在调度前将每条周期流的无等待效益函数值按从高到低排并依次放入求解器中预先计算能不能调度成功;求解器中的约束为最优时隙分配问题的周期流约束条件和无等待约束,即公式(6);若求解器有解,表明当前流可被调度并分配固定时隙;若求解器无解表明当前流不可被调度,继续寻找下一个可被调度的流,直至所有流都被遍历,得到最后周期流调度集合s2,并记录可被调度的流数量为n2。
[0039]
进一步的,步骤(s4)对于混合流的联合调度比较潜在效益密度计算得到的n1值与无等待时间效益函数计算得到的n2值的大小,若n1大于n2,则选择调度集合s1,反之选择调度集合s2。
[0040]
更进一步的,步骤(s5)中非周期流动态传输调度具体如下:
[0041]
所有非周期流进入tsn交换机内的avb队列并遵循ieee802.1qav协议;对于avb队列中位于队头的非周期流,预先计算完成当跳传输后的流自身tuf值与其他位于当前队列处于等待状态的流的tuf平均值,将两者相比较;若预计算的自身tuf值大于其他流的平均值,则允许当前流传输,否则将其丢弃不予传输。
[0042]
有益效果:本发明与现有技术相比,其显著特点和实质性进步包括如下三点:
[0043]
第一、本发明提出的时间敏感网络下的时隙分配策略,能够以混合流中周期流与非周期流的关系为纽带,联合优化多个不同时间效益函数的流来达到最大化总时间效益函数的目的。
[0044]
第二、本发明在步骤(s2)和步骤(s3)的基础上提出的联合调度算法,即步骤(s4),在一定程度上能够在不顺时调度率的情况下减小端到端时延,增大了周期流的时间效益值。
[0045]
第三、本发明在步骤(s1)的约束条件中预先为非周期流预留时隙减小其在某些最差情况下的队列时延,并在步骤(s5)中提出实时算法进一步优化非周期流的效益值,提升了总体的调度效率。
附图说明
[0046]
图1是本发明所述方法的流程图;
[0047]
图2是本发明中流端到端传输的系统模型结构图;
[0048]
图3为本发明中数据流的流结构剖析图;
[0049]
图4为实例中不同周期流时隙容量下周期流调度后的最差tuf值柱状图;
[0050]
图5为实例中不同周期流时隙容量下非周期流调度后的最差tuf值柱状图;
[0051]
图6为实例中不同周期流时隙容量下所有流调度后的最差tuf值柱状图。
具体实施方式
[0052]
为了详细的说明本发明所公开的技术方案,下面结合附图和具体实施方式对本发明做进一步地阐述。
[0053]
首先,本发明所述方法重点解决的问题是时间敏感网络下如何能在有限时隙容量下调度混合流,最大程度地获得混合流的时间效益值,该方法提供的整个调度流程如图1所示。
[0054]
本发明的主要思想是基于时间敏感网络下的协议,把混合流根据周期性分为周期流与非周期流后与交换机内的队列进行匹配。其中,周期流进入交换机内的tt队列(ieee802.1qbv)并遵循本技术提出的离线算法所生成的门控列表,非周期流进入交换机内的avb队列(ieee802.1qav)并遵循本技术提出的在线算法,从而能够在有限的时隙内对混合流做出高效调度。
[0055]
具体来说,一种基于时间效益函数的时间敏感网络下的混合流量调度方法,包括以下步骤:
[0056]
步骤1、建立系统模型和网格约束
[0057]
首先构建系统模型,如图2展示了数据流在系统中传输方式和路径,每个任务由发送端的cpu生成,传输过程的开始时间流所包含的帧的第一位进入tsn域的时间,传输过程的结束时间为流所包含的帧的最后一位离开tsn域的时间。在流到达接收端后,接收端会将数据传给上层完成特定应用。tsn网络可以被抽象为一个有向图g(v,l),其中,顶点集合v由tsn交换机和终端设备组成,链路集合l由连接所有结点的双向链路组成,[va,vb]∈l代表从结点a到结点b是连通的。
[0058]
在tsn域中,所传递的信息封装为流进行传输。如图3所示,每条流所包含的信息为:《si.tuf,si.e2e,si.d,si.t,si.size》,其中,si.tuf为这条流的时间效益函数,si.e2e为这条流实际的端到端时延,si.d为这条流的时间效益函数变为0的时刻,si.t为这条流的周期,si.size为这条流的长度。当一条流的长度超过最大可传输单元时,这条流会被进一步分为帧,每个帧所包含的信息为:其中,为这个帧的长度,为这个帧的到达时间,为这个帧的实际发出时间,为这个帧从va到vb的传输时间。我们把最大化混合流的时间效益问题公式化描述为:
[0059][0060]
其中,s
p
为混合流中所有周期流的集合,sa为混合流中所有非周期流的集合。
[0061]
进一步的,构建网络约束。
[0062]
利用门控列表精确调度调度周期流需要遵循基本的网络约束,同时为了更高效地调度非周期流,我们在每个周期流之间预留一定长度的时隙给非周期流,定义为假定一条流从发送端v
src
发出到被接收端v
dest
接收,途经中间结点v1,v2,

,v
m-1
,vm,那么这条流的路径可以被表示如下:
[0063][0064]
周期流的目标函数可以被转换为:
[0065][0066]
其中,为第i条流的最后一个帧传输完成的时间,为第i条流的第一个帧开始传输的时间。
[0067]
周期流的约束条件如下:
[0068]
(1)容量限制:实际调度的周期流所占的时隙不能超过规定的时隙容量c;
[0069][0070]
(2)帧实际开始传输时间限制:帧的实际开始传输时间必须大于等于帧的实际到达时间,小于等于帧的周期时间减去传输时间;
[0071][0072]
(3)帧间隙限制:为了减小非周期流的队列时延,周期流之间需要预留一定的间隙。间隙的大小根据实际需求大于等于实际需求值x,小于等于周期时间减去传输时间;
[0073][0074]
(4)时隙预留限制:任意两个帧在同一条链路的传输中所占的时隙不能互相重叠,并根据约束(3)在两个帧之间留下间隙;
[0075]
式中:α、β为任意0到si.t与sj.t最小公倍数之间的整数;
[0076]
(5)端到端时延限制:流传输完成的时间不能超过自身的截止时间。
[0077][0078]
因为周期流所占的总时隙不能超过规定的时隙容量c(受限于约束(1)),因此我们需要筛选周期流来最大化周期流的效益值。
[0079]
步骤2、潜在效益密度函数优先策略
[0080]
潜在效益密度函数优先策略是其中一个筛选周期流的方法,它能让求解器在0(n)的时间复杂度内生成静态门控列表。每条周期流在调度前计算自己的潜在效益密度,即效
益值从开始到截止期限内的平均值,令其为si.pud,.pud,在调度前将每条周期流的pud值按从高到低排并依次放入求解器中预先计算能不能调度成功。求解器中的约束条件为(1)-(5)。若求解器有解,表明当前流可被调度并分配固定时隙;若求解器无解表明当前流不可被调度,继续寻找下一个可被调度的流,直至所有流都被遍历,得到最后周期流调度集合s1,并记录可被调度的流数量为m。
[0081]
步骤3、无等待时间效益函数优先策略
[0082]
无等待时间效益函数优先策略是另一个筛选周期流的方法,它规避了流在传输过程中的队列时延,但也同时减小了求解器解的搜索空间。每条周期流在调度前计算自己的无等待时间效益函数值,即每条流的端到端时延中队列时延为0,端到端时延可以简化为传输时延,无等待效益函数优先值即可预先求出。在调度前将每条周期流的无等待效益函数值按从高到低排并依次放入求解器中预先计算能不能调度成功。求解器中的约束条件(1)-(5),并在此基础上增加无等待约束(6)。若求解器有解,表明当前流可被调度并分配固定时隙;若求解器无解表明当前流不可被调度,继续寻找下一个可被调度的流,直至所有流都被遍历,得到最后周期流调度集合s2,并记录可被调度的流数量为n。
[0083]
步骤4、联合调度策略
[0084]
在所有流同时到达的最差情况下,无等待效益函数优先策略的解集合s2只有一条流,这显然是不能接受的。为了避免极端情况,我们以流的可调度数量作为衡量标准在潜在效益密度优先策略与无等待时间效益函数优先策略中做出选择,称为联合调度策略。潜在效益密度函数优先策略中m值与无等待时间效益函数优先策略中n值的大小,若m大于n,则选择调度集合s1,反之选择调度集合s2。
[0085]
步骤5、非周期流动态传输算法
[0086]
因为非周期流的到达时间是随机的,所以我们用在线算法来实时优化非周期流,称为非周期流动态传输算法。所有非周期流进入tsn交换机内的avb队列并遵循ieee 802.1qav协议。对于avb队列中位于队头即将要传输的非周期流,预先计算完成当跳传输后的流自身tuf值与其他位于当前队列处于等待状态的流的tuf平均值,将两者相比较;若预计算的自身tuf值大于其他流的平均值,则允许当前流传输,否则将其丢弃不予传输。
[0087]
为了全面说明本发明所提出的混合流调度策略,下面分别通过以下三个指标来评估性能:
[0088]
(1)周期流的最差时间效益值;
[0089]
(2)非周期流的最差时间效益值;
[0090]
(3)所有流的最差时间效益值。
[0091]
本实施例中,使用谷歌的or-tools中的可编程约束求解器来添加网络约束,所有用python3.9写的算法及仿真实验均在2.9ghzcpu及8g内存的pc上完成。假定有6条周期流与6条非周期流需要在发送端被调度,每条流的到达时间都是随机的,经过多轮实验后选取最差时间效益值的情况。其中,本发明提出的周期流联合调度算法称为ja,非周期流调度算法称为asdt;周期流采取潜在效益密度函数优先策略,非周期流采取先进先出的调度算法称为sa;与sa相比,周期流不引入帧间隙限制的调度算法称为nsa。
[0092]
如图4所示,sa算法由于帧间隙限制的引入导致周期流的最差时间效益值低于nsa,而ja的联合调度算法弥补了sa的缺陷。如图5所示,nsa算法由于没有引入帧间隙限制导致非周期流的最差时间效益值低于sa,而ja-asdt算法在引入帧间隙限制的基础上进一步优化了非周期流的调度,使得非周期流的最差时间效益值高于其余两个。综上,如图6所示,所有流在调度后的最差时间效益值ja-asdt算法远高于sa与nsa,检验了本发明所述的混合流调度策略的优越性能。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献