安曉燕



摘 ?要:在AODV(Ad Hoc On demand Distance Vector)路由協議中,中間結點會向網絡中的其余結點廣播路由請求消息(RREQ),這樣會消耗網絡結點的大量能量?;谶@一缺點,本文設計了一種新的思想:中間結點不在隨意轉發RREQ數據包,而是通過限制轉發條件,減少數據包的不必要發送,最終使請求消息朝著目的結點的方向轉發。通過實驗證明在請求消息發送數量和網絡中通信結點的存活率等性能,改進后的算法有了很大的提高。
關鍵詞:MGeo-aodv;地理位置;能量消耗
中圖分類號: TP212.9 ? ? ? ? ? ?文獻標識碼: A ? ? ? ? ? ?文章編號: 1673-1069(2016)30-157-2
0 ?引言
在源結點尋找路由信息時,中間結點會向全網廣播RREQ數據包,會導致結點的能量大量消耗[1]。許多研究人員提出基于地理位置的最短路徑算法[2][3],基于地理位置的Geo-aodv[4]路由協議可以首先根據獲取的結點位置,限制轉發條件,減少中間結點請求消息的發送數量,節省了能量消耗,但是不能對之前通信結點的數據信息進行更新[5],基于Geo-aodv協議的缺點,本文設計了MGeo-aodv (Modified Geography Ad Hoc On demand Distance Vector)路由協議。
1 ?MGeo-aodv路由協議描述
網絡中的每一個通信結點通過GPS獲取自己的地理信息,其地理位置坐標可以用(x,y,z)代表,x,y,z分別表示x軸,y軸,z軸,即三維坐標系空間,這里假設網絡中所有通信結點都處于地球平面(z=0)。起初因為并沒有建立源結點到目的節點的路由信息,所以源結點會查找Geo路由表,如果在該路由表中沒有任何所需目的結點的地理位置信息,將轉發角設置成360。,即向整個網絡廣播RREQ;如果在Geo路由表中可以找到目的結點的地理位置信息,則將轉發角設置為90。。當源結點在發送完路由請求消息后,在設定的時間范圍內沒有收到路由回復信息(RREP),則源結點會重新發送RREQ,同時將轉發角設置為180。,如果在規定的時間還沒有收到RREP,依次將轉發角設置為270。,360。(全網廣播)。
如圖1所示,Source為源結點,Destination為目的結點,網絡中有三個中間結點,分別是NodeN1,NodeN2,NodeN3。NodeN1為上一跳結點,NodeN2為當前轉發結點。當轉發角為A1,只有NodeN1在搜尋范圍內,因此會轉發RREQ;如果轉發角為A2時,只有NodeN1,NodeN2會發送RREQ,因為NodeN3不在搜尋范圍內,所以收到請求消息后會丟棄。
①Geo路由表的管理
Geo路由表中的項目主要包括網絡中所有通信結點的序號,地理位置坐標及IP地址(用IPv4表示)。如果中間結點收到RREQ,會在Geo路由表中查找有無源結點的信息,如果沒有或Geo路由表的源結點序號小于路由請求消息中的序號,那么通信結點就會及時更新Geo路由表。
②計算搜尋區域
圖1中,假設NodeN2收到NodeN1轉發的RREQ信息后,結點NodeN2首先判斷θ,若θ小于轉發角的1/2,那么NodeN2轉發RREQ。θ的計算公式:
θ=cos-1 (1)
如圖2設α為轉發角,由圖可知結點NodeN2明顯已經遠離了目的結點,θ大于轉發角的一半,所以NodeN2不在轉發請求消息。如果上一跳通信結點到達目的結點的歐式距離小于當前結點到達目的節點的歐式距離,那么我們也認為請求消息的轉發已經偏離了目的結點方向,該結點會丟棄請求消息。
<E:\123\中小企業管理與科技·下旬刊201610\97-197\114-2.jpg>
圖2 ?節點轉發情況
2 ?OPNET介紹
本文采用OPNET網絡仿真,OPNET是常用的網絡仿真軟件之一。
該仿真軟件使用離散事件驅動模擬機理對網絡模型的功能特性進行仿真。常用的編輯器主要有:項目編輯器(Project Model)、節點編輯器(Node Model)和進程編輯器(Process Model),三個編輯器分別對應建模所需的三個層次模型。它涉及仿真研究的各個階段,包括模型設計、仿真、數據收集和數據分析。OPNET提供了三層建模機制,分為:網絡層、節點層和進程層。分別對應了工程編輯器、節點編輯器和進程編輯器。
3 ?實驗結果分析
3.1 構建仿真環境
隨機在2000米×1500米區域內放置了50個通信節點。表1為仿真環境參數,在該實驗中,分別設置不同的通信結點數對Geo-aodv和MGeo-aodv兩個路由協議進行了仿真比較。
表1 ?參數設置
<E:\123\中小企業管理與科技·下旬刊201610\97-197\114-表1.jpg>
3.2 實驗結果分析
為了更好地對兩個協議的性能進行比較,我們首先定義兩個參數的計算公式:
①結點存活率的計算
NSR= ?(2)
上式中,用NSR表示存活率,如果該值越大,則說明網絡中未耗盡能量的結點越多。n表示結點總數,a為能量耗盡結點的個數。
②請求消息(RREQ信息)發送數量的計算
N=(Ns(i)+Nr(i))(3)
N為網絡中傳輸的請求消息總數,n表示結點總數,Ns(i)和Nr(i)分別表示第i個結點發送和接收請求消息的數量。
如圖3所示,隨著網絡中通信結點數量的增多,路由請求消息的發送數量也會隨之增大。在MGeo-aodv算法的設計上,中間結點收到請求消息后會根據設置的轉發條件進行判斷,滿足條件的結點轉發RREQ,不滿足的結點不再轉發。所以與Geo-aodv協議相比,MGeo-aodv在請求消息數量上有較大的改善。
如圖4所示,MGeo-aodv協議中通信結點的存活率要遠遠高于Geo-aodv協議。在MGeo-aodv算法中,對于偏離了目的結點方向的轉發結點不再轉發請求消息,減少了數據包在網絡中的傳輸,避免了結點不必要的能量消耗。在不同的通信結點個數的網絡中,均體現了這一優勢。
<E:\123\中小企業管理與科技·下旬刊201610\97-197\114-4.jpg>
圖4 ?節點存活率
4 ?小結
本文主要介紹了MGeo-aodv算法,中間結點根據轉發角判斷其是否在搜尋區域中,并計算到達目的結點的距離,然后和上一跳到達目的結點的距離進行比較,如果小于則轉發請求消息。通過設置轉發條件,控制請求消息的發送數量,從而達到節省能量消耗的目的,最后通過OPNET仿真驗證了該協議的有效性。
參 考 文 獻
[1] ?Chaitali Biswas Dutta,Utpal Biswas.An energy aware blackhole attack for multipath AODV[C].IEEE International Conference on Business and Information Management (ICBIM),2014:142-147.
[2] ?Zainab Senan Mahmood.The Directional Hierarchical AODV (DH-AODV) routing protocol for wireless mesh networks[C]. IEEE International Conference on Computing, Control, Networking, Electronics and Embedded Systems Engineering (ICCNEEE),2015:224-229.
[3] ?Wang, Li Y,Yang X Y.Energy-Efficient Localized Routing in Random Multihop Wireless Networks [J]. IEEE Transactions on Parallel and Distributed Systems, 2011, 22(8): 1249-1257.
[4] ?Vasil Hnatyshin, Malik Ahmed,Remo Cocco,.A Comparative Study of Location Aided Routing Protocols for MANET [J]. IEEE International Conference on Wireless Days (WD), 2011: 1-3.