摘 要:衛(wèi)星靈活性和機動性強、不易受地面因素的影響,使空間衛(wèi)星技術(shù)不斷飛速發(fā)展。衛(wèi)星網(wǎng)絡(luò)隨著負載的增加始終存在負載擁塞現(xiàn)象,使路由算法成為衛(wèi)星網(wǎng)絡(luò)研究領(lǐng)域的核心問題。基于衛(wèi)星網(wǎng)絡(luò)的擁塞緩解、網(wǎng)絡(luò)的信令開銷以及算法運算復(fù)雜度問題,深入研究低軌衛(wèi)星網(wǎng)絡(luò)局部負載均衡的分布式路由算法。構(gòu)建基于銥星系統(tǒng)的網(wǎng)絡(luò)模型,提出一種基于鄰居衛(wèi)星負載狀態(tài)的分布式路由(DRNL)算法。DRNL 算法包含鄰居衛(wèi)星負載狀態(tài)更新、負載均衡和路由判決等機制,具有一定的可移植性,能夠適應(yīng)其他極軌或近極軌星座。OPNET 仿真結(jié)果表明,DRNL 算法在較重的網(wǎng)絡(luò)負載情況下能較好地適應(yīng)負載的變化,緩解衛(wèi)星擁塞的狀況并獲得較低的時延和數(shù)據(jù)分組丟失率。

楊明川; 薛冠昌; 李清毅, 通信學(xué)報 發(fā)表時間:2021-08-19
關(guān)鍵字:負載均衡;LEO;分布式路由;DRNL 算法
1 引言
隨著通信技術(shù)的進步、通信業(yè)務(wù)的增長和業(yè)務(wù)種類的增多,未來的通信網(wǎng)絡(luò)向著地面網(wǎng)絡(luò)和衛(wèi)星網(wǎng)絡(luò)融合的方向發(fā)展,低軌衛(wèi)星網(wǎng)絡(luò)在星地互聯(lián)網(wǎng)絡(luò)中扮演著重要的角色[1]。目前,移動通信系統(tǒng)已經(jīng)發(fā)展到了 5G 時代,通信終端數(shù)量也發(fā)生了爆炸式的增長[2]。衛(wèi)星通信成為地面移動通信系統(tǒng)和固定通信網(wǎng)絡(luò)的延伸,且由于低軌星座能夠?qū)崿F(xiàn)全球通信的無縫覆蓋,其作用和倡議價值非常重要。
LEO(low earth orbit)衛(wèi)星的傳輸損耗小,能夠支持小型移動終端之間的通信,便于實現(xiàn)終端小型化和多樣化,所以應(yīng)用價值很高[3]。低軌衛(wèi)星的運行軌道高度比較低,傳播延時比較短,通常在 10 ms 左右,能夠通過星間鏈路(ISL, inter satellite link)和相鄰衛(wèi)星建立全雙工通信,實現(xiàn)對數(shù)據(jù)進行路由轉(zhuǎn)發(fā)。雖然星間鏈路的建立使得星座系統(tǒng)的設(shè)計復(fù)雜度增加,但不需要在全球范圍內(nèi)建立大量的信關(guān)站,也降低了成本。
隨著業(yè)務(wù)量增加,星座網(wǎng)絡(luò)會出現(xiàn)擁塞現(xiàn)象。為緩解擁塞問題,Liu 等[4]提出 LEO 衛(wèi)星網(wǎng)絡(luò)基于分段路由的負載均衡算法,動態(tài)劃分輕負載區(qū)和重負載區(qū)。輕載區(qū)采用預(yù)平衡最短路徑算法,重載區(qū)采用最小權(quán)重路徑算法。分段路由算法吞吐量、鏈路利用率和平均時延方面得到提高,但是采用分段路由算法造成星上存儲空間增加且算法復(fù)雜度較高。Feng等[5]提出緩解擁塞狀態(tài)的最小跳路由算法,根據(jù)衛(wèi)星之間的經(jīng)緯度信息計算出 2 條備選路徑,根據(jù)網(wǎng)絡(luò)負載情況判決出最優(yōu)路徑。算法的信令開銷和運算復(fù)雜度較低,并在一定程度上緩解網(wǎng)絡(luò)擁塞現(xiàn)象,但路由表由固定節(jié)點計算,造成網(wǎng)絡(luò)的實時響應(yīng)性差。
Geng 等[6]提出 LEO 衛(wèi)星通信網(wǎng)絡(luò)的最優(yōu)時延路由算法,對衛(wèi)星網(wǎng)絡(luò)的時延變化進行表征,并選擇有效的候選路徑。算法得出路徑的時延及其變化的時延評估指標(biāo),以網(wǎng)絡(luò)中信令開銷增加為代價,實時響應(yīng)網(wǎng)絡(luò)的擁塞情況。Wang 等[7]提出了基于擁塞預(yù)測的負載均衡路由算法,建立了多目標(biāo)優(yōu)化模型。采用修正因子來調(diào)整路徑成本,通過擁塞預(yù)測來預(yù)測衛(wèi)星間鏈路的擁塞。利用蟻群算法求解該模型,從而為每個連接請求找到最佳路徑,運用神經(jīng)網(wǎng)絡(luò)以更高的運算復(fù)雜度,實現(xiàn)衛(wèi)星網(wǎng)絡(luò)的高效負載均衡。
當(dāng)前衛(wèi)星網(wǎng)絡(luò)面對擁塞緩解問題,路由算法往往以網(wǎng)絡(luò)中信令分組的增加為代價,獲取全網(wǎng)衛(wèi)星的負載狀態(tài)信息,或者通過神經(jīng)網(wǎng)絡(luò)等算法及時進行流量預(yù)測進行提前緩解,增加了運算的復(fù)雜度以及星上存儲空間。針對算法復(fù)雜度和信令開銷,基于小衛(wèi)星星座的背景,算法設(shè)計考慮以較小的運算復(fù)雜度和信令開銷獲得時延和吞吐量性能的提升。
2 LEO 星座的建模
銥星(Iridium)系統(tǒng)由 66 顆 LEO 衛(wèi)星交叉連接組成覆蓋全球范圍的復(fù)雜全網(wǎng)狀衛(wèi)星網(wǎng)絡(luò),數(shù)據(jù)在衛(wèi)星之間進行路由而不經(jīng)過地面。銥星無縫的語音和數(shù)據(jù)全球覆蓋,實現(xiàn)真正的移動通信,并且系統(tǒng)中衛(wèi)星數(shù)量多,星間鏈路的互通能夠滿足未來物聯(lián)網(wǎng)信息的接入需求[8]。本文選用 Iridium 系統(tǒng)進行網(wǎng)絡(luò)建模,采用軟件 STK 11.2 進行衛(wèi)星軌道的參數(shù)建模和 OPNET 14.5 進行衛(wèi)星網(wǎng)絡(luò)路由算法的仿真分析。
Iridium 系統(tǒng)的衛(wèi)星運行軌道均采用順時針方向。在 STK11.2 中進行衛(wèi)星軌道建模時[9],設(shè)置衛(wèi)星的編號規(guī)則采用三位數(shù)字表示。衛(wèi)星命名的第 10 位表示衛(wèi)星的軌道編號,第 12 和 13 位表示衛(wèi)星的軌內(nèi)編號[10]。衛(wèi)星進入南北極圈后關(guān)閉相鄰軌道間的鏈路(軌間鏈路),極圈邊界緯度為 70°。每顆衛(wèi)星包含一個單波束衛(wèi)星天線,天線圓錐半角為 62°,即可實現(xiàn)全球無縫覆蓋。由于 Iridium 系統(tǒng)軌道 1 和軌道 6 相鄰,相鄰軌道的衛(wèi)星運動方向相反(此區(qū)域稱為反向縫地區(qū)),衛(wèi)星節(jié)點之間相對運行速度很快,天線難以及時調(diào)整且通信時間比較短,故取消反向縫間衛(wèi)星的軌間鏈路。Iridium 系統(tǒng)仿真參數(shù)如表 1 所示,3D 建模如圖 1 所示。
從星座的 3D 建模圖可以看出,Iridium 實現(xiàn)了全球無縫覆蓋。設(shè)置地面衛(wèi)星的通信仰角為 5°,隨機選取北京市測量任意時刻可接入衛(wèi)星的數(shù)量,仿真結(jié)果如圖 2 所示。
在任意時刻地面終端可選接入衛(wèi)星數(shù)量始終大于或等于 1,這意味著地面終端可以采取最長接入時間覆蓋、最大地面仰角、最大接入信號功率等多種星地鏈路的選擇方案。
3 DRNL 路由算法
考慮衛(wèi)星網(wǎng)絡(luò)中較低的信令開銷以及算法的運算復(fù)雜度,基于衛(wèi)星網(wǎng)絡(luò)的擁塞緩解問題,本文提出一種基于鄰居衛(wèi)星負載狀態(tài)的分布式路由算法(DRNL, distributed routing algorithm based on the load status of neighbor satellite),充分考慮了衛(wèi)星移動的規(guī)律性,將星座網(wǎng)絡(luò)中的每顆衛(wèi)星看成虛擬節(jié)點[11-12]。衛(wèi)星采用雙向通信,通過無線收發(fā)信機實現(xiàn)數(shù)據(jù)發(fā)送和接收[13]。該路由算法采用虛擬節(jié)點的思想,將地球表面劃分為 66 個邏輯區(qū)域,距離邏輯區(qū)域中心最近的衛(wèi)星加載其邏輯地址。每顆衛(wèi)星節(jié)點能夠獨立進行分布式的路由決策,且衛(wèi)星的軌道采用近極軌道,軌道傾角為 87°,根據(jù)虛擬節(jié)點的思想該策略能夠簡化衛(wèi)星之間的相對運動問題,可適用于其他近極軌道星座[14]。
通過衛(wèi)星網(wǎng)絡(luò)的拓撲結(jié)構(gòu)可知,衛(wèi)星不通過極區(qū)時,非反向縫兩側(cè)的衛(wèi)星時存在 4 條星間鏈路,且每對衛(wèi)星節(jié)點之間包括發(fā)送和接收鏈路 2 個方向,如圖 3 所示。
DRNL 路由算法中每顆衛(wèi)星獨立的進行路由選擇,當(dāng)前衛(wèi)星節(jié)點在星座中的編號為< ks , ls >,目的衛(wèi)星節(jié)點在星座中的編號為< kd , ld >,其中 k 代表軌道編號,l 代表軌內(nèi)編號。通過衛(wèi)星之間命名的關(guān)系(相對位置),判斷出可選路由下一跳衛(wèi)星節(jié)點,數(shù)據(jù)分組的可選節(jié)點路由策略如圖 4 所示。其中 d s ? ? ? k k k , d s ? ? ? l l l ,圖中指向箭頭表示可選節(jié)點路由的方向。
數(shù)據(jù)分組到達衛(wèi)星節(jié)點時,根據(jù)分組域中的目的地址和當(dāng)前節(jié)點的編號采用 DRNL 算法獲取可選下一節(jié)點。如果當(dāng)前節(jié)點與可選節(jié)點的星間鏈路處于連接狀態(tài),則依據(jù)負載判決機制選擇合適的下一節(jié)點。如果與可選下一節(jié)點的軌間鏈路斷開,則依據(jù)迂回路由算法選擇其余的待選路徑。待選路徑的衛(wèi)星一般為當(dāng)前衛(wèi)星節(jié)點軌道面內(nèi)的上、下兩顆衛(wèi)星,依據(jù)鄰居衛(wèi)星的緯度和負載狀態(tài)選擇合適的下一跳進行路由轉(zhuǎn)發(fā)。
衛(wèi)星節(jié)點間的鏈路負載情況[10]的計算如式(1) 所示。
其中, b1 q 為緩存隊列長度, Qb1 為緩存隊列容量, B1 q 到 B4 q 為節(jié)點 B 的 4 條星間鏈路的緩存隊列利用率, Bq 為鄰居節(jié)點 B 的綜合負載情況, ab q 為當(dāng)前節(jié)點 A 對應(yīng)相鄰節(jié)點 B 的緩存隊列的利用率, AB q 為綜合判決下一跳衛(wèi)星的鏈路利用率信息。
鏈路負載狀況采用三級負載判決形式,代表 3 種等級狀態(tài),如式(2)所示。等級越高說明鏈路越繁忙,則減少到擁塞鏈路的流量,起到均衡局部負載的作用。
狀態(tài)信令包含綜合判決下一跳衛(wèi)星的鏈路利用率信息以及負載等級信息。初始時刻,衛(wèi)星每間隔 1 s 更新一次本地負載信息,如果當(dāng)前時刻和上一時刻的狀態(tài)相同,則每間隔 2 s 發(fā)送當(dāng)前衛(wèi)星的狀態(tài)信令給鄰居衛(wèi)星。如果狀態(tài)不同,則每間隔 1 s 發(fā)送狀態(tài)信令。相鄰衛(wèi)星接收到狀態(tài)信令數(shù)據(jù)后,更新存儲的網(wǎng)絡(luò)負載信息表,從而調(diào)整選擇下一跳衛(wèi)星的路由策略。
衛(wèi)星節(jié)點定期監(jiān)測周圍衛(wèi)星狀態(tài)信息,當(dāng)網(wǎng)絡(luò)出現(xiàn)負載不均衡或者是鏈路斷開的情況時,衛(wèi)星應(yīng)該及時解決緩解擁塞和鏈路通斷時的路由問題。狀態(tài)信令含有衛(wèi)星的緯度和負載信息,緯度信息用于判斷相鄰衛(wèi)星是否進入極區(qū)。衛(wèi)星在經(jīng)過極區(qū)時關(guān)閉軌間鏈路,衛(wèi)星拓撲如圖 5 所示。
路由轉(zhuǎn)發(fā)利用當(dāng)前和目的衛(wèi)星的經(jīng)緯度信息,根據(jù)改進的最小跳路由算法計算下一跳衛(wèi)星。當(dāng)前節(jié)點 C loc lac ? , ?,其中 loc 和 lac 分別為當(dāng)前衛(wèi)星的經(jīng)度和緯度,目的衛(wèi)星節(jié)點記為 D lod lad ? , ?,其中 lod 和 lad 分別為目的衛(wèi)星的經(jīng)度和緯度[5]。
當(dāng)前衛(wèi)星和目的衛(wèi)星之間的緯度關(guān)系滿足式(3) 時,可選路徑的方向向上。 0 90 180 90 lad lac lad lac ? ?? ? ? ? ≤ ≤ (3) 緯度關(guān)系滿足式(4)時,可選路徑的方向向下。
當(dāng)前衛(wèi)星與目的衛(wèi)星之間的經(jīng)緯度的關(guān)系總滿足上述 4 個條件中的 2 個,即該算法存在 2 個方向的可選下一跳衛(wèi)星。在數(shù)據(jù)分組域用設(shè)置過極區(qū)標(biāo)識,如果經(jīng)過極區(qū),則將其置 1,反之置 0。此時由于極區(qū)上空的衛(wèi)星關(guān)閉軌間鏈路,如果數(shù)據(jù)分組路由到達極區(qū),但目的衛(wèi)星不在極區(qū),則需保持進入極區(qū)的路由方向直至離開極區(qū),然后通過星間鏈路到達目的衛(wèi)星節(jié)點,防止根據(jù)最小跳算法在極區(qū)發(fā)送到軌間鏈路上造成數(shù)據(jù)分組丟失。
衛(wèi)星發(fā)生擁塞現(xiàn)象時,隊列中緩存的數(shù)據(jù)分組將會增加從而造成排隊時延的增加。此時,根據(jù)衛(wèi)星負載狀態(tài)更新策略檢測出擁塞等級。相鄰衛(wèi)星接收到狀態(tài)信令后,將減少數(shù)據(jù)分組發(fā)往擁塞節(jié)點。當(dāng)衛(wèi)星節(jié)點 A 具有 2 個可選下一跳衛(wèi)星 B 和 C 時,此時采用負載判決機制,根據(jù)可選衛(wèi)星的擁塞等級進行判斷。當(dāng) L L B C = 時,則下一跳衛(wèi)星按比例 0.5 隨機選擇。如果 L L B C ?,當(dāng) =1 L L B C ? 時,下一跳衛(wèi)星按比例 0.7 選擇負載等級低的衛(wèi)星,按比例 0.3 選擇負載等級高的衛(wèi)星。當(dāng) =2 L L B C ? 時,下一跳衛(wèi)星按比例 0.85 選擇負載等級低的衛(wèi)星,按比例 0.15 選擇負載等級高的衛(wèi)星。如果當(dāng)前衛(wèi)星與目的衛(wèi)星在同一軌道面或具有相同軌內(nèi)編號時,采取改進的最小跳算法為緩解擁塞可能會路由數(shù)據(jù)分組到非最小跳數(shù)的路徑方向,造成路由的跳數(shù)增加。
當(dāng)源衛(wèi)星節(jié)點為 104、目的衛(wèi)星節(jié)點為 306 時,如圖 5 所示,源節(jié)點首先判斷與 204 之間的鏈路是否連接。如果鏈路斷開,選擇節(jié)點 105 作為下一跳衛(wèi)星。反之,如果鏈路連接,則根據(jù)節(jié)點 105 和 204 的負載情況選擇下一跳衛(wèi)星。如果選擇節(jié)點 105,則給數(shù)據(jù)分組設(shè)置極區(qū)標(biāo)志,表示其經(jīng)過極區(qū)的方向。然后當(dāng)前衛(wèi)星再根據(jù)極區(qū)標(biāo)志判斷下一跳衛(wèi)星是 106,此時和目的節(jié)點在同一水平環(huán)內(nèi),途徑衛(wèi)星 206 轉(zhuǎn)發(fā)數(shù)據(jù)分組到目的節(jié)點。如果選擇 204,由于與 304 的軌間鏈路關(guān)閉,只能選擇到下一跳衛(wèi)星 205,同理途經(jīng) 206 到達目的節(jié)點。
4 OPNET 建模
4.1 星座負載建模
由于考慮到極地區(qū)域業(yè)務(wù)負載比較少,衛(wèi)星在極區(qū)關(guān)閉軌間鏈路的情況下,對極地地區(qū)和非極地地區(qū)的業(yè)務(wù)分布進行單獨建模。星座中總共包含 66 顆衛(wèi)星,對應(yīng)將地球表面劃分為 66 個服務(wù)區(qū)域,每個區(qū)域?qū)?yīng)一顆 LEO 衛(wèi)星承擔(dān)區(qū)域中的通信業(yè)務(wù)。在衛(wèi)星節(jié)點建模的過程中使用模擬數(shù)據(jù)源,用以模擬衛(wèi)星在實際過程中接收到的地面終端發(fā)送的數(shù)據(jù)分組[15]。考慮極地地區(qū)和非極地地區(qū)業(yè)務(wù)負載不均衡,將星座中信元生成負載情況按照衛(wèi)星在運行中所處的緯度進行更新。
衛(wèi)星網(wǎng)絡(luò)中模擬業(yè)務(wù)源的數(shù)據(jù)產(chǎn)生速率為 0 10.24 W W kbps? ?。其中,W 為不同衛(wèi)星產(chǎn)生模擬通信業(yè)務(wù)的權(quán)重大小,W0 為全網(wǎng)衛(wèi)星設(shè)置的初始權(quán)重大小,權(quán)重分布如表 2 所示。
4.2 網(wǎng)絡(luò)層建模
OPNET 是商業(yè)化仿真軟件,其中產(chǎn)品 Modeler 能夠?qū)Χ喾N業(yè)務(wù)進行模擬,繪制仿真圖和輸出仿真報告。在仿真的過程中能夠收集統(tǒng)計量數(shù)據(jù)、查看網(wǎng)絡(luò)運行的動畫和調(diào)試程序。Modeler 在仿真時維護一個全局事件列表,在仿真運行的時刻執(zhí)行排在當(dāng)前列表最前面的事件,將基于數(shù)據(jù)分組的統(tǒng)計方法結(jié)合基于數(shù)學(xué)統(tǒng)計的建模方法[16]。
Iridium 星座的網(wǎng)絡(luò)層如圖 6 所示,主要建模星座的拓撲結(jié)構(gòu),是實現(xiàn)仿真分析 LEO 路由算法的基礎(chǔ)。在 OPNET 網(wǎng)絡(luò)層導(dǎo)入修改后的 STK 生成的軌道文件,每條軌道對應(yīng)生成一個衛(wèi)星節(jié)點,圖中包含 66 顆衛(wèi)星節(jié)點和一個接收主詢配置。接收主詢模塊通過基于衛(wèi)星的經(jīng)緯度、鏈路可視性以及依據(jù)衰落現(xiàn)象判斷數(shù)據(jù)分組是否可達、通斷星間鏈路,控制衛(wèi)星之間數(shù)據(jù)分組的路由轉(zhuǎn)發(fā)經(jīng)過鏈路的連接情況。
4.3 節(jié)點層建模
星座中衛(wèi)星的節(jié)點層模型如圖 7 所示,用于模擬衛(wèi)星節(jié)點實現(xiàn)的通信功能,是實現(xiàn)路由算法的硬件條件。天線的指向通過 ant_point 模塊進行周期調(diào)整,數(shù)據(jù)分組的接收和發(fā)送都是通過無線收發(fā)信機模塊來實現(xiàn),每個無線收發(fā)信機對應(yīng)一條 ISL 星間鏈路。其中,虛線為狀態(tài)連接線,傳輸隊列模塊的存儲信息。
圖7中的app_gen模塊用于模擬業(yè)務(wù)源的產(chǎn)生;
sink 模塊統(tǒng)計數(shù)據(jù)分組的傳輸時延等統(tǒng)計量,銷毀數(shù) 據(jù) 分 組 釋 放 仿 真 運 行 占 用 的 內(nèi) 存 空 間 ; LEO_route 模塊進行數(shù)據(jù)分組的下一節(jié)點的選擇。由于衛(wèi)星路由考慮星間鏈路,每顆衛(wèi)星節(jié)點需要有 4 條星間鏈路,所以節(jié)點層需要 4 對無線鏈路收發(fā)信機。
無線信號在仿真過程中需要配置 14 個管道階段,包括調(diào)制方式、噪聲系數(shù)、接收增益、背景噪聲、信噪比、比特誤碼率等模擬真實無線信號傳輸?shù)沫h(huán)境。模擬信號產(chǎn)生后通過分組流連接線傳輸?shù)铰酚赡K,選擇合適的下一跳衛(wèi)星節(jié)點,傳輸?shù)綄?yīng)鏈路的緩存隊列 queue 模塊,然后經(jīng)由收發(fā)信機進行發(fā)送。
4.4 進程層建模
節(jié)點域模塊中每個模塊都有不同的進程層模型,進程層是通過有限狀態(tài)機模型進行建模,每個狀態(tài)機對應(yīng)進程模型的一個狀態(tài),通過狀態(tài)連接線實現(xiàn)狀態(tài)的轉(zhuǎn)移。在進程層中狀態(tài)分為強制性和非強制性狀態(tài),強制性狀態(tài)是綠色標(biāo)識,非強制性狀態(tài)是紅色標(biāo)識[10]。當(dāng)進程執(zhí)行強制性狀態(tài)時,直接狀態(tài)執(zhí)行入口代和出口代碼,然后跳入其他狀態(tài)或終止。當(dāng)進程執(zhí)行非強制性狀態(tài)時,先執(zhí)行狀態(tài)的入口代碼,然后將控制器交給仿真核心,等待其他進程或者事件的觸發(fā)返回執(zhí)行出口代碼。
1) ant_point 模塊
由于衛(wèi)星在不停的運行過程中,衛(wèi)星之間的位置會發(fā)生改變,因此需要天線校準(zhǔn)模塊及時的跟蹤?quán)従有l(wèi)星節(jié)點的位置,其狀態(tài)轉(zhuǎn)移如圖 8 所示。
圖 8 中 point 模塊是獲取相鄰衛(wèi)星的位置參數(shù)進行天線校準(zhǔn)的狀態(tài)。首先獲取周圍相鄰的衛(wèi)星節(jié)點的 ID,依次獲取其經(jīng)度、緯度和高度信息,然后賦值給天線的指向參數(shù)。天線指向跟蹤的調(diào)整時間
間隔為 1 s,通過設(shè)置天線模塊提高發(fā)射增益,減少數(shù)據(jù)路由的誤碼率和數(shù)據(jù)分組丟失率。
2) LEO_route 模塊
數(shù)據(jù)分組的路由需要LEO_route模塊選擇合適的下一跳,路由模塊內(nèi)的有限狀態(tài)機模型如圖 9 所示。
STATE 狀態(tài)為當(dāng)前衛(wèi)星節(jié)點進行檢測自身的 4 條鏈路的緩存情況,并劃分相應(yīng)的擁塞等級。 SEND_HELLO 狀態(tài)為當(dāng)前節(jié)點發(fā)送的信令分組,將 STATE 狀態(tài)統(tǒng)計的衛(wèi)星節(jié)點的緩存數(shù)據(jù)和緯度信息存入信令分組。
RCV_LOCAL 狀態(tài)為接收到本節(jié)點產(chǎn)生的模擬數(shù)據(jù)分組后執(zhí)行的操作。RCV_NEIGH 狀態(tài)首先判斷接收到的數(shù)據(jù)是信令分組或數(shù)據(jù)分組,如果為數(shù)據(jù)分組判斷其目的地址,判決是執(zhí)行銷毀還是路由轉(zhuǎn)發(fā)。
5 仿真結(jié)果與性能分析
在研究過程中,改變網(wǎng)絡(luò)中模擬數(shù)據(jù)分組的產(chǎn)生速率,與典型的最小跳路由算法進行比較,通過對數(shù)據(jù)分組的端到端時延、數(shù)據(jù)分組丟失率、平均路由跳數(shù)指標(biāo),判斷星座網(wǎng)絡(luò)的擁塞處理能力[17]。
5.1 路由性能指標(biāo)
1)平均端到端時延
平均端到端時延為星座網(wǎng)絡(luò)中數(shù)據(jù)分組在模擬信源中產(chǎn)生的時刻開始,到通過路由轉(zhuǎn)發(fā)到達目的衛(wèi)星節(jié)點時刻的間隔求平均值。
其中, T?vg 為數(shù)據(jù)發(fā)送到接收的平均時延值, N 為接收到的數(shù)據(jù)分組的數(shù)量,Ti 為在星座中傳輸?shù)膯蝹€數(shù)據(jù)分組的端到端時延。
2)數(shù)據(jù)分組丟失率
數(shù)據(jù)分組在星座網(wǎng)絡(luò)傳輸?shù)倪^程中遇到緩存溢出、誤判決和路徑損耗等發(fā)生數(shù)據(jù)分組丟失的現(xiàn)象,丟失的數(shù)據(jù)分組數(shù)量與網(wǎng)絡(luò)中傳輸?shù)臄?shù)據(jù)分組的總數(shù)的比值。
其中, Nloss 為在傳輸過程中丟失的數(shù)據(jù)分組的總數(shù), Nsend 為網(wǎng)絡(luò)中發(fā)送的數(shù)據(jù)分組的總數(shù), Rloss 為數(shù)據(jù)分組丟失率。
3)平均路由跳數(shù)
在路由過程中,所有數(shù)據(jù)分組到達目的節(jié)點經(jīng)過的跳數(shù)的平均值稱為平均路由跳數(shù)。 1 vg N i i H H N ?? ?? (9) 其中, H?vg 為平均路由跳數(shù), N 為接收到的數(shù)據(jù)分組的數(shù)量,Hi 為網(wǎng)絡(luò)中單個數(shù)據(jù)分組的路由跳數(shù)。
5.2 OPNET 仿真參數(shù)設(shè)置
本文采用 BPSK 進行數(shù)據(jù)編碼且衛(wèi)星天線的校準(zhǔn)周期設(shè)置為 1 s,本文仿真參數(shù)設(shè)置如表 3 所示。
5.3 DRNL 算法仿真與分析
本文采用的比較路由性能的2種算法為文獻[5] 提出的最小跳路由算法及其改進型,均為分布式路由算法。
1) 固定路徑的分布式最小跳路由算法(FPRA, fixed path routing algorithm)
衛(wèi)星節(jié)點在路由決策時不考慮負載狀況,當(dāng)數(shù)據(jù)分組到達時,按照當(dāng)前衛(wèi)星和目的衛(wèi)星的經(jīng)緯度位置依據(jù)最小跳算法采用固定方向的策略選擇下一跳節(jié)點進行路由。
2) 隨機選擇路徑的分布式最小跳路由算法(RSRA, random select routing algorithm)
衛(wèi)星節(jié)點不考慮負載狀況,當(dāng)數(shù)據(jù)分組到達時,衛(wèi)星按照最小跳路由算法計算的 2 條備選方向隨機選擇作為下一跳衛(wèi)星節(jié)點轉(zhuǎn)發(fā)數(shù)據(jù)分組,能夠避免衛(wèi)星網(wǎng)絡(luò)在一些鏈路上傳輸引起擁塞,從而增強網(wǎng)絡(luò)的路由能力。
5.4 仿真結(jié)果
1) 平均端到端時延
數(shù)據(jù)分組產(chǎn)生時間間隔減小,衛(wèi)星節(jié)點的負載越重,所以端到端時延成向上增長的趨勢。仿真結(jié)果如圖 10 所示。
分組產(chǎn)生間隔在 0.14~0.08 s 時,3 種路由算法為相對空閑狀態(tài),端到端時延在 0.167 s 左右。分組產(chǎn)生間隔為 0.08~0.04 s 時,3 種路由算法為相對繁忙狀態(tài),DRNL 路由算法依然保持穩(wěn)定的路由能力,端到端時延保持在 0.2 s 以下。分組產(chǎn)生間隔為 0.03 s 時,網(wǎng)絡(luò)達到擁塞狀態(tài),3 種算法端到端延時大幅度上升,但 DRNL 算法時延維持在 0.538 s。仿真結(jié)果表明,DRNL 算法具有緩解網(wǎng)絡(luò)擁塞、降低時延的能力。
2)數(shù)據(jù)分組丟失率
仿真結(jié)果表明,隨著網(wǎng)絡(luò)負載加重,數(shù)據(jù)分組丟失率與端到端時延均增加,如圖 11 所示。當(dāng)分組產(chǎn)生間隔為 0.03 s 時,3 種路由算法的數(shù)據(jù)分組丟失率均顯著上升,這是由于網(wǎng)絡(luò)的擁塞現(xiàn)象加重,部分節(jié)點的緩存隊列出現(xiàn)溢出、數(shù)據(jù)分組同時到達收發(fā)信機引起沖突造成數(shù)據(jù)分組丟失,但是 DRNL 算法的數(shù)據(jù)分組丟失率維持在 0.09 左右,保持較好的性能。
3)平均路由跳數(shù)
數(shù)據(jù)分組路由的跳數(shù)增加會造成時延增大,需要考慮衛(wèi)星在自由空間的傳播時延。同軌道面內(nèi)衛(wèi)星均勻分布,星間距離保持固定,即軌道內(nèi)相鄰衛(wèi)星之間通信具有固定的時延,如式(10)所示。其中,R 是軌道面的半徑,M 是軌道面內(nèi)衛(wèi)星數(shù), c 是電磁波傳播速度。
軌道間衛(wèi)星之間的距離隨著衛(wèi)星的相對運動不斷發(fā)生變化。在赤道附近緯度較低,衛(wèi)星的分布比較稀疏,傳輸時延最大,計算式為 1 cos( ) c 360 2 1 cos 2 t lat R N ???? ? ?? ?? ? ? ? ? ? ?間(11)其中,N 是軌道面的數(shù)量,lat 是衛(wèi)星的緯度。
3 種算法平均路由跳數(shù)的仿真結(jié)果如圖 12 所示。當(dāng)分組產(chǎn)生間隔大于 0.07 s 時,網(wǎng)絡(luò)相對空閑, FPRA 和 RSRA 算法的路由跳數(shù)基本保持不變; DRNL 算法的平均路由跳數(shù)最小,使平均端到端延時最小。當(dāng)分組產(chǎn)生間隔小于 0.04 s 時,F(xiàn)PRA 和 RSRA 算法平均路由跳數(shù)下降,但由圖 10 可知,端到端時延仍呈上升趨勢。
端到端時延需考慮排隊時延和傳播時延,此時平均路由跳數(shù)減少,傳播時延降低,但是排隊時延增加。這是因為數(shù)據(jù)分組丟失率的增加導(dǎo)致數(shù)據(jù)分組不能到達目的地,在路由過程中丟失。由于 DRNL 算法中數(shù)據(jù)分組采用迂回路由轉(zhuǎn)發(fā)具有局部擁塞緩解的功能,此時數(shù)據(jù)分組丟失率依舊很低,但是隨著網(wǎng)絡(luò)負載增加,DRNL 平均路由跳數(shù)逐漸增加。
DRNL 路由算法考慮相鄰衛(wèi)星的負載狀態(tài),衛(wèi)星采用分布式思想,使每顆衛(wèi)星能夠獨立進行負載均衡路由判決,實時響應(yīng)衛(wèi)星網(wǎng)絡(luò)中負載的變化以及鏈路的通斷問題。以相對較低運算復(fù)雜度換取端到端時延和數(shù)據(jù)分組丟失率的降低,但是以網(wǎng)絡(luò)中相對較低的信令開銷為代價,使星座具有一定的抗毀性。
6 結(jié)束語
當(dāng)前世界掀起新一輪衛(wèi)星網(wǎng)絡(luò)建設(shè)風(fēng)潮,建設(shè)低軌衛(wèi)星網(wǎng)絡(luò)成為關(guān)系國計民生的重大倡議性工程。路由算法是衛(wèi)星網(wǎng)絡(luò)的核心技術(shù),本文提出的 DRNL 路由算法能夠通過較低的信令開銷獲取緩解網(wǎng)絡(luò)擁塞的能力,滿足一定的實時性要求。DRNL 算法通過信令分組及時獲取鄰居衛(wèi)星節(jié)點的負載狀態(tài)和鏈路的連接情況,提升了網(wǎng)絡(luò)的穩(wěn)健性,能夠滿足我國對低軌衛(wèi)星網(wǎng)絡(luò)通信系統(tǒng)的發(fā)展需要。
論文指導(dǎo) >
SCI期刊推薦 >
論文常見問題 >
SCI常見問題 >