徐 雙,王興偉,黃 敏,張琳琳
1(東北大學(xué) 計(jì)算機(jī)科學(xué)與工程學(xué)院,遼寧 沈陽 110169)
2(東北大學(xué) 信息科學(xué)與工程學(xué)院,遼寧 沈陽 110819)
空間通信和組網(wǎng)技術(shù)的發(fā)展,為空間探索技術(shù)的發(fā)展開啟了新紀(jì)元[1].早期空間通信大多采用地球同步軌道(geo-synchronous orbit)衛(wèi)星,利用彎管通信技術(shù)實(shí)現(xiàn)數(shù)據(jù)中繼轉(zhuǎn)發(fā)和廣播,難以完成連續(xù)的信息捕捉和傳輸[2].星上計(jì)算和處理能力的提高以及星際鏈路通信技術(shù)的發(fā)展,為空間通信和組網(wǎng)提供了重要的技術(shù)支撐[3].衛(wèi)星通信具有覆蓋范圍廣、通信距離遠(yuǎn)、傳輸容量大、對(duì)地面環(huán)境依賴性低等特點(diǎn)[4],在防災(zāi)救災(zāi)、緊急救援、全球?qū)Ш蕉ㄎ弧⒖臻g遙測(cè)等任務(wù)中發(fā)揮著重要作用[5].然而,衛(wèi)星通信系統(tǒng)主要需要應(yīng)對(duì)如下困難:(1)遠(yuǎn)距離傳輸造成的長(zhǎng)傳輸延遲;(2)通信鏈路易受干擾造成的高誤碼率;(3)復(fù)雜的空間環(huán)境以及節(jié)點(diǎn)移動(dòng)造成的鏈路中斷;(4)特定于供應(yīng)商的網(wǎng)絡(luò)基礎(chǔ)設(shè)施造成的網(wǎng)絡(luò)協(xié)議標(biāo)準(zhǔn)難以統(tǒng)一,特別是由此導(dǎo)致的網(wǎng)絡(luò)異構(gòu)性;(5)星上設(shè)備存儲(chǔ)和處理能力有限,特別是維修困難[6].隨著空間通信需求的不斷增長(zhǎng),實(shí)現(xiàn)空間設(shè)備間類似于Internet的通信變得越來越重要[7].
延遲/中斷容忍網(wǎng)絡(luò)(delay/disruption tolerant network,簡(jiǎn)稱 DTN)最初是由美國噴氣推進(jìn)實(shí)驗(yàn)室(Jet Propulsion Laboratory,簡(jiǎn)稱JPL)為開發(fā)行星際互聯(lián)網(wǎng)(interplanetary Internet,簡(jiǎn)稱IPN)而提出的一種網(wǎng)絡(luò)體系架構(gòu)[8],后被廣泛應(yīng)用于軍事作戰(zhàn)網(wǎng)絡(luò)、稀疏傳感網(wǎng)絡(luò)等地面網(wǎng)絡(luò).DTN也是構(gòu)建衛(wèi)星網(wǎng)絡(luò)的可選方案[9],尤其是滿足低地球軌道星座系統(tǒng)間歇性連接的需要[10].DTN在傳輸層與應(yīng)用層之間引入疊加層(overlay)[11],采用消息的“存儲(chǔ)-攜帶-轉(zhuǎn)發(fā)(store-carry-forward)”機(jī)制解決網(wǎng)絡(luò)中的間歇性連接、長(zhǎng)傳輸延遲、高誤碼率等問題,適用于通信受延遲、帶寬、誤碼等嚴(yán)重影響的空間網(wǎng)絡(luò)[9].束協(xié)議(bundle protocol,簡(jiǎn)稱BP)作為DTN協(xié)議的重要組成部分,提供了保管傳輸(custody transfer)、主動(dòng)和被動(dòng)式束分片(proactive and reactive bundle fragmentation)、滯后綁定(late binding)這些重要功能,為DTN網(wǎng)絡(luò)的實(shí)施提供了可能性[12].在BP中,采用束作為傳輸數(shù)據(jù)的基本單元,并通過匯聚層適配器實(shí)現(xiàn)與TCP、UDP、LTP(licklider transmission protocol)、藍(lán)牙等不同協(xié)議之間的匹配,從而使DTN能夠解決異構(gòu)網(wǎng)絡(luò)互聯(lián)中存在的問題.
路由是 DTN必備的基本功能,旨在提高束的交付率并降低交付延遲[13].通常,路由是指路徑上的每個(gè)節(jié)點(diǎn)選擇最優(yōu)相鄰節(jié)點(diǎn)轉(zhuǎn)發(fā)數(shù)據(jù)的復(fù)雜過程.Internet網(wǎng)絡(luò)主機(jī)在分發(fā)數(shù)據(jù)前,根據(jù)當(dāng)前網(wǎng)絡(luò)拓?fù)浜凸?jié)點(diǎn)間連接信息計(jì)算最優(yōu)的包轉(zhuǎn)發(fā)路徑,而DTN所采用的網(wǎng)絡(luò)狀態(tài)信息中還需包含接觸傳輸速率、節(jié)點(diǎn)存儲(chǔ)容量等.由于網(wǎng)絡(luò)狀態(tài)信息可能隨時(shí)間推移而變化,網(wǎng)絡(luò)轉(zhuǎn)發(fā)節(jié)點(diǎn)需要根據(jù)當(dāng)前可用的網(wǎng)絡(luò)狀態(tài)信息判斷是否需要重新計(jì)算轉(zhuǎn)發(fā)路徑或仍沿先前路徑繼續(xù)轉(zhuǎn)發(fā)數(shù)據(jù).Internet網(wǎng)絡(luò)狀態(tài)信息變化可被迅速地傳播,因此每個(gè)節(jié)點(diǎn)掌握的當(dāng)前網(wǎng)絡(luò)狀態(tài)幾乎都是準(zhǔn)確、一致的.而DTN連接具有間歇性,且信號(hào)傳播時(shí)延長(zhǎng),所以網(wǎng)絡(luò)狀態(tài)信息的一致性維護(hù)困難,網(wǎng)絡(luò)狀態(tài)信息具有滯后性.此外,數(shù)據(jù)包在轉(zhuǎn)發(fā)到相鄰節(jié)點(diǎn)前,可能需要長(zhǎng)時(shí)間存儲(chǔ)在當(dāng)前節(jié)點(diǎn).
在機(jī)會(huì)性DTN(opportunistic DTN)中,節(jié)點(diǎn)具有移動(dòng)性,節(jié)點(diǎn)間的接觸具有隨機(jī)性[14].因此,基于洪泛和概率的路由算法被廣泛應(yīng)用在機(jī)會(huì)性DTN中[15-17].空間DTN節(jié)點(diǎn)彼此之間不斷相對(duì)運(yùn)動(dòng),節(jié)點(diǎn)位置不斷變化,但節(jié)點(diǎn)運(yùn)動(dòng)軌跡的數(shù)學(xué)模型可預(yù)先建立,從而準(zhǔn)確地計(jì)算出節(jié)點(diǎn)間的接觸機(jī)會(huì)[18],這類網(wǎng)絡(luò)被稱為確定性 DTN(deterministic DTN)[13].關(guān)于確定性DTN的路由分析研究工作可追溯到2003年,文獻(xiàn)[19]提出了采用時(shí)間演化圖表示網(wǎng)絡(luò)拓?fù)渥兓瘉硌芯孔钚〕杀韭窂?2004年,文獻(xiàn)[20]根據(jù)節(jié)點(diǎn)運(yùn)動(dòng)的可預(yù)知性,提出了一個(gè)時(shí)空路由(space-time routing)框架,為每個(gè)節(jié)點(diǎn)構(gòu)建由每個(gè)時(shí)隙間隔內(nèi)的下一跳組成的時(shí)空路由表,給出了基于時(shí)空?qǐng)D模型的路由算法.然而,上述兩種靜態(tài)路由算法依賴于地面上預(yù)計(jì)算的完整路徑以及分配這些路徑到網(wǎng)絡(luò)節(jié)點(diǎn)的及時(shí)性,缺乏對(duì)變化業(yè)務(wù)流和拓?fù)涞捻憫?yīng).為解決上述問題,2008年,Burleigh提出了分布式的接觸圖路由(contact graph routing,簡(jiǎn)稱CGR)算法.該算法利用網(wǎng)絡(luò)接觸的可預(yù)知性,采用啟發(fā)式算法動(dòng)態(tài)計(jì)算出多條路徑,為空間DTN提供了一種有效的路由方案[21].文獻(xiàn)[22,23]評(píng)估了CGR、Epidemic和Prophet在空間DTN中的性能并指出,在拓?fù)湫畔⒖深A(yù)知的空間網(wǎng)絡(luò)中,CGR具有較小的延遲和緩存消耗.此外,CGR已被多次成功地應(yīng)用于 DTN的空間實(shí)測(cè)實(shí)驗(yàn)[24].目前,CGR白皮書已被提交到國際空間數(shù)據(jù)系統(tǒng)咨詢委員會(huì)(Consultative Committee for Space Data Systems,簡(jiǎn)稱 CCSDS)進(jìn)行標(biāo)準(zhǔn)化,并重新標(biāo)記為“調(diào)度感知束路由(schedule-aware bundle routing,簡(jiǎn)稱 SABR)”[25].
本文第1節(jié)描述CGR的基本原理、相關(guān)術(shù)語和算法過程.第2節(jié)分析和總結(jié)CGR存在的問題和相應(yīng)的改進(jìn)方法.第3節(jié)介紹CGR的工程應(yīng)用.第4節(jié)對(duì)比評(píng)估CGR算法在多層衛(wèi)星網(wǎng)絡(luò)中的性能.第5節(jié)總結(jié)全文,對(duì)未來的研究方向進(jìn)行展望.
CGR是一種分布式路徑計(jì)算方法,路徑上的每個(gè)節(jié)點(diǎn)一旦接收到束,則重新計(jì)算到達(dá)該束的目的節(jié)點(diǎn)的最佳路徑,從而確定當(dāng)前節(jié)點(diǎn)的下一跳節(jié)點(diǎn)[26].CGR假定:(1)網(wǎng)絡(luò)具有拓?fù)漕A(yù)計(jì)算能力;(2)網(wǎng)絡(luò)中的每個(gè)節(jié)點(diǎn)能夠及時(shí)而準(zhǔn)確地獲知全局網(wǎng)絡(luò)接觸信息和本地隊(duì)列占用情況;(3)網(wǎng)絡(luò)拓?fù)涞淖兓l率低于網(wǎng)絡(luò)節(jié)點(diǎn)配置信息的同步頻率[27];(4)不可預(yù)知的拓?fù)渥兓l(fā)生頻率低,節(jié)點(diǎn)失效彼此獨(dú)立發(fā)生[28].可預(yù)知的網(wǎng)絡(luò)拓?fù)渥兓鳛楣?jié)點(diǎn)配置信息,可以提前分發(fā)到網(wǎng)絡(luò)中的每個(gè)節(jié)點(diǎn),而對(duì)于不可預(yù)知的拓?fù)渥兓?CGR依賴于網(wǎng)絡(luò)管理功能來更新被影響節(jié)點(diǎn)的配置.
接觸(contact)是指兩個(gè) DTN節(jié)點(diǎn)之間建立通信鏈路的機(jī)會(huì),由拓?fù)溟g隔內(nèi)的所有可行接觸組成的時(shí)序列表稱為接觸計(jì)劃(contact plan,簡(jiǎn)稱CP)[29].接觸計(jì)劃采用接觸消息(contact message)和范圍消息(range message)兩種類型的接觸計(jì)劃消息(contact plan message)表示[21,30].其中,接觸消息包含接觸的起始時(shí)刻、結(jié)束時(shí)刻、發(fā)送節(jié)點(diǎn)、接收節(jié)點(diǎn)和數(shù)據(jù)傳輸速率(B/s);范圍消息包含接觸的起始時(shí)刻、結(jié)束時(shí)刻、發(fā)送節(jié)點(diǎn)、接收節(jié)點(diǎn)、發(fā)送節(jié)點(diǎn)與接收節(jié)點(diǎn)間的距離(<1光秒).根據(jù)接觸計(jì)劃,每個(gè)節(jié)點(diǎn)可以在本地構(gòu)建以任意其他節(jié)點(diǎn)為目的節(jié)點(diǎn)的有向無環(huán)圖,即接觸圖(contact graph),接觸圖的頂點(diǎn)對(duì)應(yīng)于接觸,邊對(duì)應(yīng)于束在節(jié)點(diǎn)上的存儲(chǔ).接觸圖可用以下兩個(gè)鏈表表示:由所有以目的節(jié)點(diǎn)為接收節(jié)點(diǎn)的接觸消息派生出來的xmit對(duì)象鏈表,該鏈表封裝了接觸的起始時(shí)刻、結(jié)束時(shí)刻、發(fā)送節(jié)點(diǎn)和數(shù)據(jù)傳輸速率,鏈表中的對(duì)象根據(jù)接觸的結(jié)束時(shí)刻排序;由范圍消息得出的origin對(duì)象鏈表,該鏈表封裝了發(fā)送節(jié)點(diǎn)以及發(fā)送節(jié)點(diǎn)與目的節(jié)點(diǎn)間的當(dāng)前距離.
圖1是一個(gè)由4個(gè)衛(wèi)星節(jié)點(diǎn)組成的空間DTN網(wǎng)絡(luò),節(jié)點(diǎn)A發(fā)送數(shù)據(jù)到節(jié)點(diǎn)D;表1是該網(wǎng)絡(luò)對(duì)應(yīng)的接觸計(jì)劃,其中的每個(gè)表項(xiàng)描述兩節(jié)點(diǎn)之間接觸的起止時(shí)刻和數(shù)據(jù)傳輸速率[31].以表1中的接觸計(jì)劃為例,構(gòu)建從節(jié)點(diǎn)A到節(jié)點(diǎn)D的接觸圖,結(jié)果如圖2所示[26].圖中添加了兩個(gè)概念頂點(diǎn)(notional vertice),分別為圖中的根頂點(diǎn)和終端頂點(diǎn).前者表示從節(jié)點(diǎn)A到A的接觸,而后者表示從節(jié)點(diǎn)D到D的接觸,圖中其他頂點(diǎn)均為表1中有助于節(jié)點(diǎn)A發(fā)送數(shù)據(jù)到節(jié)點(diǎn)D的接觸.在圖2中進(jìn)行路徑搜索,構(gòu)建從發(fā)送節(jié)點(diǎn)A到目的節(jié)點(diǎn)D的路由列表(route list)[32].每次搜索都找出從根頂點(diǎn)開始到終端頂點(diǎn)結(jié)束的最低成本路徑,并將搜索到的路徑添加到節(jié)點(diǎn)的路由列表中.在進(jìn)行下一次搜索之前,從接觸圖中刪除本次搜索到的路徑的初始接觸.重復(fù)以上過程,直到搜索不到路徑為止.從圖2中可以看出,從A到D共有3條可用路徑.
Fig.1 DTN network topology圖1 DTN網(wǎng)絡(luò)拓?fù)?/p>
Table 1 Contact plan list表1 接觸計(jì)劃列表
Fig.2 Contact graph from nodeAtoD圖2 從A到D的接觸圖
基于接觸圖的路由工作流程由接觸計(jì)劃生成、接觸計(jì)劃分發(fā)和路由計(jì)算這3個(gè)階段構(gòu)成,如圖3所示[26].
Fig.3 Contact plan generation,distribution and utilization圖3 接觸計(jì)劃的生成、分發(fā)和利用
由于接觸計(jì)劃依賴于特定的網(wǎng)絡(luò)和通信平臺(tái),因此將接觸計(jì)劃的生成過程從路由應(yīng)用中解耦出來.在初始階段,空間任務(wù)操控中心根據(jù)網(wǎng)絡(luò)節(jié)點(diǎn)的通信系統(tǒng)屬性(如傳輸功率、調(diào)制機(jī)制、誤比特率、天線輻射方向等)和節(jié)點(diǎn)的軌道動(dòng)力學(xué)特性(如位置、姿態(tài)等)確定接觸的可行性,構(gòu)造接觸計(jì)劃[33];然后,由地面站將接觸計(jì)劃分發(fā)到網(wǎng)絡(luò)中的每個(gè)節(jié)點(diǎn);最后,節(jié)點(diǎn)調(diào)用CGR,根據(jù)已知的接觸計(jì)劃生成到達(dá)目的節(jié)點(diǎn)的有效路徑.
本節(jié)給出CGR相關(guān)術(shù)語的定義和計(jì)算公式,并在表2中列出本文中使用的變量符號(hào)及含義.
Table 2 Variable notations and definition表2 變量符號(hào)及含義
(1)合格路徑(well-formed routes):構(gòu)成從源節(jié)點(diǎn)到目的節(jié)點(diǎn)的端到端路徑的接觸序列,該序列的第1個(gè)接觸為源節(jié)點(diǎn)與其相鄰節(jié)點(diǎn)間的接觸,后續(xù)接觸是前一個(gè)接觸的接收節(jié)點(diǎn)與其相鄰節(jié)點(diǎn)間的接觸,而最后一個(gè)接觸是以接收節(jié)點(diǎn)為目的節(jié)點(diǎn)的接觸.該路徑中不存在環(huán)路,即不存在兩個(gè)接觸的發(fā)送節(jié)點(diǎn)或接收節(jié)點(diǎn)相同的情況.
(2)失效時(shí)刻(expiration time):束的創(chuàng)建時(shí)刻與其生存時(shí)間(time-to-live)之和,即.
(3)單向光行時(shí)邊界(one-way light time(OWLT)margin):OWLT是光在兩節(jié)點(diǎn)間傳輸所需的時(shí)間,指代距離.OWLT邊界是束在任意兩節(jié)點(diǎn)間傳播時(shí),節(jié)點(diǎn)間OWLT變化的最大增量.假設(shè)網(wǎng)絡(luò)中任意兩節(jié)點(diǎn)間距離變化的最大速率約為 67km/s,則初始距離為K光秒的兩節(jié)點(diǎn)間每秒增加的最大距離為67km.因此,數(shù)據(jù)從發(fā)送節(jié)點(diǎn)傳輸?shù)浇邮展?jié)點(diǎn)所需的傳播時(shí)間不會(huì)超過(K+Q)s,其中,Q=(67×K)/30000.
(4)最后時(shí)刻(last moment):接觸發(fā)送束的最晚時(shí)刻,即保證束在截止時(shí)刻Tdeadline之前到達(dá)接收節(jié)點(diǎn)的最晚發(fā)送時(shí)刻.如果接觸的起始時(shí)刻在最后時(shí)刻之后,則該接觸的接收節(jié)點(diǎn)無法在之前接收到束.
(5)容量(capacity):接觸的數(shù)據(jù)傳輸速率與其持續(xù)時(shí)間的乘積,即
(6)估計(jì)容量消耗(estimated capacity consumption):假設(shè)匯聚層采用UDP/IP協(xié)議,則每個(gè)幀的開銷為100字節(jié).每幀中可封裝的束的字節(jié)數(shù)等于幀的大小減去每幀的開銷.例如,Internet的最大傳輸單元大小為1 500字節(jié),則每幀中束的最大字節(jié)數(shù)為1400=(1500-100).傳輸給定大小的束所需的幀數(shù)等于束的大小除以每幀中束的最大字節(jié)數(shù)的商向上取整.束的總開銷為每個(gè)幀的開銷乘以傳輸該束所需的幀數(shù).束的估計(jì)容量消耗為束的大小與總開銷之和,即
(7)剩余容量(residual capacity):本地節(jié)點(diǎn)與鄰居節(jié)點(diǎn)間給定接觸的剩余容量是兩節(jié)點(diǎn)間不晚于給定接觸調(diào)度的所有接觸的容量之和減去優(yōu)先級(jí)不低于發(fā)送束的所有待傳輸束的估計(jì)容量消耗之和,即
(8)可用機(jī)會(huì)(plausible opportunity):剩余容量不小于發(fā)送束的估計(jì)容量消耗的接觸.
(9)可用路徑(plausible route):由可用傳輸機(jī)會(huì)組成的合格路徑,且路徑上每個(gè)接觸開始傳輸束的時(shí)刻先于最后時(shí)刻.最后一個(gè)接觸的截止時(shí)刻為束的失效時(shí)刻,而其余每個(gè)接觸的截止時(shí)刻為每個(gè)接觸的結(jié)束時(shí)刻.
(10)收回時(shí)刻(forfeit time):可用路徑上所有接觸的最早結(jié)束時(shí)刻.
(11)網(wǎng)絡(luò)距離(network distance):可用路徑的網(wǎng)絡(luò)距離是指束沿著該路徑從源節(jié)點(diǎn)轉(zhuǎn)發(fā)到目的節(jié)點(diǎn)所經(jīng)過的中間節(jié)點(diǎn)數(shù),即跳數(shù).
(12)被排除的相鄰節(jié)點(diǎn)(excluded neighbor):本地節(jié)點(diǎn)的相鄰節(jié)點(diǎn)中拒絕托管發(fā)送到給定目的節(jié)點(diǎn)的束的相鄰節(jié)點(diǎn).
(13)關(guān)鍵束(critical bundles):必須且應(yīng)盡快投遞到目的節(jié)點(diǎn)的束.關(guān)鍵束將被插入到所有可用路徑對(duì)應(yīng)的輸出隊(duì)列中,而非關(guān)鍵束僅被插入到所有可用路徑中收回時(shí)刻最早的路徑所對(duì)應(yīng)的輸出隊(duì)列中.
(14)轉(zhuǎn)發(fā)延遲(forwarding latency):節(jié)點(diǎn)接收、排隊(duì)以及發(fā)送束所用的時(shí)間,使用束大小的2倍除以接觸的數(shù)據(jù)發(fā)送速率估算,即.
CGR利用可預(yù)知的接觸計(jì)劃消息獲取網(wǎng)絡(luò)拓?fù)?不需要預(yù)測(cè)或發(fā)現(xiàn)過程[34].CGR的處理過程如圖4所示.首先,節(jié)點(diǎn)根據(jù)接收到的接觸消息和范圍消息生成接觸圖;之后,執(zhí)行接觸檢查過程(contact review procedure,簡(jiǎn)稱CRP),根據(jù)生成的接觸圖計(jì)算出可用來轉(zhuǎn)發(fā)束的相鄰節(jié)點(diǎn)列表;最后,通過轉(zhuǎn)發(fā)決策過程(forwarding decision procedure,簡(jiǎn)稱FDP)選擇下一跳節(jié)點(diǎn).
Fig.4 Three processing steps of CGR algorithm圖4 CGR算法的3個(gè)處理步驟
接觸圖構(gòu)建完成后,節(jié)點(diǎn)通過CGR-CRP過程和CGR-FDP過程實(shí)現(xiàn)路徑計(jì)算與束轉(zhuǎn)發(fā)的流程如下.
輸入:B,CP.
輸出:將B插入到相應(yīng)的輸出隊(duì)列.
算法的第2行~第39行是節(jié)點(diǎn)根據(jù)接觸計(jì)劃執(zhí)行路徑計(jì)算的過程.
· 第2行將每次迭代的目的節(jié)點(diǎn)加入到被排除的相鄰節(jié)點(diǎn)集合中,以防止路由環(huán)路的產(chǎn)生.
· 第4行~第6行計(jì)算通過每個(gè)接觸發(fā)送束的最晚時(shí)刻:如果該時(shí)刻早于當(dāng)前時(shí)刻或接觸的起始時(shí)刻,則跳過此接觸.
· 第8行~第11行表示當(dāng)前目的節(jié)點(diǎn)為束的目的節(jié)點(diǎn)時(shí),更新路徑收回時(shí)間;當(dāng)接觸的發(fā)送節(jié)點(diǎn)為本地節(jié)點(diǎn)時(shí),計(jì)算束的估計(jì)容量消耗和接觸剩余容量.
· 第14行~第 23行是當(dāng)接觸剩余容量大于束的估計(jì)容量消耗時(shí),判斷當(dāng)前目的節(jié)點(diǎn)與本地節(jié)點(diǎn)的相鄰節(jié)點(diǎn)間的從屬關(guān)系以及路徑收回時(shí)間與束的投遞時(shí)間的大小關(guān)系,決定是否更新束的交付時(shí)間、路徑距離和路徑列表.
· 第28行~第 34行是當(dāng)接觸的發(fā)送節(jié)點(diǎn)既不是本地節(jié)點(diǎn)也不是排除節(jié)點(diǎn)時(shí),更新路徑收回時(shí)刻、當(dāng)前目的節(jié)點(diǎn)、路徑網(wǎng)絡(luò)距離等,并遞歸調(diào)用CGR-CRP過程.
算法的第40行~第50行是根據(jù)束的重要性將其插入到輸出隊(duì)列的過程,其中,第41行、第42行表示束是關(guān)鍵束時(shí),將其復(fù)制并插入到本地節(jié)點(diǎn)的所有可用相鄰節(jié)點(diǎn)對(duì)應(yīng)的輸出隊(duì)列中;第 44行、第 45行表示束是普通束時(shí),從本地節(jié)點(diǎn)的所有可用相鄰節(jié)點(diǎn)中選出最早收回的相鄰節(jié)點(diǎn),將束插入到該節(jié)點(diǎn)所對(duì)應(yīng)的輸出隊(duì)列中.
自2008年CGR首次提出以來,很多研究都致力于CGR的功能完善和應(yīng)用.圖5是CGR的發(fā)展簡(jiǎn)史[26].2009年,IETF(Internet Engineering Task Force)發(fā)布了CGR文檔[35];2010年,CGR文檔被更新為IETF互聯(lián)網(wǎng)草案[30];2011年,Segui等人[24]提出了增強(qiáng)CGR(enhanced CGR,簡(jiǎn)稱ECGR),把最早到達(dá)時(shí)刻(earliest-arrival-time)作為路徑選擇度量值,并使用標(biāo)準(zhǔn)的 Dijkstra算法選擇路徑;2012年,Birrane等人提出了擴(kuò)展塊 CGR(CGR-extension block,簡(jiǎn)稱 CGR-EB),以增加數(shù)據(jù)包報(bào)頭開銷為代價(jià)來降低中間節(jié)點(diǎn)的計(jì)算開銷[28];2014年,Fraire等人提出了緩存CGR(cache-CGR,簡(jiǎn)稱 C-CGR),以最大程度地減少CGR的執(zhí)行次數(shù)[36];同年,Bezirgiannidis等人提出了最早傳輸機(jī)會(huì)CGR(CGR-earliest transmission opportunity,簡(jiǎn)稱CGR-ETO),引入節(jié)點(diǎn)隊(duì)列信息,以改善CGR應(yīng)對(duì)網(wǎng)絡(luò)狀態(tài)變化的能力[37],并在文獻(xiàn)[38]中提出了超額預(yù)訂管理(overbooking management)機(jī)制,以提高低優(yōu)先級(jí)束的交付率.
Fig.5 Brief history of CGR圖5 CGR簡(jiǎn)史
關(guān)于擁塞控制(congestion control),文獻(xiàn)[39-41]相繼提出了預(yù)測(cè)容量消耗(predictive capacity consumption,簡(jiǎn)稱PCC)[39]、基于本地信息的擁塞控制[40]、路徑感知CGR(path-aware CGR,簡(jiǎn)稱PA-CGR)和多圖CGR(multigraph CGR,簡(jiǎn)稱MG-CGR)[41]等多種改進(jìn)方法.2016年,Burleigh等人為了實(shí)現(xiàn)確定性DTN和機(jī)會(huì)性DTN路由機(jī)制的統(tǒng)一,提出了機(jī)會(huì)CGR(opportunistic CGR,簡(jiǎn)稱OCGR)[31].2017年,時(shí)文豐等人在CGR中引入了接觸異常處理機(jī)制,提高了CGR應(yīng)對(duì)接觸失效的能力[42].
保證路由算法的收斂性需要滿足兩個(gè)特性:不存在路由環(huán)路、不存在持續(xù)震蕩.在路徑選擇中采用單調(diào)遞增(或遞減)的度量指標(biāo),可以保證路由的收斂性[24].CGR采用最早收回時(shí)刻作為路徑選擇度量指標(biāo),以最大程度地減少傳輸機(jī)會(huì)的浪費(fèi).然而,最早收回時(shí)刻不是一個(gè)單調(diào)遞增(或遞減)的度量指標(biāo),不能保證路徑選擇過程中始終不會(huì)出現(xiàn)路由環(huán)路和震蕩.為此,文獻(xiàn)[24]提出了ECGR算法,用最早到達(dá)時(shí)刻代替最早收回時(shí)刻,并使用標(biāo)準(zhǔn)的 Dijkstra算法進(jìn)行路徑選擇.最早到達(dá)時(shí)刻滿足全局單調(diào)遞減的特性,因而可以避免路由環(huán)路和持續(xù)震蕩的產(chǎn)生.此外,Dijkstra算法計(jì)算開銷小,且可用于構(gòu)建多播樹.上述功能改善已經(jīng)成為 CGR核心功能的一部分,在JPL開發(fā)的星際覆蓋網(wǎng)絡(luò)(interplanetary overlay network,簡(jiǎn)稱ION)仿真平臺(tái)中得以實(shí)現(xiàn)[43].
CGR路徑上的每個(gè)中間節(jié)點(diǎn)重新計(jì)算束的最優(yōu)轉(zhuǎn)發(fā)路徑,以應(yīng)對(duì)網(wǎng)絡(luò)狀態(tài)的變化.重計(jì)算在給算法帶來靈活性的同時(shí),也增加了算法的計(jì)算開銷.為了解決此問題,文獻(xiàn)[28,34]提出了 CGR-EB,將計(jì)算出的路徑信息和用于路徑計(jì)算的接觸圖信息編碼到束的擴(kuò)展塊中,傳輸?shù)较掠喂?jié)點(diǎn).下游節(jié)點(diǎn)進(jìn)行如下路徑有效性驗(yàn)證.
首先,根據(jù)當(dāng)前節(jié)點(diǎn)的接觸計(jì)劃?rùn)z查下一跳接觸的穩(wěn)定性.
· 如果下一跳接觸不穩(wěn)定,則重新執(zhí)行CGR來計(jì)算新的路徑,并根據(jù)新路徑更新CGR的擴(kuò)展塊.
· 如果接觸是穩(wěn)定的,則驗(yàn)證接觸傳輸速率和容量是否在容錯(cuò)范圍內(nèi):
? 如果誤差超出了容錯(cuò)范圍,則重新執(zhí)行CGR來計(jì)算新的路徑,并根據(jù)新路徑更新CGR的擴(kuò)展塊;
? 否則,可選擇進(jìn)行一跳掃描來查找是否存在到達(dá)指定的下一跳節(jié)點(diǎn)的更快路徑,如果存在,則采用較快的接觸轉(zhuǎn)發(fā)束.
繼續(xù)重復(fù)上述過程,檢測(cè)后續(xù)幾個(gè)接觸的穩(wěn)定性.
CGR-EB僅當(dāng)接觸穩(wěn)定性驗(yàn)證失效時(shí)才重新執(zhí)行CGR,不需要在每個(gè)中間節(jié)點(diǎn)都執(zhí)行復(fù)雜的CGR路由計(jì)算.與執(zhí)行CGR相比,驗(yàn)證路徑有效性的計(jì)算開銷小,因此,CGR-EB更加適合節(jié)點(diǎn)資源受限的網(wǎng)絡(luò)環(huán)境.此外,當(dāng)編碼路徑有效時(shí),可使用多種成本函數(shù)重新搜索潛在的較優(yōu)路徑,既不必?fù)?dān)心產(chǎn)生路由環(huán)路,又避免了預(yù)計(jì)算路徑為當(dāng)前次優(yōu)路徑的情況.最后,利用束攜帶并傳播路徑信息可以為擁塞預(yù)測(cè)和拓?fù)渫教峁┛捎玫男畔?受CGR-EB算法的啟發(fā),文獻(xiàn)[44]提出了一種基于 CGR的源路由算法,由源節(jié)點(diǎn)根據(jù)已知的接觸計(jì)劃和節(jié)點(diǎn)緩沖區(qū)占用率計(jì)算束的轉(zhuǎn)發(fā)路徑,并將所得路徑編碼在包頭中供中間節(jié)點(diǎn)使用.該方法以傳輸成本為代價(jià),降低了中間節(jié)點(diǎn)的計(jì)算開銷.
雖然CGR-EB算法和基于CGR的源路由算法采用路徑編碼的方式減少了調(diào)用CGR的次數(shù),但同時(shí)也增加了每個(gè)束的報(bào)頭開銷.文獻(xiàn)[36]提出的 C-CGR在減少 CGR執(zhí)行次數(shù)的同時(shí),保留了本地?fù)砣苊獾奶匦?C-CGR將每個(gè)目的節(jié)點(diǎn)對(duì)應(yīng)的當(dāng)前節(jié)點(diǎn)的下一跳相鄰節(jié)點(diǎn)記錄到本地緩存區(qū)中.當(dāng)有束到達(dá)時(shí),本地節(jié)點(diǎn)先查找緩存區(qū)中是否存在與此束的目的節(jié)點(diǎn)對(duì)應(yīng)的下一跳相鄰節(jié)點(diǎn).
· 如果不存在,則調(diào)用CGR為此束計(jì)算可用的下一跳相鄰節(jié)點(diǎn),并將計(jì)算出的下一跳節(jié)點(diǎn)記錄到本地緩存區(qū)中.
· 如果查找到了對(duì)應(yīng)的下一跳相鄰節(jié)點(diǎn),則判斷相應(yīng)接觸的容量和結(jié)束時(shí)刻是否有效:如果接觸失效,則調(diào)用CGR計(jì)算新的下一跳節(jié)點(diǎn),并更新本地緩存區(qū)中目的節(jié)點(diǎn)對(duì)應(yīng)的下一跳相鄰節(jié)點(diǎn)信息;如果接觸可用,則僅需更新接觸的剩余容量信息.
在最壞情況下,C-CGR的計(jì)算開銷與CGR相同;在分片密集型DTN中,C-CGR的計(jì)算開銷明顯低于CGR.
雖然 CGR、ECGR、CGR-EB和C-CGR均采用動(dòng)態(tài)轉(zhuǎn)發(fā)決策策略,但它們可能使用的是已經(jīng)過時(shí)或不能反映當(dāng)前網(wǎng)絡(luò)狀態(tài)的接觸信息.這是因?yàn)榭臻g網(wǎng)絡(luò)接觸調(diào)度雖然具有規(guī)律性,但仍然存在由不利的天氣條件或概率性動(dòng)態(tài)參數(shù)(如排隊(duì)延遲)等擾亂預(yù)定網(wǎng)絡(luò)接觸調(diào)度的情況,因此需要改進(jìn)路由算法以應(yīng)對(duì)網(wǎng)絡(luò)接觸調(diào)度規(guī)律變化等問題.文獻(xiàn)[37]提出了 CGR-ETO算法,引入最早傳輸機(jī)會(huì)(由排隊(duì)延遲和鏈路中斷確定)作為路由計(jì)算的度量指標(biāo),并使用接觸計(jì)劃更新協(xié)議(contact plan update protocol,簡(jiǎn)稱CPUP)傳播網(wǎng)絡(luò)特征和參數(shù)變化信息,從而提高了延遲預(yù)測(cè)的準(zhǔn)確度.然而,CGR-ETO僅考慮本地節(jié)點(diǎn)的排隊(duì)延遲,無法應(yīng)對(duì)所選路徑下游節(jié)點(diǎn)以及下游鏈路的性能瓶頸.文獻(xiàn)[45]提出了基于統(tǒng)計(jì)預(yù)測(cè)的多跳節(jié)點(diǎn)排隊(duì)延遲預(yù)測(cè)方法,提高了投遞時(shí)間預(yù)測(cè)的準(zhǔn)確性.但此方法依賴于節(jié)點(diǎn)間信息的定期交互,增加了額外的網(wǎng)絡(luò)信息交互開銷.而文獻(xiàn)[46]提出了增強(qiáng) CGRETO(enhanced CGR-ETO),既將所考慮的排隊(duì)延遲范圍由本地節(jié)點(diǎn)擴(kuò)展到路徑上的所有節(jié)點(diǎn),又避免了額外的信息交互開銷.增強(qiáng)CGR-ETO將ETO的值作為參數(shù)值編碼到節(jié)點(diǎn)接觸信息中,本地節(jié)點(diǎn)根據(jù)獲取的接觸信息計(jì)算路徑上所有節(jié)點(diǎn)的隊(duì)列長(zhǎng)度,而不使用任何類似于 CPUP的傳播機(jī)制.該方法在提高投遞時(shí)間預(yù)測(cè)準(zhǔn)確性的同時(shí),避免了節(jié)點(diǎn)間狀態(tài)信息交互的昂貴代價(jià).
由于接觸持續(xù)時(shí)間和數(shù)據(jù)傳輸速率有限,因此接觸容量有限.雖然CGR在轉(zhuǎn)發(fā)束之前檢查接觸剩余容量的可用性,但在剩余容量的計(jì)算中,只考慮了隊(duì)列中優(yōu)先級(jí)不低于轉(zhuǎn)發(fā)束的束所需消耗的容量,因此在轉(zhuǎn)發(fā)較高優(yōu)先級(jí)的束時(shí),CGR通過忽略低優(yōu)先級(jí)的束來保證高優(yōu)先級(jí)束的轉(zhuǎn)發(fā).如果接觸已經(jīng)被低優(yōu)先級(jí)的束完全預(yù)訂了,則在轉(zhuǎn)發(fā)高優(yōu)先級(jí)的束時(shí),低優(yōu)先級(jí)的束將錯(cuò)過其接觸,造成接觸超額認(rèn)購(contact oversubscription)[47].CGR采用后驗(yàn)方式處理接觸超額認(rèn)購,即一旦已經(jīng)錯(cuò)過接觸的束的有效時(shí)間到期(一般為接觸的結(jié)束時(shí)刻),則重新轉(zhuǎn)發(fā)這些束.這種后驗(yàn)方法雖然健壯,但效率不高.文獻(xiàn)[38]提出了一種先驗(yàn)方法,即超額預(yù)訂管理,改善 CGR性能.在超額預(yù)定管理中,用總剩余容量評(píng)估接觸可用性,計(jì)算總剩余容量時(shí),不區(qū)分束的優(yōu)先級(jí)而綜合考慮隊(duì)列中所有束所需消耗的容量.當(dāng)出現(xiàn)超額認(rèn)購時(shí),首先轉(zhuǎn)發(fā)引發(fā)超額認(rèn)購的高優(yōu)先級(jí)的束,然后立即轉(zhuǎn)發(fā)錯(cuò)過接觸的低優(yōu)先級(jí)束.此外,文獻(xiàn)[38]指出,最早傳輸機(jī)會(huì)與超額預(yù)定管理能夠?qū)崿F(xiàn)優(yōu)勢(shì)互補(bǔ),極大地改善了CGR路由決策的性能.這兩項(xiàng)改進(jìn)均已被CGR的官方版所采納,并在ION中得以實(shí)現(xiàn)[43].
擁塞問題可以定義為試圖發(fā)送比接觸或節(jié)點(diǎn)緩沖區(qū)可承載數(shù)據(jù)量要多的數(shù)據(jù),因此,網(wǎng)絡(luò)中的接觸容量限制和過多的業(yè)務(wù)量都可能會(huì)引起擁塞.CGR通過維護(hù)本地節(jié)點(diǎn)接觸的剩余容量信息來避免使用本地?fù)砣溌忿D(zhuǎn)發(fā)數(shù)據(jù)的情況.這種僅考慮本地接觸剩余容量而忽略后續(xù)路徑接觸容量及中間節(jié)點(diǎn)存儲(chǔ)能力的方式可能會(huì)引起不必要的業(yè)務(wù)量反彈效應(yīng)[41],因此,文獻(xiàn)[39]提出了PCC算法.PCC既可以作為DTN流量控制方案,也可以作為DTN拓?fù)渫椒椒?它將節(jié)點(diǎn)生成的源與目的節(jié)點(diǎn)間的可行路徑及路徑上每個(gè)接觸的剩余容量信息封裝到數(shù)據(jù)包頭部中,中間節(jié)點(diǎn)根據(jù)接收的數(shù)據(jù)包頭部信息和異步反饋消息完成本地接觸圖更新、容量預(yù)測(cè)和路由決策.PCC雖然通過利用相鄰節(jié)點(diǎn)間的信息交互改善了本地節(jié)點(diǎn)的知識(shí)處理能力,但所需的包頭部開銷非常大.
文獻(xiàn)[41]提出了PA-CGR和MG-CGR兩種擁塞避免方法,并提出了基于可預(yù)知的接觸計(jì)劃和業(yè)務(wù)量的線性規(guī)劃模型,作為分析和對(duì)比DTN擁塞感知機(jī)制的基準(zhǔn).PA-CGR算法利用接觸計(jì)劃中已包含的接觸容量信息,推測(cè)路徑容量(路徑容量由路徑上剩余容量最小的接觸決定),并根據(jù)路徑容量和本地接觸的剩余容量進(jìn)行路由決策.PA-CGR提高了接觸計(jì)劃中網(wǎng)絡(luò)拓?fù)湫畔⒌睦寐?擴(kuò)展了CGR的擁塞避免特性.與PCC相比,包頭部開銷減小了,但包投遞率降低了.MG-CGR利用確定性DTN中接觸計(jì)劃和業(yè)務(wù)量的可預(yù)知性以及線性規(guī)劃模型構(gòu)建擁塞避免路由架構(gòu).MG-CGR與CGR、PCC和PA-CGR最大的區(qū)別在于,MG-CGR利用線性規(guī)劃模型為每個(gè)節(jié)點(diǎn)定制特定的接觸計(jì)劃,然后,每個(gè)節(jié)點(diǎn)根據(jù)特定的接觸計(jì)劃采用CGR-EB進(jìn)行路由計(jì)算和轉(zhuǎn)發(fā).對(duì)于業(yè)務(wù)量可預(yù)知的確定性DTN,MG-CGR性能逼近線性規(guī)劃模型的上限,而對(duì)于業(yè)務(wù)量隨機(jī)的情況,PCC的性能最好.
此外,針對(duì)地球觀測(cè)衛(wèi)星網(wǎng)絡(luò)這類數(shù)據(jù)生成和資源預(yù)留均由任務(wù)操控制中心管理的空間 DTN,文獻(xiàn)[48]提出了全局路徑感知CGR(global path-aware CGR,簡(jiǎn)稱GPA-CGR),即在接觸圖生成階段,基于可預(yù)知的拓?fù)湫畔⒑蜆I(yè)務(wù)量全局視圖采用演化算法生成無擁塞的接觸計(jì)劃,并分發(fā)給網(wǎng)絡(luò)中的每個(gè)節(jié)點(diǎn).每個(gè)節(jié)點(diǎn)基于接收到的接觸計(jì)劃,應(yīng)用CGR-EB計(jì)算數(shù)據(jù)包轉(zhuǎn)發(fā)路徑.鑒于GPA-CGR依賴于可預(yù)測(cè)的業(yè)務(wù)量生成接觸計(jì)劃,處理不可預(yù)測(cè)業(yè)務(wù)、拓?fù)渥兓约皹I(yè)務(wù)量預(yù)測(cè)誤差的能力有限,文獻(xiàn)[48]在GPA-CGR中引入了容量計(jì)算誤差余量,并分發(fā)次優(yōu)備份接觸計(jì)劃到網(wǎng)絡(luò)中的所有節(jié)點(diǎn)以防網(wǎng)絡(luò)突發(fā)事件的發(fā)生.
除了上述工作以外,文獻(xiàn)[40]改進(jìn)了CGR-ETO的轉(zhuǎn)發(fā)決策機(jī)制,提出了基于本地信息的擁塞控制機(jī)制.該機(jī)制充分利用了 CGR的多路徑計(jì)算能力,將次優(yōu)路徑作為備用路徑,通過隊(duì)列出隊(duì)/入隊(duì)速率和束的最早傳輸時(shí)刻預(yù)測(cè)網(wǎng)絡(luò)狀態(tài).如果將束沿著最優(yōu)路徑轉(zhuǎn)發(fā)會(huì)造成傳輸隊(duì)列擁塞,則利用備用路徑轉(zhuǎn)發(fā)該束來避免擁塞發(fā)生.
目前,DTN路由方案呈現(xiàn)二分性,即確定性DTN路由方案和隨機(jī)性DTN路由方案彼此相互獨(dú)立.為了給出一個(gè)適合所有DTN環(huán)境的統(tǒng)一路由方案,文獻(xiàn)[31]提出了基于CGR的OCGR算法.與CGR相比,OCGR算法不僅擴(kuò)展了接觸計(jì)劃,而且在轉(zhuǎn)發(fā)決策過程中引入了束交付置信度.在 OCGR中,接觸計(jì)劃由預(yù)定接觸(scheduled contact)、發(fā)現(xiàn)接觸(discovered contact)和預(yù)測(cè)接觸(predicted contact)組成.預(yù)定接觸通過接觸計(jì)劃調(diào)度得出,發(fā)現(xiàn)接觸由節(jié)點(diǎn)實(shí)時(shí)發(fā)現(xiàn),預(yù)測(cè)接觸則依據(jù)發(fā)現(xiàn)接觸的歷史信息進(jìn)行預(yù)測(cè).預(yù)定接觸和發(fā)現(xiàn)接觸的置信度為 1,而預(yù)測(cè)接觸的置信度由發(fā)現(xiàn)接觸日志信息推導(dǎo)得出.OCGR定義路徑的置信度為路徑中所有接觸的置信度的乘積,并根據(jù)路徑的置信度確定束的交付置信度.OCGR的研究仍處于起步階段,其性能尚未超過其他機(jī)會(huì)路由算法,但一般認(rèn)為,此改進(jìn)是可行的[31].
空間DTN網(wǎng)絡(luò)所處網(wǎng)絡(luò)環(huán)境復(fù)雜,接觸易受電磁波干擾、鄰頻干擾等影響而意外中斷,網(wǎng)絡(luò)節(jié)點(diǎn)可能遭遇攻擊、能量耗盡、天線故障等而失效,造成網(wǎng)絡(luò)拓?fù)湟馔庾兓?CGR基于準(zhǔn)確的接觸計(jì)劃進(jìn)行路由決策,缺少應(yīng)對(duì)節(jié)點(diǎn)或鏈路異常的能力.文獻(xiàn)[42]在CGR中引入了應(yīng)對(duì)接觸意外中斷的策略,提高了CGR處理接觸異常的能力.該機(jī)制首先根據(jù)接觸上連續(xù)發(fā)生束重傳的次數(shù)判斷鏈路是否發(fā)生意外中斷;一旦檢測(cè)到接觸中斷,則將接觸失效信息通告給所有節(jié)點(diǎn),與此同時(shí),激活接觸失效探測(cè)機(jī)制發(fā)送探測(cè)束檢測(cè)接觸是否恢復(fù);如果接觸恢復(fù),則將接觸恢復(fù)消息下發(fā)給所有節(jié)點(diǎn);節(jié)點(diǎn)接收到接觸失效或恢復(fù)消息后更新本地接觸圖,重新計(jì)算路徑.
已經(jīng)有多種DTN開源仿真平臺(tái),包括DTN2、ION、Postellation、IBR-DTN、JDTN和ONE等[49].其中,DTN2由加利福尼亞大學(xué)采用C和C++語言編程實(shí)現(xiàn),主要包含的路由協(xié)議有靜態(tài)路由、洪泛路由、延遲容忍鏈路狀態(tài)路由(delay tolerant link state routing,簡(jiǎn)稱DTLSR)和基于概率的Prophet路由等[50].ION是由JPL實(shí)驗(yàn)室針對(duì)空間網(wǎng)絡(luò)開發(fā)的軟件平臺(tái),采用C語言實(shí)現(xiàn),支持Linux、Solaris、OS/X、FreeBSD、VxWorks、RTEMS等平臺(tái),路由采用CGR[51].Postellation是由Viagenie使用C語言開發(fā)的,支持IPv4和IPv6[52].IBR-DTN是由布倫瑞克工業(yè)大學(xué)基于C++語言開發(fā)的,支持Openwrt、Ubuntu、Android、MacOS等系統(tǒng),其路由模塊主要包括靜態(tài)連接路由、基于發(fā)現(xiàn)的路由、傳染路由、洪泛路由和Prophet路由[53].JDTN是由思科開發(fā)的基于Java語言實(shí)現(xiàn)的平臺(tái),支持Android等移動(dòng)平臺(tái)[54].ONE是由Ker?nen等人基于Java語言設(shè)計(jì)的機(jī)會(huì)DTN路由仿真平臺(tái),主要支持DirectDelivery、Epidemic、Maxprop、Prophet、Spary and Wait等路由協(xié)議[55].在上述仿真平臺(tái)中,CGR主要在 ION中實(shí)現(xiàn),而 ION多用于仿真由有限節(jié)點(diǎn)組成的小規(guī)??臻g DTN.為了補(bǔ)充 CGR的研究評(píng)估手段,Berlati等人已將CGR移植到ONE上,打破了基于小規(guī)模網(wǎng)絡(luò)測(cè)試評(píng)估CGR性能的局面[56].
多項(xiàng)空間實(shí)驗(yàn)被相繼展開,以驗(yàn)證DTN范型和CGR的有效性.根據(jù)實(shí)測(cè)實(shí)驗(yàn)開展的時(shí)間先后順序,我們簡(jiǎn)要介紹以下4個(gè)實(shí)驗(yàn),如圖6所示.在2008年10月進(jìn)行的為期27天的深度撞擊網(wǎng)絡(luò)(deep impact network,簡(jiǎn)稱DINET)實(shí)驗(yàn)中,順利接收到了來自火星的292張圖片[57];2009年7月,美國國家航空航天局(National Aeronautics and Space Administration,簡(jiǎn)稱NASA)在國際空間站(International Space Station,簡(jiǎn)稱ISS)上開始DTN范式實(shí)驗(yàn),并于2016年5月在ISS上正式運(yùn)行[58];2010年11月,塞薩斯德謨克里特大學(xué)等多個(gè)研究單位共同開始了為期3年半的空間數(shù)據(jù)路由器(space-data router,簡(jiǎn)稱 SDR)項(xiàng)目,驗(yàn)證了 CGR有助于空間科學(xué)數(shù)據(jù)的分發(fā)[59];2011年~2013年期間,日本宇宙航空研究開發(fā)機(jī)構(gòu)(Japan aerospace exploration agency,簡(jiǎn)稱JAXA)與NASA聯(lián)合完成了DTN技術(shù)測(cè)試,證實(shí)了在航天器中使用DTN與CGR是可行的[60].
Fig.6 Conducted real test experiments圖6 已開展的實(shí)測(cè)實(shí)驗(yàn)
DINET是為測(cè)試DTN協(xié)議(如BP、CGR等)實(shí)施的深空飛行驗(yàn)證實(shí)驗(yàn)[61].在該實(shí)驗(yàn)中,將ION軟件上載到深度撞擊飛行器中,同時(shí),在地面多臺(tái)計(jì)算機(jī)上安裝 ION軟件模擬地球、火星和火衛(wèi)一(phobos),從而構(gòu)建一個(gè)火星-地球通信的虛擬場(chǎng)景.深度撞擊飛行器作為中繼路由,實(shí)現(xiàn)火星與地球之間的數(shù)據(jù)傳遞.DINET的網(wǎng)絡(luò)系統(tǒng)組成如圖7所示[57].
· 7號(hào)節(jié)點(diǎn)表示深度撞擊飛行器,是網(wǎng)絡(luò)中唯一沒有被放置在JPL實(shí)驗(yàn)室的節(jié)點(diǎn).
· 節(jié)點(diǎn)2、節(jié)點(diǎn)4、節(jié)點(diǎn)8和節(jié)點(diǎn)16模擬地球表面的通信系統(tǒng).
· 節(jié)點(diǎn)3、節(jié)點(diǎn)6和節(jié)點(diǎn)12模擬火星表面的通信系統(tǒng).
· 節(jié)點(diǎn)5、節(jié)點(diǎn)10和節(jié)點(diǎn)20模擬火衛(wèi)一表面的通信系統(tǒng)[7].
· 節(jié)點(diǎn)8、節(jié)點(diǎn)12和節(jié)點(diǎn)20模擬終端節(jié)點(diǎn).其中,節(jié)點(diǎn)12和節(jié)點(diǎn)20生成圖像文件,節(jié)點(diǎn)8接收和顯示圖像文件.
· 節(jié)點(diǎn)2、節(jié)點(diǎn)3和節(jié)點(diǎn)5分別模擬地球、火星和火衛(wèi)一通信系統(tǒng)與深度撞擊號(hào)之間的中間接口系統(tǒng).
· 節(jié)點(diǎn)4、節(jié)點(diǎn)6、節(jié)點(diǎn)10模擬終端節(jié)點(diǎn)和地面系統(tǒng)間的路由器.
· 節(jié)點(diǎn)16表示實(shí)驗(yàn)中用于分析和檢測(cè)實(shí)驗(yàn)數(shù)據(jù)的管理系統(tǒng)[62].
Fig.7 DINET system components圖7 DINET的系統(tǒng)組成
該實(shí)驗(yàn)?zāi)M了火星和火衛(wèi)一表面探測(cè)節(jié)點(diǎn)將采集的圖像通過深度撞擊飛行器傳回地面的過程.圖中的每個(gè)帶箭頭的虛線表示DTN網(wǎng)絡(luò)接觸序列;中間接口系統(tǒng)與實(shí)驗(yàn)操作中心之間帶箭頭的實(shí)藍(lán)線表示用于連接實(shí)驗(yàn)設(shè)備的局域網(wǎng).圖中節(jié)點(diǎn)6和節(jié)點(diǎn)10之間的鏈路為節(jié)點(diǎn)12和節(jié)點(diǎn)20之間的數(shù)據(jù)傳輸提供備用路徑.經(jīng)過近一個(gè)月的測(cè)試,CGR性能表現(xiàn)良好,實(shí)驗(yàn)中發(fā)現(xiàn)的漏洞也已經(jīng)在高版本的ION中得以解決.
自2009年起,NASA在ISS上開展了多項(xiàng)DTN驗(yàn)證實(shí)驗(yàn).2009年7月的第1個(gè)實(shí)驗(yàn)是通過數(shù)據(jù)中繼衛(wèi)星系統(tǒng)(data relay satellite system,簡(jiǎn)稱 TDRSS)下載位于 ISS上的商業(yè)通用生物處理設(shè)備(commercial generic bioprocessing apparatus 5,簡(jiǎn)稱CGBA-5)中的圖像文件[63].圖像文件從ISS傳輸?shù)轿挥诤啻木S爾的馬歇爾航天中心,然后轉(zhuǎn)發(fā)到位于科羅拉多大學(xué)波爾得分校的有效載荷操作控制中心.雖然此次部署的 CGBA拓?fù)鋸?fù)雜度并不足以充分發(fā)揮CGR的作用,但其成功部署,使ISS運(yùn)營團(tuán)隊(duì)更加確信DTN將成為ISS通信技術(shù)的重要組成部分[64].2012年,NASA和歐洲航天局(European Space Agency,簡(jiǎn)稱ESA)模擬了在軌飛行器上的宇航員遠(yuǎn)程控制行星表面探測(cè)器的場(chǎng)景[65].ISS上的指揮官Williams成功地借助DTN協(xié)議發(fā)送遠(yuǎn)程控制命令,遠(yuǎn)程“駕駛”位于歐洲太空操作中心的小型樂高(Lego)機(jī)器人[66].該實(shí)驗(yàn)證明了使用 DTN通信基礎(chǔ)設(shè)施從在軌航天器向地面機(jī)器人發(fā)送命令以及接收從機(jī)器人發(fā)回的數(shù)據(jù)的可行性.
由于空間數(shù)據(jù)收集中心和學(xué)術(shù)研究機(jī)構(gòu)與衛(wèi)星間的可通信時(shí)間有限,而且空間數(shù)據(jù)收集中心與學(xué)術(shù)研究機(jī)構(gòu)間缺乏高效的通信機(jī)制,因此空間數(shù)據(jù)分發(fā)面臨龐大數(shù)據(jù)量、時(shí)效性和連續(xù)性的制約,常常造成空間數(shù)據(jù)未能被有效及時(shí)地利用[59].為此,歐盟委員會(huì)資助成立空間數(shù)據(jù)路由器項(xiàng)目,旨在建立一個(gè)基于 DTN的空間數(shù)據(jù)開發(fā)架構(gòu),從數(shù)據(jù)量、及時(shí)性和連續(xù)性方面改進(jìn)空間數(shù)據(jù)的分發(fā).該項(xiàng)目的構(gòu)想如圖8所示[67]:利用DTN疊加層和 CGR進(jìn)行路由決策,一旦接收到空間任務(wù)數(shù)據(jù),就直接轉(zhuǎn)發(fā)給研究機(jī)構(gòu)等感興趣的終端用戶.該項(xiàng)目評(píng)估了CGR在空間任務(wù)地面段的適用性,證實(shí)了CGR有助于空間數(shù)據(jù)的高效分發(fā)[60].
Fig.8 Space data dissemination based on SDR圖8 基于SDR的空間數(shù)據(jù)分發(fā)
JAXA與NASA通過半真實(shí)半模擬的空間延遲/中斷環(huán)境,測(cè)試了DTN技術(shù)的可行性以及CCSDS文件傳輸協(xié)議(CCSDS file delivery protocol,簡(jiǎn)稱CFDP)、Bundle流服務(wù)(Bundle streaming service,簡(jiǎn)稱BSS)和CGR的有效性.該測(cè)試分為 4個(gè)不同的測(cè)試階段[68],見表3.第 1階段主要是在開始正式測(cè)試之前驗(yàn)證網(wǎng)絡(luò)連接性和DTN基本功能;第2階段通過模擬飛行器的運(yùn)行場(chǎng)景驗(yàn)證DTN功能;第3階段在真實(shí)的數(shù)據(jù)中繼實(shí)驗(yàn)衛(wèi)星(data relay test satellite,簡(jiǎn)稱DRTS)空間鏈路環(huán)境下驗(yàn)證DTN功能;第4階段通過DRTS空間鏈路連接ISS上的DTN節(jié)點(diǎn)與JAXA航空中心的DTN節(jié)點(diǎn)來驗(yàn)證DTN的功能.為了證實(shí)在長(zhǎng)距離延遲和中斷環(huán)境中CGR的可行性,采用了一個(gè)典型的深空中繼通信場(chǎng)景,如圖9所示.該場(chǎng)景由 1個(gè)任務(wù)操作中心(mission operation center,簡(jiǎn)稱MOC)、1個(gè)行星表面探測(cè)車(rover)、1個(gè)DRTS衛(wèi)星、2個(gè)行星中繼軌道衛(wèi)星(ROP1和ROP2)和2個(gè)地面站(GT1和 GT2)組成[69].Rover采集生成的數(shù)據(jù)通過 DRTS、ROP1、ROP2、GT1和 GT2傳輸?shù)?MOC.測(cè)試中將 ION部署在所有節(jié)點(diǎn)上,并利用 CGR動(dòng)態(tài)查找最佳路由.為了更加真實(shí)地模擬實(shí)際通信環(huán)境中的鏈路延遲和中斷,在測(cè)試中加入DRTS衛(wèi)星和兩個(gè)地面站之間的實(shí)際傳播延遲和處理延遲以及通過延遲模擬器模擬的DRTS衛(wèi)星與ROP1和ROP2之間3 600s的往返延遲.此外,通過開關(guān)射頻鏈路,模擬由無線電干擾和雨衰引起的不可預(yù)測(cè)中斷以及由航天器間不可視引起的可預(yù)測(cè)中斷,并通過增加或減小射頻電平大小,模擬實(shí)際降雨的衰減水平.測(cè)試結(jié)果顯示,CGR能夠?qū)崿F(xiàn)傳輸路徑的自動(dòng)選擇,成功地完成了圖像文件的傳輸.
Table 3 JAXA/NASA DTN test items表3 JAXA/NASA DTN測(cè)試內(nèi)容
Fig.9 JAXA DTN test topology圖9 JAXA的DTN測(cè)試拓?fù)?/p>
本文將CGR應(yīng)用到由GEO/MEO/LEO組成的多層衛(wèi)星網(wǎng)絡(luò)中,從拓?fù)涮幚聿呗?、路由跳?shù)、路徑延遲、故障處理和擁塞控制等5個(gè)方面對(duì)比分析了CGR與多層衛(wèi)星路由算法(multi-layered satellite routing algorithm,簡(jiǎn)稱MLSR)[70]的性能.MLSR根據(jù)GEO衛(wèi)星和MEO衛(wèi)星的覆蓋范圍將MEO衛(wèi)星和LEO衛(wèi)星分組,并根據(jù)分組關(guān)系變化劃分時(shí)隙,GEO衛(wèi)星和MEO衛(wèi)星為組管理者,負(fù)責(zé)網(wǎng)絡(luò)狀態(tài)信息維護(hù)和路由表計(jì)算.鑒于采用ION仿真大規(guī)模多層衛(wèi)星網(wǎng)絡(luò)所需的硬件成本高,本文選用支持CGR的ONE平臺(tái)作為多層衛(wèi)星網(wǎng)絡(luò)模擬器來對(duì)比評(píng)估兩種路由算法性能.由于ONE中不包含衛(wèi)星節(jié)點(diǎn)的運(yùn)動(dòng)模型,我們采用STK構(gòu)建多層衛(wèi)星網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu),分析并生成其星間連接、距離、星下點(diǎn)軌跡等數(shù)據(jù),導(dǎo)入到 ONE中進(jìn)行仿真.ONE模擬器的主要參數(shù)設(shè)置見表4.
Table 4 Main parameter settings of ONE表4 ONE主要參數(shù)設(shè)置
所用的多層星座參數(shù)見表5,其中,GEO衛(wèi)星軌道位于赤道上方,MEO衛(wèi)星和LEO衛(wèi)星則分別采用傾斜軌道和極軌道.仿真中,將36顆LEO衛(wèi)星編號(hào)為0~35,12顆MEO衛(wèi)星編號(hào)為36~47,3顆GEO衛(wèi)星編號(hào)為48~50.
Table 5 Main parameters of satellite constellation表5 衛(wèi)星星座主要參數(shù)
本文以24h為系統(tǒng)周期,分別按照CGR和MLSR的拓?fù)涮幚聿呗?將多層衛(wèi)星網(wǎng)絡(luò)的一個(gè)系統(tǒng)周期劃分為多個(gè)時(shí)隙,結(jié)果如圖10和圖11所示.
Fig.10 MLSR slot distribution圖10 MLSR時(shí)隙分布
Fig.11 CGR slot distribution圖11 CGR時(shí)隙分布
圖10為按照MLSR的拓?fù)涮幚聿呗詣澐謺r(shí)隙的結(jié)果,多層星座的一個(gè)系統(tǒng)周期被劃分為4 972個(gè)時(shí)隙,時(shí)隙間隔大多分布在60s以內(nèi),最短時(shí)隙間隔長(zhǎng)度為1s,最長(zhǎng)為122s.圖11為按照CGR的拓?fù)涮幚聿呗詣澐謺r(shí)隙的結(jié)果,其時(shí)隙總數(shù)為59個(gè),均勻分布在7 100s以內(nèi),最短時(shí)隙間隔長(zhǎng)度為439s,最長(zhǎng)為7 038s.原因在于,MEO衛(wèi)星與LEO衛(wèi)星之間的組間關(guān)系頻繁變化,造成MLSR一個(gè)系統(tǒng)周期內(nèi)的時(shí)隙數(shù)量較大;而CGR采用星間接觸的最大連通時(shí)間為單位劃分時(shí)隙,時(shí)隙數(shù)量少.過短的時(shí)隙間隔導(dǎo)致路由算法可能不收斂,而過多數(shù)量的時(shí)隙導(dǎo)致需要大量空間來存儲(chǔ)相關(guān)狀態(tài)信息,給星上資源有限的衛(wèi)星節(jié)點(diǎn)帶來挑戰(zhàn).
假設(shè)地面站以編號(hào)為 0的LEO衛(wèi)星為接入衛(wèi)星,分別向編號(hào)為 1~50的衛(wèi)星節(jié)點(diǎn)發(fā)送數(shù)據(jù)包,統(tǒng)計(jì)MLSR和CGR求得的路徑延遲和路由跳數(shù),結(jié)果如圖12所示.可以看出,CGR求得的路徑延遲比MLSR略小,但也存在部分路徑延遲大于 MLSR的情況.原因在于,CGR可以充分利用長(zhǎng)時(shí)隙間隔內(nèi)的所有鏈路進(jìn)行數(shù)據(jù)傳輸,MLSR只能通過短時(shí)隙間隔內(nèi)始終連通的鏈路傳輸數(shù)據(jù).但由于MLSR綜合考慮了傳播延遲、處理延遲和隊(duì)列延遲,而 CGR只考慮了鏈路容量限制沒有考慮排隊(duì)延遲,因此當(dāng)節(jié)點(diǎn)緩存隊(duì)列中數(shù)據(jù)包較多時(shí),CGR的路徑延遲略大于MLSR.
Fig.12 Hops and delay圖12 跳數(shù)和延遲
由圖12可知,通過編號(hào)為0的LEO衛(wèi)星向編號(hào)為1~35的LEO衛(wèi)星發(fā)送數(shù)據(jù)時(shí),MLSR的路由跳數(shù)分布在2跳;CGR的路由跳數(shù)分別以30%的概率分布在1跳、2跳和3跳,而以10%的概率分布在4跳.當(dāng)通過編號(hào)為0的LEO衛(wèi)星向編號(hào)為36~47的MEO衛(wèi)星發(fā)送數(shù)據(jù)時(shí),MLSR的路由跳數(shù)以40%的概率分布在3跳,而以60%的概率分布在1跳;CGR的路由跳數(shù)以30%的概率分布在2跳,而以70%的概率分布在1跳.當(dāng)通過編號(hào)為0的LEO衛(wèi)星向編號(hào)為48~50的GEO衛(wèi)星發(fā)送數(shù)據(jù)時(shí),MLSR的路由跳數(shù)分布在2跳、3跳、4跳,CGR的路由跳數(shù)為4跳.此外,對(duì)比路由跳數(shù)和延遲的關(guān)系可知,當(dāng)路由跳數(shù)增大時(shí),兩種算法的路徑延遲并未出現(xiàn)大幅度增大的情況,僅在向 GEO 衛(wèi)星發(fā)送數(shù)據(jù)時(shí),路徑延遲大幅增大.原因在于,衛(wèi)星網(wǎng)絡(luò)的路徑延遲主要取決于傳播延遲,MLSR僅以路徑延遲作為度量值指導(dǎo)選路過程,CGR同時(shí)考慮了路徑延遲和跳數(shù)兩個(gè)度量值,LEO衛(wèi)星和GEO衛(wèi)星間的傳輸距離遠(yuǎn),傳輸延遲長(zhǎng),導(dǎo)致路徑延遲大.
衛(wèi)星天線故障、能量耗盡或黑客攻擊等會(huì)造成衛(wèi)星節(jié)點(diǎn)意外失效,使得經(jīng)過失效節(jié)點(diǎn)的路徑無法繼續(xù)使用.本文假設(shè)編號(hào)為10、27和38的3顆衛(wèi)星同時(shí)在第15s發(fā)生意外失效,失效時(shí)長(zhǎng)為175s,統(tǒng)計(jì)分析該失效時(shí)間段內(nèi)所有預(yù)計(jì)經(jīng)過失效節(jié)點(diǎn)傳輸?shù)臄?shù)據(jù)包的投遞率,結(jié)果如圖13所示.由圖可知,隨著衛(wèi)星節(jié)點(diǎn)失效時(shí)間的增加,CGR的包投遞率逐漸降低;而MLSR的包投遞率僅在節(jié)點(diǎn)失效剛發(fā)生后的較短時(shí)間內(nèi)出現(xiàn)下降,之后迅速恢復(fù)到較高水平.原因在于,CGR的路徑計(jì)算所依據(jù)的是預(yù)知的接觸計(jì)劃,當(dāng)節(jié)點(diǎn)失效發(fā)生后經(jīng)過失效節(jié)點(diǎn)的最優(yōu)路徑仍被用來繼續(xù)轉(zhuǎn)發(fā)數(shù)據(jù)包,致使大量數(shù)據(jù)包聚積在失效節(jié)點(diǎn)附近的鄰接節(jié)點(diǎn)中,引起數(shù)據(jù)包因生命周期失效或節(jié)點(diǎn)隊(duì)列溢出而被丟失,降低了數(shù)據(jù)包投遞率;而 MLSR具有節(jié)點(diǎn)失效處理能力,當(dāng)節(jié)點(diǎn)失效發(fā)生后,其鄰接節(jié)點(diǎn)會(huì)主動(dòng)發(fā)起拓?fù)涓录奥酚芍赜?jì)算,因此數(shù)據(jù)包可以避開失效節(jié)點(diǎn)進(jìn)行轉(zhuǎn)發(fā),減輕了節(jié)點(diǎn)失效對(duì)數(shù)據(jù)包傳輸?shù)挠绊?
Fig.13 Packet delivery ratio under node failures圖13 節(jié)點(diǎn)失效時(shí)的數(shù)據(jù)包投遞率
當(dāng)網(wǎng)絡(luò)業(yè)務(wù)請(qǐng)求數(shù)量增多時(shí),CGR最多選用3條路徑同時(shí)傳輸數(shù)據(jù).分別統(tǒng)計(jì)當(dāng)業(yè)務(wù)請(qǐng)求增多時(shí)采用CGR和MLSR傳輸業(yè)務(wù)請(qǐng)求的平均端到端延遲,結(jié)果如圖14所示.
Fig.14 Influence of traffic requests on end-to-end delay圖14 業(yè)務(wù)請(qǐng)求對(duì)端到端延遲的影響
由圖可知,CGR和MLSR的平均端到端延遲均隨業(yè)務(wù)請(qǐng)求數(shù)增加而增加,但CGR的平均端到端延遲增長(zhǎng)幅度比MLSR要小.此外,在業(yè)務(wù)請(qǐng)求數(shù)量相同的情況下,CGR的平均端到端延遲明顯低于MLSR.原因在于,業(yè)務(wù)請(qǐng)求的增多會(huì)導(dǎo)致節(jié)點(diǎn)排隊(duì)延遲變長(zhǎng),使路徑的端到端延遲變大.而 CGR具有多路徑計(jì)算能力,在業(yè)務(wù)請(qǐng)求數(shù)量增加時(shí),可以通過多條路徑進(jìn)行業(yè)務(wù)傳輸,減小了節(jié)點(diǎn)上的排隊(duì)延遲,因此,CGR端到端延遲增長(zhǎng)幅度比采用單路徑傳輸?shù)腗LSR要小.
空間DTN具有長(zhǎng)延遲、高誤碼率、拓?fù)漕l繁變化等特點(diǎn),這些特點(diǎn)給空間DTN路由帶來嚴(yán)峻的挑戰(zhàn).CGR為空間 DTN路由提供了一個(gè)切實(shí)可行的解決方案,受到了學(xué)術(shù)界的廣泛關(guān)注.本文根據(jù)現(xiàn)有文獻(xiàn),給出了 CGR的基本原理、相關(guān)術(shù)語和算法過程,綜述了針對(duì)CGR的缺陷提出的改進(jìn)方案和已部署的驗(yàn)證CGR的空間飛行實(shí)驗(yàn),并在多層衛(wèi)星網(wǎng)絡(luò)中對(duì)比評(píng)估了CGR的性能.在此基礎(chǔ)上,本文提出以下有待進(jìn)一步研究的問題.
(1)CGR-EB和C-CGR分別采用路徑編碼和路徑緩存的方式降低了CGR的計(jì)算開銷,但是前者增加了包頭部開銷,而后者以緩存空間為代價(jià).如何將CGR-EB和C-CGR相結(jié)合以進(jìn)一步改善系統(tǒng)整體性能,是一個(gè)值得研究的問題.
(2)改進(jìn)CGR,使其適用于隨機(jī)性DTN.雖然針對(duì)該問題,現(xiàn)有文獻(xiàn)已提出了OCGR,但性能較差,算法設(shè)計(jì)有待進(jìn)一步改進(jìn).
(3)CGR在有效性和帶寬開銷上與當(dāng)前的 Internet路由算法相當(dāng),但計(jì)算復(fù)雜度高.盡管這對(duì)于小規(guī)模簡(jiǎn)單網(wǎng)絡(luò)來說不是問題,但對(duì)于復(fù)雜的大規(guī)模網(wǎng)絡(luò)則不可行.文獻(xiàn)[18]首次測(cè)試了CGR在小、中、大這3種規(guī)模時(shí)變網(wǎng)絡(luò)拓?fù)渖系男阅懿⒅赋?隨著節(jié)點(diǎn)間接觸數(shù)量和網(wǎng)絡(luò)節(jié)點(diǎn)數(shù)目的增加,CGR計(jì)算開銷顯著增長(zhǎng),每個(gè)束的轉(zhuǎn)發(fā)時(shí)間呈指數(shù)增長(zhǎng).因此,在CGR中引入劃域的思想,對(duì)于降低CGR計(jì)算開銷、完善其理論基礎(chǔ)具有重要的意義.
(4)路由協(xié)議在提高服務(wù)質(zhì)量(quality of service,簡(jiǎn)稱QoS)中扮演著重要的角色,而空間DTN中的QoS路由與QoS保障機(jī)制等研究仍處于發(fā)展的早期階段[71],因此,設(shè)計(jì)具有QoS保障能力的CGR是一個(gè)有待研究的問題.
(5)CGR采用接觸列表描述所有時(shí)間間隔內(nèi)節(jié)點(diǎn)間的通信機(jī)會(huì),對(duì)于同一時(shí)間段內(nèi)相同源和目的節(jié)點(diǎn)間的上下行鏈路分別使用不同的接觸項(xiàng)描述[72].因此,當(dāng)網(wǎng)絡(luò)規(guī)模擴(kuò)大或網(wǎng)絡(luò)服務(wù)持續(xù)時(shí)間變長(zhǎng)時(shí),接觸計(jì)劃列表將變得非常大,降低了CGR算法效率.設(shè)計(jì)適用于大規(guī)模、長(zhǎng)服務(wù)時(shí)間DTN的接觸計(jì)劃描述方法,對(duì)完善CGR理論基礎(chǔ)具有重要的意義.
(6)空間網(wǎng)絡(luò)配置更新困難、星上計(jì)算和處理能力有限、高異構(gòu)性等特點(diǎn),給空間組網(wǎng)技術(shù)的發(fā)展帶來了嚴(yán)峻的挑戰(zhàn).將SDN(software defined networking)和NFV(network function virtualization)引入到空間網(wǎng)絡(luò)來設(shè)計(jì)新的網(wǎng)絡(luò)組網(wǎng)范式,是應(yīng)對(duì)上述挑戰(zhàn)的有效途徑[73].引入 SDN,可以解耦控制平面和轉(zhuǎn)發(fā)平面,使空間網(wǎng)絡(luò)具有可編程性、靈活性和可重構(gòu)的特點(diǎn);引入NFV,能夠簡(jiǎn)化網(wǎng)絡(luò)管理,促進(jìn)資源共享、聚合動(dòng)態(tài)分配[74,75].同時(shí),引入上述兩種技術(shù)能夠?qū)崿F(xiàn)空間網(wǎng)絡(luò)統(tǒng)一、靈活、細(xì)粒度的配置和管理,可以解決空間網(wǎng)絡(luò)靜態(tài)路由中因控制結(jié)構(gòu)不靈活而無法滿足負(fù)載均衡、故障管理和網(wǎng)絡(luò)擴(kuò)展的問題以及動(dòng)態(tài)路由全網(wǎng)控制能力弱的問題,有效地權(quán)衡空間網(wǎng)絡(luò)路由靈活性和可控性.