一种时间触发的TT帧报文传输方法与流程

文档序号:17927167发布日期:2019-06-15 00:29阅读:395来源:国知局
一种时间触发的TT帧报文传输方法与流程
本发明涉及一种时间触发的tt帧报文传输方法,属于报文传输
技术领域

背景技术
:基于周期性的时间触发报文在总线传输时具有确定性和高实时性,能保证消息在规定的时间内传输。其中tte网络(timetriggerethernet,时间触发网络)中传输的就是基于周期性的时间触发报文,该tte网络基于tta架构(time-triggeredarchitecture,时间触发架构),采用一种在标准ieee802.3以太网上实现的时间触发网络协议。tte网络的核心是定义了如何在标准的以太网中实现高精度的时间同步,能够在同一个网络平台上兼容普通网络数据流、afdx(avionicsfullduplexswitchedethernet,航空电子全双工交换式以太网)数据流和tte网络数据流。在航电系统中,随着可靠性、实时性要求的不断提高,数据量逐渐增大,针对不同应用的虚拟链路连接建立也越来越多,作为时间触发网络,tte网络能支持4096条虚拟链路的传输,可以满足实时应用的需要,同时高传输带宽也可以满足新一代飞机主干网络数据传输的需要。时间触发报文tt帧是以时间触发代替事件触发,将通信任务通过合理的调度定时触发发送。tt帧从端到端的传输是依据虚拟链路id(即vlid)号来查找目的节点,以进行传输。虚拟链路数量越多,可以承载的tt帧报文数量就越多,系统能支持的应用就越多。但是,要增加可实现的虚拟链路数量必然带来资源的消耗。例如,若每条虚拟链路上都存储至少一个最长1518字节的tt帧报文,对于满规格4096条虚拟链路,需要存储4096个最长报文,至少要6m个字节,这样必须大幅度提升资源和成本。现有的器件资源没有可以满足的内部缓存;若使用外部缓存,则无法避免时延和抖动。技术实现要素:本发明的目的是提供一种时间触发的tt帧报文传输方法,用以解决传输多条虚拟链路规格时现有器件的内部缓存不够或者使用外部缓存造成时延和抖动的问题。为解决上述技术问题,本发明提供了一种时间触发的tt帧报文传输方法,包括如下步骤:将需发送的tt帧按照tt周期对所对应的虚拟链路进行分类,得到若干个分类结果;每个分类结果下的所有虚拟链路对应一个并行通道;每个并行通道设有相应的一个缓存,各虚拟链路的tt帧依次存入和移出该缓存:将接收到对应的虚拟链路的tt帧存入缓存,等到一个虚拟链路的tt帧的发送时刻到达时,将该虚拟连路径的tt帧移出缓存,并且准备传输下一个虚拟链路的tt帧;将tt帧移出缓存后发送至对应的物理接口,物理接口将接收到tt帧发送至对应的对端设备;其中,每个分类结果下虚拟链路的数量小于或者等于一个tt周期范围内能传输完成的最大的tt帧的数目。本发明的有益效果是:根据tt周期对虚拟链路进行分类,各个分类的所有虚拟链路对应一个并行通道,每个并行通道设有相应的一个缓存,各虚拟链路的tt帧依次存入和移出其对应的缓存,不同的分类的tt帧存储不同的缓存中,由于某一时刻下,一个缓存中需要接收到的虚拟链路的tt帧最大数量不超过设备的输入端口个数这样便避免了一个缓存中需要同时存放所有需要发送的tt帧的情况出现,减轻了缓存的负担,降低了缓存容量要求,同时避免了使用外部缓存造成时延和抖动的问题。进一步的,为了减小虚拟链路分类结果的数目并防止出现乱序的情况,相同tt周期的tt帧所对应的虚拟链路在一个分类结果下。附图说明图1是本发明的时间触发的tt帧报文传输方法的原理图。具体实施方式为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及具体实施例对本发明进行进一步详细说明。tt帧是一种周期性的报文,其对应的tt周期值是无数的,但是无论是接收时间点还是发送时间点,相对于周期零点时刻都是固定重复的时刻值。tt周期值在tt周期时间轴上被调度排列成相互错开的周期性的时间点,在无限长的时间轴上周期性重复,无穷无尽。在一个tt周期中,可以调度很多个不同虚拟链路id(vlid)的tt帧。基于上述tt报文时间触发的特征,本实施例提供了一种时间触发的tt帧报文传输方法,按照tt周期,将相同tt周期的tt帧对应的虚拟链路(vl)规划为一类,从而得到多个分类结果,同一个分类结果的虚拟链路具有相同的特征,即接收和发送tt帧在时间轴上按照tt周期不断重复。根据此分类来设计不同的定时器,对应不同的tt周期,定时器并行处理,可以同时对每个tt周期的虚拟链路进行调度。在进行虚拟链路调度时,通过设置tt周期来启动对应的定时器。具体的,该时间触发的tt帧报文传输方法包括如下步骤:(1)将需发送的tt帧按照tt周期对所对应的虚拟链路进行分类,得到若干个分类结果。其中,在分类过程中,将具有相同tt周期的虚拟链路归类到同一个分类,即相同tt周期的tt帧所对应的虚拟链路在一个分类结果下,从而得到若干个分类结果。相同tt周期的虚拟链路id(vlid)具体值是0~4095之间的任意值,归类到一个分类的虚拟链路的数量小于或者等于在一个tt周期范围内能传输完成的最大tt报文数目,即每个分类结果下虚拟链路的数量小于或者等于一个tt周期范围内能传输完成的最大的tt帧的数目。步骤(1)的目的是按照tt周期对需发送的tt帧对应的虚拟链路进行分类,通过使相同tt周期的tt帧所对应的虚拟链路在一个分类结果下,可以减小虚拟链路分类结果的数目并防止出现乱序的情况。当然,作为其他的实施方式,在分类过程中,也可以将具有相同tt周期的虚拟链路分别归类到2个或者2个以上不同的分类中。(2)每个分类结果下的所有虚拟链路对应一个并行通道;每个并行通道设有相应的一个缓存,各虚拟链路的tt帧依次存入和移出该缓存:将接收到对应的虚拟链路的tt帧存入缓存,等到一个虚拟链路的tt帧的发送时刻到达时,将该虚拟连路径的tt帧移出缓存。也就是,属于一个分类结果的所有虚拟链路对应一个并行通道,且每个并行通道对应一个缓存。对于每个并行通道,当接收到一个虚拟链路的tt帧时,便将该虚拟链路上的tt帧存入缓存,然后在tt帧发送时刻到达时,则将该tt帧移除缓存,并准备传输下一个虚拟链路的tt帧。通过步骤(2),可以将属于同一个分类结果的所有tt帧接收缓存下来,不同分类结果的tt帧存储在不同的缓存中。某一时刻下,一个缓存中需要接收到的虚拟链路的tt帧最大数量不超过设备的输入端口个数,这样便避免了一个缓存中需要同时存放所有需要发送的tt帧的情况出现,减轻了缓存的负担,降低了缓存容量要求。(3)将tt帧移出缓存后发送至对应的物理接口,物理接口将接收到tt帧发送至对应的对端设备。其中,将tt帧发送至对应的物理接口,以及物理接口将接收到tt帧发送至对应的对端设备的具体过程属于现有技术,此处不再赘述。需说明的是,tt帧所对应的物理接口由其本身所要发送至的对端设备来决定,此时属于同一个分类结果下的所有tt帧可能对应同一个物理接口,也可能对应不同的物理接口。为了实现上述的时间触发的tt帧报文传输方法,如图1所示,按照tt周期进行虚拟链路分类,根据虚拟链路的不同分类结果,构建vl分类表。根据tt周期设计对应的定时器,此时虚拟链路的不同分类结果对应不同的定时器,每个定时器独立运行,当tt周期有效时,则定时器开始工作。随着定时器计时的增加,累计到tt帧发送时刻点send_time时,则产生时间到达触发信号通知tt数据缓存将数据发送到对应的物理接口。其中,tt帧是周期性传输的数据报文,根据用户需求规划网络设置,从而可以确定tt帧在传输设备上的每个周期内的发送时刻点,每个定时器的定时最大值对应一个tt周期值,定时器计时到发送时刻点则为tt帧在设备上当前周期的发送时间。物理接口收到tt数据缓存送来的tt帧报文,并按照物理协议通过通信链路发送到对端设备。需要说明的是,在物理接口处如果存在其他业务报文,需要做避让处理,传输完当前报文再发送tt数据报文。在本实施例中,tt周期有8种,对应虚拟链路的分类结果有8个,定时器的数目为8个,每个分类结果对应的vlid、定时器编号以及各定时器对应的tt帧发送时刻点send_time如表1所示。表1tt周期(ms)vlid(num)send_time(clock)定时器10,4,168,16,24timer021,3,5,796,104,112,120timer1417200timer2811,12216,224timer3169,15,2,18,19256,264,272,280,288timer4328,13,14,20,22320,328,344,360,376timer56423,24500,518timer612825600timer7本发明采用周期分类的方式,约束一定的tt周期种类,这些tt周期种类都采用一些较常用的周期值,设计一定量的tt周期种类可以满足tt帧的应用,按每个tt周期分配一定的缓存存储tt帧,大大降低了缓存容量要求,并且相同周期的虚拟链路的tt帧都是按照顺序排序发送的,在同一个周期内不会出现乱序的情况,且按照分周期缓存可以实现4096条虚拟链路。最后应当说明的是,以上实施例仅用于说明本发明的技术方案而非对其保护范围的限制,尽管参照上述实施例对本申请进行了详细的说明,所属领域的普通技术人员应当理解,本领域技术人员阅读本申请后依然可对申请的具体实施方式进行种种变更、修改或者等同替换,但这些变更、修改或者等同替换,均在本发明的权利要求保护范围之内。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1