馬明毅 馮楠 譚曉川 周偉 李少波 王碧瑤 張曉樂
摘要:針對國內(nèi)對天地一體化的需求,提出一種基于NDP協(xié)議的IPv6 over AOS星間鏈路通信系統(tǒng),將IPv6數(shù)據(jù)包封裝在AOS幀中,通過激光在空間中傳輸,融合了地面網(wǎng)絡(luò)與空間網(wǎng)絡(luò),滿足了現(xiàn)階段數(shù)據(jù)傳輸?shù)母咚?、大容量需求。以FPGA作為網(wǎng)關(guān),實現(xiàn)了網(wǎng)關(guān)及其子網(wǎng)之間的地址解析功能以及路由表的動態(tài)配置。結(jié)合MPLS技術(shù),基于標(biāo)簽來進行路由決策,相比于原有基于IP路由進行轉(zhuǎn)發(fā)的交換方式降低了組網(wǎng)成本,提升同樣性能設(shè)備的轉(zhuǎn)發(fā)效率,具有良好的可擴展性。
關(guān)鍵詞:IPv6 over AOS;NDP協(xié)議;MPLS協(xié)議;地址解析
中圖分類號:TN393文獻(xiàn)標(biāo)志碼:A文章編號:1008-1739(2023)02-62-5
空天信息網(wǎng)絡(luò)技術(shù)是當(dāng)前世界各軍事強國的熱門研究方向,組建天地一體化信息網(wǎng)絡(luò)更是各國研究的熱門方向[1]。通過該網(wǎng)絡(luò)提供的大范圍、高精度信息在精確打擊、指揮控制等領(lǐng)域發(fā)揮著關(guān)鍵的作用。我國在航天通信領(lǐng)域采用國際空間數(shù)據(jù)系統(tǒng)咨詢委員會(Consultative Committee for Space Data Systems,CCSDS)協(xié)議架構(gòu)[2],AOS協(xié)議屬于CCSDS諸多空間通信協(xié)議的一種,是一種高級在軌系統(tǒng),可用于大容量數(shù)據(jù)處理以及高速通信,以AOS協(xié)議為基礎(chǔ)的體制方案在航空航天、衛(wèi)星通信和深空探測等領(lǐng)域都有重要的應(yīng)用。我國在AOS體制的使用上有許多成功案例,如神舟飛船、氣象衛(wèi)星、中繼衛(wèi)星和遙測科學(xué)等[3],但目前與發(fā)達(dá)國家相比,AOS體制還存在較大的缺陷,尚未形成完善的空間信息傳輸體制,我國在天地一體化信息網(wǎng)絡(luò)建設(shè)上還有巨大的發(fā)展空間[4]。
AOS協(xié)議充分迎合了我國空天網(wǎng)絡(luò)一體化的發(fā)展需求,在地面網(wǎng)絡(luò)通信與深空通信等領(lǐng)域都具有重要的意義。通過AOS協(xié)議搭載IPv6報文是實現(xiàn)天地一體化的一種合理選擇,實現(xiàn)了數(shù)據(jù)的實時、可靠傳輸,并且滿足了不同速率信息處理需求。而鄰居發(fā)現(xiàn)協(xié)議(Neighbor Discovery Protocol,NDP)作為IPv6的關(guān)鍵協(xié)議,具有地址解析、地址沖突檢測、鄰居不可達(dá)檢測、重定向、路由器發(fā)現(xiàn)、前綴發(fā)現(xiàn)、地址自動配置、參數(shù)發(fā)現(xiàn)和下一跳地址確定等功能[5],解決了不同節(jié)點之間地址的自動配置問題,提高了路由選擇的準(zhǔn)確性,保證了鏈路的實時可用。
本文在數(shù)據(jù)鏈路層采用AOS協(xié)議,在網(wǎng)絡(luò)層采用IPv6協(xié)議,改變了數(shù)據(jù)路由的靜態(tài)查表方式,基于NDP實現(xiàn)路由表的動態(tài)配置和IP,MAC地址的動態(tài)獲取,結(jié)合多協(xié)議標(biāo)簽交換(Multi-protocol Label Switching,MPLS)以FPGA作網(wǎng)關(guān)實現(xiàn)了IPv6數(shù)據(jù)包的收發(fā)、地址解析和協(xié)議轉(zhuǎn)換等功能技術(shù)。
系統(tǒng)總體結(jié)構(gòu)及硬件測試實物如圖1所示,每個FPGA具備2路千兆電口、路萬兆光口,千兆電口通過RJ45接口連接至主機,萬兆光口通過光纖連接至萬兆網(wǎng)卡,每塊FPGA可連接4臺設(shè)備,PHY芯片通過RGMII接口從主機發(fā)送以太網(wǎng)幀至FPGA,每個端口在FPGA內(nèi)部通過協(xié)議棧的方式配置IP地址和MAC地址,轉(zhuǎn)發(fā)信息表(FIB)和標(biāo)簽轉(zhuǎn)發(fā)信息表(LFIB)通過RS232串口線下發(fā)至每一塊FPGA板卡,數(shù)據(jù)包根據(jù)FIB和LFIB決定傳輸路徑。為了模擬空間鏈路數(shù)據(jù)傳輸,減少信號之間的相互串?dāng)_以及外部噪聲的干擾,數(shù)據(jù)包采用高速串行差分的方式通過TLK2711沿LVDS信號線進行傳輸,板卡共設(shè)計8路TLK2711,其中6路為SMA接口,2路為光模塊接口。
本文采用ping包的方式模擬業(yè)務(wù)發(fā)送過程。在主機A發(fā)送業(yè)務(wù)之前,首先需要基于NDP完成地址解析[6],由主機發(fā)送NS報文,F(xiàn)PGA將主機的IP地址和MAC地址存儲下來并回復(fù)NA報文,主機將所詢問IPv6地址下的MAC地址存入路由表中,之后主機即可開始發(fā)送IPv6數(shù)據(jù)包。網(wǎng)口發(fā)送至FPGA的數(shù)據(jù)包通過適配模塊,篩選出符合條件的ICMPv6數(shù)據(jù)包(以太網(wǎng)幀類型為0x86DD,下一頭部為58,端口號為2020)后將其封裝成AOS幀并基于MPLS技術(shù)根據(jù)標(biāo)簽在不同節(jié)點之間進行轉(zhuǎn)發(fā)。AOS幀按照主機通過RS232下發(fā)的FIB表在源節(jié)點壓入標(biāo)簽后,將AOS幀傳送至中間節(jié)點,中間節(jié)點根據(jù)LFIB表經(jīng)MPLS協(xié)議進行標(biāo)簽交換后,將其發(fā)送至目的節(jié)點。目的節(jié)點查詢FIB表,將標(biāo)簽替換為16hFFFF(標(biāo)簽 16hFFFF代表到達(dá)目的節(jié)點),并發(fā)送至端口所連接的設(shè)備上。
本文所使用的AOS激光通信幀格式如圖2所示,IPv6數(shù)據(jù)包包含在鏈路層的數(shù)據(jù)域內(nèi),AOS幀總長為1 024 Byte。為了實現(xiàn)幀同步,在激光通信幀前端加入4 Byte的同步頭,用于定位幀到達(dá)的時間,定界數(shù)據(jù)單元。版本號和航天器標(biāo)識構(gòu)成主信道標(biāo)識(MCID);虛擬信道標(biāo)識(VCID)和主信道標(biāo)識組成全局虛擬信道(GVCID)用于標(biāo)定每一條虛擬信道[7]。信令字段由回放標(biāo)志、虛擬信道幀使用標(biāo)志、保留域和虛擬信道幀計數(shù)循環(huán)4部分組成,用于標(biāo)定AOS幀的狀態(tài),0表示實時,1表示回放,可以對AOS幀進行存儲并在鏈路恢復(fù)時進行幀的回放。標(biāo)簽域共6 Byte,其中標(biāo)簽占2 Byte用于標(biāo)定數(shù)據(jù)包轉(zhuǎn)發(fā)路徑。DCN域占16個Byte,用于實現(xiàn)管控數(shù)據(jù)的封裝、適配和連接,為網(wǎng)絡(luò)單元設(shè)備提供管理和控制信息的通信功能,便于對網(wǎng)絡(luò)單元進行管理與維護。OAM域用于實現(xiàn)運行、管理和維護等相關(guān)功能,包括OAM開銷信息的提取與插入、OAM幀的生成與控制、故障和性能檢測以及告警上報等功能。
NDP相比于ARP在許多方面都有了很大的改善。如NDP IPv6組播技術(shù)避免了網(wǎng)絡(luò)擁塞[8],減少了所占用的帶寬,從而極大地提高了地址解析效率;NDP工作在網(wǎng)絡(luò)層與介質(zhì)無關(guān),因此可以在不同的網(wǎng)絡(luò)媒介上運行;避免了信息被其他節(jié)點竊聽,安全性得到了提升等。
NDP的地址解析過程如圖3所示,主機A在發(fā)送之前,需獲得主機B的鏈路層地址,為實現(xiàn)路由表的動態(tài)配置,可以通過NDP的地址解析功能動態(tài)獲取設(shè)備的鏈路層地址。類似于ARP[9],首先主機A向所連接設(shè)備(以主機B為例)發(fā)送一個NS報文,報文以主機A的IPv6地址作為源地址,主機B的被請求節(jié)點組播地址作為目的地址,用以解析出主機B的IPv6地址所對應(yīng)的MAC地址。當(dāng)主機B接收到了NS報文之后,就會回應(yīng)NA報文,NA報文的源地址為主機B的IPv6地址,目的地址為主機A的IPv6地址,不同于NS報文的組播,NA報文為單播,即完成了一個解析過程。
主機向FPGA發(fā)送IPv6數(shù)據(jù)包時,由于路由表中并沒有目的IP對應(yīng)的MAC地址,所以首先會發(fā)送NS報文,詢問目的IP對應(yīng)的MAC地址,由FPGA端回復(fù)端口的MAC地址后,主機開始發(fā)送數(shù)據(jù)包。另外,F(xiàn)PGA會定時發(fā)送NDP檢測端口所連設(shè)備是否正常連接?;贔PGA的NDP地址解析過程如圖4所示,假定主機A的IPv6地址為FE80:0:0:30::,MAC地址為C4-00-AD-74-96-C5,主機B的IPv6地址為FE80:0:0:10::,MAC地址為C4-00-AD-90-9F-76,主機A所連接FPGA1端口IPv6地址和M AC地址分別為FE80:0:0:01::和00-00-AD-90-9F-01,主機B所連接FPGA2端口IPv6地址和MAC地址分別為FE80:0:0:02::和00-00-AD-90-9F-02。首先主機A和主機B分別向FPGA1和FPGA2發(fā)送NS報文,當(dāng)FPGA收到NS報文后,分別向主機A和主機B反饋NA報文,但在MAC地址字段填寫FPGA1的端口號。相當(dāng)于主機A和主機B在詢問目的IP FE80:0:0:10::和FE80:0:0:30::所對應(yīng)的M AC地址,由FPGA1和FPGA2分別回復(fù)端口的MAC地址。
主機A和主機B通過NDP存儲的路由信息如圖4所示??梢钥闯?,通過NDP的地址解析功能,主機A和主機B的路由表中存儲了目標(biāo)IP地址以及其所連接FPGA端口的MAC地址,主機在獲得路由信息后,即可開始發(fā)送IPv6數(shù)據(jù)包。
多協(xié)議標(biāo)簽交換(Multi-Protocol Label Switching,MPLS)即給每一個IP數(shù)據(jù)報打上固定長度的標(biāo)記,然后通過硬件在鏈路層進行IP數(shù)據(jù)報轉(zhuǎn)發(fā)。該技術(shù)具備流量控制、負(fù)載均衡、路徑備份和故障恢復(fù)等優(yōu)勢,改變了傳統(tǒng)IP網(wǎng)絡(luò)可能出現(xiàn)的鏈路堵塞問題,通過靈活控制數(shù)據(jù)報的傳輸路徑,實現(xiàn)了資源的合理分配,從而大大加快了數(shù)據(jù)報的轉(zhuǎn)發(fā)速率。另外,可以配置2條或多條標(biāo)簽交換通道(LSP),選擇其中幾條作為備份,從而實現(xiàn)了業(yè)務(wù)流的合理分配,保證了業(yè)務(wù)的連續(xù)性[10]。
MPLS網(wǎng)絡(luò)由標(biāo)記交換路由器(Label Switching Router,LSR)和標(biāo)記邊緣路由器(Label Edge Router,LER)組成,如圖5所示。LER位于邊緣部分,負(fù)責(zé)標(biāo)簽的加入與去除LSR位于MPLS網(wǎng)絡(luò)的核心部分,負(fù)責(zé)標(biāo)簽交換[11]。各LSR基于標(biāo)記分配協(xié)議LDP傳輸數(shù)據(jù)包,并找出和特定標(biāo)記相對應(yīng)的路徑,即標(biāo)記交換路徑LSP。當(dāng)一個IP數(shù)據(jù)報進入MPLS域時,在入口結(jié)點(LER)壓入標(biāo)簽,并按照轉(zhuǎn)發(fā)表把它轉(zhuǎn)發(fā)給下一個LSR,以后所有LSR都按照標(biāo)簽進行轉(zhuǎn)發(fā)[12]。
MPLS協(xié)議包括LDP,LIB,F(xiàn)IB。LDP作為MPLS的核心技術(shù),通過信令機制實現(xiàn)標(biāo)簽分配與轉(zhuǎn)發(fā),F(xiàn)IB負(fù)責(zé)普通的IP報文的轉(zhuǎn)發(fā),而LFIB負(fù)責(zé)轉(zhuǎn)發(fā)帶MPLS標(biāo)簽報文的轉(zhuǎn)發(fā)。本文以IPv6地址作為轉(zhuǎn)發(fā)等價類(Forwarding Equivalence Class,F(xiàn)EC),根據(jù)FIB和LFIB建立標(biāo)簽交換路徑(Label Switching Path,LSP)采用雙向?qū)ing包的方式模擬數(shù)據(jù)轉(zhuǎn)發(fā),研究數(shù)據(jù)處理過程。
在通過NDP協(xié)議完成地址解析后,主機開始發(fā)送IPv6數(shù)據(jù)包并封裝成AOS幀并在AOS幀的標(biāo)簽域插入標(biāo)簽,對應(yīng)FIB表和LFIB表,當(dāng)收到普通IP的報文時查找FIB表,添加標(biāo)簽,進行MPLS轉(zhuǎn)發(fā)。當(dāng)收到帶有標(biāo)簽的報文時,查找LFIB表,如果對應(yīng)的出標(biāo)簽是普通標(biāo)簽,則進行MPLS轉(zhuǎn)發(fā),如果對應(yīng)的出標(biāo)簽是特殊標(biāo)簽(本文規(guī)定此標(biāo)簽為16hFFFF),則表明數(shù)據(jù)要發(fā)送至以太網(wǎng)口,將報文中的標(biāo)簽去掉,進行AOS幀解封裝和IP轉(zhuǎn)發(fā),數(shù)據(jù)傳輸流程如圖6所示。
實驗所用FIB表和LFIB表如圖7所示,其中FIB表分別下發(fā)至邊界點LER,LFIB表下發(fā)至中間節(jié)點LSR。FIB表中規(guī)定了IP地址對應(yīng)數(shù)據(jù)包應(yīng)壓入的標(biāo)簽以及傳輸路徑,LFIB表規(guī)定了入標(biāo)簽、被替換的出標(biāo)簽以及轉(zhuǎn)發(fā)路徑。
測試過程中,業(yè)務(wù)到達(dá)中間節(jié)點時標(biāo)簽的替換情況如圖8所示,實驗采用第1路和第5路2711傳送雙向?qū)ing的數(shù)據(jù),可以看出數(shù)據(jù)包從主機A(IP地址為FE80:0:0:30::)經(jīng)第一路2711到達(dá)中間節(jié)點時,標(biāo)簽為16h0001,經(jīng)查詢LFIB表,標(biāo)簽在通過中間節(jié)點后被替換16hFFFF,并通過第4路2711發(fā)往目的節(jié)點。同理,主機B(IP地址為FE80:0:0: 10::)在中間節(jié)點也完成了標(biāo)簽替換。經(jīng)1h的測試,實驗結(jié)果如圖8所示。
當(dāng)每塊FPGA同時連接4臺設(shè)備時,測試結(jié)果如圖9所示,數(shù)據(jù)包傳輸過程中基本無丟包現(xiàn)象產(chǎn)生。經(jīng)iperf測試,通信速率可達(dá)500 Mb/s。
本文以空天網(wǎng)絡(luò)一體化為背景,給出了一種基于FPGA的IPv6 over AOS星間鏈路激光通信系統(tǒng),并對系統(tǒng)所用的AOS幀結(jié)構(gòu)進行了設(shè)計,研究了IPv6協(xié)議、IPv6組播技術(shù)、鄰居發(fā)現(xiàn)協(xié)議以及CCSDS空間通信標(biāo)準(zhǔn)和IP over AOS協(xié)議的轉(zhuǎn)換機制,基于MPLS技術(shù)改變了通過IP地址轉(zhuǎn)發(fā)的方式,轉(zhuǎn)而采用標(biāo)簽交換進行數(shù)據(jù)轉(zhuǎn)發(fā),根據(jù)FIB和LFIB查詢標(biāo)簽對應(yīng)的轉(zhuǎn)發(fā)路徑,實現(xiàn)了數(shù)據(jù)包在板間的快速傳輸,提高了網(wǎng)絡(luò)性能。搭建了系統(tǒng)實驗環(huán)境,對空間鏈路的傳輸進行了模擬,以FPGA作為網(wǎng)關(guān),實現(xiàn)了網(wǎng)關(guān)和其所連設(shè)備之間的地址解析以及路由表的動態(tài)配置。測試了IP over AOS系統(tǒng)的協(xié)議轉(zhuǎn)換功能,通過檢測丟包率及通信速率對系統(tǒng)的性能進行了驗證。
參考文獻(xiàn)
[1]榮華為.基于IP over CCSDS的高速網(wǎng)關(guān)設(shè)計與實現(xiàn)[D].西安:西安電子科技大學(xué),2017.
[2]王雪旸.TCP/IP協(xié)議族在相控陣時分衛(wèi)星網(wǎng)絡(luò)中的應(yīng)用[D].北京:北京郵電大學(xué),2015.
[3]董曉臣.基于FPGA的IPv6 overAOS網(wǎng)關(guān)的設(shè)計與實現(xiàn)[D].保定:河北大學(xué),2021.
[4]沈榮駿.我國天地一體化航天互聯(lián)網(wǎng)構(gòu)想[J].中國科學(xué)工程, 2006, 8(10): 19-30.
[5]繆劍鋒,管有慶.輕量級IPv6鄰居發(fā)現(xiàn)協(xié)議及在網(wǎng)關(guān)中的實現(xiàn)[J].計算機技術(shù)與發(fā)展, 2014,24(10): 59-62.
[6]吳長瑞,徐建清,蔣景紅.基于FPGA的千兆以太網(wǎng)接口應(yīng)用研究與實現(xiàn)[J].現(xiàn)代電子技術(shù), 2018, 41(9): 1-5.
[7] CCSDS. Space Data Link Protocols-Summary of Concept and Rationale: CCSDS 130.2-G-0.3[R]. Washington D. C.: CCSDS, 2005.
[8] MILIC D, BROGLE M, BRAUN T. Video Broadcasting Using Overlay Multicast[C]// 7thIEEE International Symposium on Multimedia(ISM). Irvine: IEEE, 2005: 1-8.
[9] DEERING S, HINDEN R. Internet Protocol, Version 6 (IPv6) Specification:RFC2460[S]. Washington D. C.:The Internet Society, 1998.
[10] BUENO A, VILA P, FABREGAT R. Multicast Extension of Unicast Charging for QoS Services[C]// 4th IEEE European Conference on Universal Multiservice Networks (ECUMN). Toulouse: IEEE, 2007: 119-126.
[11]馮徑.多協(xié)議標(biāo)簽交換技術(shù)[M].北京:人民郵電出版社, 2002.
[12]楊軍. LDP協(xié)議和LSP選路研究與實現(xiàn)[D].重慶:重慶大學(xué),2012.