CN108768865B - 支持多播业务的时间触发业务调度表生成方法 - Google Patents
支持多播业务的时间触发业务调度表生成方法 Download PDFInfo
- Publication number
- CN108768865B CN108768865B CN201810509359.XA CN201810509359A CN108768865B CN 108768865 B CN108768865 B CN 108768865B CN 201810509359 A CN201810509359 A CN 201810509359A CN 108768865 B CN108768865 B CN 108768865B
- Authority
- CN
- China
- Prior art keywords
- service
- end system
- time
- time point
- current service
- 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
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/16—Multipoint routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/14—Routing performance; Theoretical aspects
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/28—Routing or path finding of packets in data switching networks using route fault recovery
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种支持多播的时间触发业务调度表生成方法。主要解决现有技术在生成时间触发TT业务的调度表时,不支持对多播TT业务进行调度或因调度多播业务造成链路利用率低的问题。其包括:获取业务参数和网络参数,并计算业务调度的矩阵周期和基本周期;将TT业务的传输时间点放入矩阵周期的一个或多个基本周期内,生成源端系统的TT业务带宽预案;根据业务参数,分配源端系统各基本周期中TT业务的发送时间,依次生成源端系统的发送表、交换机的接收表和发送表以及目的端系统的接收表。本发明生成的调度表能保证多播和单播混合的TT业务在网络中无冲突传输,提高了链路利用率,可用于时间触发以太网中TT业务的调度。
Description
技术领域
本发明属于航空电子技术领域,尤其涉及一种时间触发业务调度表生成方法,可用于实现时间触发以太网中单播和多播时间触发TT业务混合的调度。
背景技术
航空电子系统体系结构的发展,促进了时间触发通信机制的引入。分布式嵌入式实时系统领域首先提出了时间触发体系架构,该体系架构在时间同步的基础上按照精确的资源使用计划来引导整个系统的活动,对资源进行充分使用。在此基础上发展而来的时间触发以太网TTE,以时间触发代替事件触发,在全局时钟精确同步的条件下,使网络任务通信具有完全的实时性,有望成为分布式综合模块化航空电子系统的互连基础设施。但时间触发以太网并未规定业务调度方法,其业务调度机制需要根据实际应用场合进行定制。
目前已有的时间触发TT业务调度算法包括以下几种:
1.中国航空无线电电子研究所徐晓飞等人在其申请的专利文献“一种有效的时间触发网络通信时间调度方法”(申请号201210541489.4,申请公布号CN102970247A)中公开了一种将网络最长帧传输时间作为基本周期进行业务调度的方法,该方法增加了通信时间调度方法的可扩展性,但不支持对非调和周期的时间触发TT业务进行调度。
2.北京航空航天大学的张英静等在北京航空航天大学学报(2017,43(8):1577-1584)中提出了一种基于TTE的改进加权轮询调度算法,该方法利用可满足性模理论SMT解析器生成时间触发TT业务调度表,但链路利用率较低。
3.西安电子科技大学在其申请的专利文献“一种时间触发业务静态调度表的生成方法”(申请号201710263462.6,申请公布号CN107241179A)中公开了一种时间触发业务调度表的静态生成方法,该方法最大程度减小时间触发TT业务所占据的时间区间长度,但并未考虑到多播时间触发TT业务对调度结果的影响。
上述已有调度方法部分不能调度多播时间触发TT业务,部分虽然能够调度多播时间触发TT业务,但在传输此类业务时链路利用率会出现较大幅度下降。
发明内容
本发明的目的在于提出一种支持多播业务的时间触发业务调度表生成方法,以解决目前时间触发以太网中在生成时间触发TT业务的调度表时,不支持对多播TT业务进行调度或因调度多播业务造成链路利用率低的问题。
为实现上述目的,本发明技术方案包括如下:
(1)获取业务参数和网络参数:
所述业务参数,包括:业务ID、帧长、周期、业务类型、源端系统编号、目的端系统编号和产生时间,共7个;
所述网络参数,包括:链路带宽w、最小时间间隔u、同步精度a和网络时延,该时延包括:源端系统的最小发送时延s1、源端系统的最大发送时延s2、最小链路传输时延t1、最大链路传输时延t2、交换机的最小接收时延sr1、交换机的最大接收时延sr2、交换机的最小转发时延sw1、交换机的最大转发时延sw2、交换机的最小发送时延ss1、交换机的最大发送时延ss2、目的端系统的最小接收时延r1和目的端系统的最大接收时延r2,共12个时延;
(2)计算所有时间触发TT业务周期的最大公约数,作为基本周期BC,再计算所有时间触发TT业务周期的最小公倍数,作为矩阵周期MC;
(3)根据业务参数,对时间触发TT业务进行调度优先级排序,并将时间触发TT业务的传输时间点放入矩阵周期的一个或多个基本周期内,生成源端系统的时间触发TT业务带宽预案;
(4)结合业务参数,分配源端系统中各时间触发TT业务在每个基本周期中的发送时间:
(4a)根据一个基本周期待分配的时间触发TT业务,建立执行时间点集合E和分配结果集合A这2个集合,并对其初始化;
(4b)根据业务参数,建立源端系统单播执行时间点数组IS、目的端系统单播执行时间点数组OS、源端系统多播开始时间点数组IM1、源端系统多播结束时间点数组IM2、目的端系统多播开始时间点数组OM1、目的端系统多播结束时间点数组OM2这6个数组,并对其初始化;
(4c)取出执行时间点集合E的第一个子集合E1,并判断子集合E1中第一个业务的业务类型是否为多播业务:若是,则执行(4d);若否,执行(4e);
(4d)根据各端系统多播开始时间点和多播结束时间点,执行一次多播时间触发TT业务调度;
(4e)根据各端系统单播执行时间点、多播开始时间点和多播结束时间点,执行一次单播时间触发TT业务调度;
(4f)判断子集合E1是否为空集合:若是,删除子集合E1;若否,则返回(4c);
(4g)判断执行时间点集合E是否为空集合:若是,则本基本周期内所有时间触发TT业务分配完成;若否,则返回(4c);
(4h)重复(4a)~(4g),完成源端系统所有基本周期内的时间触发TT业务的发送时间分配;
(5)根据分配结果集合A,生成各源端系统的发送表Yi,其中i表示源端系统编号;
(6)在各源端系统发送表的基础上,结合网络中引入的网络时延,生成网络中交换机的接收表H、交换机的发送表S和各目的端系统的接收表Nj,其中j表示目的端系统编号。
本发明与现有技术相比具有以下优点:
第一,由于本发明在为每个业务分配基本周期中的具体发送时间时,先判断其业务类型,如果是多播业务,则根据多播业务需要占用多目的端系统的特性,同时判断多目的端系统的占用情况,保证多播业务在所有相关端系统空闲时传输,避免了TT业务之间产生冲突,克服了现有技术中不支持多播调度的问题。
第二,由于本发明为每个源端系统和目的端系统设立了单播执行时间点、多播开始时间点、多播结束时间点这3个参数,为多播业务分配发送时间后,在不与已安排发送时间业务冲突的情况下,单播业务仍可利用多播发送之前空闲端口的这段空闲时间进行传输,克服了现有技术中调度多播业务时链路利用率低的问题。
附图说明
图1是本发明的应用环境实例图;
图2是本发明的实现总流程图。
具体实施方式
下面结合附图对本发明作进一步的详细描述。
参照图1,在一个星型网络中,有一台交换机、n个源端系统、m个目的端系统,时间触发TT业务可从任意1个源端系统发往任意的1个或多个目的端系统。本发明是为所有时间触发TT业务生成时间调度表来保证无冲突传输。
参照图2,本发明的实现步骤如下:
步骤1,获取业务参数和网络参数。
所述业务参数包括:业务ID、帧长、周期、源端系统发送编号、目的端系统编号和产生时间,共6个;
所述网络参数,包括:链路带宽w、最小时间间隔u、同步精度a和网络时延,该时延包括:源端系统的最小发送时延s1、源端系统的最大发送时延s2、最小链路传输时延t1、最大链路传输时延t2、交换机的最小接收时延sr1、交换机的最大接收时延sr2、交换机的最小转发时延sw1、交换机的最大转发时延sw2、交换机的最小发送时延ss1、交换机的最大发送时延ss2、目的端系统的最小接收时延r1和目的端系统的最大接收时延r2,共12个时延,其中:
将最小时间间隔u作为时间调度表的最小时间粒度单位,根据每个TT业务帧长的不同,为其分配若干个最小时间间隔作为发送窗口。
步骤2,计算业务调度的矩阵周期和基本周期。
所述矩阵周期,是所有时间触发TT业务周期传输一次所需的总时间,基本周期是时间触发TT业务传输的最短时间间隔,这两个周期的计算如下:
计算所有时间触发TT业务周期的最大公约数,作为基本周期BC;
计算所有时间触发TT业务周期的最小公倍数,作为矩阵周期MC。
步骤3,将时间触发TT业务的传输时间点放入矩阵周期的一个或多个基本周期内,生成源端系统的TT业务带宽预案。
(3a)对于某个TT业务,确定当前业务应该在矩阵周期中的第几个基本周期开始分配其传输时间点,将该值记作初始偏移量offset:
(3a1)计算当前业务的相对传输结束时间,记为endtime,其计算方式为:
endtime=p%(BC/u)+s/w,
其中,BC表示基本周期,u表示最小时间片,w表示链路带宽,s表示当前时间触发TT业务的帧长,p表示当前业务的产生时间,%表示取余运算,/表示除法运算;
(3a2)根据相对传输结束时间endtime,计算初始偏移量offset,其计算方式如下:
(3b)将矩阵周期看做由多行多列组成的大矩形,其每一行代表一个基本周期,每一列代表各基本周期中的同一传输时间段;
(3c)判断将当前时间触发TT业务放入矩阵周期的各个基本周期后,是否会引起列冲突,即先对矩阵周期同一列中已分配的所有时间触发TT业务两两取周期的最大公约数,再进行求导求和,之后,判断最终结果是否小于等于1:若是,则在当前列中根据(3a)中的初始偏移量offset开始分配该业务的传输时间点;若否,则在另外一列中分配该业务的传输时间点;
(3d)在当前列中,从初始偏移量offset开始,根据时间触发TT业务的周期c,每隔c/BC个基本周期,分配一次当前业务,直到将当前业务的传输时间点均匀分配到整个矩阵周期中;
(3e)重复(3a)~(3d),直到将所有时间触发TT业务的传输时间点分配到矩阵周期的一个或多个基本周期内,得到源端系统的TT业务带宽预案。
步骤4,结合业务参数,分配源端系统中各时间触发TT业务在每个基本周期中的发送时间。
(4a)根据一个基本周期待分配的时间触发TT业务,建立执行时间点集合E和分配结果集合A这2个集合,并对其初始化:
(4a1)建立执行时间点集合E:
将一个基本周期所有业务,按照产生时间相同的原则划分为若干个子集合,并对这些子集合按照其中业务的产生时间从小到大排序,再对每个集合中的业务按照先多播后单播的顺序排序,最后用所有这些子集合构成执行时间点集合E;
(4a2)建立分配结果集合A:
为所有业务添加发送时间参数,并用所有业务构成分配结果集合A,初始化时所有业务的发送时间均为0;
(4b)根据业务参数,建立源端系统单播执行时间点数组IS、目的端系统单播执行时间点数组OS、源端系统多播开始时间点数组IM1、源端系统多播结束时间点数组IM2、目的端系统多播开始时间点数组OM1、目的端系统多播结束时间点数组OM2这6个数组,并对其初始化,具体实施方式如下:
设源端系统单播执行时间数组IS的长度为源端系统的数目,数组中每个元素的下标表示源端系统编号,每个元素的取值表示对应源端系统单播执行时间,初始化时所有元素数值均为0;
设目的端系统单播执行时间数组OS的长度为目的端系统的数目,数组中每个元素的下标表示目的端系统编号,每个元素的取值表示对应目的端系统单播执行时间,初始化时所有元素数值均为0;
设源端系统多播开始时间数组IM1的长度为源端系统的数目,数组中每个元素的下标表示源端系统编号,每个元素的取值表示对应源端系统多播开始时间,初始化时所有元素数值均为0;
设源端系统多播结束时间数组IM2的长度为源端系统的数目,数组中每个元素的下标表示源端系统编号,每个元素的取值表示对应源端系统多播结束时间,初始化时所有元素数值均为0;
设目的端系统多播开始时间数组OM1的长度为目的端系统的数目,数组中每个元素的下标表示目的端系统编号,每个元素的取值表示对应目的端系统多播开始时间,初始化时所有元素数值均为0;
设目的端系统多播结束时间数组OM2的长度为目的端系统的数目,数组中每个元素的下标表示目的端系统编号,每个元素的取值表示对应目的端系统多播结束时间,初始化时所有元素数值均为0;
(4c)取出执行时间点集合E的第一个子集合E1,并判断子集合E1中第一个业务的业务类型是否为多播业务:若是,则执行(4d);若否,执行(4e);
(4d)根据各端系统多播开始时间点和多播结束时间点,执行一次多播时间触发TT业务调度;
(4d1)将子集合E1的第一个业务设为当前业务,并计算当前业务的传输时长L1,计算公式如下:
L1=FL/(w*u),
其中,FL表示集合E1的第一个业务帧长,w表示链路带宽,u表示最小时间片,*表示乘法运算,/表示除法运算;
(4d2)从当前业务的产生时间、当前业务的源端系统多播结束时间点,和当前业务的所有目的端系统多播结束时间点这几个参数中,找出数值最大的一个,假设为ET;
(4d3)将当前业务源端系统多播开始时间点,以及当前业务所有目的端系统多播开始时间点更新为ET;
(4d4)将当前业务源端系统的单播执行时间点更新为该源端系统的多播结束时间点,将当前业务所有目的端系统的单播执行时间点更新为该目的端系统的多播结束时间点;
(4d5)将当前业务源端系统的多播结束时间点和当前业务所有目的端系统的多播结束时间点全部更新为ET与L1之和;
(4d6)将分配结果集合A中当前业务的发送时间更新为ET;
(4d7)将当前业务从子集合E1中删除。
(4e)根据各端系统单播执行时间点、多播开始时间点和多播结束时间点,执行一次单播时间触发TT业务调度;
(4e1)将子集合E1的第一个业务,设为当前业务,并计算当前业务的传输时长L2:
L2=FL/(w*u),
其中,FL表示当前业务的帧长,w表示链路带宽,u表示最小时间片,*表示乘法运算,/表示除法运算;
(4e2)判断当前业务的产生时间是否大于其源端系统单播执行时间点:若是,执行(4e3);若否,执行(4e4);
(4e3)判断当前业务的源端系统多播开始时间点与产生时间之差是否大于当前业务的传输时长L2:若是,执行(4e5);若否执行(4e9);
(4e4)判断当前业务的源端系统多播开始时间点与源端系统单播执行时间点的差是否大于当前业务的传输时长L2:若是,则将当前业务产生时间更新为其源端系统单播执行时间点,再执行(4e5);若否,执行(4e9);
(4e5)判断当前业务的产生时间是否大于其目的端系统单播执行时间点:若是,执行(4e6);若否,执行(4e7);
(4e6)判断当前业务的目的端系统多播开始时间点与产生时间之差是否大于当前业务的传输时长L2:若是,执行(4e8);若否,执行(4e9);
(4e7)判断当前业务的目的端系统多播开始时间点与源端系统单播执行时间点之差是否大于当前业务的传输时长L2:若是,将当前业务产生时间更新为其目的端系统单播执行时间点,再执行(4e8);若否执行(4e9);
(4e8)将当前业务的源端系统单播执行时间点和当前业务的目的端系统单播执行时间点更新为当前业务产生时间与当前业务的传输时长L2之和,再执行(4e10);
(4e9)判断当前业务的源端系统多播结束时间点是否大于其目的端系统单播结束时间点:若是,则将源端系统单播执行时间点、目的端系统单播执行时间点、源端系统多播开始时间点、源端系统多播结束时间点、目的端系统多播开始时间点和目的端系统多播结束时间点这6项参数,全部更新为源端系统多播结束时间点与当前业务的传输时长L2之和;若否,则将这6项参数全部更新为目的端系统多播结束时间点与当前业务的传输时长L2之和;
(4e10)将分配结果集合A中当前业务的发送时间更新为,当前业务源端系统单播执行时间点与当前业务的传输时长L2之差;
(4e11)将当前业务从子集合E1中删除。
(4f)判断子集合E1是否为空集合:若是,删除子集合E1;若否,则返回(4c);
(4g)判断执行时间点集合E是否为空集合:若是,则本基本周期内所有时间触发TT业务分配完成;若否,则返回(4c);
(4h)重复(4a)~(4g),完成源端系统所有基本周期内的时间触发TT业务的发送时间分配。
步骤5,根据分配结果集合A,生成各源端系统的发送表Yi,其中i表示源端系统编号,取值范围为0~n。
(5a)为每个源端系统建立一张发送表Yi,发送表包含多行,每一行是一条表项,每条表项之间用换行符分隔开;每条表项中包含多个字段,每个字段之间用空格符分隔开;
每条表项中包含的字段有:业务ID、基本周期号、源系统的开始发送时间点,源端系统的发送结束时间点和源端系统的发送窗口长度,共5个;
(5b)取出集合A的一个业务设为当前业务,根据当前业务的源端系统编号,将其划分到对应的源端系统发送表Yi中,形成一条表项,该条表项的字段具体设置方式如下:
业务ID=当前业务的业务ID;
基本周期号=当前业务需要传输的基本周期编号;
源系统的开始发送时间点=当前业务的发送时间;
源端系统的发送结束时间点=源系统的开始发送时间点+当前业务的传输时长;
源端系统的发送窗口长度=同步精度a;
其中,当前业务的传输时长=当前业务的帧长/(链路带宽w*最小时间片u),*表示乘法运算,/表示除法运算;
(5c)重复(5b),直到所有业务都在对应的源端系统发送表Yi中形成表项。
步骤6,在各源端系统发送表的基础上,结合网络中引入的网络时延,生成网络中交换机的接收表H、交换机的发送表S和各目的端系统的接收表Nj,其中j表示目的端系统编号,取值范围为0~m。
(6a)分别建立交换机的接收表H、交换机的发送表S及各目的端系统的接收表Nj,这3种表格均包含多行,每一行是一条表项,每条表项之间用换行符分隔开;每条表项中包含多个字段,每个字段之间用空格符分隔开;
(6b)取出集合A的一个业务设为当前业务,分别在交换机接收表H、交换机的发送表S及对应的一个或多个目的端系统的接收表Nj中形成一条表项;
(6c)根据各源端系统发送表Yi及网络中引入的网络时延,分别计算交换机接收表H、交换机的发送表S及对应目的端系统的接收表Nj中各表项要填写的内容;
(6c1)计算填写交换机接收表H的表项内容,包括如下:
业务ID=当前业务的业务ID;
基本周期号=当前业务需要传输的基本周期编号;
源端系统编号=当前业务的源端系统编号;
目的端系统编号=当前业务的目的端系统编号;
交换机的开始接收时间点=源端系统的发送时间点+端系统的最小发送时延s1
+最小链路传输时延t1–同步精度a;
交换机的接收结束时间点=交换机的开始接收时间点+当前业务的传输时长
+交换机的最小接收时延sr1-同步精度a;
交换机的接收窗口长度=(源端系统的最大发送时延s2–源端系统的最小发送时延s1)
+(最大链路传输时延t2–最小链路传输时延t1)
+(交换机的最大接收时延sr2–交换机的最小接收时延sr1)
+2*同步精度a;
其中,当前业务的传输时长=当前业务的帧长/(链路带宽w*最小时间片u),*表示乘法运算,/表示除法运算;
(6c2)计算填写交换机发送表S的表项内容,包括如下:
业务ID=当前业务的业务ID;
基本周期号=当前业务需要传输的基本周期编号;
源端系统编号=当前业务的源端系统编号;
目的端系统编号=当前业务的目的端系统编号;
交换机的开始发送时间点=交换机的开始接收时间点+交换机的最小接收时延sr1
+交换机的最小转发时延sw1;
交换机的发送结束时间点=发送开始时间点+当前业务的传输时长;
交换机的发送窗口长度=同步精度a;
(6c3)计算填写各目的端系统的接收表Nj的表项,其内容相同,每个表项均包括如下:
业务ID=当前业务的业务ID;
基本周期号=当前业务需要传输的基本周期编号;
目的端系统的开始接收时间点=交换机发送时间点+交换机的最小发送时延ss1
+最小链路传输时延t1–同步精度a;
目的端系统的接收结束时间点=目的端系统接收开始时间点+该消息服务时间;
目的端系统接收窗口长度=(交换机的最大转发时延sw2–交换机的最小转发时延sw1)
+(交换机的最大发送时延ss2–交换机的最小发送时延ss1)
+(最大链路传输时延t2–最小链路传输时延t1)
+(目的端系统的最大接收时延r2-目的端系统的最小接收时延r1)
+2*同步精度a;
(6d)重复(6b)~(6c),直到所有业务都在交换机的接收表H、交换机的发送表S及对应的目的端系统的接收表Nj中形成表项。
以上描述仅是本发明的一个具体实例,并未构成对本发明的任何限制,显然对于本领域的专业人员来说,在了解了本发明内容和原理后,都可能在不背离本发明原理、结构的情况下,进行形式和细节上的各种修改和改变,但是这些基于本发明思想的修正和改变仍在本发明的权利要求保护范围之内。
Claims (12)
1.支持多播的时间触发业务调度表生成方法,包括如下:
(1)获取业务参数和网络参数:
所述业务参数,包括:业务ID、帧长、周期、业务类型、源端系统编号、目的端系统编号和业务产生时间,共7个;
所述网络参数,包括:链路带宽w、最小时间间隔u、同步精度a和网络时延,该时延包括:源端系统的最小发送时延s1、源端系统的最大发送时延s2、最小链路传输时延t1、最大链路传输时延t2、交换机的最小接收时延sr1、交换机的最大接收时延sr2、交换机的最小转发时延sw1、交换机的最大转发时延sw2、交换机的最小发送时延ss1、交换机的最大发送时延ss2、目的端系统的最小接收时延r1和目的端系统的最大接收时延r2,共12个时延;
(2)计算所有时间触发TT业务周期的最大公约数,作为基本周期BC,再计算所有时间触发TT业务周期的最小公倍数,作为矩阵周期MC;
(3)根据业务参数,对时间触发TT业务进行调度优先级排序,并将时间触发TT业务的传输时间点放入矩阵周期的一个或多个基本周期内,生成源端系统的时间触发TT业务带宽预案;
(4)结合业务参数,分配源端系统中各时间触发TT业务在每个基本周期中的发送时间:
(4a)根据一个基本周期待分配的时间触发TT业务,建立执行时间点集合E和分配结果集合A这2个集合,并对其初始化;建立2个集合,具体按如下步骤进行:
(4a1)建立执行时间点集合E:
将一个基本周期所有业务,按照产生时间相同的原则划分为若干个子集合,并对这些子集合按照其中业务的产生时间从小到大排序,再对每个集合中的业务按照先多播后单播的顺序排序,最后用所有这些子集合构成执行时间点集合E;
(4a2)建立分配结果集合A:
为所有业务添加发送时间参数,并用所有业务构成分配结果集合A,初始化时所有业务的发送时间均为0;
(4b)根据业务参数,建立源端系统单播执行时间点数组IS、目的端系统单播执行时间点数组OS、源端系统多播开始时间点数组IM1、源端系统多播结束时间点数组IM2、目的端系统多播开始时间点数组OM1、目的端系统多播结束时间点数组OM2这6个数组,并对其初始化;
(4c)取出执行时间点集合E的第一个子集合E1,并判断子集合E1中第一个业务的业务类型是否为多播业务:若是,则执行(4d);若否,执行(4e);
(4d)根据各端系统多播开始时间点和多播结束时间点,执行一次多播时间触发TT业务调度;
(4e)根据各端系统单播执行时间点、多播开始时间点和多播结束时间点,执行一次单播时间触发TT业务调度;
(4f)判断子集合E1是否为空集合:若是,删除子集合E1;若否,则返回(4c);
(4g)判断执行时间点集合E是否为空集合:若是,则本基本周期内所有时间触发TT业务分配完成;若否,则返回(4c);
(4h)重复(4a)~(4g),完成源端系统所有基本周期内的时间触发TT业务的发送时间分配;
(5)根据分配结果集合A,生成各源端系统的发送表Yi,其中i表示源端系统编号;
(6)在各源端系统发送表的基础上,结合网络中引入的网络时延,生成网络中交换机的接收表H、交换机的发送表S和各目的端系统的接收表Nj,其中j表示目的端系统编号。
2.根据权利要求1所述的方法,其特征在于步骤(3)中根据业务参数,对时间触发TT业务进行调度优先级预排序,是将所有时间触发TT业务按照周期从小到大排序,周期相同时,按照产生时间从小到大排序,周期和产生时间都相同的按照帧长从大到小排序。
3.根据权利要求1所述的方法,其特征在于步骤(3)中将时间触发TT业务的传输时间点放入矩阵周期的一个或多个基本周期内,生成源端系统的TT业务带宽预案,按如下步骤进行:
(3a)对于某个TT业务,确定当前业务应该在矩阵周期中的第几个基本周期开始分配其传输时间点,将该传输时间点记作初始偏移量offset,其计算方式如下:
其中,BC表示基本周期,u表示最小时间片,w表示链路带宽,s表示当前时间触发TT业务的帧长,p表示当前业务的产生时间,%表示取余运算,/表示乘法运算;
(3b)将矩阵周期看做由多行多列组成的大矩形,其每一行代表一个基本周期,每一列代表各基本周期中的同一传输时间段;
(3c)判断将当前时间触发TT业务放入矩阵周期的各个基本周期后,是否会引起列冲突:若是,则在当前列中,根据(3a)中的初始偏移量offset开始分配该业务的传输时间点;若否,则在另外一列中分配该业务的传输时间点;
(3d)在当前列中,从初始偏移量offset开始,根据时间触发TT业务的周期c,每隔c/BC个基本周期,分配一次当前业务,直到将当前业务的传输时间点均匀分配到整个矩阵周期中;
(3e)重复(3a)~(3d),直到将所有时间触发TT业务的传输时间点分配到矩阵周期的一个或多个基本周期内,得到源端系统的TT业务带宽预案。
4.根据权利要求3所述的方法,其特征在于步骤(3c)中判断将当前时间触发TT业务放入矩阵周期的各个基本周期后,是否会引起列冲突,是先对矩阵周期同一列中已分配的所有时间触发TT业务两两取周期的最大公约数,再进行求导求和,之后判断最终结果是否小于等于1。
5.根据权利要求1所述的方法,其特征在于步骤(4b)中建立的6个数组,其参数设置如下:
源端系统单播执行时间数组IS的长度为源端系统的数目,数组中每个元素的下标表示源端系统编号,每个元素的取值表示对应源端系统单播执行时间,初始化时所有元素数值均为0;
目的端系统单播执行时间数组OS,该数组的长度为目的端系统的数目,数组中每个元素的下标表示目的端系统编号,每个元素的取值表示对应目的端系统单播执行时间,初始化时所有元素数值均为0;
源端系统多播开始时间数组IM1,该数组的长度为源端系统的数目,数组中每个元素的下标表示源端系统编号,每个元素的取值表示对应源端系统多播开始时间,初始化时所有元素数值均为0;
源端系统多播结束时间数组IM2,该数组的长度为源端系统的数目,数组中每个元素的下标表示源端系统编号,每个元素的取值表示对应源端系统多播结束时间,初始化时所有元素数值均为0;
目的端系统多播开始时间数组OM1,该数组的长度为目的端系统的数目,数组中每个元素的下标表示目的端系统编号,每个元素的取值表示对应目的端系统多播开始时间,初始化时所有元素数值均为0;
目的端系统多播结束时间数组OM2,该数组的长度为目的端系统的数目,数组中每个元素的下标表示目的端系统编号,每个元素的取值表示对应目的端系统多播结束时间,初始化时所有元素数值均为0。
6.根据权利要求1所述的方法,其特征在于步骤(4d)中根据各端系统多播开始时间点和多播结束时间点,执行一次多播时间触发TT业务调度,按如下步骤进行:
(4d1)将子集合E1的第一个业务设为当前业务,并计算当前业务的传输时长L1,计算公式如下:
L1=FL/(w*u);
其中,FL表示集合E1的第一个业务帧长,w表示链路带宽,u表示最小时间片,*表示乘法运算,/表示除法运算;
(4d2)从当前业务的产生时间、当前业务的源端系统多播结束时间点,和当前业务的所有目的端系统多播结束时间点这几个参数中,找出数值最大的一个,假设为ET;
(4d3)将当前业务源端系统多播开始时间点,以及当前业务所有目的端系统多播开始时间点更新为ET;
(4d4)将当前业务源端系统的单播执行时间点更新为该源端系统的多播结束时间点,将当前业务所有目的端系统的单播执行时间点更新为该目的端系统的多播结束时间点;
(4d5)将当前业务源端系统的多播结束时间点和当前业务所有目的端系统的多播结束时间点全部更新为ET与L1之和;
(4d6)将分配结果集合A中当前业务的发送时间更新为ET;
(4d7)将当前业务从子集合E1中删除。
7.根据权利要求1所述的方法,其特征在于步骤(4e)中执行一次单播时间触发TT业务调度,按如下步骤进行:
(4e1)将子集合E1的第一个业务,设为当前业务,并计算当前业务的传输时长L2:
L2=FL/(w*u),
其中,FL表示当前业务的帧长,w表示链路带宽,u表示最小时间片,*表示乘法运算,/表示除法运算;
(4e2)判断当前业务的产生时间是否大于其源端系统单播执行时间点:若是,执行(4e3);若否,执行(4e4);
(4e3)判断当前业务的源端系统多播开始时间点与产生时间之差是否大于当前业务的传输时长L2:若是,执行(4e5);若否执行(4d9);
(4e4)判断当前业务的源端系统多播开始时间点与源端系统单播执行时间点的差是否大于当前业务的传输时长L2:若是,将当前业务产生时间更新为其源端系统单播执行时间点,再执行(4e5);若否,执行(4e9);
(4e5)判断当前业务的产生时间是否大于其目的端系统单播执行时间点:若是,执行(4e6);若否,执行(4e7);
(4e6)判断当前业务的目的端系统多播开始时间点与产生时间之差是否大于当前业务的传输时长L2:若是,执行(4e8);若否,执行(4e9);
(4e7)判断当前业务的目的端系统多播开始时间点与源端系统单播执行时间点之差是否大于当前业务的传输时长L2:若是,将当前业务产生时间更新为其目的端系统单播执行时间点,再执行(4e8);若否执行(4e9);
(4e8)将当前业务的源端系统单播执行时间点和当前业务的目的端系统单播执行时间点更新为当前业务产生时间与当前业务的传输时长L2之和,再执行(4e10);
(4e9)判断当前业务的源端系统多播结束时间点是否大于其目的端系统单播结束时间点:若是,则将源端系统单播执行时间点、目的端系统单播执行时间点、源端系统多播开始时间点、源端系统多播结束时间点、目的端系统多播开始时间点和目的端系统多播结束时间点这6项参数,全部更新为源端系统多播结束时间点与当前业务的传输时长L2之和;若否,则将这6项参数全部更新为目的端系统多播结束时间点与当前业务的传输时长L2之和;
(4e10)将分配结果集合A中当前业务的发送时间更新为,当前业务源端系统单播执行时间点与当前业务的传输时长L2之差;
(4e11)将当前业务从子集合E1中删除。
8.根据权利要求1所述的方法,其特征在于步骤(5)中,根据分配结果集合A,生成各源端系统的发送表Yi,按如下步骤进行:
(5a)为每个源端系统建立一张发送表Yi,发送表包含多行,每一行是一条表项,每条表项之间用换行符分隔开;每条表项中包含多个字段,每个字段之间用空格符分隔开;
每条表项中包含的字段有:业务ID、基本周期号、源系统的开始发送时间点,源端系统的发送结束时间点和源端系统的发送窗口长度,共5个;
(5b)取出集合A的一个业务设为当前业务,根据当前业务的源端系统编号,将其划分到对应的源端系统发送表Yi中,形成一条表项,该条表项的字段具体设置方式如下:
业务ID=当前业务的业务ID;
基本周期号=当前业务需要传输的基本周期编号;
源系统的开始发送时间点=当前业务的发送时间;
源端系统的发送结束时间点=源系统的开始发送时间点+当前业务的传输时长;
源端系统的发送窗口长度=同步精度a;
其中,当前业务的传输时长=当前业务的帧长/(链路带宽w*最小时间片u),*表示乘法运算,/表示除法运算;
(5c)重复(5b),直到所有业务都在对应的源端系统发送表Yi中形成表项。
9.根据权利要求1所述的方法,其特征在于步骤(6)中生成生成网络中交换机的接收表H、交换机的发送表S及各目的端系统的接收表Nj,按如下步骤进行:
(6a)分别建立交换机的接收表H、交换机的发送表S及各目的端系统的接收表Nj,这3种表格均包含多行,每一行是一条表项,每条表项之间用换行符分隔开;每条表项中包含多个字段,每个字段之间用空格符分隔开;
(6b)取出集合A的一个业务设为当前业务,分别在交换机接收表H、交换机的发送表S及对应的一个或多个目的端系统的接收表Nj中形成一条表项;
(6c)根据各源端系统发送表Yi及网络中引入的网络时延,分别计算交换机接收表H、交换机的发送表S及对应目的端系统的接收表Nj中各表项要填写的内容;
(6d)重复(6b)~(6c),直到所有业务都在交换机的接收表H、交换机的发送表S及对应的目的端系统的接收表Nj中形成表项。
10.根据权利要求9所述的方法,其中(6c)中计算填写交换机接收表H的表项内容,包括如下:
业务ID=当前业务的业务ID;
基本周期号=当前业务需要传输的基本周期编号;
源端系统编号=当前业务的源端系统编号;
目的端系统编号=当前业务的目的端系统编号;
交换机的开始接收时间点=源端系统的发送时间点+端系统的最小发送时延s1+最小链路传输时延t1–同步精度a;
交换机的接收结束时间点=交换机的开始接收时间点+当前业务的传输时长+交换机的最小接收时延sr1-同步精度a;
交换机的接收窗口长度=(源端系统的最大发送时延s2–源端系统的最小发送时延s1)+(最大链路传输时延t2–最小链路传输时延t1)+(交换机的最大接收时延sr2–交换机的最小接收时延sr1) +2*同步精度a;
其中,当前业务的传输时长=当前业务的帧长/(链路带宽w*最小时间片u),*表示乘法运算,/表示除法运算。
11.根据权利要求9所述的方法,其中(6c)中计算填写交换机发送表S的表项内容,包括如下:
业务ID=当前业务的业务ID;
基本周期号=当前业务需要传输的基本周期编号;
源端系统编号=当前业务的源端系统编号;
目的端系统编号=当前业务的目的端系统编号;
交换机的开始发送时间点=交换机的开始接收时间点+交换机的最小接收时延sr1+交换机的最小转发时延sw1;
交换机的发送结束时间点=发送开始时间点+当前业务的传输时长;
交换机的发送窗口长度=同步精度a;
其中,当前业务的传输时长=当前业务的帧长/(链路带宽w*最小时间片u),*表示乘法运算,/表示除法运算。
12.根据权利要求9所述的方法,其中(6c)中计算填写各目的端系统的接收表Nj的表项,其内容相同,每个表项均包括如下:
业务ID=当前业务的业务ID;
基本周期号=当前业务需要传输的基本周期编号;
目的端系统的开始接收时间点=交换机发送时间点+交换机的最小发送时延ss1+最小链路传输时延t1–同步精度a;
目的端系统的接收结束时间点=目的端系统接收开始时间点+当前业务的服务时间;
目的端系统的接收窗口长度=(交换机的最大转发时延sw2–交换机的最小转发时延sw1)+(交换机的最大发送时延ss2–交换机的最小发送时延ss1)+(最大链路传输时延t2–最小链路传输时延t1)+(目的端系统的最大接收时延r2-目的端系统的最小接收时延r1)+2*同步精度a;
其中,当前业务的传输时长=当前业务的帧长/(链路带宽w*最小时间片u),*表示乘法运算,/表示除法运算。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810509359.XA CN108768865B (zh) | 2018-05-24 | 2018-05-24 | 支持多播业务的时间触发业务调度表生成方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810509359.XA CN108768865B (zh) | 2018-05-24 | 2018-05-24 | 支持多播业务的时间触发业务调度表生成方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108768865A CN108768865A (zh) | 2018-11-06 |
CN108768865B true CN108768865B (zh) | 2020-11-03 |
Family
ID=64005565
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810509359.XA Active CN108768865B (zh) | 2018-05-24 | 2018-05-24 | 支持多播业务的时间触发业务调度表生成方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108768865B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR3091104B1 (fr) * | 2018-12-19 | 2023-12-08 | Centre Nat Etd Spatiales | Procédé de synchronisation sur réseau asynchrone. |
CN111049667B (zh) * | 2019-10-22 | 2021-03-16 | 清华大学 | 一种时间触发以太网通信任务离线调度优化方法 |
CN111049611B (zh) * | 2019-12-30 | 2021-05-28 | 西安电子科技大学 | 多矩阵周期联合调度的时间触发业务调度表生成方法 |
CN114374640A (zh) * | 2021-12-15 | 2022-04-19 | 陕西电器研究所 | 一种基于时间触发以太网的业务调度方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102356686A (zh) * | 2009-03-17 | 2012-02-15 | 高通股份有限公司 | 用于无线通信的调度信息 |
CN103457815A (zh) * | 2013-08-22 | 2013-12-18 | 北京航空航天大学 | 一种适用于SpaceWire网络的时刻调度表的构建方法 |
CN107241179A (zh) * | 2017-04-19 | 2017-10-10 | 西安电子科技大学 | 一种时间触发业务静态调度表的生成方法 |
CN107465507A (zh) * | 2017-09-24 | 2017-12-12 | 吉林大学 | 基于分级多层单向密钥链时间触发车载网络消息认证方法 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2634707A1 (en) * | 2012-02-29 | 2013-09-04 | British Telecommunications Public Limited Company | Recommender control system, apparatus and method |
US10127263B2 (en) * | 2013-05-30 | 2018-11-13 | Qualcomm Incorporated | Full file repair using schedule description fragment in eMBMS |
-
2018
- 2018-05-24 CN CN201810509359.XA patent/CN108768865B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102356686A (zh) * | 2009-03-17 | 2012-02-15 | 高通股份有限公司 | 用于无线通信的调度信息 |
CN103457815A (zh) * | 2013-08-22 | 2013-12-18 | 北京航空航天大学 | 一种适用于SpaceWire网络的时刻调度表的构建方法 |
CN107241179A (zh) * | 2017-04-19 | 2017-10-10 | 西安电子科技大学 | 一种时间触发业务静态调度表的生成方法 |
CN107465507A (zh) * | 2017-09-24 | 2017-12-12 | 吉林大学 | 基于分级多层单向密钥链时间触发车载网络消息认证方法 |
Non-Patent Citations (1)
Title |
---|
应用约束下时间触发消息调度表的生成方法;李刚等;《计算机工程与设计》;20170731;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN108768865A (zh) | 2018-11-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108768865B (zh) | 支持多播业务的时间触发业务调度表生成方法 | |
US9575691B2 (en) | Scheduling user requests in a distributed resource system having a plurality of schedulers and coordinators | |
CN109818876B (zh) | 全局最优化时间触发业务调度表的生成方法 | |
Gavriluţ et al. | Traffic-type assignment for TSN-based mixed-criticality cyber-physical systems | |
CN102255803B (zh) | 一种适用于时间触发交换式网络的周期调度时刻表构建方法 | |
CN101414958B (zh) | 一种业务调度方法及装置 | |
US7792153B2 (en) | Sequencing multi-source messages for delivery as partial sets to multiple destinations | |
CN105830516A (zh) | Wlan中ofdma资源管理的系统和方法 | |
Anantharamu et al. | Adversarial multiple access channels with individual injection rates | |
CN109327367B (zh) | 一种基于offset的CAN FD总线消息调度方法 | |
US20170359274A1 (en) | Flexible deterministic binary scheduler | |
Lange et al. | A scheme for slot allocation of the FlexRay Static Segment based on response time analysis | |
CN110034942A (zh) | 一种基于半双工电台的组网通信控制方法和系统 | |
CN109005062B (zh) | 一种面向接收约束的时间触发以太网带宽规划方法 | |
CN114285541B (zh) | 一种基于时延误差时间触发以太网调度表生成方法 | |
WO2023109445A1 (zh) | 一种基于时间触发以太网的业务调度方法 | |
CN108462629B (zh) | 用于调度消息的系统和方法 | |
CN115118327B (zh) | 一种基于动态测量反馈的卫星通信资源调度方法和系统 | |
AU2012395740B2 (en) | Wireless backhaul system | |
CN115802497A (zh) | 一种多业务流共存下的时隙分配方法 | |
CN111045804B (zh) | 一种任务分配方法、装置、介质及电子设备 | |
CN108271212A (zh) | 一种资源选择的方法及装置 | |
US20160373367A1 (en) | System and method for identifying performance characteristics in asynchronous networks | |
Bouhouch et al. | FlexRay static section scheduling using full model | |
CN105791160B (zh) | 软件定义网络中事务的处理方法、设备及系统 |
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 |