徐玉杰 孟博 張楠



摘要:隨著FC網絡的發展及大量部署,FC網絡協議測試設備的需求大幅增加。傳統的FC網絡協議測試設備造價昂貴,可擴展性差。該文基于通用的FC網絡節點,開發簡單的軟硬件適配組件,搭建一個FC協議測試設備,可滿足FC網絡設備的測試需求,適合大規模產品測試及協議測試,具有良好的可擴展性。
關鍵詞:FC協議測試;測試模式;發送測試;接收測試;性能測試;損傷測試
中圖分類號:TP336;V243? ? ? 文獻標識碼:A
文章編號:1009-3044(2021)16-0043-03
開放科學(資源服務)標識碼(OSID):
1 FC網絡簡介
隨著計算機技術、通信技術和網絡構建技術的發展, 航空電子系統進一步向統一化、靈活化和便于融合的方向發展,對總線網絡的數據傳輸要求也越來越高。光纖通道(Fiber Channel,簡稱FC)具有高帶寬、低延遲、長距離傳輸、拓撲靈活、支持多種上層協議等優點[1],是一個為適應高性能數據傳輸要求而設計的通信協議。
FC采用層次化的結構,共分為5層。定義了3種拓撲結構:點對點、交換式、仲裁環網絡,既能方便地實現高速高效傳輸,同時也提供了極大的靈活性,特別是交換式網絡的拓撲,為復雜設備的互連提供了一種很好的解決方案。
2 FC協議測試設備現狀
隨著FC網絡的發展及大量應用部署,FC設備的測試需求大幅增加。在FC設備開發中,各種FC協議模擬、仿真,設備功能性能及互換性測試驗證工作量巨大,且需要專業設備進行輔助。
目前,大部分FC協議測試設備由JDSU等少數外國廠商壟斷,國產設備應用非常少,因此開發出高性價比、適應各種FC測試需求的設備非常必要。針對市場上對FC設備的測試需求,本文設計的FC協議測試設備基于PCIE接口的FC節點機產品,配以適當的轉接板,可靈活插入帶有PCIE接口的工控機中,并以此為硬件平臺。同時,開發一套上位機軟件,實現FC設備發送測試、接收測試、損傷測試等功能,滿足FC網絡產品的功能性能及協議測試。此外,上位機軟件可提供測試接口,供用戶自行開發定制化、自動化測試軟件,滿足大規模生產交付需求。
3 測試設備的硬件平臺
該設計中采用大規模FPGA進行自主開發實現FC協議,能有效滿足FC測試的需求,且具有良好的升級擴展能力。根據使用需求,本測試設備開發的目標是研制一個FC雙端口、通信速率軟件可配置,支持線速4.25Gb/s及以下速率,可完成被測FC產品數據發送測試、接收測試、損傷測試等功能。為了降低開發成本,最大限度的利用現有的資源,本設計中硬件平臺采用目前已大量使用的標準PCIE-FC電接口通信子卡,再適配一個轉接板使其可工作在PCIE接口的工控機中,其中FC光電接口轉換在實現轉接板上實現。硬件平臺如下:
4 測試設備的詳細設計
4.1 測試模式設置
該設計中FC協議測試設備具有四種測試模式,分別是點點測試、回環測試、直通測試、在線測試模式。連接示意圖如圖2所示。
該測試設備支持以下四種速率:1.0625Gb/s、2.125Gb/s、4.25Gb/s、8.5Gb/s。兩個端口的速率保持一致,任何一個端口選擇一個速率,另一端口隨之改變。
其次,可設置發送及接收緩沖區大小,范圍為0~4096MB-發送緩沖區。緩沖區空間大小一共為4096MB。即發送緩沖區與接收緩沖區合起來為4096MB。默認方式下收發各占2048MB,用戶可調整兩者所占用的空間。
接收數據時可選擇:捕滿停止、捕滿覆蓋。“捕獲停止”即當捕獲數據裝滿接收緩沖區時,捕獲自動停止;“捕滿覆蓋”即當捕捕獲數據裝滿接收緩沖區時,從頭開始覆蓋原來的數據。
4.2 發送測試
在FC網絡設備開發過程中,用戶往往需要對該網絡進行測試,模擬現實的FC數據注入網絡中,用來檢測網絡設備是否能夠正常工作。FC協議測試設備發送界面如圖3所示。
1)發送FC幀
發送數據按四個隊列分別進行設置,四個隊列具有發送優先級,發送隊列1 優先級最高,其他隊列依次遞減,發送隊列4 優先級最低。
每個發送隊列中數據的發送方式有兩種:循環、單次。選擇循環方式,將循環發送該隊列中的數據,優先級低于此隊列中的數據將不會發送;選擇單次方式,則將該隊列的數據發送完后,開始發送下面一個隊列中的數據。
選擇發送隊列后,設置隊列中的幀及原語。在“發送幀列表”中添加幀及原語。
2)發送原語及延時
除了在發送幀列表中加入幀外,用戶還可以添加原語,設置其所帶的參數及個數,將在發送幀列表中顯示所加的原語名字。
在發送列表中還可以加入時延,在編輯框中輸入時延值,單位為微秒。時延項表示發送時,延時100μs 再發送下一個幀或原語。
4.3 接收測試
接收測試功能是指設備通過捕獲FC鏈路中的數據并對數據進行分析,判斷鏈路是否存在故障。為了更好地完成對FC鏈路的測試,該功能根據測試需要提供了三種測試方法,分別是數據、數據過濾及搜索轉存。
1)數據顯示
該功能可捕獲數據鏈路上的全部數據,停止捕獲后以列表形式顯示捕獲的幀及原語。在捕獲數據顯示列表中,選擇某一項,列表下的兩個區域分別顯示幀的解碼與原始數據。數據幀的解碼為樹形控件顯示FC幀頭的詳細解碼信息,如果FC-AE-ASM 高層協議幀,則在凈荷中顯示其解碼信息,同時顯示其對應的原始數據。
2)數據過濾
FC鏈路速率較高,因此捕獲鏈路上的所有數據進行分析,工作量大,受存儲空間限制,捕獲的時間往往很短,因此該設備在接收測試中增加數據過濾功能。
在接收數據前,設置過濾條件對接收的數據內容進行過濾,或者觸發條件,當接收到特定的數據后開始將數據放入捕獲數據空間中。
過濾觸發條件可設置為原語、幀定界符、幀內容及錯誤等四種的組合。
3)搜索轉存
該子功能可實現對接收數據的按照幀類型、幀數據、原語、SOF、錯誤幀、觸發幀等條件進行搜索轉存,過濾與測試無關的數據。
當選擇幀數據搜索條件時,設置數據在幀中的偏移位置、數據內容及相應的掩碼,當掩碼為1 表示相應的數據有效,否則為不關心。如果設置了多個搜索條件,條件之間的關系為邏輯或,即其中一個條件滿足即可。按照設置的搜索條件完成搜索后,用戶可對全部或部分捕獲數據進行轉存。
4.4 損傷測試
損傷測試是指對接收到的FC幀數據或原語按照指定的規則進行修改后再發送出去,該功能用于模擬FC網絡通訊過程中的損傷。該功能可設置幀修改、幀地址替換及原語替換三種損傷模式。
當選擇損傷測試為“幀修改”時,需要設置觸發修改的條件,該設備會過濾FC幀,滿足觸發條件時自動進行幀數據修改。幀修改功能可支持設置4個觸發條件,當接收到內容符合的幀時,其對應的位置的幀數據就被修改為指定的數據。
幀地址替換指當接收到源地址或目的地址為某個值的幀數據時觸發替換,將接收幀的源地址或目的地址替換為指定的值,然后再發送出去。觸發替換的地址有效位為對應掩碼值為1的地址位。觸發替換的有效原語位為對應掩碼值為1的數據位。當點擊“開始”按鈕時,開始進行損傷測試。
原語替換指當接收到某個原語時觸發替換,將接收原語替換為指定的原語,然后再發送出去。
5 結束語
經過使用驗證,本文介紹基于FC節點機硬件平臺設計的FC協議測試設備實現了的FC協議測試功能,能夠完成的協議符合性測試、受測設備發送接收測試、損傷測試等基本測試,達到了設計目標。該設計充分利用現有的硬件資源,極大地降低了測試設備開發的風險及成本,所開發的設備可廣泛應用于各類FC網絡設備的設計開發及測試驗證,具有較廣闊的應用前景。
參考文獻:
[1] INCITS.T11/08-013v1.Fibre channel avionics environementanonymous subscriber messaging(ASM)/Ammendment 1[S].Washington:InterNational Committee for Information Technology Standards,2008.
[2] 黃文南.FC協議測試卡的軟件設計與實現[J].電子測量技術,2015,38(3):21-25.
[3] 趙琳,李健.一種航電系統FC網絡管理系統研究與設計[J].電腦知識與技術,2017,13(32):56-57,69.
【通聯編輯:代影】