, ,
(1.清華大學,北京 100083; 2.北京旋極信息技術股份有限公司,北京 100094)
AFDX是一種具備高可靠性,傳輸時間確定性和實時性等優(yōu)點的總線,目前速率支持為10 Mbps,100 Mbps兩種。它充分利用商用以太網技術的成熟度,通過控制不同虛擬鏈路數據傳輸速率的方式提高了總線的實時性,通過完整性校驗、冗余管理技術實現了總線傳輸的高可靠性,通過使用固定配置表的模式實現傳輸路徑的確定性,通過采用全雙工交換機、異步傳輸模式等方法來減少總線競爭。以上技術極大地提升了AFDX總線在航空電子系統(tǒng)通信應用中的性能。
AFDX網絡由端系統(tǒng)、交換機、虛擬鏈路組成,采用雙冗余星型拓撲結構,終端之間通過虛鏈路交換數據。虛鏈路定義了一條消息的源地址和目的地址,其中源地址只有一個,每一個虛鏈路都有自己的帶寬。虛鏈路是AFDX網絡的通信基礎,在系統(tǒng)中端系統(tǒng)通過虛鏈路進行數據幀的交換。
本文將重點闡述AFDX網絡系統(tǒng)測試系統(tǒng)的測試方法、實現方式和驗證平臺。本文將對AFDX網絡的主要特點進行說明,并對測試中使用的數據收發(fā),網絡監(jiān)控和故障注入等測試方式進行深入介紹。本文同時將對網絡測試設備系統(tǒng)的組建和測試實現進行詳細說明。
作為一款高性能的航空總線,AFDX主要具備以下特點,高實時性,完整性檢查,冗余管理和網絡拓撲確定性。
高實時性在于AFDX定義了一種基于時間片的虛擬鏈路傳輸模式,每一條虛擬鏈路的最大傳輸帶寬是確定的,同時虛擬鏈路的最小時間片可以達到1 ms,充分保證了數據傳輸的實時性。
虛擬鏈路VL速度計算公式:Speed = Lmax/BAG,其中Speed代表虛擬鏈路VL的最大傳輸速度,Lmax 表示該虛擬鏈路上傳輸的數據幀的最大字節(jié)數,BAG表示該數據幀的BAG值,以上數值在組網時確定。
圖1 數據包發(fā)送調度過程
圖2 VL 參數BAG和Jitter
根據ARINC 664 Part7協(xié)議的要求,VL的BAG要求為:1、2、4、8、16、32、64、128 ms之中的一個值。
控制抖動Jitter的要求為:
注:Nbw=100 M bits/s(或者10 M bits/s),該參數與物理網速有關。
AFDX網絡的高穩(wěn)定性主要通過冗余網絡保證,AFDX網絡數據可以同時通過兩個交換網絡進行數據傳輸,通過冗余管理協(xié)議實現冗余數據剔除。冗余備份模式在航電領域使用廣泛,AFDX網絡引入冗余管理極大地提高了總線的穩(wěn)定性。
圖3 接收管理模塊主要工作模型
1.2.1 完整性檢查
完整性檢查是根據每一個虛擬鏈路接收到的數據幀的連續(xù)進行檢查。AFDX協(xié)議規(guī)定,每一個虛擬鏈路發(fā)送的數據幀的序號必須是連續(xù)的,從1到255進行循環(huán)(復位后的第一個數據幀序號為0,循環(huán)模式為0->1->…->255->1->…)。
幀序列號在[PSN+1,PSN+2](PSN:Previous Frame SN,前一個數據幀的幀序列號)這個區(qū)間內的數據幀都被接收,也即當前一個數據幀收到的為PSN,那么下一個收到的數據幀應該是PSN+1,如果收到PSN+2則認為是PSN+1這個數據幀丟失,否則則認為收到的為錯誤數據幀。
每次檢查的都是上一次收到的數據幀的幀序號,無論該數據幀是否通過完整性檢查幀。序號為0的數據幀必須被接收。在本地復位邏輯發(fā)生后的第一個接收到的數據幀要被接收。
1.2.2 冗余管理
在AFDX協(xié)議中,為了增強通信的穩(wěn)定性,協(xié)議中通過增加冗余通路方式實現通信的高穩(wěn)定性。冗余管理的主要工作是根據接收到的數據包的Sequence Number和通道編號進行冗余管理。將符合要求的數據包整理存儲,然后上傳到應用層。
1)冗余管理是針對每一個VL;
2)冗余管理部分可以通過配置表項選擇關閉或開啟;
3)冗余管理工作必須建立在完整性檢查之后;
4)冗余管理的基本規(guī)則是“先到先收”。所謂先到先收就是,對A,B兩個通道收到的數據包,先收到的數據包被接收存儲,后收到的數據包被丟棄。
接收部分冗余規(guī)則處理:
1)冗余管理只存區(qū)間[SN - SkewMax/BAG, SN]外的數據幀,也即如果SkewMax=5 ms,BAG=1 ms,rn=7,那么區(qū)間為[2,7]也即如果下面收到的數據幀序列號為2~7中的任意一個都不被接收。
2)如果某時刻接收到的數據幀與接收到的上一個數據幀的時間差超過了SkewMax,那么接下來的數據幀需要被接收。
1.2.3 確定性網絡
AFDX 網絡主要由端系統(tǒng)和交換機組成,信息交互方式由端系統(tǒng)-端系統(tǒng),端系統(tǒng)-交換機-端系統(tǒng)兩種方式組成。在每次組網時,AFDX網絡中所有虛擬鏈路必須是確定的,也即系統(tǒng)中每個端系統(tǒng)之間的通信鏈路是確定的,每個通信鏈路的帶寬以及相應的通信端口也是確定的。確定性的網絡配置充分保障了AFDX網絡數據的實時性,穩(wěn)定性以及延時的確定性,進而保障數據可靠有效地進行傳輸。
AFDX 網絡系統(tǒng)測試的主要內容如下:
1) AFDX 終端節(jié)點通信測試;
2) AFDX 終端節(jié)點通信性能測試;
3) AFDX 交換機性能測試。
測試方法:
1) 通信測試:通過標準測試設備對被測AFDX端點進行測試,測試通信能力。
2) 網絡監(jiān)控:通過監(jiān)測設備對每一個網絡通信端口的數據以及相關的時間參數進行分析,評測網絡性能。
3) 故障注入:注入定向的錯誤信息對網絡進行測試。
2.1.1 數據發(fā)送
數據產生是指測試設備可以按照端系統(tǒng)數據發(fā)送標準生成標準AFDX數據幀。測試設備利用標準數據幀對系統(tǒng)通信性能進行功能和性能方面的測試。主要的測試手段列舉如下:
1)通信數據驗證:利用隨機數據生成的方式生成標準AFDX數據幀對端系統(tǒng)的通信正確性進行驗證;
2)滿負載測試:生成10 Mbps的AFDX網絡進行滿負載測試,驗證被測端設備是否具備進行滿負載通信的能力。生成100 Mbps的AFDX網絡進行滿負載測試,驗證被測端設備是否具備進行滿負載通信的能力;
3)超小包滿負載測試:通過超小包數據幀間隔較小的方式驗證AFDX端系統(tǒng)的數據處理能力;
4)UDP協(xié)議測試:數據包生成,測試被測端系統(tǒng)處理UDP格式數據的能力;
5)ICMP協(xié)議測試:數據包生成,測試被測端系統(tǒng)處理ICMP格式數據的能力。
2.1.2 數據接收
數據接收是指測試設備具備接收待測設備端系統(tǒng)發(fā)送數據的能力。通過對接收數據的每一個數據幀進行的完整性,冗余性,數據CRC,幀長度錯誤,半字節(jié)數據進行有效識別,進而對待測設備端系統(tǒng)的數據發(fā)送能力和發(fā)送協(xié)議完整性進行測試評估。
網絡監(jiān)控主要目的是通過對網絡中傳輸的數據和網絡狀態(tài)的監(jiān)控完成對AFDX網絡的功能和性能的分析和評估。該功能主要用于對整個網絡的負載,交換機處理延時,每個虛擬鏈路傳輸過程中的數據幀間隔的穩(wěn)定性、完整性進行有效分析和評估。網絡監(jiān)控功能需要通過監(jiān)控網絡中傳輸的數據幀,并對數據幀進行時間和狀態(tài)進行標注。
1)端系統(tǒng)評估:通過對網絡中每個數據幀的狀態(tài)進行分析可以判斷每個端系統(tǒng)數據發(fā)送功能是否正確。通過對一個虛擬鏈路上的多個數據幀的監(jiān)控分析,可以評估該虛擬鏈路調度能力是否滿足協(xié)議要求,進而判斷該虛擬鏈路所在端系統(tǒng)是否滿足設計指標。
2)交換機性能評估:通過對經過交換機的多個虛擬鏈路的數據幀的時間差進行分析,可以評估交換機的交換延時。
3)網絡系統(tǒng)評估:通過對網絡系統(tǒng)中監(jiān)控到的所有數據信息和狀態(tài)信息進行綜合評估可以分析網絡中的錯誤狀態(tài),鏈路負載等綜合信息。進而評估整個網絡系統(tǒng)的運行狀態(tài)。
根據AFDX網絡的層級,對屬于不同層級的故障進行有效地注入,通過逆向的方式判斷每個端系統(tǒng)和交換機的數據接收檢錯能力,每個虛擬鏈路的完整性,冗余管理校驗的能力,以及每個數據接收端的魯棒性。主要的注入錯誤如下。
1)數據錯誤:通過修改網絡中數據幀中的數據,注入數據錯誤,用于驗證端系統(tǒng)的數據接收和檢錯能力。
2)完整性錯誤:通過修改網絡中某特定虛擬鏈路的完整性相關字段,用于驗證端系統(tǒng)的完整性校驗能力。
3)抖動延時注入:通過對網絡中某特定虛擬鏈路的部分數據幀人為加入延時,驗證接收端對于虛擬鏈路數據幀間隔抖動的處理能力。
4)物理斷路:通過將網絡物理斷路實現模擬網絡斷路的故障以及網絡連接不穩(wěn)定的故障。
圖4 故障注入示例
如圖4所示為一種修改前導碼的故障注入功能,通過將前導碼(0xAA)的數量由7個修改為5個,測試接收端對短前導碼數據幀的容錯能力,進而驗證接收設備的魯棒性。
系統(tǒng)時標是指對經過網絡測試設備的網絡每一個數據幀的時間進行標注。數據幀時間標志主要用于對AFDX網絡中的關鍵參數,虛擬鏈路的實時性和交換機的交換延時進行有效評估??梢姅祿瑫r間標志對于一個實時系統(tǒng)進行評估的重要性。時標的同步能力和時標精度是系統(tǒng)時標技術的關鍵。時間同步能力保障當前網絡系統(tǒng)中所有的采集設備是基于同一個時間標準對數據幀進行時間標注。高精度的時間標注用于保障數據幀時標測量的準確度。
本方案中采用一種光纖時鐘同步技術保障該系統(tǒng)每個采集節(jié)點的基準時間和時鐘的一致性。該系統(tǒng)提供64位,精度為10 ns的時標對系統(tǒng)中的每個數據幀進行標注。
網絡監(jiān)控設備作為一個串接設備串接在網絡中,每個物理鏈路的數據幀都要通過采集設備。采集設備的延時大小和延時穩(wěn)定性將直接影響每個虛擬鏈路的實時性和完整性等參數,所以必須嚴格控制數據幀通過網絡監(jiān)控設備的延時。
本方案使用兩種方式控制數據通過網絡監(jiān)控設備的延時。
1)零延時模式: 零延時模式是通過旁路物理信號的方式得到網絡信號,盡力地減少旁路信號的能量,減少對主鏈路的影響。從而實現信號經過采集設備0延時。
2)固定延時模式: 固定延時模式目的是為了滿足設備進行故障注入的需求,如果需要對網絡進行故障注入,就必須讓數據幀通過監(jiān)控設備,所以就做不到零延時。本方案使用軟件可配置的固定延時的方式,實現AFDX網絡數據幀經過網絡監(jiān)控設備延時固定。
圖5 AFDX 網絡系統(tǒng)測試結構圖
根據AFDX網絡系統(tǒng)測試要求,AFDX網絡系統(tǒng)測試方案主要通過數據激勵,網絡監(jiān)控,故障注入功能實現對網絡系統(tǒng)的測試。方案通過采用由AFDX網絡測試設備,中央數據處理設備組成硬件系統(tǒng)和由數據激勵模塊,網絡監(jiān)控模塊和故障注入模塊組成軟件系統(tǒng)實現AFDX網絡系統(tǒng)測試。
中央數據處理設備負責運行數據激勵、網絡監(jiān)控和故障注入,將模塊產生的控制命令和數據信息發(fā)送到網絡測試設備。網絡測試設備通過配置命令完成相應的數據收發(fā),網絡監(jiān)控和故障注入功能。
數據激勵模塊負責產生不同測試環(huán)境下的激勵數據,并將激勵數據配置到網絡測試設備中對終端或者交換機進行測試。通過配置不同的測試激勵測試AFDX終端在不同情況下的數據接收能力。數據激勵模塊生成的數據同時用于交換機的交換性能測試。
數據激勵模塊將生產的激勵數據和發(fā)送策略通過中央數據處理設備發(fā)送到AFDX網絡測試設備,AFDX網絡測試設備根據配置策略將數據發(fā)送到AFDX網絡完成測試。
網絡監(jiān)控主要由3個部分組成:數據幀監(jiān)控,虛鏈路時序監(jiān)控,網絡狀態(tài)監(jiān)控。通過對網絡系統(tǒng)的監(jiān)控可以分析AFDX網絡系統(tǒng)中各端系統(tǒng)的數據發(fā)送功能,每一個虛鏈路的性能,交換機的交換延時以及整個網絡環(huán)境的負載等參數實現AFDX網絡系統(tǒng)評估。
AFDX網絡測試設備負責對AFDX網絡系統(tǒng)中的數據進行采集,并對每個數據幀進行時標標注和狀態(tài)標注。時標標注用于標注每個數據幀的時間信息,狀態(tài)標注用于標注數據幀的狀態(tài),如是否發(fā)生錯誤,錯誤狀態(tài)等信息。同時網絡采集設備還負責采集所在網絡的狀態(tài)信息,如網絡鏈路平均速度,最高速度,最低速度,每個VL的鏈路速度以及整個網絡發(fā)生的錯誤狀態(tài)等信息。
中央數據處理設備負責收集各個網絡測試設備的監(jiān)控數據,并使用網絡監(jiān)控模塊對AFDX網絡系統(tǒng)進行評估。
4.2.1 數據幀監(jiān)控
如圖6所示,網絡監(jiān)控模塊將個網絡測試設備采集的數據幀載入到數據幀分析模塊中實現對整個網絡的數據幀監(jiān)控。通過將網絡拓撲的樹形結構和監(jiān)控數據的對應,可以對不同虛擬鏈路的數據幀進行查看。對于錯誤數據,監(jiān)控軟件會對相應的數據幀標注不同的顏色以區(qū)分正常數據幀。
4.2.2 虛鏈路時序監(jiān)控
數據幀時序分析主要用于對不同虛擬鏈路的的時序進行分析。通過使用該功能可以分析每個虛擬鏈路的實時性和完整性,進而判斷是否滿足設計要求。同時該功能也可以通過分析每個虛擬鏈路經過交換機的延時對交換機的交換性能進行評測。
圖7 虛鏈路時序監(jiān)控
4.2.3 狀態(tài)統(tǒng)計
狀態(tài)統(tǒng)計功能主要包含每個AFDX網絡的實時網絡的數據收發(fā)速率,每個虛擬鏈路實時數據收發(fā)的速率、最大速率,每個虛擬鏈路收發(fā)數據幀數量,總傳輸字節(jié)數,錯誤數等信息。測試系統(tǒng)通過對以上信息的統(tǒng)計進行AFDX網絡系統(tǒng)的性能評估。
故障注入中,故障注入模塊負責根據不同的測試需求配置不同的故障注入策略,中央數據處理設備負責將故障注入模塊產生的故障注入策略下發(fā)到AFDX網絡測試設備,AFDX網絡測試設備負責根據故障注入策略執(zhí)行相應的故障注入功能。
故障注入模塊實現兩個功能,主動發(fā)送故障數據和對網絡中傳輸的數據幀進行故障注入。根據AFDX網絡的層級,對屬于不同層級的故障進行有效地注入,通過逆向的方式判斷每個端系統(tǒng)和交換機的數據接收檢錯能力,每個虛擬鏈路的完整性,冗余管理校驗的能力,以及每個數據接收端的魯棒性。圖8所示即為本次故障注入策略配置界面圖。
圖8 故障注入界面
網絡系統(tǒng)測試方案實現的測試系統(tǒng)在某飛機航電系統(tǒng)的測試實驗中,對航電AFDX網絡中的各通信終端,交換機,以及虛鏈路的功能和性能進行了全面測試。實驗表明網絡系統(tǒng)測試方案中的數據激勵模塊,數據監(jiān)控模塊和故障注入模塊配合使用可以有效地分析AFDX網絡系統(tǒng)中的各個參數,較好地完成了對該飛機航電系統(tǒng)中AFDX網絡系統(tǒng)測試和評估。
目前AFDX已經成功應用于國內大飛機項目,如何有效地對AFDX總線網絡進行分析和測試變得非常有意義。本文在論述AFDX網絡測試方法的基礎上提出了一種用于AFDX網絡的測試解決方案。通過數據收發(fā),網絡監(jiān)控和故障注入等手段實現AFDX網絡的全面測試。并以此設計了一款測試設
備,完成了測試方案的論證。為后續(xù)AFDX網絡的測試驗證基礎提供了很好的保障。
參考文獻:
[1] 葉佳宇,陳曉剛,張新家.基于AFDX的航空電子通信網絡的設計[J].測控技術,2008,27(6):56-58.
[2] 劉永超,徐科華,周貴榮.AFDX 網絡一體化測試監(jiān)視系統(tǒng)研究[J].航空電子技術,2011,42(4):29-32.
[3] 劉永超,徐科華,周貴榮,等.AFDX 網絡端系統(tǒng)測試監(jiān)視系統(tǒng)研究[J].航空計算技術,2011,41(4):132-134.
[4] 楊 峰,田 澤.基于USB接口的AFDX網絡TAP卡設計與實現[J].測控技術,2013,32(5):77-81.
[5] 樓小強,田 澤,徐文進,等.AFDX網絡TAP卡的設計與實現[J].計算機技術與發(fā)展,2014,24(6):247-249.
[6] 索高華,劉紅紅,王 治,等.AFDX網絡仿真系統(tǒng)設計與研究[J].電子技術應用2016,42(4),18-21.
[7] 黃夢玲,翟正軍.基于ARINC429與AFDX的測試仿真系統(tǒng)設計與實現[J].計算機測量與控制,2013,21(8),2090-2092,2108.
[8] 劉道煦,吳華程.AFDX 終端測試技術的研究與實現[J].計算機測量與控制,2014,22(5),1360-1362.
[9] 王仲杰,蔣紅娜.基于飛行試驗的 AFDX 總線采集技術研究[J].國外電子測量技術 ,2017,36(6),85-88.
[10] 陳 昕,周擁軍,蔣文保,等.AFDX協(xié)議性能分析及調度算法研究電子學報[J].2009,5,1000-1005.