孫學
(中國西南電子技術(shù)研究所,成都610036)
基于Fabric網(wǎng)絡(luò)平臺的中間件設(shè)計?
孫學
(中國西南電子技術(shù)研究所,成都610036)
基于Fabric網(wǎng)絡(luò)拓撲及其傳輸特點,設(shè)計了模塊級綜合化信號與信息處理機的網(wǎng)絡(luò)通信中間件模型,詳細描述了其中的Fabric通信模型、網(wǎng)絡(luò)管理模型和圖形化配置監(jiān)控模型。該中間件通過映射Fabric物理端口為多個邏輯通信端口,屏蔽網(wǎng)絡(luò)鏈路的容錯細節(jié),以及靜態(tài)邏輯連接關(guān)系和應(yīng)用部署的動態(tài)綁定,實現(xiàn)了位置無關(guān)的網(wǎng)絡(luò)通信、應(yīng)用部署、容錯控制、配置及監(jiān)控維護等處理機平臺基礎(chǔ)設(shè)施,減小了系統(tǒng)應(yīng)用與機器平臺的設(shè)計耦合,增強了系統(tǒng)應(yīng)用的設(shè)計靈活性,可以顯著提高系統(tǒng)應(yīng)用的集成效率。
綜合化信號與信息處理機;開關(guān)網(wǎng)絡(luò);中間件設(shè)計;網(wǎng)絡(luò)管理
采用協(xié)議開放的開關(guān)互連技術(shù)(Fabric或Switched Fabric)取代共享總線技術(shù)實現(xiàn)以Fabric網(wǎng)絡(luò)為中心的信號與信息處理機硬件架構(gòu)是模塊級高度綜合集成系統(tǒng)的首選方案[1,2]。同時,F(xiàn)abric網(wǎng)絡(luò)也帶來了一系列需要解決的技術(shù)應(yīng)用問題,涉及網(wǎng)絡(luò)通信、應(yīng)用部署、容錯控制、配置及監(jiān)控維護等,而且這些處理機平臺基礎(chǔ)設(shè)施對平臺應(yīng)用設(shè)計人員具有較大技術(shù)挑戰(zhàn)性。
本文基于雙星型Fabric網(wǎng)絡(luò)平臺引入一種中間件設(shè)計模型,向下封裝復(fù)雜的Fabric網(wǎng)絡(luò)特性,向上提供應(yīng)用構(gòu)件間的交互接口,實現(xiàn)應(yīng)用構(gòu)件的邏輯關(guān)聯(lián)和動態(tài)配置功能,從而把綜合化設(shè)備緊耦合的物理關(guān)聯(lián)分解成松耦合的邏輯關(guān)聯(lián),把功能波形的物理綜合問題分解為邏輯獨立的系統(tǒng)構(gòu)件集成問題,把波形綜合對系統(tǒng)全局的關(guān)聯(lián)影響分解為構(gòu)件集成對系統(tǒng)局部的接口影響,減小了系統(tǒng)應(yīng)用與機器平臺的設(shè)計耦合,增強了系統(tǒng)應(yīng)用的設(shè)計靈活性,可以顯著提高系統(tǒng)應(yīng)用的集成效率。
本文第2節(jié)和第3節(jié)描述Fabric硬件拓撲和基于該平臺的中間件模型,第4節(jié)、第5節(jié)和第6節(jié)對該中間件模型的設(shè)計實現(xiàn)進行重點描述,分別是Fabric通信設(shè)計、網(wǎng)絡(luò)管理設(shè)計和圖形化配置及監(jiān)控設(shè)計。
Fabric網(wǎng)絡(luò)拓撲如圖1所示[3]。S1-1、S1-2和S1-3交換節(jié)點構(gòu)成主交換網(wǎng)絡(luò)S1,S2-1、S2-2和S2-3交換節(jié)點構(gòu)成備交換網(wǎng)絡(luò)S2,S1和S2構(gòu)成雙星型網(wǎng)絡(luò)拓撲。葉子節(jié)點與S1連接的鏈路稱為主鏈路,與S2連接的鏈路稱為備鏈路,SM1與SM2之間的鏈路為網(wǎng)絡(luò)同步鏈路。SM1為系統(tǒng)管理主節(jié)點,SM2為系統(tǒng)管理備節(jié)點;NM1為網(wǎng)管主節(jié)點,NM2為網(wǎng)管備節(jié)點;N1~N n為處理機平臺普通處理節(jié)點。
Fabric網(wǎng)絡(luò)平臺的中間件結(jié)構(gòu)模型如圖2所示[4]。N1、N2、N3等葉子節(jié)點由DSP、PowerPC以及FPGA-core等含有Fabric接口的處理器組成;S1和S2是對等拓撲結(jié)構(gòu)的Fabric交換網(wǎng)絡(luò),由Fabric交換節(jié)點組成。在以上Fabric網(wǎng)絡(luò)硬件平臺上,構(gòu)建的中間件模型組成部分包括通信管理、節(jié)點管理、網(wǎng)絡(luò)管理以及系統(tǒng)管理。
通信管理完成Fabric接口驅(qū)動和網(wǎng)絡(luò)枚舉,提供網(wǎng)絡(luò)異構(gòu)節(jié)點硬件的控制和操縱;通過媒體接入管理提取資源信息并完成標識符等信息的統(tǒng)一映射;完成物理鏈路帶寬分配等鏈路控制及其狀態(tài)管理;完成邏輯鏈路協(xié)議等傳輸控制和資源管理。
節(jié)點管理提供Fabric葉子節(jié)點資源的控制管理,包括節(jié)點BIT、程序的動態(tài)加載和在線更新等控制管理功能,提供節(jié)點工作狀態(tài)監(jiān)控以及運行維護的遠程控制代理。
網(wǎng)絡(luò)管理是Fabric網(wǎng)絡(luò)的管理中樞,完成Fabric網(wǎng)絡(luò)資源的信息組織和倉儲,根據(jù)系統(tǒng)配置實現(xiàn)網(wǎng)絡(luò)物理拓撲和邏輯關(guān)聯(lián)關(guān)系管理、動態(tài)路由計算、網(wǎng)絡(luò)狀態(tài)監(jiān)測和網(wǎng)絡(luò)鏈路的容錯處理,實現(xiàn)通信物理鏈路和邏輯鏈路的狀態(tài)收集和日志記錄。
系統(tǒng)管理是整個信號與信息處理機系統(tǒng)的管理中樞,提供Fabric網(wǎng)絡(luò)物理拓撲和邏輯對象關(guān)聯(lián)關(guān)系的配置和靜態(tài)規(guī)劃;提供網(wǎng)絡(luò)及節(jié)點遠程監(jiān)控;提供系統(tǒng)節(jié)點資源的容錯處理以及應(yīng)用部署策略等。
系統(tǒng)管理的應(yīng)用部署、網(wǎng)絡(luò)拓撲規(guī)劃和邏輯關(guān)聯(lián)配置與網(wǎng)絡(luò)管理的接口,提供邏輯對象與物理實體之間的動態(tài)綁定,這是綜合化設(shè)備緊耦合的物理關(guān)聯(lián)分解成松耦合的邏輯關(guān)聯(lián)的關(guān)鍵。
網(wǎng)絡(luò)管理和通信管理的接口提供物理對象和邏輯對象,邏輯對象關(guān)聯(lián)信息的集中式分發(fā),實現(xiàn)應(yīng)用程序之間面向?qū)ο蟮男畔⒔换ァ?/p>
另外,通信管理的網(wǎng)絡(luò)接口和驅(qū)動與網(wǎng)絡(luò)管理的資源掃描進行接口,這是網(wǎng)絡(luò)底層硬件特性所固有的接口。通過硬件層次緊耦合換取應(yīng)用層次松耦合設(shè)計,把功能波形的物理綜合問題分解為邏輯獨立的系統(tǒng)構(gòu)件集成問題。
系統(tǒng)管理的節(jié)點監(jiān)控與節(jié)點管理之間的系統(tǒng)控制接口提供系統(tǒng)級控制管理通道;系統(tǒng)管理的網(wǎng)絡(luò)監(jiān)控與網(wǎng)絡(luò)管理之間的平臺控制接口提供Fabric平臺級控制管理通道。這兩個通道的分離設(shè)計,有利于把波形綜合對系統(tǒng)全局的關(guān)聯(lián)影響分解為構(gòu)件集成對系統(tǒng)局部的接口影響,同時也為系統(tǒng)和平臺的配置、監(jiān)視和維護提供了遠程控制通道。
在分布式信號與信息處理機處理器之間或處理器的不同線程之間,F(xiàn)abric通信軟件利用Fabric網(wǎng)絡(luò)底層硬件通信機制和操作系統(tǒng)的資源調(diào)度策略,實現(xiàn)Fabric接口通信資源的管理機制(如收發(fā)單元的管理)、數(shù)據(jù)緩存管理機制(如Fabric接口內(nèi)外部存儲資源的復(fù)用策略)、發(fā)送接收隊列的管理機制、物理資源和邏輯資源的關(guān)聯(lián)策略(如邏輯端口管理)、定時管理以及握手協(xié)議等,通過少量的通信庫函數(shù)為應(yīng)用程序提供高效的數(shù)據(jù)傳輸服務(wù)。
根據(jù)中間件模型設(shè)計,F(xiàn)abric通信軟件需要具備在同一個Fabric物理端口提供多個邏輯端口通信能力,這是應(yīng)用程序之間面向?qū)ο蟮男畔⒔换サ幕A(chǔ),如圖3所示。
在ISO/OSI七層模型和TCP/IP四層模型基礎(chǔ)上,結(jié)合Fabric網(wǎng)絡(luò)特性為通信軟件設(shè)計高效輕量的協(xié)議分層模型如圖4所示。
Fabric通信軟件包括進程間通信(IPC)功能和網(wǎng)管代理功能。IPC部分提供高速可靠的進程間通信功能;網(wǎng)管代理部分輔助網(wǎng)管實現(xiàn)對網(wǎng)絡(luò)中各節(jié)點的Fabric接口管理和維護,為IPC部分的正常運行提供支持。與參考模型相比,F(xiàn)abric協(xié)議更類似于TCP/IP參考模型,得益于Fabric交換技術(shù),數(shù)據(jù)鏈路層和網(wǎng)絡(luò)層設(shè)計更為簡約。
接口封裝:IPC通過網(wǎng)管接口和應(yīng)用接口分別向網(wǎng)管和應(yīng)用程序提供相應(yīng)的服務(wù)。應(yīng)用程序只需使用其所提供的接口獲取網(wǎng)管代理和IPC所提供的服務(wù),而無需關(guān)心通信協(xié)議內(nèi)部是如何傳輸和實現(xiàn)的。
網(wǎng)管代理:網(wǎng)管代理將網(wǎng)管發(fā)出的控制命令與信息傳送到每個節(jié)點,每個節(jié)點上的網(wǎng)管代理再分別控制IPC中的功能,實現(xiàn)如建立連接、掛起連接等一系列的操作,通過這種方式實現(xiàn)網(wǎng)管對節(jié)點通信的集中管理。
傳輸層:在IPC中傳輸層將邏輯鏈路層的鏈路復(fù)用成多條邏輯的鏈路,為每個鏈路分配端口標識并維護這些鏈路的狀態(tài)。應(yīng)用程序收發(fā)的數(shù)據(jù)通過傳輸層的處理后到達邏輯鏈路層。
邏輯鏈路層:所有復(fù)用的邏輯鏈路最終匯合在這一層上,保障所有數(shù)據(jù)的收發(fā)并維護在該層上的鏈路。該層同時保障數(shù)據(jù)的優(yōu)先級,如果在該層的隊列中同時存在多個優(yōu)先級的數(shù)據(jù),高優(yōu)先級的數(shù)據(jù)要比低優(yōu)先級的數(shù)據(jù)先出隊列并發(fā)送出去。
媒體接入控制層:該層是對硬件的抽象接口,實現(xiàn)上層協(xié)議和Fabric底層硬件特性隔離,使用統(tǒng)一的接口實現(xiàn)數(shù)據(jù)的收發(fā)與配置。
在綜合化信號與信息處理機系統(tǒng)中,F(xiàn)abric網(wǎng)絡(luò)是由多個節(jié)點板卡通過底板互連的,使得同一個板卡內(nèi)及板卡之間的連接關(guān)系是確定的,網(wǎng)絡(luò)的規(guī)模隨著接入板卡的多少存在變化,但網(wǎng)絡(luò)中的節(jié)點連接關(guān)系是確定的,即實際的網(wǎng)絡(luò)拓撲必然是最大設(shè)定拓撲結(jié)構(gòu)的子集,如圖5所示。
雙星型Fabric網(wǎng)絡(luò)采用了兩級容錯方法,第1級為中心交換網(wǎng)絡(luò)容錯,第2級為交換鏈路容錯,如圖7所示。當主網(wǎng)絡(luò)鏈路故障,備網(wǎng)絡(luò)工作正常時,進行主備網(wǎng)絡(luò)切換,實現(xiàn)第1級中心網(wǎng)絡(luò)容錯;當備網(wǎng)絡(luò)鏈路繼續(xù)故障時,這時網(wǎng)絡(luò)帶故工作實現(xiàn)第2級網(wǎng)絡(luò)鏈路容錯;備網(wǎng)絡(luò)故障或單網(wǎng)絡(luò)工作時,主網(wǎng)絡(luò)鏈路故障直接進行第2級鏈路容錯。
預(yù)先設(shè)定最大拓撲中每個節(jié)點的關(guān)鍵信息,并將最大拓撲信息保存于非易失存儲區(qū),使得系統(tǒng)枚舉的每個節(jié)點的關(guān)鍵信息均可從模板拓撲中提取,提高了網(wǎng)絡(luò)枚舉效率,保證了關(guān)鍵應(yīng)用的確定性時延指標。
網(wǎng)絡(luò)中間件的通信配置模型如圖6所示。系統(tǒng)管理向Fabric葉子節(jié)點發(fā)送程序加載控制指令,向Fabric主網(wǎng)管下發(fā)程序部署指令;網(wǎng)絡(luò)管理根據(jù)程序間的邏輯關(guān)聯(lián)關(guān)系和網(wǎng)絡(luò)物理拓撲,執(zhí)行動態(tài)路由配置并向系統(tǒng)管理上報節(jié)點間通信配置結(jié)果。
采用在GUI上構(gòu)造網(wǎng)絡(luò)拓撲的方式,錄入與讀取網(wǎng)絡(luò)物理部件拓撲連接關(guān)系。通過圖形化描述把應(yīng)用程序模塊信息封裝成標準化的圖形化軟件構(gòu)件,每個軟件部件信息包括軟件模塊名稱、對外接口名稱及其綁定的邏輯端口號等信息。把硬件處理模塊信息封裝成標準化的圖形化硬件部件,每個硬件部件信息包括硬件類型、硬件模塊插槽編號等信息。采用鼠標拖動軟件構(gòu)件到硬件部件相應(yīng)的處理器中來表達軟件在硬件上的部署和信息綁定關(guān)系,在軟件部件端口間畫連接線表達軟件部件之間的連接關(guān)系。
用這種可視化方式來翻譯和表達網(wǎng)絡(luò)物理拓撲、邏輯關(guān)聯(lián)關(guān)系,以及部署關(guān)系等配置信息,并通過軟件工具自動轉(zhuǎn)換成網(wǎng)絡(luò)管理軟件可以識別的文本格式,實現(xiàn)所見即所得的網(wǎng)絡(luò)配置、監(jiān)視和維護控制,簡化了中間件的使用要求并提升了用戶體驗,如圖8所示。
本文提出了一種基于雙星型Fabric網(wǎng)絡(luò)拓撲的中間件設(shè)計模型,能夠提供與位置無關(guān)的網(wǎng)絡(luò)通信、應(yīng)用服務(wù)的動態(tài)部署、網(wǎng)絡(luò)節(jié)點的容錯控制,以及圖形化的配置、監(jiān)控與運行維護功能。在某綜合化信號與信息處理機的設(shè)計和集成應(yīng)用過程中,基于該設(shè)計模型的中間件軟件功能穩(wěn)定、性能優(yōu)良;基于該中間件設(shè)計的綜合化系統(tǒng)與平臺耦合度小,能提高3~5倍的系統(tǒng)集成效率,效果明顯。本文可供相關(guān)工程設(shè)計參考。
[1]錢義東.雙星型網(wǎng)絡(luò)拓撲可靠性分析[J].計算機工程,2009,35(16):224-227.
QIANYi-dong.Availability Analysis of Double-star Network Topology[J].Computer Engineering,2009,35(16):224 -227.(in Chinese)
[2]孫學,段求輝,陳穎.StarFabric技術(shù)綜述[J].中國電子科學研究院學報,2007,2(2):191-196.
SUN Xue,DUAN Qiu-hui,CHEN Ying.A Survey of Star-Fabric Technology[J].Journal of China Academy of Electronics and Information Technology,2007,2(2):191-196.(in Chinese)
[3]Gunkel M,Schneiders M.Aggregation Networks:Cost Comparison ofWDM Ring vs.Double Star Topology[C]//Proceedings of2008 International Conference on Optical Network Design and Modeling.Vilanova i la Geltru:IEEE,2008:1-5.
[4]AEEC/ARINC 651-1,Design guidance for integrated modular avionics[S].
Midd leware Software Design Based on Switched Fabric Platform
SUN Xue
(Southwest China Institute of Electronic Technology,Chengdu 610036,China)
Based on Fabric topology and its characteristics,amiddleware designmodel of the Fabric platform applied in the Integrated Modular Architecture Signal&Information Processor is proposed.The Fabric communication model,the Fabric managementmodel,and the graphic Configuration&Surveillance&Control(CSC)model are described.Themiddlewaremaps Fabric physical port tomultiple logic communication ports,shields the details ofmending link faults,and bundles the static logic connection relationship and the dynamic deploymentofapplications.Itprovides themain platform infrastructure of processor,including the function of Fabric communication independent on place,the function of application deployment,the function of faults tolerance control,the function of CSC,and the function of Fabricmaintenance.Italleviates the coupling between applications and processor platform,promotes the agility of application design,and greatly accelerates the integration of applications of the system.
integrated signal&information processor;switched Fabric;middleware design;network management
the M.S.degree from Chongqing University in 2004.He is now an engineer.His research concerns switch Fabric,distributed computing and array computing.
1001-893X(2011)11-0079-05
2011-06-01;
2011-09-26
TN915;TP393
A
10.3969/j.issn.1001-893x.2011.11.016
孫學(1978—),男,重慶合川人,2004年于重慶大學獲碩士學位,現(xiàn)為工程師,主要研究方向為交換式總線、分布式計算和陣列計算技術(shù)。
Email:sun8xue@163.com
SUN Xue was born in Hechuan,Chongqing,in 1978.He