美章网 资料文库 AFDX航空通信协议核心技术研究范文

AFDX航空通信协议核心技术研究范文

本站小编为你精心准备了AFDX航空通信协议核心技术研究参考范文,愿这些范文能点燃您思维的火花,激发您的写作灵感。欢迎深入阅读并收藏。

AFDX航空通信协议核心技术研究

关键词:afdx;虚拟链路;冗余管理;交换技术

1AFDX概述

新一代航空通信系统的通信业务已经从传统的话音通信不断扩展为高速数据、图像、多媒体在内的多种业务,如此多元化的通信业务在航空通信系统中的集成和传输,作为航空通信领域的关键专题技术,受到研究人员的广泛关注[1]。随着航空通信系统日益复杂的发展趋势,对航空数据总线的带宽也提出了更高的要求。机载总线传输技术发展至今,传输方式从孤立的单一传输发展到共享互联的网络化传输,传输速度从原来的kbit/s逐渐发展到Mbit/s乃至Gbit/s,为航空通信系统的升级换代提供了强有力的保证,推动了航空通信系统结构的进化。原来广泛应用的ARINC429总线、Mil-STD-1553等技术正逐渐被航空电子全双工交换式以太网(AFDX)等技术所取代。AFDX的成功应用,促使航空通信系统进入了新的高度综合化时代。AFDX网络以其高实时性、高安全性、高可靠性和低延时的特性,满足航电系统对健壮性、兼容性、可扩展性的要求,成为目前机载领域较为先进的航空通信系统的总线网络[2]。AFDX网络由终端系统、AFDX交换机及航空电子系统组成。AFDX网络采用全双工交换、异步传输等模式。全双工交换机作为交换网络的核心,具有发送和接收数据的缓冲区,可以满足所有的端口线速的转发。而终端系统作为AFDX交换网络的重要组成部分,其主要功能是实现AFDX协议栈[3-4]。综上所述,针对AFDX网络通信协议及其关键的交换技术的研究就显得极为重要,对未来航空通信总线的发展具有积极的作用和意义。AFDX交换网络拓扑结构如图1所示。

2航空通信总线的发展

美国军方1973年制定出台了Mil-STD-1553总线标准。Mil-STD-1553主要包括总线控制器、终端和监视器,采用命令/响应式异步传输,半双工的传输方式传输速率为1Mb/s,信号流向包括BC到RT、RT到BC、RT到RT。Mil-STD-1553是联合式航空通信系统的支柱,以自身所特有的实时性、可靠性使其在航空、航天等实时性要求较高的军事领域得到极其广泛的应用。但Mil-STD-1553总线要求专用且造价昂贵的硬件设备支撑,而且对故障较为敏感,因此可用性受到限制。ARINC429总线在空340、波音767等大型民航飞机上广泛应用,是目前使用最广泛的商用机载数据传输网络,极强的稳定性和可靠性是它的优点[5-6]。但总线传输速率较低(高速为100kbit/s,低速为12.5kbit/s),而且是基于单向传输的总线,所采用的单发射机式组网的体系结构导致其使用点对点的解决方案,这就需要通过大量的线缆把位于飞机上不同位置的各个分系统连接起来,无形中增加了机载电缆和连接器的使用数量,这就给航空通信系统进行大规模的综合化带来了不可逾越的障碍。CAN总线是上世纪80年代,德国Bosch公司开发的有效支持分布式实时控制的总线式串行通信网络。随着CAN总线技术的不断发展,目前已在汽车电子、工业控制、船舶设备、电力系统等各个领域广泛应用,但是CAN总线受到传输速率较低等因素限制,其在大型的民用、军用飞机上作为系统通信总线目前还暂未实现。航空电子全双工交换式以太网是由工业标准的以太网通信协议经过适应性改进形成的,具有相对更高的可靠性、对恶劣环境更强的适应性和更高的实时性,其传输速率可以达到100Mbit/s甚至更高,目前已经应用于先进的大型客机项目,如A380、波音787以及各种军用飞机。AFDX属于分布式体系结构,其成本低、扩展性好、技术完备等显著特点决定其将成为构筑新一代大型民航和空中作战飞机航空电子系统的重要总线技术[7]。对以上几种总线的对比情况,如表1所示。

3AFDX网络协议

AFDX基于传统的以太网通信技术,吸收了IEEE802.3、TCP/IP的大部分内容,并根据航空通信系统的特殊要求进行优化和适应性改进形成。AFDX协议栈按照层次划分,可以分为物理层、媒体访问控制(MAC)层、网络层、传输层和应用层。AFDX的传输层与网络层协议与普通以太网相同,而与传统以太网最大的区别就在数据链路层。传统的以太网在数据链路层采用CSMA/CD技术,虽然可以保证数据有序传输,但是牺牲了传输的实时性和可靠性。AFDX数据链路层引用了虚拟链路模式,其MAC地址里包含了16位的虚拟链路地址,采用交换式网络模式保证了通信的可靠性[8]。虚拟链路在通信开始时建立,多条虚拟链路分时复用一条物理链路,通信完毕后拆除链路。AFDX协议结构如图2所示。

3.1AFDX发送协议栈

数据发送流程如图3所示。数据在发送过程中,应用层作为应用程序接口的一部分,为应用设备和程序提供AFDX端口,传输层负责对原始数据添加UDP,然后数据进入IP网络层,IP网络层接收到UDP数据包,首先根据该包对应的虚拟链路的最大帧长判断是否需要对其进行分包处理,之后为各分包添加IP报头、IP校验和以及以太网报头。如果不需要分包则直接添加报头。数据进入MAC层后,进行虚拟链路调度和冗余方面的处理,主要工作包括调度待发送的以太网数据帧、添加虚拟链路序列号,并将数据帧传递到发送冗余管理单元,复制待发送的数据帧,然后将两路数据按发送帧的物理端口ID分别进行发送。

3.2AFDX接收协议栈

AFDX数据接收过程与发送过程正好相反。在接收到数据后,在虚拟链路层通过帧校验序列来检查数据包的正确性。若正确,则将其分离,然后按照序列号对数据帧进行完整性检查。若序列号正确,则继续进行冗余处理。数据进入IP层后,对IP校验和检查,然后进行IP层的解包处理。如果是多个IP分段,还需要将多个分段重组成UDP包再发送至传输层。数据到传输层后,通过多路分配器将属于不同端口的数据发送到对应的AFDX端口。数据接收流程如图4所示。AFDX数据帧格式将传统以太网协议中占6字节的目标地址进一步划分为4个字节的常数域和2个字节的虚拟连接,再将传统以太网协议中的46~1500字节的有效载荷部分进一步划分为20个字节的IP报头、8个字节的UDP报头1~1742个字节的有效载荷和1个字节的序列号,最后是4个字节的帧校验序列[9-10]。AFDX数据帧格式如图5所示。

4AFDX核心技术

4.1虚拟链路

VIRTUALLINK(VL)是AFDX网络的核心技术,其主要功能就是实现AFDX协议处理。虚链路定义了一条消息的源地址和目的地址,源地址只有一个,目的地址可以有一个或者多个。AFDX网络每个终端系统上的多个虚链路共享100Mbit/s带宽的物理连接[11]。虚拟链路有效地分配了带宽资源,在发送端采用了流量整形和调度技术对虚拟链路进行资源的分配,而且端系统会限制自己的收发延迟,抖动上界及转发延迟,并预先为每条虚拟链路设定一个最大可用带宽,实现了实际带宽的分时复用。

4.1.1最大带宽分配虚拟链路最大带宽即最大传输速率计算公式VL=Lmax/BAG,其中VL代表虚拟链路的最大带宽,Lmax表示该虚拟链路上传输的最大字节数,BAG表示数据帧之间发送的最小时间间隔。对于不同优先级的数据帧,通过配置BAG参数的大小(1,128ms)[12],来达到实时传输消息的目的。

4.1.2流量规整和链路调度AFDX一个终端系统可以有多条虚拟链路,为了防止突发流量的出现,将数据包的传输延迟控制在某个范围之内,发送端的虚拟链路层要对发送数据进行流量整形。流量整形可以使数据比较匀速地向外发送,避免虚拟链路上出现突发流量。AFDX消息封装后,由绑定的唯一一条虚拟链路的通信端口调用,并由终端系统中的虚链路调度模块进行调度。虚链路的调度不仅要保证每条链路对BAG和最大带宽的限制,而且还要保证因虚链路传输产生的抖动在可接受范围之内。决定AFDX数据包确切发送时间的参数包括BAG(带宽分配间隙)和Jitter(抖动),BAG确定了同一虚拟链路下数据帧发送的最小时间间隔,Jitter为数据帧理论发送时间与实际发送时间的间隔,每条虚拟链路都有自己的Jitter限定值[13]。AFDX协议中规定,在数据发送时,输出端的每个虚拟链路的最大抖动应该满足下列公式:其中max_jitter为最大抖动时间,以微秒为单位,Nbw是介质带宽即100Mbit/s,40μs是典型的最小固定技术时延抖动。根据公式(1)终端系统如果具有较少的虚拟链路,并且其中的数据帧是短帧,则最大允许抖动将会降低;根据公式(2)整个网络在所有的情况下抖动都被限制在500μs内,500μs的最大允许抖动是对所有AFDX网络的固定性要求。

4.2冗余管理

AFDX网络在链路层中设置冗余管理机制,通过互为冗余的两条链路来提高系统的可靠性。发送端系统的虚链路层以虚拟链路为单位,对要发送的数据帧进行编号,也就是为每条虚拟链路的数据帧添加SN号,然后根据配置信息中各条虚链路的冗余状态,将该数据帧发往2个独立的网络。然后在接收端通过这两条独立的路径接收消息,并通过检测该SN序列号进行冗余管理。在终端系统的接收过程中,采用余度处理和完整性检查的机制,可以确保接收到的AFDX数据帧是有效帧,从而有效地保证数据帧向上层应用程序传输的实时性和可靠性。在发送端,AFDX帧被传送到冗余控制单元时,首先将数据域中最后一个字节作为数据帧序号SN,SN从1开始,每增加一个数据帧序号加1,当上限达到255时,回滚到1,帧序号0保留,用来表示发送端系统复位[14]。处理过后的数据帧再进行发送网络选择,判断发送端口是1端口、2端口或者是2个端口同时发送。在接收端,接收到数据帧的两个网络分别将数据帧存储到相应的缓存器中,并分别进行完整性检查。在没有故障的情况下,完整性检查仅仅是把接收到的数数据帧传送给余度管理。如果发现了故障,完整性检查将丢弃错误帧。在每个冗余网络,完整性检查对SN号在如下区间的数据帧进行检查,该区间是[PSN+1,PSN+2],其中PSN是这该虚拟链路接收到的前一个数据帧的SN号[15]。完整性检查的具体流程如图6所示。在接收端接收数据时,从链路层传入的数据帧首先进行完整性和SN号检查,只有通过检查的数据帧才能进行余度管理。余度管理是对两个通过完整性检查的数据帧进行SN号比较,按照“先到先处理”的原则,对两个数据帧进行取舍,当收到第一帧数据后,记录该数据的SN号,等接收到第二帧时,首先比较该条数据的SN号是否和上条数据的SN号相同,如果相同则直接丢弃,如果不同则接收该消息,最后将有效的数据帧传送到UDP/IP协议栈。

4.3交换机技术

4.3.1帧过滤数据帧过滤功能,使得交换机可以将有效数据帧分发到指定的目的端,数据帧一旦到达交换机,数据帧的构成及帧头各个区域的内容就会被交换机监控。过滤功能对数据帧进行检查是否满足以下条件:目的地址是否有效、帧校验序列是否有效、数据帧长度是8bit的整数倍、以太网长度是否在(64,1518)字节范围之内、数据帧长度是否小于Lmax等。如果数据帧不符合要求则会被立马丢弃掉。

4.3.2交换调度交换调度主要是将数据帧从交换机的输入端口转发至输出端口。交换调度分为接收调度和发送调度。输入端口接收调度包括交换端换帧的接收、捕获端口捕获配置帧的接收和主机发送缓冲数据帧的接收(包括端系统配置、捕获帧配置)。每个输入端口收到一帧数据后,向接收发出调度请求,接收调度采样接收控制字及实时时钟输入时间戳,并等待接收调度仲裁,接收调度根据公平的服务原则选择某个申请调度的端口进行服务。输出端口发送调度包括交换输出端换帧的发送,其又包括普通交换帧的发送和主机接收缓冲数据帧的发送。其中,主机接收缓冲数据帧优先权最高,其次是普通交换帧。输出端口发送调度首先必须分别确认各自的输出端口缓冲是否能够存储当前要发送的帧,只有输出端口缓冲有空闲空间时,输出端口空闲的帧才会允许申请发送调度,否则必须等待条件具备后才能申请调度。

5结束语

AFDX网络是当前国际上先进大中型飞机的主要网络之一,具有很好的发展前景。国外对AFDX的应用已经非常成熟,而且形成了完整的应用、测试、验证和解决方案。AIM、TechSAT等公司均可以提供高性能终端端系统、AFDX交换机以及测试平台和仿真设备,为AFDX网络的测试提供强有力的支持。国内的AFDX网络的应用也在逐渐地增多,并且已开始在部分飞机上验证、应用,测试设备也逐渐完善。机载网络系统的发展如同商业和工业网一样,一直在向着高可靠性、高速率、强实时以及综合化等方向发展。以太网作为成功的商业网络,解决方案自然成为各领域研究的重点课题。时间触发协议(TimeTriggerProtocolTTP)是由TTTech公司提出的针对航空/航天领域等特殊应用而研发的一种高可靠、高速率、强实时的以太网,其采用分布式系统架构,物理层完全兼容传统的标准以太网,IEEE802.3支持双冗余的同时,还可以提供微秒级的时钟同步,通信速率可达1Gbit/s,提高了通信的时间确定性[16]。TTP可适用于综合化、模块化的航空电子体系结构,TTP网络向下可以兼容AFDX网络,能保证AFDX网络接入的独立性和完整性。与AFDX网络相比而言,TTP网络具有更快的速度、更远的通信距离、更低的传输时延以及更加灵活的通信方案,而且TTP网络具有很高精度的时间同步能力,使其成为未来非常有潜力的军用和民用机载网络体系。

参考文献

[1]校莉.AFDX在航空通信系统中的应用[J].电讯技术,2010,50(7):40-43

[2]杨峰,洪元佳,夏杰,张佩.AFDX网络技术综述[J].电子技术应用,2016,42(4):4-6,10

[3]刘建平.AFDX端系统协议栈虚拟链路层的应用研究[D].哈尔滨:哈尔滨工业大学,2012

[4]钟杰,何民,王怀胜,等.AFDX构架及协议分析[J].电讯技术,2010,50(1):69-75

[5]姜丽云.AFDX网络关键技术研究[D].西安:西安电子科技大学,2013

[6]赵永库,李贞,唐来胜.AFDX网络协议研究[J].计算机测量与控制,2011,19(12):3137-3139,3142

[7]何晔.AFDX航空通信网络协议研究及FPGA实现[D]哈尔滨:.哈尔滨工业大学,2011

[8]王绮卉.AFDX核心交换技术的研究与实现[D].西安:西安石油大学,2010

[9]宋东,曾星星,丁丽娜,等.AFDX网络系统建模与仿真实现[J].测控技术,2012,31(2):76-80

[10]蒋菲怡,吴勇,张建东.AFDX性能分析与调度算法[J].测控技术,2013,32(6):100-103

[11]施雯雯,徐雄,谭永亮.基于FPGA的千兆级AFDX端系统设计与实现[J].航空电子技术,2018,49(1):52-55

[12]陈冬英,宋东,郭甲琦.AFDX应用程序设计与实现[J].计算机测量与控制,2014,22(1):297-299,302

[13]张志,翟正军,姚方圆.基于FPGA的AFDX端系统协议芯片的设计与实现[J].计算机测量与控制,2010,18(2):186-188,206

[14]杜宏伟,马捷中.航空电子全双工交换式以太网及其关键技术研究[J].测控技术,2008,27(12):65-67

[15]田泽,姜丽云,陈伟,等.AFDX网络关键协议分析与研究[J].电子技术应用,2016,42(4):7-10,14

[16]李莹雪.时间触发AFDX终端系统的虚拟链路层调度算法研究[D].哈尔滨:哈尔滨工业大学,2014

作者:汪宁 单位:中国电子科技集团公司第十研究所