徐 进,黄玉港,王静玲,田 瑜,张小龙
(西安工程大学 电子信息学院,陕西 西安 710048)
AFDX网络冗余管理技术分析
徐 进,黄玉港,王静玲,田 瑜,张小龙
(西安工程大学 电子信息学院,陕西 西安 710048)
为实现AFDX以太网的冗余管理功能,分析了AFDX网络冗余管理技术和冗余管理接收与发送帧过程中的完整性检查以及冗余管理配置参数最大偏移参数(SkewMax)。文中根据完整性检查来分析顺序号在接收端与发送端的作用以及冗余管理配置参数,设计了冗余管理算法。并对设计的冗余管理算法进行了仿真验证,结果表明,该设计的冗余管理算法可靠准确,设计符合ARINC664 Part7规定的协议要求。
AFDX;完整性检查;SkewMax;冗余管理;冗余管理算法
随着机载总线网络技术的发展,航电系统对其网络的可靠性提出了更高的要求,在这种环境下可靠性高的通信链路AFDX网络的开发满足了航电系统对这方面的应用要求。AFDX定义航空电子系统间数据通信的标准,它是在标准以太网技术的基础上,增加了一些特殊的机制,提供一个具有确定性和可靠性的网络。冗余链路的设置,保证了数据报传输的可靠性[1]。
AFDX网络是一种新型航空总线网络具有全双工、高数据率、双冗余等特点,为了确保数据传输的可靠性,AFDX网络采用了冗余管理控制策略,通过多个独立的网络进行数据余度通信,以保证在网络中某些交换设备或链路发生故障时数据能够正常交互。因此,研究AFDX网络冗余管理技术具有重要的意义。
1.1 AFDX网络
AFDX网络是在标准以太网的通信协议和拓扑结构的基础上,添加了全双工、虚链路带宽固定分配、余度管理、完整性检查和双余度等措施,使之满足航空电子系统对高带宽、高可靠、低延迟、确定性通信服务要求,是一种适应大中型飞机综合化航空电子系统互联应用的发展趋势的航空机载主干网络[2-3]。
AFDX网络由端系统(End System,ES)、交换机(Switch,SW)以及通信链路3部分组成,是一种以交换机为中心的全双工、星型、双余度网络。在AFDX网络系统中,端系统(ES)负责数据发送和接收,分别通过两组互相独立、互为备份的交换机接入网络,端系统(ES)为AFDX网络设备与航电系统设备的连接提供了安全、可靠的数据交换“接口”;交换机(SW)负责数据的交换、调度和监控功能;通信链路为AFDX网络提供可靠的物理链接,为航电各子系统间信息交换提供通信[4]。
1.2 AFDX冗余管理
AFDX网络为双冗余星型拓扑网络结构,每个端系统都通过两条不同的路径把消息发送给目的地址。因此,在端系统的发送和接收端都有相应的冗余管理和完整性检查机制确保接收AFDX帧的有效性[5-6]。如图1所示。
图1 完整性检查和冗余管理
接收和发送端系统各自有两个分别连接相互独立AFDX网络且互为冗余的两个物理接口;在发送帧时,硬件单元会把每条虚链路中要发送的帧复制成两份,并同时发送到两个相互独立的AFDX网络。在接收帧时,对于从两个网络上传来的数据帧根据序列号SN按照“先到先有效”的策略进行处理,接收最先到达的数据帧。当接收到一个数据帧之后,后面再接收到同一个序列号SN的数据帧就要舍弃[7-8]。
2.1 完整性检查
当网络没有发生故障时,完整性检查仅仅是将接收到的数据帧传递给余度管理,对于每个相互冗余的网络完整性检查是独立的。如果基于顺序号SN数据帧发生故障时,完整性检查将去除无效帧的任务,并且通知网络管理机构。在每个相互冗余的网络中,完整性检查能对序列号在一下区间内的每个数据帧进行检查,该区间为[9-10]
[PSN”+”1,PSN”+”2]
其中,“前序列号”(PSN)是这个VL收到前一个数据帧的顺序号SN。运算符“+”是将顺序号SN的回绕考虑在内的,例如:当PSN=245时,则PSN“+”1=1。
在接收的顺序号为0和在任何接收到ES复位之后第一次被接收到的数据帧这两种情况下,完整性检查也要将数据帧作为有效的数据帧。
2.2 冗余管理
冗余管理设定网络正处于适当的工作状态,特别是设定网络的时间确定性属于已被验证。冗余管理的配置是基于参数SkewMax,即在收到两个冗余的数据帧之间的最大时间。参数SkewMax的值依赖于网络拓扑并且由系统集成者提供,该参数的单位ms(对于每条虚链路)[11-12]。
当冗余管理功能是被激活的,根据“先到者胜出”的基本原则应该传送先到达的冗余帧。对于接收端中的每个虚链路,冗余管理功能应该保证数据帧以递增的顺序号SN次序转发而且这还应该将应用于复位和偶然丢失数据帧的情况下。如果在接收到一个数据帧后超过最大偏斜时间SkewMax,则无论下一数据帧的顺序号是多少,该数据帧都应该被接收[13]。
3.1 算法设计
冗余管理的目的是保证AFDX网络在采用冗余网络发送数据帧的情况下,不仅要保证网络传输的可靠性而且还要保证在冗余传输的方式情况下接收到的数据帧不发生重复。对此冗余管理算法设计如下[14-16]:
(1)当接收端发生复位时,则收到数据帧应被接收此时PSN更新为SN否则执行第2步;
(2)当接收到的数据帧超过了最大偏移时间SkewMax,则此数据帧应被接收此时PN=SN,否则执行第(3)步;
(3)当发送端发生复位时即此时数据帧的SN=0,则接受该数据帧此时PSN=SN=0否则执行第4步;
(4)判断接收到数据帧的SN是否属于[PSN”+”1,PSN”+”2]区间,则接收该数据帧否则丢弃该数据帧。
算法设计流程如图2所示。
图2 算法设计流程图
3.2 算法验证
在VC6.0中对余度管理算法进行仿真,当测试激励的顺序号循环递增且随机发生复位时,测试结果如图3所示。
图3 仿真结果图
从上述仿真结果可以看出冗余的数据帧能够被过滤掉而且还保证了数据帧的完整性,而且该算法过程中接收端系统根据接收到的SN 与PSN 来判断网络中数据帧的传输状态,算法实现方法简便、功能可靠。
AFDX 协议是一种新型的航空数据总线协议,其双冗余网络的设置有效地增加了系统的可靠性。本文首先对AFDX网络冗余管理关键技术进行了分析与并对AFDX网络冗余管理算法进行了设计与仿真验证,从仿真结果可以看出,该算法的设计符合ARINC664Part7的协议规范要求。
[1] 徐科华.AFDX总线网络数据传输分析[J].民用飞机设计与研究,2009(3):35-40.
[2] Bobrek P. Avionics full-duplex switched ethernet network: EP, EP2629459[P]. 2013-03-12.
[3] 刘芸,王春红,王兵.AFDX端系统协议软件设计与实现[J].电光与控制,2012,11(19):71-76.
[4] 刘瑞旸.AFDX端系统协议栈分析与设计[D].西安:西安电子科技大学,2015.
[5] 赵永库,唐来胜.AFDX网络应用关键技术分析与研究[J].测控技术,2013,32(4):86-89,94.
[6] 施太平,娄莉,田泽.AFDX协议及关键技术实现[J].测控技术,2012,31(10):81-84.
[7] 钟杰,何民,王怀胜,郑力.AFDX架构及协议分析[J].电讯技术,2010,1(50):65-70.
[8] 姜丽云.AFDX网络关键技术研究[D].西安:西安电子科技大学,2013.
[9] 李大鹏,赵明莉,田园.AFDX端系统中冗余管理的研究和实现[J].电子技术,2012,25(4):10-13.
[10] 陈昕,路娟,周拥军.AFDX冗余管理机制的仿真[J].计算机工程,2008,12(23):92-94.
[11] 陈昕,杨杰,周拥军.航空全双工交换以太网冗余管理机制研究[J].计算机工程与应用,2009,45(2):102-105.
[12] 库恒,龙士工,罗昊.基于TLA+的AFDX冗余管理算法的改进[J].计算机工程与设计,2013,3(34):837-840,853.
[13] 李哲,田泽,张荣华.AFDX网络中ShewMax的研究[J].计算机技术与发展,2010,6(20):249-253.
[14] 赵利军,闫海峰.AFDX余度管理算法(RMA)研究与实现[J].系统仿真学报,2009,8(20):281-285.
[15] 杨金孝,王鑫,刘慧卓.AFDX以太网冗余管理的算法设计[J].电子设计工程,2013,6(11):21-23.
[16] 任亚周.AFDX网络的容错控制方法研究[D].上海:上海交通大学,2012.
Analysis of Redundancy Management Technology in AFDX Network
XU Jin,HUANG Yugang,WANG Jingling,TIAN Yu,ZHANG Xiaolong
(School of Electronic and Information Engineering,Xi’an Polytechnic University,Xi’an 710048,China)
In order to achieve the function of AFDX Ethernet redundancy management,it is necessary to analyze the AFDX network redundancy management techniques and redundancy management of receiving and sending frame process integrity checking and redundancy management configuration parameters maximum offset parameter (SkewMax). According to the integrity check for the analysis of the sequence number in the receiver and transmitter and redundancy management configuration parameters, the redundancy management algorithm design. In this paper, finally on the design of the redundancy management algorithm were simulation and verification. It is showed that the design of the redundancy management algorithm is accurate and reliable, can achieve the requirements of the design and the design meets ARINC664 Part7 the provisions of the agreement.
AFDX; integrity checking; SkewMax; redundancy management; redundancy management algorithm
2016- 04- 14
徐进(1957-),男,教授。研究方向:信息检测,处理与数据融合。黄玉港(1991-),男,硕士研究生。研究方向:信息检测。
10.16180/j.cnki.issn1007-7820.2017.03.028
TP393
A
1007-7820(2017)03-101-03