摘 要: 分析了按需路由協(xié)議AODV的基本原理,針對AODV僅維護(hù)單一路由及不考慮節(jié)點(diǎn)能耗的不足,提出了一種基于穩(wěn)定性的AODV優(yōu)化思想。通過NS2仿真實(shí)驗(yàn)表明,優(yōu)化后的AODV路由協(xié)議在分組投遞率、端到端平均時(shí)延及網(wǎng)絡(luò)生存時(shí)間等方面的性能優(yōu)于原協(xié)議,更適用于網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)快速變化的場合。
關(guān)鍵詞: Ad Hoc網(wǎng)絡(luò);AODV協(xié)議;穩(wěn)定性;仿真
Ad Hoc網(wǎng)絡(luò)(Mobile Ad Hoc Network)是一種具有高度動(dòng)態(tài)拓?fù)浣Y(jié)構(gòu)、節(jié)點(diǎn)任意移動(dòng)的自組織網(wǎng)絡(luò),其獨(dú)立于固定的基礎(chǔ)設(shè)施,采用分布式管理,特別適合于作戰(zhàn)指揮、搶險(xiǎn)救災(zāi)以及執(zhí)行臨時(shí)任務(wù)等場合[1,2]。路由協(xié)議是移動(dòng)節(jié)點(diǎn)相互通信的基礎(chǔ),與固定網(wǎng)絡(luò)相比,Ad Hoc網(wǎng)絡(luò)的路由問題要復(fù)雜得多。
AODV(Ad Hoc on Demand Distance Vector)協(xié)議是一種典型的按需路由協(xié)議,是目前較為成熟、應(yīng)用廣泛的Ad Hoc網(wǎng)絡(luò)路由協(xié)議。但是,Ad Hoc網(wǎng)絡(luò)的每種協(xié)議都存在自身的不足,只適用于特定的場合。針對AODV協(xié)議僅以最短路徑、最快響應(yīng)作為路由選擇測度,未將節(jié)點(diǎn)耗能作為路由選擇因素的缺點(diǎn),本文提出一種基于穩(wěn)定性的AODV優(yōu)化思想。
1 標(biāo)準(zhǔn)AODV路由協(xié)議
AODV協(xié)議實(shí)質(zhì)上是動(dòng)態(tài)源按需路由協(xié)議DSR(Dynamic Source Routing)和主動(dòng)路由協(xié)議DSDV(Destination-Sequenced Distance-Vector)的綜合,它結(jié)合了按需路由發(fā)現(xiàn)和按需路由維護(hù)機(jī)制,以及逐跳路由、順序編號和路由維護(hù)階段的周期更新機(jī)制,根據(jù)數(shù)據(jù)分組的需要按需進(jìn)行路由發(fā)現(xiàn)和建立傳輸路徑。對于所有不在源節(jié)點(diǎn)到目的節(jié)點(diǎn)路徑上的節(jié)點(diǎn),既不參與路由信息的維護(hù),也不參與路由表的交換,從而減少了總的廣播量。使用目的節(jié)點(diǎn)序列號來避免路由環(huán)路的發(fā)生以及確保路由的時(shí)效性。AODV協(xié)議較好地緩解了主動(dòng)路由協(xié)議開銷較大和不易擴(kuò)展的問題,是一個(gè)無環(huán)、自啟動(dòng)、能適合于規(guī)模較大的Ad Hoc網(wǎng)絡(luò)路由協(xié)議。
2 AODV路由協(xié)議的優(yōu)化
AODV協(xié)議的每個(gè)源節(jié)點(diǎn)只維護(hù)一條到一個(gè)特定目的節(jié)點(diǎn)的路由,如果這條路由失效,將會(huì)重新發(fā)起路由發(fā)現(xiàn)過程,從而增大網(wǎng)絡(luò)的開銷[2]。將剩余能量最低的節(jié)點(diǎn)稱為“瓶頸節(jié)點(diǎn)”[3]。在不考慮因節(jié)點(diǎn)移動(dòng)造成路由失效的情況下,路由生存時(shí)間則由瓶頸節(jié)點(diǎn)的剩余能量決定。在最短路徑的測度標(biāo)準(zhǔn)下,即使瓶頸節(jié)點(diǎn)的剩余能量很小,AODV也可能將其選中構(gòu)成最短路由,這將影響自組網(wǎng)的生存壽命。
針對AODV協(xié)議存在的這些問題,目前研究人員已提出了不少基于多徑路由和基于能量高效的改進(jìn)方案。但是,基于多徑路由的改進(jìn)方案并未考慮節(jié)點(diǎn)能耗及網(wǎng)絡(luò)壽命問題。而基于能量高效的改進(jìn)方案均只維護(hù)一條有效路由,當(dāng)路由失效時(shí)需要重啟路由發(fā)現(xiàn)過程。本文提出一種使網(wǎng)絡(luò)更加穩(wěn)定的改進(jìn)方法,將路徑能量信息(包括瓶頸節(jié)點(diǎn)剩余能量、路徑節(jié)點(diǎn)剩余能量平均值、跳數(shù))附加到RREQ,當(dāng)RREQ到達(dá)目的節(jié)點(diǎn)后,目的節(jié)點(diǎn)將提取路徑能量信息作為RREP的附加字段,并根據(jù)接收RREQ的順序按不同路徑回復(fù)兩個(gè)RREP。當(dāng)RREQ到達(dá)與目的節(jié)點(diǎn)存在有效路由的中間節(jié)點(diǎn)后,只有最先接收到的中間節(jié)點(diǎn)才向源節(jié)點(diǎn)回復(fù)RREP。為計(jì)算整條路徑的節(jié)點(diǎn)能量信息,此時(shí),該中間節(jié)點(diǎn)繼續(xù)沿著路由表中到達(dá)目的節(jié)點(diǎn)的路由向目的節(jié)點(diǎn)傳送RREQ包,最終由目的節(jié)點(diǎn)向源節(jié)點(diǎn)回復(fù)一個(gè)包含路徑能量信息的E-RREP應(yīng)答(并非路由應(yīng)答包)。因此,源節(jié)點(diǎn)至少可以收到兩個(gè)RREP。
3 基于NS2的路由協(xié)議仿真
3.1 網(wǎng)絡(luò)仿真環(huán)境
NS是一種可擴(kuò)展、易配置和編程、離散時(shí)間驅(qū)動(dòng)的網(wǎng)絡(luò)仿真工具[7]。本實(shí)驗(yàn)中,將NS2(NS第2版)安裝于Ubuntu操作系統(tǒng)(一個(gè)Linux版本)下。設(shè)定如下仿真環(huán)境:節(jié)點(diǎn)個(gè)數(shù)為50,拓?fù)浞秶鸀?00 m×600 m,節(jié)點(diǎn)初始能量為20 J,通信覆蓋范圍為150 m,節(jié)點(diǎn)間最大連接數(shù)為10。數(shù)據(jù)源采用cbr流,每秒發(fā)送2個(gè)數(shù)據(jù)包,每包長度為512 B。節(jié)點(diǎn)到目的節(jié)點(diǎn)后的停留時(shí)間為3 s,節(jié)點(diǎn)最大移動(dòng)速度為0 m/s、3 m/s、6 m/s、9 m/s、12 m/s、15 m/s、18 m/s,仿真時(shí)間為300 s。路徑選擇函數(shù)中取α=0.05,β=0.1。節(jié)點(diǎn)移動(dòng)速度越大,網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)變化越大。
3.2 性能評估指標(biāo)
本文從以下4個(gè)指標(biāo)比較優(yōu)化前后的AODV協(xié)議性能:
(1)分組投遞率:目的節(jié)點(diǎn)成功接收到的分組數(shù)與源節(jié)點(diǎn)發(fā)送的分組數(shù)之比。
(2)端到端平均時(shí)延:通過累加所有目的節(jié)點(diǎn)收到數(shù)據(jù)分組的時(shí)間與源節(jié)點(diǎn)發(fā)送數(shù)據(jù)分組的時(shí)間差,再取平均值來統(tǒng)計(jì)。
(3)路由開銷:所有路由控制報(bào)文總的字節(jié)數(shù)與所有報(bào)文的字節(jié)數(shù)之比。
(4)網(wǎng)絡(luò)生存時(shí)間:從網(wǎng)絡(luò)開始運(yùn)行到第一個(gè)節(jié)點(diǎn)耗盡能量的時(shí)間[8],反映網(wǎng)絡(luò)能量消耗的公平性。
3.3 仿真流程及步驟
本實(shí)驗(yàn)是在現(xiàn)有標(biāo)準(zhǔn)AODV協(xié)議基礎(chǔ)上的研究,需對AODV源代碼進(jìn)行預(yù)期修改,然后編寫Otcl腳本進(jìn)行測試,直至編譯生成新的AODV協(xié)議。實(shí)現(xiàn)網(wǎng)絡(luò)仿真的具體過程如下:
(1)利用NS2自帶的工具生成傳輸模型文件,以及產(chǎn)生節(jié)點(diǎn)移動(dòng)場景。
(2)編寫Otcl腳本,完成網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)等參數(shù)及對象的配置。
(3)執(zhí)行Otcl腳本文件,得到trace文件。
(4)編寫gawk程序,從trace文件中分別提取出分組投遞率、平均端到端時(shí)延、路由開銷以及網(wǎng)絡(luò)生存時(shí)間有用數(shù)據(jù)。
(5)調(diào)用gnuplot繪圖工具將處理后獲得的數(shù)據(jù)繪制成圖形,得出網(wǎng)絡(luò)的性能。
3.4 仿真結(jié)果分析
將優(yōu)化后的協(xié)議稱為NEW-AODV。從圖1可看出,隨著節(jié)點(diǎn)最大移動(dòng)速度的增大,鏈路斷開幾率變大,分組投遞率均下降,但是因NEW-AODV中加入了主、備用路由,且選擇路徑節(jié)點(diǎn)能量高效的為主路由,有效減少了路由發(fā)現(xiàn)與路由修復(fù),減少了因節(jié)點(diǎn)能量耗盡導(dǎo)致的路由失效,NEW-AODV的分組投遞率優(yōu)于AODV。從圖2可知,隨著節(jié)點(diǎn)最大移動(dòng)速度的增大,端到端平均時(shí)延總體呈現(xiàn)增大趨勢,由于NEW-AODV減少了路由發(fā)現(xiàn)及執(zhí)行本地修復(fù)過程,其時(shí)延要比AODV小些。從圖3可以看出,隨著節(jié)點(diǎn)最大移動(dòng)速度的增大,由于路徑失效導(dǎo)致路由控制開銷增加。NEW-AODV協(xié)議在路由控制分組中加入了能量信息,一定程度上增加了路由開銷,然而NEW-AODV采用了備份路由,減少了路由發(fā)現(xiàn)過程,控制了路由開銷的大幅上升。路由開銷的略有增加帶來了網(wǎng)絡(luò)生存時(shí)間的較大提高,這在實(shí)際應(yīng)用中是十分可取的。從圖4中可知,隨著節(jié)點(diǎn)最大移動(dòng)速度的增大,網(wǎng)絡(luò)生存時(shí)間均下降,但NEW-AODV協(xié)議中同時(shí)考慮了最短路徑和路徑節(jié)點(diǎn)能量,選擇路徑能量較優(yōu)的為主路由,從而有效提高了網(wǎng)絡(luò)生存時(shí)間。
Ad Hoc網(wǎng)絡(luò)路由協(xié)議設(shè)計(jì)是一個(gè)復(fù)雜問題。目前,不存在適應(yīng)于所有場合的萬能協(xié)議,每種協(xié)議都有各自的優(yōu)缺點(diǎn)。實(shí)踐中,只能根據(jù)具體環(huán)境需要選擇適合的路由協(xié)議。為減少路由發(fā)現(xiàn),延長網(wǎng)絡(luò)壽命,本文提出一種同時(shí)考慮最快響應(yīng)、最短路徑及最小路徑節(jié)點(diǎn)能耗的AODV優(yōu)化方案。仿真結(jié)果表明,優(yōu)化后的AODV協(xié)議相比原協(xié)議不僅改善了路由發(fā)現(xiàn)過程,也保護(hù)了能量低的節(jié)點(diǎn),有效增強(qiáng)了網(wǎng)絡(luò)的穩(wěn)定性,更適應(yīng)網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)變化較大的場合。
參考文獻(xiàn)
[1] 孟利民,宋文波.移動(dòng)組織網(wǎng)路由協(xié)議研究[M].北京:人民郵電出版社,2011.
[2] 林勇,趙闊.一種改進(jìn)的基于能量控制并支持實(shí)時(shí)傳輸?shù)腅RT-AODV路由協(xié)議[J].科學(xué)技術(shù)與工程,2013,13(7):1811-1815.
[3] YUAN P Y,LI L Y.Impact on energy consumption of routing protocols with mobility model in Ad Hoc networks[J].Computer Engineering,2007,33(11):123-125.
[4] 鄔學(xué)軍,周明華,周凱,等.基于最小費(fèi)用最大流思想的移動(dòng)Ad Hoc穩(wěn)定性路由協(xié)議研究[J].傳感技術(shù)學(xué)報(bào),2010,23(9):1318-1320.
[5] WU K,HARMS J.Laod-sensitive routing for mobile Ad Hoc networks[C].Proceedings of the Tenth Inter-national Conference on Computer Communications and Networks.Scottsdale:IEEE,200l.
[6] 朱斌,曾孝平,仲元紅,等.一種能量高效的Ad Hoc網(wǎng)絡(luò)路由協(xié)議[J].華南理工大學(xué)學(xué)報(bào):自然科學(xué),2010,38(10):43-45.
[7] 黃化吉,馮穗力,秦麗嬌,等.NS網(wǎng)絡(luò)模擬和協(xié)議仿真[M]. 北京:人民郵電出版社,2010.
[8] 汪秉文,尹安.基于節(jié)點(diǎn)綜合穩(wěn)定度改善AODV路由協(xié)議[J].計(jì)算機(jī)工程與科學(xué),2009,31(4):7-10.