馮欣,尹方超,賀麗柏,韓永林
(長春理工大學(xué) 計算機(jī)科學(xué)技術(shù)學(xué)院,長春 130022)
移動自組網(wǎng)(MobileAdhocnetwork,MANET)是一種不需要基礎(chǔ)設(shè)施支持的無線網(wǎng)絡(luò),具有移動、分布和多跳的特點。網(wǎng)絡(luò)中的所有節(jié)點具有終端和路由器的雙重功能。由于網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)動態(tài)變化、通信帶寬有限以及能量有限等原因,使得移動自組網(wǎng)的研究極具挑戰(zhàn)性。為了最大限度的節(jié)省能量消耗和提高通信帶寬,路由協(xié)議的選擇和設(shè)計就顯得非常重要,它既是信息的傳輸策略問題,也涉及到網(wǎng)絡(luò)的管理問題。目前自組織網(wǎng)的路由協(xié)議一般分為兩種:路由表協(xié)議(table driven)和源始發(fā)的按需路由協(xié)議(source-initiated on-demand driven)。路由表協(xié)議包括有:DSDV、CGSR、WRP等,源始發(fā)的按需路 由 協(xié) 議 有:DSR、AODV、LMR、TORA、ABR、SSR等。本文主要對DSR和AODV進(jìn)行了分析研究,并且模擬仿真出相關(guān)的性能參數(shù)。
AODV協(xié)議屬于源始發(fā)按需路由選擇(sourceinitiatedondemandrouting)協(xié)議,又被稱為反應(yīng)式路由協(xié)議。與按表驅(qū)動的路由協(xié)議相反,按需驅(qū)動的路由協(xié)議不需要定期交換、更新路由信息,只有當(dāng)源節(jié)點需要時才建立路由。一旦檢驗完所有可能的路由排列方式或找到新的路由后就結(jié)束路由發(fā)現(xiàn)過程;當(dāng)新的路由建立后,由路由維護(hù)程序來維護(hù)這條路由,直到鏈路中不再需要或發(fā)生鏈路斷開為止。因此,使用按需驅(qū)動路由協(xié)議的節(jié)點往往只包含一部分網(wǎng)絡(luò)拓?fù)湫畔?。常用的按需?qū)動的路由協(xié)議有DSR、AODV、TORA等。本文將主要對AODV進(jìn)行性能分析與研究。
DSR是基于源路由概念的按需自適應(yīng)路由協(xié)議。移動節(jié)點需保留存儲節(jié)點所知的源路由的路由緩沖器。當(dāng)新的路由被發(fā)現(xiàn)時,緩沖器內(nèi)的條目隨之更新。
DSR主要由兩部分組成:路由發(fā)現(xiàn)和路由維護(hù),具體工作流程如圖1和圖2所示。源節(jié)點A將路由請求(RREQ)消息局部廣播發(fā)送出去,如果目標(biāo)節(jié)點E收到該請求包,給請求源 A回答一個RREP消息,路由請求源收到RREP消息后在本地Route Cache中緩存路由信息。
圖1 路由發(fā)現(xiàn)過程中的RREQFig.1 RREQ in route discovery process
圖2 路由發(fā)現(xiàn)過程中的RREPFig.2 RREP in route discovery process
路由維護(hù)通過路由錯誤分組(Route Error)和確認(rèn)分組來實現(xiàn),如圖3所示。每個節(jié)點確保使用源路由發(fā)送/轉(zhuǎn)發(fā)的數(shù)據(jù)分組被路由中的下一跳接收;如果沒有收到下一跳的確認(rèn)則不斷重發(fā)(至最大重試次數(shù))。而對于確保數(shù)據(jù)報被逐跳轉(zhuǎn)發(fā),可以用:
(1)鏈路級的確認(rèn)(IEEE802.11);
(2)被動確認(rèn)(B偵聽C向D轉(zhuǎn)發(fā));
(3)要求DSR軟件返回確認(rèn);
圖3 路由維護(hù)中的RRERFig.3 RRER in route maintenance
AODV實質(zhì)上就是DSR和DSDV的綜合,它借用了 DSR中路由發(fā)現(xiàn)和路由維護(hù)的基礎(chǔ)程序以及DSDV中端到端的路由選擇、序列號碼及周期性的更新信息的用法。但是和DSDV保存完整的路由表不同的是,AODV通過建立基于按需的路由來減少路由廣播的次數(shù),這是AODV對DSDV的重要改進(jìn)。與DSR相比,AODV的好處在于源路由并不需包括在每一個數(shù)據(jù)包中,這樣會使路由協(xié)議的開銷有所降低。
AODV路由協(xié)議的路由發(fā)現(xiàn)過程與DSR類似,包括路由建立分為反向路由的建立和前向路由的建立。而與DSR路由協(xié)議的源路由相比,AODV路由協(xié)議的路由信息分散在各個節(jié)點中。
AODV路由維護(hù)采用本地修復(fù)和源節(jié)點修復(fù)兩種方式。當(dāng)某節(jié)點發(fā)現(xiàn)鏈路失效時,若該節(jié)點離目的節(jié)點的距離不大于MAX_REPAIR_TTL(最大修復(fù)長度)跳,則在一個局部范圍內(nèi)發(fā)送RREQ,以發(fā)現(xiàn)該節(jié)點到達(dá)目的節(jié)點的路由。若本地修復(fù)失敗,需使用路由錯誤報文通知源節(jié)點。AODV路由表中包含一個前驅(qū)節(jié)點列表,表中記錄了所有使用該路由進(jìn)行分組發(fā)送的前驅(qū)節(jié)點,該節(jié)點利用表中的信息將RERR報文發(fā)往源節(jié)點,重新發(fā)現(xiàn)路由。
在TCL文件中輸入場景設(shè)置程序,其中節(jié)點配置用tcl語言,在sourceinsight環(huán)境中編寫代碼,最后用NS2自帶的繪圖工具nam將網(wǎng)絡(luò)環(huán)境用圖形表示,如圖4所示。
圖4 模擬網(wǎng)絡(luò)場景Fig.4 Simulated network scenarios
在本場景中,配置30個移動節(jié)點,使其隨機(jī)的移動,在移動過程中不斷發(fā)出信息,同時各節(jié)點也會在自身傳輸信息過程中受到其他節(jié)點的干擾。場景時間設(shè)置為2000ms。用這種比較簡單的模擬工具就可以將待分析的DSR和AODV兩種協(xié)議的QoS性能指標(biāo)數(shù)據(jù)取出。
表示Adhoc網(wǎng)的性能指標(biāo)有平均分組投遞率和端到端平均時延等。其表示分別如下所示:
分組投遞率 deliver反映了網(wǎng)絡(luò)傳輸?shù)目煽啃阅堋?/p>
端到端時延反映了AODV路由協(xié)議的有效性。
吞吐量是指在沒有幀丟失的情況下,設(shè)備能夠接受的最大速率。反映了單位時間內(nèi)在該協(xié)議下分組傳輸?shù)目炻潭取?/p>
圖5 分組投遞率隨節(jié)點數(shù)的變化Fig.5 Packet delivery rate with the change in the number of nodes
圖6 平均端到端時延Fig.6 Average desay of end to end
當(dāng)將TCL文件配置好后,利用ns命令來運(yùn)行,會得到tr和nam文件。tr文件中的數(shù)據(jù)格式為:s 10.000000000_0_AGT---0 cbr 512[0 0 0 0]-------[0:0 2:0 32 0][0]0 0。其含意為:在第10s時一個ID為0的節(jié)點應(yīng)用層發(fā)出了一個CBR分組,這個分組的UID為0,長度為512,源地址0:0,目標(biāo)地址2:0,分組生存周期32。
用awk文件從中取出所用數(shù)據(jù),最后用gnupolt命令繪制圖形,如圖5和圖6所示。
從圖5可以看出越多節(jié)點參與數(shù)據(jù)轉(zhuǎn)發(fā),分組投遞率就越高,表示網(wǎng)絡(luò)的傳輸可靠性就越高。
從圖6可以看出:在Ad hoc網(wǎng)中,隨著節(jié)點數(shù)的增加,平均端到端時延逐漸增大,這使得網(wǎng)的整體反應(yīng)變慢。所以在能完成相同的任務(wù)前提下,盡量減少節(jié)點數(shù)目。
從圖7可以看出,在AODV協(xié)議中網(wǎng)絡(luò)吞吐量要比DSR協(xié)議中的網(wǎng)絡(luò)吞吐量高。
本文首先對Adhoc網(wǎng)中的經(jīng)典路由協(xié)議AODV在原理做了詳細(xì)的介紹。初步對比了DSR和AODV之間存在的性能差異。以此為基礎(chǔ),利用網(wǎng)絡(luò)仿真工具NetworkSimulator配置出符合實際的網(wǎng)絡(luò)環(huán)境和參數(shù),對經(jīng)典的DSR和AODV兩種協(xié)議的兩個質(zhì)量服務(wù)(QoS)性能指標(biāo)(分組投遞率、平均端到端時延、吞吐量)做了詳細(xì)的分析和研究。最后的實驗結(jié)果仿真表明:在相同網(wǎng)絡(luò)環(huán)境下,AODV的QoS性能要比DSR的更為優(yōu)越。這一結(jié)論對將來設(shè)計高效的路由協(xié)議、處理網(wǎng)絡(luò)中自私節(jié)點工作都具有重要的指導(dǎo)意義。
[1]符琦,蔣碧霞,蔣瑞林.基于NS2的Ad Hoc網(wǎng)絡(luò)路由協(xié)議的模擬實現(xiàn)[J].計算機(jī)工程與應(yīng)用,2006,42(5):149-151.
[2]花曉菲.基于NS2的Ad hoc網(wǎng)絡(luò)路由協(xié)議性能分析比較[J].無線通信技術(shù),2006,15(3):29-33.
[3]孫祺,李騏,高振明.基于NS網(wǎng)絡(luò)仿真器的研究與擴(kuò)展[J].網(wǎng)絡(luò)與計算機(jī)技術(shù)及應(yīng)用,2004,29(1):24-26.
[4]劉洛琨,張遠(yuǎn),許家棟.AODV與DSDV路由協(xié)議性能仿真與比較[J].計算機(jī)仿真學(xué)報,2006,23(2):16-20.
[5]楊玉華,劉培寧,劉際煒,等.NS-2的仿真模擬技術(shù)分析[J].計算機(jī)工程,2005,31(15):110-112.
[6]趙健,孫俊鎖.基于NS2的Ad Hoc網(wǎng)絡(luò)路由協(xié)議仿真與分析[J].鞍山科技大學(xué)學(xué)報,2007,30(2):160-163.
[7]劉勃蘭,宋玲.基于NS2的移動自組網(wǎng)路由協(xié)議的仿真與實現(xiàn)[J].計算機(jī)工程與應(yīng)用,2007,43(6):162-164.
[8]洪家軍,吳金龍.基于NS-2的Ad Hoc網(wǎng)路路由協(xié)議性能仿真[J].江漢大學(xué)學(xué)報,2007,35(1):67-69.
[9]馬崇霄,吳長奇.基于網(wǎng)絡(luò)仿真器NS2的Adhoc網(wǎng)絡(luò)路由協(xié)議仿真[J].電子測量技術(shù),2008,31(5):33-35.
[10]孫學(xué)梅.Ad Hoc網(wǎng)絡(luò)的移動管理及其路由協(xié)議的研究[J].天津大學(xué)學(xué)報,2004,11(18):51-54.
[11]RoyerEM,Toh CK.AReviewofCurrentRouting ProtocolsforAd Hoc Mobile Wireless Networks[J].IEEE Personal Communications Magazine,April 1999:46-55.
[12]David B J,David A M.Dynamic Source Routing in Ad Hoc Wireless Networks[J].Mobile Computing,2006,353(5):153-181.
[13]Senouci S M,Naimi M.New Routing for Balanced Energy Consumption in Mobile Ad Hoc Networks[A].Proceedings of the 2nd ACM international workshop on Performance evaluation of wireless Ad hoc,sensor,and ubiquitous networks.Oct,2005(10):238-241.
[14]GowrishankarS,Subir KS,BasavarajuG.Scenario Based Simulation Study of Adhoc Routing Protocol's Behavior in Wireless Sensor Networks[J].Future Computer and Communication,2009:527-532.
[16]Ling-Jyh Chen Tony Sun Guang Yang,M Y Sanadidi,Mario Gerla.AdHoc Probe:end-to-end capacity probing in wireless ad hoc networks[J].Wireless Netw,2009,15:111-126.
[17]Hanal A,Benoit T,Armand T.Fair Queuing Model for EDCA to optimize QoS in Ad-hoc Wireless Network[J].8thInternational Conference on Networks,2009:306-311.