高 翔,于紀言
(南京理工大學 智能彈藥技術國防重點學科實驗室, 南京 210094)
火箭彈多彈組網作戰系統是彈群組網作戰系統在火箭彈上的一種應用。由于修正火箭彈成本低廉,因此通過多枚大規模的修正火箭彈組網協同對目標進行打擊,效費比較高。實現彈群組網協同攻擊的關鍵技術則在于實現彈群信息互聯互通的空間無線鏈路機制[1-3]。移動自組網(ad-hoc)由于具有無中心節點、無基站、能夠適應節點快速移動和拓撲變化頻繁的網絡,在彈群組網中被廣泛應用。ad-hoc網絡路由算法是ad-hoc網絡的核心也是實現彈群互聯互通的空間無線鏈路的關鍵[4]。目前,ad-hoc較為成熟的路由協議包括DSDV、FSR、OLSR等。[5]其中AODV路由協議是一種能夠較好適應ad-hoc網絡的按需路由協議,該路由協議不需要維護到所有節點的路由,僅需在需要時才進行路由獲取,通信結束則不再維護路由,從而節省了網絡資源。然而AODV路由協議在節點高速運動的環境下,網絡拓撲頻繁變化,鏈路極易中斷,導致網絡性能的迅速下降,從而無法提供較好的網絡通信質量[6-8]。目前,國內外針對該問題,提出了多種改進方案。例如李明軍等[9]提出的路由評估函數和鏈路狀態預測機制,使路由在失效前啟動局部修復。文獻[10]提出的AODV-BR算法,其主要利用備份路由替換失效路由,但是需要付出維護多個備份路由的代價,而且快速變化的拓撲圖也會導致備份路由失效;文獻[11]提出的AODV-BA算法,其主要是通過對路由鏈路狀態的檢測,發現鏈路中較弱的連接,從而提前進行路由修復,但界定路由鏈路狀態的標準缺乏足夠的理論依據;文獻[12]提出的通過相關性的路由選擇算法,從而選擇最穩定的鏈路;文獻[13]提出通過接收信號強度變化,預測鏈路的穩定性。然而這些算法沒有充分考慮網絡拓撲對路由的影響。特別是當變化頻繁時,相對穩定的鏈路也易失效。文獻[14]通過調整跳數、平均連接度以及最小帶寬的權值系數,使得移動自組網的性能有了很大的提高。然后該方法的實際應用意義不大。文獻[15]利用網格中節點的位置信息,有效限制路由查詢包的泛洪區域,結合預測策略和節點不相交路徑策略來選擇多條穩定的節點路由。
針對彈群組網的特點,本文在AODV的基礎上設計了結合速度感知和路徑穩定的改進型AODV路由協議(RS-AODV)。RS-AODV在路由發現階段的節點選取上引入了新的評判機制,綜合考慮了節點的剩余能量和路由跳數因素,建立路由路徑評估函數。通過建立的路徑評估函數來比較源節點到目的節點各條鏈路的穩定性,選擇穩定性較好的鏈路作為最佳路由線路。
AODV是一種專門針對移動自組網設計的典型按需距離矢量路由協議,具有較小的額外路由控制開銷。AODV路由發現是通過廣播的方式由源節點發送RREQ數據包來建立路由。當源節點有數據要發到目的節點時,先查看路由表中是否有到達目的節點的有效路由,如果有,則按照路由發送,如果沒有,則發起路由發現過程[16]。源節點采用泛洪廣播的方式給周邊一跳節點發送RREQ消息接收到RREQ包的中間節點先查看在一段時間內是否收到具有相同標識的RREQ包,如果有,丟棄后收到的RREQ包,如果沒有,處理該RREQ包。路由應答消息沿著RREQ發送過程中建立的反向路由送到源節點,至此路由發現過程結束,源節點與目的節點建立起了通信鏈路。
火箭彈彈群網絡中,彈節點高速運動導致網絡拓撲變化頻繁。由于經典AODV路由協議在路由發現階段采用的是最短鏈路機制(即鏈路中路由節點最少)并沒有考慮通信鏈路中節點間的相對運動導致的通信穩定性問題。在高速運動的彈群網絡中,當鏈路上的兩個通信節點具有較大的相對運動時,彈節點將會在短時間內運動到通信半徑之外,使得由AODV路由協議建立起的通信鏈路頻繁斷開。當通信鏈路斷開后,通信網絡就會通過AODV路由修復機制進行路由重建,但是利用經典的AODV路由修復機制進行路由重建往往趕不上網絡拓撲變化導致鏈路中斷的速度,從而導致整個網絡通信性能急劇下降。
在多火箭彈組網的網絡中,由于火箭彈自帶GPS模塊,彈載GPS跟新飛行的實時位置、速度、以及剩余能量所需要的時間小于一微秒,且消耗能量極少,因此可以通過GPS模塊知道火箭彈在飛行途中節點的實時位置、速度以及剩余能量。那么可以在路由發現階段廣播RREQ消息的時候,在RREQ中附加節點的位置信息和速度信息。即源節點通過自身的GPS獲取自身的位置和速度以及剩余能量信息后,將這些消息添加到RREQ消息中構造新的RREQ消息,然后將新的RREQ消息廣播到周圍的相鄰節點。當新的RREQ消息到達相鄰節點后,相鄰節點首先根據經典的AODV路由協議處理該RREQ消息,當經典的AODV路由算法判定該節點為中間路由點時,通過獲取RREQ消息中的速度和位置信息,采用優先節點機制判斷該節點是否為優先節點,如果是則更新RREQ消息,然后向周圍繼續廣播消息和轉發數據分組。如果不是,則丟棄該節點。
2.2節所提到的優先節點判斷機制是根據當前節點的位置和上一跳節點的相對運動的大小以及方向進行篩選的。設節點C所在位置坐標為(xC,yC,zC),速度為vC與z軸的夾角為γC、速度在xOy面的投影與x軸的夾角為φC。設節點D坐標為(xD,yD,zD),速度為vD與z軸的夾角為φD、速度在xOy面的投影與x軸的夾角為φD,且節點D接收到了由節點C發來的改進型RREQ消息。考慮到節點的最大通信半徑和可靠性要求可知,節點C和D之間的距離為LCD≤pR,其中R為節點的通信半徑,p為可靠性參數(取0.7-1)。因此可知優先路由節點需滿足的第一個條件為:
(xC-xD)2+(yC-yD)2+(zC-zD)2≤ρ2R2
(1)

(2)
(3)
當節點通過經典AODV篩選確定為中間路由節點時,如果滿足式(1)、式(3),則被選定為優先節點。

圖1 兩個節點的相對運動速度
2.4.1路由穩定度
確定了優先節點后,需要從挑選出來的鏈路中選擇性能最優的路徑進行通信。傳統的AODV路由協議以跳數為度量值來選取傳輸路徑,不考慮鏈路狀態,很容易選取鏈路不穩定的路徑。為此本文在選取路由鏈路時考慮以下因素:1) 節點跳數:路由失效概率和節點跳數的數量成正比。2) 節點剩余能量:剩余能量越少,越容易失效。
針對以上的兩個因素,設計了一個評估路由穩定度的度量值G,G的公式如下:
(4)
式(4)中,G為度量值;hop為跳數;nod為網絡總的節點數;E為每個節點的初始能量;Er為剩余的能量;m1、m2表示權重的值,m1+m2=1,在本公式中m1、m2的值分別為0.7和0.3。
當G的值越小,表明鏈路的穩定性越高。
2.4.2鏈路可用時間預測算法
在Adhoc網絡中,兩節點只有在一定的距離內,才能直接通信,文獻[17]指出在Ad hoc網絡中,當節點距離較遠時符合雙射線的模型,其接受信號功率為:
(5)
式(5)中,Pr和Pt分別是節點接收和發送分組信號功率;d為兩個節點之間的距離;Hr是接收節點天線高度;Ht是發送節點的天線高度;Gr是接收節點天線的增益,而Gt為發送節點的天線增益;L使整個系統的損失因子,在這里取L為1。考慮到Hr、Ht、Gr和Gt都是常量,則式(5)可以簡寫為:
(6)
根據式(6),計算出收發節點之間的距離為:
(7)
當接收天線和發送天線超過通信距離,鏈路就會斷開,式(7)計算出了節點之間的距離,因此可以根據收發信號的功率對鏈路有效性進行檢測和預測。預測鏈路可用時間的算法是基于最新的兩組功率和時間的樣本值,以及兩個節點的最遠通訊距離D。
假設有彈節點a和b,在一段時間內相對速度保持穩定,其相對地移動過程簡化為平面相對運動模型如圖2所示。

圖2 彈節點相對運動模型

(8)
(9)

(10)
式(10)中,l0、l1和l2分別表示三角形ab0b1、ab1b2和ab0b2周長的1/2,d0和d1通過式(7)計算出來,聯合式(8)、式(9)和式(10)可以計算出鏈路中斷時刻t,從而得到鏈路可用時間ti=t-t1。
由于路由鏈路需要保證整個鏈路上所有的節點與節點間的通信順暢,如果某一個節點到其他節點的鏈路斷開,整個路由也隨之失效。因此整個鏈路的生存時間取決于各個節點之間保持通訊的最小值,路由生存時間計算如圖3所示。那么,源節點到目標節點的路由有效間計算公式如下:
RLT=min(LST1,LST2,LST3,…,LSTn)
(11)

圖3 路由生存時間計算
兩個節點之間的生存時間LST即為上文中的鏈路可用時間ti,同時將計算所得到的LST和已存儲在路由應答消息(RREP)中的RLT進行比較,如果新計算的LST小于RREP消息中的RLT進行比較,則將原有的RLT更新為LST值,否則不更新RREP中的RLT值,并沿著反向路徑對RREP消息進行轉發。當源節點收到所有線路上返回的RREP消息后,就可以根據每個消息中的RLT信息比較各條路由生存時間,根據公式(12)選出一條最優的路由路線作為數據通信鏈路。
M=n1Q+n2RLT
(12)
式(12)中,M是路由路徑性能綜合評估指標,M越大,路由性能越好;n1+n2=1,n1取0.4,n2取0.6。
RS-AODV的路由選擇流程框圖如圖4所示。

圖4 RS-AODV算法流程框圖
RS-AODV算法在傳統的AODV算法上引入了優先節點判斷機制、鏈路生存時間和路由穩定度評估指標。RS-AODV在路由發現階段,其RREQ和RREP都做了改進,在其中加入了節點的速度、位置以及能量信息,這需要從彈載的GPS模塊獲得該信息,因此會在路由發現階段多耗費一定的時間。
RS-AODV算法在路由階段雖然相比AODV有一定的時間消耗,但是它根據路由穩定度和生存時間綜合評估,選出了最穩定的鏈路,降低了鏈路斷開后重新發起路由發現的風險,使得整體性能有了很大的提升。
本文采用OPNETmodeler14.5作為網絡仿真工具對傳統的AODV,AODV-FIX,以及改進的RS-AODV路由協議進行仿真分析和局部比較。本文采用的火箭彈類型為107火箭彈。仿真參數配置如表1所示。

表1 仿真參數配置
根據107修正火箭彈的一般射程,設置仿真區域為10 km×10 km的正方形區域。節點的運動模型采用107的理論彈道模型,通過在Matlab中編程解算出107火箭彈每間隔0.01 s的坐標位置、偏航角(yaw)、側滾角(roll)、傾斜角(pitch)以及當前位置時火箭彈的運動速度和方向。將matlab解算出來的彈道數據,導入OPNET節點軌跡文件中,并在其節點屬性中將軌跡文件配置到對應的節點。仿真中的數據采用contact模型,總仿真時間設置為72 s。
3.2.1仿真實驗
在本文的仿真過程中,需要遵循以下幾個條件假設:
1) 每一門火箭炮具有相同的發射規律,炮和炮之間的距離為300 m且每門炮布置在同一直線上;
2) 通信模塊在發射瞬間開啟,爆炸后失去通信能力;
3) 每一門火箭炮在發射火箭彈時,發射間隔為1 s,每個火箭彈的發射規律相同,各彈節點的通信半徑相同。
對多門火箭炮按照發射規律進行了組網仿真實驗,并對比了采用了AODV路由算法以及RS-AODV路由算法組網時節點間丟包率,路由開銷以及端到端的延時等性能進行對比分析。圖5是5門火箭炮按照發射規律齊射60枚火箭彈在OPNET網絡層的拓撲結構圖,彈節點在仿真過程中將沿著彈道軌跡從初始位置飛到落點位置,在飛行過程中與其他彈節點進行組網和數據傳輸。圖5中的白色線條是彈道軌跡在xOy面上的投影。

圖5 60枚火箭彈在OPNET中的網絡拓撲結構圖
3.2.2仿真結果及分析
仿真結果圖中,AODV代表彈節點采用經典AODV路由協議進行組網并沿著火箭彈的彈道軌跡運動。AODV-FIX作為參考項,主要區別AODV的是彈節點在原發射位置固定不動。RS-AODV與AODV相似,仿真了火箭彈彈節點在全彈道飛行過程中的組網性能,但是采用的是改進的AODV算法。
圖6和圖7是三種路由協議的端到端的時延變化圖以及網絡整體丟包率變化曲線。隨著彈節點的增加,AODV曲線上點的時延始終大于AODV-FIX,這是因為AODV-FIX協議中彈的節點位置是固定的,不隨時間變化,因此鏈路變化較小。AODV-FIX曲線中端到端的時延增大是由于通信鏈路的路由節點不斷增加。而在傳統的AODV協議中,彈群節點沿著各自彈道軌跡運動,由于彈節點的高速運動導致其網絡拓撲變化頻繁,使得彈節點之間鏈路頻繁斷開從而使得彈群間的通訊時延增大以及丟包率增大。在圖6和圖7中,對比RS-AODV協議和AODV協議的端到端時延曲線以及丟包率曲線可以發現,RS-AODV的時延和丟包率都遠低于AODV,因此RS-AODV在多彈組網中有更好的性能,通信的質量有了很大的提高。這是因為,RS在路由發現階段根據速度信息篩選出優先節點,然后根據速度信息計算出各條鏈路的可用時間以及路由穩定度評估函數篩選出性能最佳的通信鏈路,從而保證了彈節點之間的通信鏈路的穩定,降低彈節點高速運動對網絡拓撲造成的影響,從而降低通信丟包率和端到端的時延。
在RS路由算法中,由于節點要獲取自身速度信息和能量信息以及計算鏈路可用時間,從而篩選最優路徑需要消耗一定的時間,因此RS-AODV的路由發現時間要比AODV的路由發現時間要長。路由發現時間曲線如圖8所示。

圖6 端到端時延曲線

圖7 丟包率曲線

圖8 路由發現時間曲線
本文通過在路由發現階段采用基于節點通信半徑和節點位置的優先路由節點選擇機制,以及引入基于節點間相對運動速度計算有效鏈路可用時間,建立路由穩定度函數,最后根據鏈路可用時間和路由穩定度來篩選出最佳通信路徑。通過網絡仿真對比了RS-AODV和AODV在高速飛行的彈群網絡中端到端的時延、丟包率以及路由發現時間等網絡性能的關鍵指標。仿真實驗表明,雖然RS-AODV在路由發現階段比經典的AODV耗時較多,但當網絡建立后RS-AODV相對于AODV端到端的時延和網絡通信的丟包率明顯下降。因此,RS-AODV比AODV在高速運動彈群網絡中具有更穩定的通信能力。