焦文喆,翟正軍,王國慶,2.西北工業大學計算機學院,陜西西安70292.中國航空無線電電子研究所,上海200233
?
時間觸發AFDX調度策略設計與實時性分析
焦文喆1,翟正軍1,王國慶1,2
1.西北工業大學計算機學院,陜西西安710129
2.中國航空無線電電子研究所,上海200233
摘要:為了解決航空電子全雙工交換式以太網(AFDX,Avionics Full Duplex Switched Ethernet)時間關鍵消息傳輸的確定性問題,本文提出一種時間觸發AFDX(Time-Triggered AFDX,TTAFDX)網絡的體系結構,同時設計了基于周期優先的端系統時間觸發虛擬鏈路調度算法。通過網絡演算方法對比了TTAFDX與采用FIFO調度算法的AFDX網絡的實時性能。計算結果表明:TTAFDX中的時間觸發虛擬鏈路的延遲主要由固定延遲部分組成,而且速率限制虛擬鏈路的實時性也較AFDX有所提高。證明了TTAFDX體系結構和調度算法在兼容AFDX的同時能夠改善網絡的時間確定性,并適用于具有硬實時傳輸要求的航空電子系統。
關鍵詞:航空電子全雙工交換式以太網;時間觸發;調度算法;實時性分析;網絡演算
AFDX[1]作為應用于空客A380和波音B787上的新一代航空電子網絡,具有全雙工、高速率、雙冗余、易擴展等優點[2],但當多任務傳輸時可能產生的競爭鏈路共享沖突,仍會影響數據傳輸的實時性和通信系統的時間確定性。對于時間關鍵消息,其在AFDX網絡中的傳輸時延及時延抖動的確定性界限仍不易得到保證。
為了提高航電系統中時間關鍵消息的時間確定性,并盡可能降低既有設備改造的技術與商業風險,本文在AFDX網絡基礎上引入時間觸發機制,設計完成了時間觸發AFDX(Time-Triggered AFDX,TTAFDX)的體系結構,并提出了基于周期優先原則的端系統調度策略。通過采用網絡演算的方法分別對TTAFDX及AFDX網絡的時延進行比較分析,驗證了TTAFDX網絡傳輸時間確定性的特點。
1.1時間觸發AFDX網絡技術
AFDX網絡通過采用虛擬鏈路技術、冗余傳輸技術和流量管制技術對通信任務的速率進行了約束,稱此類傳輸數據為速率限制(Rate Constraint,RC)流量[3]。TTAFDX在AFDX基礎上引入了時間觸發機制,通過合理地調度將通信任務定時觸發發送,稱此類數據傳輸為時間觸發(Time-Triggered,TT)流量。時間觸發機制建立在全局時鐘精確同步的前提下,因而TTAFDX需要加入時間同步技術,并對虛擬鏈路技術,冗余傳輸技術做出適應性改造以兼容AFDX網絡。
1.1.1時鐘同步技術精確的全局時鐘同步能夠確保任一時刻僅有一個節點對網絡進行訪問,能夠避免排隊所造成的時間延遲和抖動,使得數據傳輸延遲可預測[4]。TTAFDX采用SAE AS6802協議中所提出的同步技術,并在每個調度周期的固定時刻使用時鐘同步協議控制幀(Protocol Control Frame,PCF)進行時鐘同步。TTAFDX網絡中的交換機采用IEEE 1588 V2提出的透明時鐘(Transparent Clock,TC)概念,使用PCF幀中的8字節透明時鐘域,以216ns為計時單位累計同步協議控制幀的傳輸延遲。
1.1.2虛擬鏈路技術TTAFDX網絡按照所支持的流量類型定義了兩類VL:用以承載時間關鍵消息的時間觸發VL(Time-Triggered VL,TTVL)和繼承AFDX網絡中VL的速率限制VL(Rate-Constrained VL,RCVL)[6]。TTVL的發送活動嚴格按照時刻調度表的規劃時刻來觸發,在全局時鐘精確同步的條件下,可以避免數據在鏈路上發生共享沖突,確保其時間確定性和實時性。RCVL的優先級低于TTVL,在保障TTVL按規劃傳輸的基礎上才能進行傳輸。
1.1.3冗余管理技術TTAFDX設計了兩種冗余管理機制:異步冗余管理(asynchronous Redundancy Management,aRM)和同步冗余管理(synchronous Redundancy Management,sRM)。
TTAFDX網絡中的RC流量數據幀的到達時刻具有一定的不確定性,目的端系統無法通過接收時間窗進行冗余管理,因此沿用符合標準ARINC 664 Part 7的異步冗余管理機制[5]。
同步冗余管理(synchronous Redundancy Management,sRM)以全局時鐘同步為基礎,對TT消息進行冗余管理。目的端系統通過查詢調度表能夠知道TTVL中數據幀的最壞接收時間點,當最壞接收時間點到達時,控制器將通過完整性檢查的拷貝傳遞至應用層并清除所有臨時存儲的冗余拷貝。
1.2時間觸發AFDX網絡協議
TTAFDX網絡的端系統協議與AFDX相同,按照OSI分層模型共分為7層,其中網絡層、傳輸層和應用層與普通的以太網相同。為了完全兼容AFDX,TTAFDX僅在數據鏈路層中增加了VL的時間觸發通信機制,所增加的VL時間調度層不影響數據鏈路層以上的協議。TTAFDX同樣采用端口、隊列端口以及SAP與應用程序進行通信。
普通AFDX數據幀中的目的MAC地址具有32位的常量域和16位的VL標志符,可將32位的常量域改造為8位固定域與24位的虛擬鏈路類型設置域。當端系統檢測到TT標識符域的高4位為“0110”時,則數據幀所在的虛擬鏈路為時間觸發虛擬鏈路,采用時間觸發調度策略進行調度;若不是,則為速率限制虛擬鏈路,采用常規調度策略。
TTAFDX中時間觸發調度本質上是一種基于表的靜態調度,但不同與TTCAN等總線結構的時間觸發調度[7]——它們的各個端系統具有相同的調度表,TTAFDX網絡中每個TT幀的發送端都存有一個TT幀發送時刻調度表。VL時刻調度表包含一個矩陣周期(Matrix Cycle,MC),它由若干個基本周期(Basic Cycle,BC)組成[3]。其中MC表示為時間觸發虛擬鏈路數據幀調度的任務周期;BC為時間觸發虛擬鏈路數據幀傳輸的最小周期。對于系統中的N個周期消息,取最小周期作為BC。為了保證每一消息的平均周期,MC的持續時間必須是所有消息周期的最小公倍數或最小公倍數的整數倍。根據AFDX協議中規定的BAG取值范圍為2kms,k=0,...,7,可以設定VL時刻調度表的MC為所有BAG取值的最小公倍數,即128 ms,BC為所有BAG取值的最大公約數1 ms。
VL時刻調度表中的每個BC都開始于一個時鐘同步數據幀(SYNC),并且以下一個SYNC的開始作為結束。SYNC采用SAE AS6802協議中的PCF格式,具有28字節長度,其中前4個字節用于記錄時間所處的BC位置,最后8個字節用于累計SYNC幀的傳輸延遲。以BC為時間單位進行時鐘同步可以保障網絡中各個節點的時鐘是完全同步的,使得完善的離線設計VL時刻調度表能夠保證TT幀在端系統不會發生爭用物理鏈路的情況。每個BC又分為兩段,前一段專用于發送TT流量數據(包含SYNC幀),后一段用于發送RC流量數據[6]。RC端的最后可預留出一個當前所有通信任務中最大幀長的傳輸時間作為保護間隔,以避免對下一BC內TT幀的發送造成延遲。在TT段中,時間資源又被分為時窗(Time window)。由于TTAFDX中TT流量的幀長不固定,BC中各個時窗的大小也不確定,但MC中同一列時窗的大小相同,其大小等于在此時窗中傳輸消息的最大幀長。
2.1周期優先的調度表設計
每個端系統對TTVL發送時刻的規劃都將按照如下的調度算法執行。
1)對端系統發送的N條TTVL按照BAG從小到大的順序排序,若BAG相同則按照Lmax長度由從大到小的順序排序,排序后的TTVL對應標記為VLk(k從1到N),相應的最大線路幀長記為Lk,轉到第2步;
2)按照標記順序對TTVL發送時刻進行規劃,初始狀態令k=1,Lsum=LSYNC,其中Lsum表示基本周期已配置的幀長和,轉至第3步;

4)該端系統已完成所有TTVL的發送時刻規劃;
5)帶寬有限,無法對該端系統中所有TTVL的發送時刻完成規劃。
2.2時間觸發虛擬鏈路交換機調度算法設計
交換機每個輸出端口都維護一張通過此端口轉發的TTVL轉發時刻調度表。TTVL數據幀到達交換機輸出端口的時刻不由交換機端口決定,所以轉發表的規劃將不采用基本周期組成矩陣周期的方式,而是直接以128 ms為周期進行轉發時刻表的規劃。當所有VL的靜態路由和所有TTVL的發送時刻配置完成后,交換機內部的所有端口的轉發時刻調度表配置算法如下:
1)按照BAG從小到大的順序對需要轉發的N條TTVL排序,若BAG相同則按照Lmax長度由從大到小的順序排序,排序后的TTVL對應標記為VLk(k從1到N),相應的最大線路幀長記為Lk轉到第2步;
2)按照標記順序規劃TTVL在交換機中的轉發時刻,初始狀態令k1=,其轉到第3步;

4)該交換機端口已完成所有TTVL的轉發時刻規劃;
5)帶寬有限,無法對該交換機端口中所有TTVL的轉發時刻完成規劃。


式中,Dpropagation是數據幀在物理鏈路上傳輸所引起的時延,由于物理介質上傳播速度是固定的,這一時延具有確定值;數據在發送端的時延Dtx,k可用公式(2)定義:

式中,Gk為虛擬鏈路VLk的帶寬分配間隔;τtech為源端系統的技術時延,ARINC 664協議中規定端系統的技術延時不超過150μs;τframe,k是虛擬鏈路VLk將數據幀發送至物理鏈路層所造成的延遲;EJmax,k為復用調度策略所導致的數據隊列等待時延。Drx,k主要為技術延時,ARINC 664協議中規定目的端的技術延時不得超過150μs。
TTAFDX數據幀在交換機中將經過數據幀過濾、數據幀轉發和數據幀發送三個步驟,其時延計算方法為:

式中,τfilter為數據幀過濾時延,AFDX協議規定每個交換機端口必須能及時過濾以線速到達的任意大小的有效數據幀,通常設為8μs;τfw為數據幀轉發時延,AFDX規定交換機在1 ms內要求轉發的數據幀數量一般為交換機的端口數*125,則τfw可設為8μs;τrv是交換機接收端口在接收數據幀時產生的時延,由各虛擬鏈路所傳輸的最大幀長度決定;SJmax,i為交換機系統多路復用時延。
3.1TTAFDX網絡模型
TTAFDX采用與傳統AFDX相同的星型拓撲網絡結構,具有轉發速度快,時延小,實時性好,能夠降低網絡負荷等特點。本文采用的網絡模型如圖1所示,包括3個交換機SW1,SW2,SW3,8個端系統ES1,…,ES8和12條虛擬鏈路VL1,…,VL12,各個虛擬鏈路均為單播虛擬鏈路,且相鄰節點間的距離為100 m,所使用物理鏈路的傳輸速率為2×108m/s 。

圖1 時間觸發AFDX網絡模型圖Fig.1 Time-triggered AFDX network model
表1列出了圖1中12條虛擬鏈路的相關參數:

表1 時間觸發AFDX網絡模型虛擬鏈路配置表Table 1 Virtual link configuration of time-triggered AFDX network model
3.2TTAFDX時間觸發虛擬鏈路實時性分析
以時間觸發虛擬鏈路VL6為例進行分析,VL6、VL7和VL8由ES3發送至SW2,按照周期優先調度表設計方法可得ES2的時刻調度表,如圖2所示。

圖2 端系統ES3調度時刻表示意圖Fig.2 End system ES3 schedule time diagram
VL6、VL7和VL8三條TTVL到達交換機SW2之后轉發至交換機SW3的時刻調度表如圖3:

圖3 SW2對VL6、VL7和VL8的時刻調度表示意圖Fig.3 Schedule time diagram at SW2 for VL6、VL7 and VL8
依照公式(3)可得VL6在交換機SW2中第一次被調度的時刻為:

TTVL6到達交換機SW3之后將轉發至端系統ES7,其第一次被調度的轉發時刻為:

根據對各TTVL在傳輸路徑中的調度時刻,能夠計算出各個TTVL的端到端延遲,如表2所示:

表2 TTAFDX中時間觸發虛擬鏈路端到端時延統計表Table 2 Time-triggered virtual link end-to-end delay statistics in TTAFDX
由于TTVL數據流在配置的時域內獨享整個帶寬,且在傳輸路徑中完全按照調度時刻表進行發送,無需進行排隊等待,所以TTVL的端到端時延僅包含固定時延部分,也不存在時延抖動的現象。表2中各VL的時延能夠有效地證明以上結果。
3.3AFDX中FIFO調度算法實時性分析




以虛擬鏈路VL6為例,其串聯服務曲線為:

根據表2中所設定的各虛擬鏈路參數,經過計算,得到12條虛鏈路的延遲上界(表3)。

表3 AFDX采用FIFO調度機制虛擬鏈路端到端時延統計表Table 3 Virtual link end-to-end delay statistics in AFDX using FIFO schedule strategy
3.4TTAFDX速率限制虛擬鏈路實時性分析



對于RCVL聚合流GRC的組成虛擬鏈路VLi,其在GRC中仍以FIFO調度策略接受交換機的服務,按照3.3小節中FIFO調度策略部分的相關推導,可得:

根據表2中所設定的各虛擬鏈路參數,經過計算,得到5條速率限制虛鏈路的延遲上界(表4)。

表4 TTAFDX中速率限制虛擬鏈路端到端時延上界統計表Table 4 Rate-constraint virtual link end-to-end delay statistics in TTAFDX
TTAFDX網絡在時間同步的基礎上,將時間觸發機制引入AFDX,通過對虛擬鏈路、網絡協議等進行適應性從而達到在兼容速率限制流量的同時,能夠確保時間關鍵消息的時間確定性和實時性。針對時間觸發虛擬鏈路的特性,提出了周期優先的端系統調度時刻設計算法以及相應的交換機調度算法。采用網絡演算方法對AFDX所支持的“先到先服務”調度算法進行了時延分析。通過與TTAFDX中的時間觸發虛擬鏈路和速率限制虛擬鏈路時延進行比較,能夠發現時間觸發虛擬鏈路能夠支持硬實時特性的數據傳輸,同時速率限制虛擬鏈路的時延也能夠有所降低。
參考文獻
[1] Pickles B. Avionics Full Duplex Switched Ethernet(AFDX)[J]. SBS Technologies,2006,15(2): 62-65.
[2]徐科華.AFDX總線網絡數據傳輸分析[J].民用飛機設計與研究,2009(3):35-40
[3]劉晚春,李峭,何鋒,等.時間觸發以太網同步及調度機制的研究[J].航空計算技術,2011,41(4):122-127
[4] Steinbach T,Korf F,Schmidt TC. Real-time Ethernet for automotive applications: A solution for future in-car networks[C]//Consumer Electronics-Berlin(ICCE-Berlin). Berlin: 2011 IEEE International Conference,2011:216-220
[5]熊華鋼,李峭,黃永葵.航空電子全雙工交換式以太網標準研究(續)[J].航空標準化與質量,2008(2):20-23
[6]劉成,王彤,李錚,等.時間觸發AFDX網絡的設計和實時性分析[J].北京航空航天大學學報,2013,39(6):728-733
[7] Li X. Research on the Real-Time Property of TTCAN Protocol in Vehicle Communication Network[J]. Applied Mechanics and Materials,2014,487:674-677
[8] Boudec JYL,Thiran P. Network calculus: a theory of deterministic queuing systems for the internet[M]. Germany: Springer-Verlag,2001:272
SchedulingStrategyDesignandReal-timeAnalysisofTime-triggeredAFDX
JIAO Wen-zhe1,ZHAI Zheng-jun1,WANG Guo-qing1,2
1. School of Computer Science/Northwestern Polytechnical University, Xi’an 710129,China
2. China National Aeronautical Radio Electronics Research Institute, Shanghai 200233,China
Abstract:To solve the temporal determinism problem of time-critical message transmission in Avionics Full Duplex Switched Ethernet(AFDX),this paper proposed the network architecture of Time-triggered AFDX(TTAFDX)and designed the scheduling algorithm of time-triggered virtual link based on cycle-prior end system to contrast the real-time performance between TTAFDX and AFDX by the method of network calculus. The results showed that the delay of time-triggered virtual link in TTAFDX mainly consisted of fixed part and the real-time of the rate constraint virtual link was higher than AFDX. At the same time,TTAFDX architecture was compatible to AFDX and could enhance temporal determinism to be suitable for the avionics with hard real-time transmission requirement.
Keywords:AFDX;time-triggered;scheduling strategy;real-time analysis;network calculus
作者簡介:焦文喆(1985-),男,博士,主研方向:航電網絡,網絡存儲技術,數據安全. E-mail:wenzhejiao@163.com
收稿日期:2014-10-20修回日期:2014-11-06
中圖法分類號:TP393
文獻標識碼:A
文章編號:1000-2324(2016)01-0111-07