,,
(1.清华大学 信息科学技术学院,北京 100083; 2.北京波尔通信技术股份有限公司,北京 100094)
航空电子全双工交换式以太网AFDX (Avionics Full-Duplex Switched Ethernet)是基于IEEE 802.3及TCP/IP协议发展而来的一种新型航空总线技术,通过数据完整性校验、网络冗余性管理、固定配置表、不同虚拟链路传输速率控制等方法保证了确定性的传输路径及高可靠性的实时总线传输。这些突出的技术优势使AFDX网络已在空客A380、波音B787等大型商用飞机上进行了成功应用,未来也将一直成为主流的航空总线技术。随着航空电子系统越来越多,AFDX网络的复杂度日益提高,稳定可靠的AFDX网络将会显得十分重要[2-3]。如何对一个复杂的AFDX网络系统进行有效的测试评估将会直接关系着航空网络的顺利发展。
文献[4-6] 主要从端系统、交换端口、航空子系统等方面对AFDX网络进行设计实现,拓展了AFDX网络设计思路。
文献[7-11]分别从终端系统数据收发、交换机延迟、网络状态监控等不同角度对AFDX网络的稳定性、可靠性等指标进行了测试验证,丰富了现有AFDX网络的测试手段。
由于现在还没有形成一个AFDX网络的测试标准,当前行业内的采集方案更多偏向于数据层面的监控分析,对于物理层,尤其是虚拟链路实时性方面的分析诊断和评估能力不够。
基于以上情况,本文通过设计AFDX网络系统的实时监控系统重点阐述测试方法、实现方式及结果验证。该系统具备较强的数据采集,存储和分析能力,系统中采用的时间同步技术保障了整个系统时标的一致性,可以对大型的AFDX网络进行监控,对分析整个网络的实时性分析具有重大意义。
AFDX网络系统主要由端系统(End System)、交换机(Switch)、虚拟链路(Virtual Link)组成[1]。AFDX网络是一个全双工异步网络,采用星型拓扑结构,端系统是为机载电子系统数据的发送接收提供AFDX网络和机载计算机之间的接口,端系统之间通过虚拟链路VL进行数据交换。每个虚链路定义两个端系统之间的数据交换通道,虚链路规定了数据交换源端的IP地址、UDP端口和目的终端的IP地址、MAC地址、UDP端口等5个参数,其中1个源端可对应1个或多个目的终端,多条虚拟链路共用一条实际物理链路,并通过网络中交换机进行多播交换。虚链路通过帧间隙管理,冗余管理,完整性管理等模式提升AFDX总线网络的实时性和可靠性,通过静态配置实现网络传输路径及传输时间的确定性。
AFDX协议是建立在IEEE802.3通信协议基础上的一种实时通信总线,主要使用UDP协议进行通信。AFDX协议数据帧主要包含帧间隔,前导码(Preamble),帧起始定界符(SFD),链路层协议头(MAC),网络层(IP)协议头,应用层协议头(UDP),数据域,帧序列号(SN),数据帧校验字(CRC)。
图1 ARINC 664数据包格式
1.3.1 数据传输实时高效
通过虚拟链路和固定带宽有效保证了AFDX网络系统数据传输的高实时性。
AFDX引入了基于时隙模式的数据传输规则,该规则规定了单位时间内某一个虚拟链路上可以传输的最大数据量。多个虚拟链路共用一组物理网络。通过引入时隙模式,保障了在网络中每个虚拟链路的带宽,也就同时保证了虚拟链路的实时性。虚拟链路通过两个参数保证计算虚拟链路的带宽,BAG和Lmax。BAG表示在某一条虚拟链路上传输的数据帧之间的时间间隔,该间隔时间规定为:1 ms,2 ms,4 ms,8 ms,32 ms,64 ms,128 ms共计7中BAG值。Lmax规定为每个数据帧的最大字节数,长度不超过AFDX网络最大数据帧字节数1 518字节。虚拟链路的速度计算公式为:Speed =Lmax/BAG,其中Speed代表每条虚拟链路最大传输速度。BAG代表数据帧的BAG值。BAG和Lmax的数值在组网时确定。
图2 虚拟链路VL 参数BAG、Jitter
ARINC 664 协议要求如下[1]:
虚拟链路BAG值为1 ms、2 ms、4 ms、8 ms、16 ms、32 ms、64 ms、128 ms等8个中的1个。
控制抖动Jitter[1]:
注:Nbw=100 Mbps(或10 Mbps),该参数值与实际物理网络传输速度有关。
1.3.2 网络稳定可靠
AFDX网络作为一个确定性的网络,主要通过两个物理交换网络实现冗余管理及对源端每条虚拟链路接收的数据进行完整性检查保证了网络传输的高稳定性和可靠性。
1.3.2.1 完整性检查
针对每一个虚拟链路接收到的数据帧,通过判断是否连续进行完整性检查。AFDX协议规定[1]:每个虚拟链路VL发送的数据帧序号必须连续,从1到255依次进行循环(循环后第一个数据帧序号为0,循环模式为0->1->…->255->1->…)。序号为0及在本地复位逻辑发生后的第一个接收到的数据帧必须被接收。每一个数据帧的序列号保障了数据帧在网络传输中的连续性,是网络监控时的一个关键参数。
1.3.2.2 冗余管理
主要是对每一个虚拟链路接收的数据包序列号和通道号进行管理,将合格的数据包存储后上传至应用层。冗余管理建立在数据帧完整性检查之后,采用时间优先原则,两个通道中首先到达的数据包被接收存储,另一个被丢弃。如果某时刻接收到的两个数据帧时间差超过既定的值,则下一帧需要被接收。通过以上方法及规则实现网络的冗余管理。
由图5所示,AFDX网络监控系统主要由3部分组成:AFDX网络监控设备、AFDX网络数据汇聚设备、 AFDX网络数据分析设备。
图5 AFDX 网络监控系统
采集设备和汇聚设备之间使用速率为5 Gbps的光纤进行数据通信。汇聚设备和数据分析设备通过万兆网络进行数据通信。
2.1.1 数据采集设备
数据采集设备负责对网络上的数据进行采集,数据帧时标标注,采集数据上传和故障隔离的工作。
2.1.2 数据汇聚设备
数据汇聚设备主要负责所有采集设备的数据存储,以及对所有采集设备进行授时工作。
数据汇聚设备通过光纤和每个采集设备进行通信,时间同步信息也通过光纤进行传递。
2.1.3 数据分析设备
数据分析设备使用软件对采集数据进行提取分析,评估整个AFDX网络的性能。主要分析项目有:
1)数据帧监控:对ADFX网络系统中传输的每个数据帧中的数据结构进行分析。可以对既定字段进行分析,也可以对指定字段进行提取分析;
2)虚拟链路特性:对每个虚拟链路的完整性参数BAG和Jitter分析;
3)交换机性能:通过每个数据帧通过交换机的时间,分析交换机对每个虚拟链路的交换时间;
4)状态统计:统计每个终端,交换机以及虚拟链路的状态信息。状态信息主要有帧校验错误数,数据帧错误状态,物理链路的线速度,最大速度,最小速度;虚拟链路的当前速率,最大速率,最小速率等。
2.2.1 数据采集方案
如图6所示本方案中采集设备使用并联方式通过旁路物理信号将网络数据旁路到网络监控设备进行采集,与传统的串联采集相比,该采集方案并不会对通信双方造成影响。
图6 AFDX数据采集方案
2.2.2 数据时标标注
实时性是AFDX网络的一个重要特性。其中数据传输时间,虚拟链路的BAG和Jitter是体现实时性的重要参数。交换机评测的一个重要指标就是交换机的数据交换延时。由此可见时间参数对于分析AFDX网络的重要性。所以数据采集设备会对每个数据帧进行时标标注。时标的标准来自于数据汇聚设备。时标是一个64位10 ns精度的时标。对于每一个数据帧采集设备都必须对数据帧进行时标标注。
图7 AFDX 数据帧时标标注
传统的网络监控技术主要使用串联技术进行数据采集,也即将监控设备串联到网络中,将接收到的数据转发到下一级设备。这样做有两个缺点:一是人为增加了网络延时,二是因为引入采集设备,增强了网络信号,会影响实际网络的测试。
本方案采用并联采集的网络监控技术,该技术通过旁路物理信号的方式实现了网络数据的采集。该采集方式克服了直接旁路数据造成物理层PHY通信交互错误问题,同时也实现了无延时直接捕获网络数据的功能。
网络数据时标的重要性已经在前面章节阐述。时标同步技术的最大难点在于时标授时方式和时标系统精度控制。
传统时标授时方式主要是通过IRIG-B的方式进行授时,授时周期为1 s。授时精度不高,且每个授时周期内都需要对时标进行修正。另外IRIG-B设备成本较高,且需要对网络中的每个采集设备都需要配置一台,对于多台设备进行授时极不便利。
本文的时标同步技术实现方式是通过数据汇聚设备将时间是信息下发到每个采集设备,所有采集设备使用来自于数据汇聚设备的时间信息对数据帧进行标注。授时精度将有很大提高。
图8所示为AFDX网络监控系统中数据分析设备中分析AFDX数据帧的过程,分析设备通过分析每个数据帧的格式,将数据帧的时标信息,关键信息,以及错误状态信息提取到索引信息栏。同时在第二栏对数据帧内容进行了详尽的解析。
图8 数据帧监控图
BAG值和Jitter值是保障每个虚拟链路实时性的关键参数,所以在对网络进行监控分析过程中,对于每个虚拟链路的数据帧的BAG值和Jitter进行分析可以有效地判断当前虚拟链路的稳定性,进而判断端系统的性能和交换机的数据时延稳定性。
完整性管理参数是虚拟链路数据传输稳定性的一个关键参数,该参数有效地保障了虚拟链路上传输的每个数据帧之间的连续性,也即保证了数据帧的完整性,该参数与BAG一起分析有利于更好地评估每个虚拟链路的状态。
图9 BAG Jitter和完整性参数监控图
4.3.1 链路状态监控
网络状态监控主要目的是通过对数据的监控辅助查看整个网络的链路状态,评估网络性能。主要监控的状态信息有帧校验错误数,数据帧错误状态,物理链路的线速度,最大速度,最小速度;虚拟链路的当前速率,最大速率,最小速率等。
通过图10中对链路状态的统计分析我们可以直观地查看网络中链路的状态信息,可以对网络状态评估提供了极大的帮助。
图10 链路状态统计
4.3.2 数据帧传输时间监控
如图11所示,AFDX数据帧经过每个采集设备的时间都进行标注。通过对数据进行时间标注,我们可以算得每个数据帧经过交换机的数据延时。通过分析每个数据帧在网络中传输时间,可以很好地评估交换机的延时特性。
图11 数据帧传输过程时标监控
AFDX总线在国产大飞机项目C919中的成功应用,使得AFDX总线得到行业的广泛认可。如何对一个成熟的AFDX网络系统进行有效的评估,是目前业内的一个重要课题。本文基于并联数据采集技术提出的网络系统监控方案为AFDX网络系统监控提供了较好的测试手段,可以有效地对AFDX网络进行实时监控和记录,通过对记录数据的分析达到评估网络的目的。通过实验发现,该方案可以有效地对AFDX网络的性能进行评估,丰富了后期AFDX网络系统测试方法。