陳 龍,陳 琳 (長江大學(xué)計算機科學(xué)學(xué)院,湖北 荊州 434023)
基于AODV協(xié)議安全性的改進算法
陳 龍,陳 琳 (長江大學(xué)計算機科學(xué)學(xué)院,湖北 荊州 434023)
Ad Hoc網(wǎng)絡(luò)組網(wǎng)方便、快捷,但其安全性是應(yīng)用上的薄弱環(huán)節(jié)。通過對AODV 協(xié)議分析研究及對路由發(fā)現(xiàn)和路由維持進行加密認(rèn)證,提出了一種基于加密認(rèn)證的改進的AODV協(xié)議(DES-AODV),并利用NS2仿真軟件對DES-AODV協(xié)議進行了仿真。仿真結(jié)果表明,該算法在可信路由方面具有較好的安全性,付出一定的消耗代價可以較好的阻擊針對路由發(fā)現(xiàn)和路由維護的攻擊。
Ad Hoc網(wǎng)絡(luò);AODV;安全;路由協(xié)議
移動Ad Hoc網(wǎng)絡(luò)是一種無線、分布式、動態(tài)自組織網(wǎng)絡(luò),不需要依靠固定通信基礎(chǔ)設(shè)施,組網(wǎng)非常方便、快捷,多應(yīng)用于援救、戰(zhàn)場、會議、探險或危險環(huán)境中的目標(biāo)監(jiān)控等場合。由于網(wǎng)絡(luò)動態(tài)變化的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)、資源受限和無線通信等特點,使得路由協(xié)議安全比傳統(tǒng)網(wǎng)絡(luò)要復(fù)雜的多,節(jié)點的覆蓋范圍廣和地理位置的不確定性使其極易受到攻擊,因而帶來了很大的安全隱患。由于移動自組織網(wǎng)絡(luò)節(jié)點地理位置不確定、網(wǎng)絡(luò)資源有限,如何在提高安全性的同時又能保證網(wǎng)絡(luò)通信質(zhì)量,是目前的研究熱點。為此,筆者基于AODV路由協(xié)議,設(shè)計了一種高效安全的路由方案(DES-AODV),以消耗少量的網(wǎng)絡(luò)資源為代價,來提高網(wǎng)絡(luò)路由和通信的安全性。
1)AODV協(xié)議 無線自組網(wǎng)按需平面距離矢量路由協(xié)議(Ad Hoc On Demand Distance Vector Routing,AODV)分為2個階段:路由發(fā)現(xiàn)和路由維護。路由發(fā)現(xiàn)階段即當(dāng)源節(jié)點要發(fā)送信息時,先在路由表里查找到目的節(jié)點的路由,若找到則直接發(fā)送,否則就通過廣播路由請求RREQ(路由請求報文)信息來查找路由。當(dāng)網(wǎng)絡(luò)中節(jié)點收到RREQ信息,首先到路由表里搜索到達目的節(jié)點或一個擁有足夠新的到目的節(jié)點路由表項,有則回復(fù)RREP(路由回復(fù)報文)消息,源節(jié)點可以通過收到的RREP消息在路由表項建立到達目地節(jié)點路由[1]。
網(wǎng)絡(luò)中的每個節(jié)點都要進行路由維持,在路由表中都需要保持一個相應(yīng)目的地址的路由表項,以實現(xiàn)逐跳轉(zhuǎn)發(fā)。在維護路由表的過程中,AODV協(xié)議通過發(fā)送HELLO消息給鄰居節(jié)點或鏈路修復(fù)及路由斷開后發(fā)送RERR(路由錯誤報文)消息來進行路由的維護,每個節(jié)點周期性的向鄰居節(jié)點發(fā)送HELLO消息,如果在一定的時間后,某一個節(jié)點沒有收到它的鄰居節(jié)點發(fā)送過來的HELLO消息,就認(rèn)為與該鄰居節(jié)點的聯(lián)系斷開,則會開始一系列的路由修復(fù),該節(jié)點立刻廣播一個RREQ給不可達的節(jié)點,當(dāng)有到不可達節(jié)點有效的路由的中間節(jié)點或不可達本身節(jié)點接受到了這個消息,則會回復(fù)一個RREP給源節(jié)點,到達不可達的節(jié)點的路由會重新建立,假如路由的修復(fù)過程失敗,節(jié)點會向所有的鄰居節(jié)點廣播RRER消息,通過RRER消息的廣播,其他節(jié)點就知道鏈路斷開,以此來維護和修改路由表[2]。
2)AODV協(xié)議安全性分析 移動Ad Hoc網(wǎng)絡(luò)中,路由協(xié)議的攻擊方式有2種:主動攻擊和被動攻擊。主動攻擊是攻擊者主動發(fā)送數(shù)據(jù)包來消耗網(wǎng)絡(luò)資源,使得網(wǎng)絡(luò)不能正常運行;被動攻擊又叫消極攻擊,攻擊者并不消耗網(wǎng)絡(luò)資源,只監(jiān)聽網(wǎng)絡(luò)中的路由消息,竊取有效信息以達到某種目的[3]。
AODV路由發(fā)現(xiàn)過程采用泛洪方式,消耗的資源較多,因此需要控制泛洪RREQ查找的頻率。攻擊者可以利用這一點,大量連續(xù)發(fā)送偽造的RREQ報文,在整個網(wǎng)絡(luò)中查找路由,這會使得整個網(wǎng)絡(luò)都是偽造的RREQ報文,占用大量無線通信帶寬,導(dǎo)致網(wǎng)絡(luò)擁塞,使正常節(jié)點無法通信,網(wǎng)絡(luò)的性能大大降低,這種攻擊是利用路由協(xié)議本身功能發(fā)起的攻擊,對AODV路由協(xié)議而言是正常的通信活動,卻對網(wǎng)絡(luò)性能有嚴(yán)重的影響,這種攻擊需要長時間的觀測才能檢測出來。偽造節(jié)點還可以修改控制信息,修改路由的序列號,在AODV路由協(xié)議中,對RREQ的有效應(yīng)答必須有比RREQ更大的目的序列號,攻擊者通過修改序列號將自己插入到通向發(fā)送節(jié)點的路徑中,從而可以攔截通向目的節(jié)點的數(shù)據(jù)。AODV協(xié)議還規(guī)定,當(dāng)一個節(jié)點在收到多個屬于同一個路徑的RREQ的時候,只會轉(zhuǎn)發(fā)最先收到的請求包,如果惡意節(jié)點使目的所有鄰居節(jié)點最先收到RREQ經(jīng)過該惡意,使目的節(jié)點忽略通過其他正確路徑到達的路由請求,進而使源節(jié)點和目的節(jié)點的通信經(jīng)過該惡意節(jié)點。路由維護一樣存在一定的安全隱患,像路由表的溢出攻擊,由于移動設(shè)備內(nèi)存原本就不大,用于路由表的空間更加有限,惡意節(jié)點可以通過偽造大量的虛假路由信息,這些信息通往不存在的節(jié)點,從而使網(wǎng)絡(luò)中節(jié)點的路由表空間被虛假信息所占用,使得真實的路由信息被丟棄。
1)DES-AODV設(shè)計策略 AODV協(xié)議雖然提高了無線網(wǎng)絡(luò)的路由效率,但是過于簡單,存在著各種各樣的問題,尤其是安全性方面的問題。為了使改進后的DES-AODV協(xié)議的路由效率不明顯降低,DES-AODV協(xié)議的設(shè)計思想是在AODV協(xié)議的基礎(chǔ)上嵌入了加密機制,通過加密方式來識別節(jié)點收到的路由請求包和路由維護包是否合法,具體策略是對路由發(fā)現(xiàn)和路由維護過程進行局部加密,在路由請求和路由發(fā)行過程中所發(fā)送的的數(shù)據(jù)包的頭部添加一個字段,在路由發(fā)現(xiàn)、路由維護階段對該字段賦值并通過DES(Data Encryption Standard)加密算法對該字段進行加密,即在AODV協(xié)議中嵌入DES加密算法,對AODV協(xié)議中的路由發(fā)現(xiàn)、路由維護處理模塊中的sendHello、sendReply、sendRequest、sendError進行加密處理,字段值事先約定好,每一個合法的節(jié)點都知道該字段的值來進行身份驗證,當(dāng)然這個值不是固定的可以根據(jù)自己的需要而定,在路由發(fā)現(xiàn)和路由維護階段接收方在收到發(fā)送方發(fā)來的數(shù)據(jù)包后首會查看該字段并對其解密,若解密后的字段值與發(fā)送前的值相同,則說明該數(shù)據(jù)包是由合法節(jié)點發(fā)送過來的,并進行相應(yīng)的路由處理,若不同則說明該數(shù)據(jù)包是可疑節(jié)點發(fā)送來數(shù)據(jù),不予處理或者報告上一級在它鄰居可能存在著可疑節(jié)點以便進行相應(yīng)的處理,很大程度上阻止了惡意節(jié)點利用網(wǎng)絡(luò)協(xié)議自身的特點而進行的攻擊。
2)DES-AODV協(xié)議的安全性 當(dāng)攻擊者利用路由發(fā)現(xiàn)的特點,大量連續(xù)的發(fā)送偽造的RREQ報文,鄰居節(jié)點便會檢測出來該消息是由惡意節(jié)點發(fā)送的,不會對該消息進行轉(zhuǎn)發(fā),不會使整個網(wǎng)絡(luò)都是偽造的RREQ報文,占用大量無線通信帶寬而導(dǎo)致網(wǎng)絡(luò)擁塞,保證了正常的節(jié)點的通信,網(wǎng)絡(luò)的性能不會因為惡意節(jié)點的攻擊而大大降低,這種攻擊是利用路由協(xié)議本身功能發(fā)起的攻擊,對AODV路由協(xié)議而言是正常的通信活動,對網(wǎng)絡(luò)性能有嚴(yán)重的影響,改進后的DES-AODV協(xié)議避免了這種現(xiàn)象的發(fā)生。針對路由維護過程中的路由表的溢出攻擊,改進后的DES-AODV協(xié)議可以在惡意節(jié)點發(fā)送偽造大量的虛假路由信息被及時檢測出來不予理睬,不會導(dǎo)致真的路由信息丟失,從而在一定程度上阻擊了針對路由發(fā)現(xiàn)和路由維護所發(fā)起的一系列攻擊,提高了網(wǎng)絡(luò)的安全性和可靠性[4-5]。

表1 仿真參數(shù)
仿真試驗用的是仿真軟件NS2搭建的網(wǎng)絡(luò)仿真平臺,通過仿真與評估來驗證改進后的路由協(xié)議的有效性,仿真參數(shù)如表1所示。
1)路由發(fā)現(xiàn)延時 發(fā)送端發(fā)送數(shù)據(jù)前,需要一定的時間的路由發(fā)現(xiàn)來建立路由表,由路由發(fā)現(xiàn)的延時來分析,在路由發(fā)現(xiàn)階段中嵌入了解密機制后協(xié)議是否依然可以正常工作,仿真試驗結(jié)果如圖1所示。由圖1可以看出,DES-AODV協(xié)議在路由發(fā)現(xiàn)階段與AODV協(xié)議在路由發(fā)現(xiàn)階段延時基本差不多,只有在那些路由跳數(shù)比較多的節(jié)點間傳輸時會有一些差別。DES-AODV協(xié)議沒有給網(wǎng)絡(luò)增加很大的負(fù)載,沒有出現(xiàn)節(jié)點在路由發(fā)行階段找不到路由或數(shù)據(jù)包超時丟失的情況,說明改進后的是DES-AODV協(xié)議是可行的。
2)數(shù)據(jù)包的投遞率分析 目的節(jié)點接收到的數(shù)據(jù)包與源節(jié)點發(fā)送的數(shù)據(jù)包之比為投遞率,數(shù)據(jù)包投遞率仿真結(jié)果如圖2所示,在AODV路由協(xié)議下包的投遞率為51.88%,在DES-AODV路由協(xié)議下包的投遞率為51.26 %。由以上數(shù)據(jù)可以看出改進后的DES-AODV路由協(xié)議與AODV路由協(xié)議數(shù)據(jù)包的投遞率有微小的區(qū)別,改進后數(shù)據(jù)包的投遞率比之前要約低些,丟包率略大,在網(wǎng)絡(luò)通信中數(shù)據(jù)的丟失是很正常的現(xiàn)象,微小變化不會影響正常的網(wǎng)絡(luò)通信。

圖1 路由發(fā)現(xiàn)延時

圖2 數(shù)據(jù)包的投遞率分析

圖3 數(shù)據(jù)包傳輸延時分析
3)數(shù)據(jù)包傳輸延時分析 數(shù)據(jù)包傳輸延時是指接收端接受數(shù)據(jù)的時間減去發(fā)送方發(fā)送數(shù)據(jù)包的時間。 圖3所描述的是DES-AODV協(xié)議的延時與AODV協(xié)議的延時之差,由圖3可以看出延時曲線在0附近波動,說明改進后的DES-AODV路由協(xié)議與AODV路由協(xié)議在延時方面基本一致,說明對路由發(fā)現(xiàn)過程加密認(rèn)證不影響數(shù)據(jù)包的轉(zhuǎn)發(fā)時間。可以看出DES-AODV路由協(xié)議與AODV路由協(xié)議對網(wǎng)絡(luò)傳輸性能上面沒有明顯的差距,進一步說明了改進后的是DES-AODV協(xié)議的可行性。
基于AODV協(xié)議提出了一種對路由協(xié)議局部加密進行身份驗證的方式來提高路由的安全性,并將這種系統(tǒng)在理論上進行了詳細(xì)設(shè)計,并做了仿真試驗。試驗結(jié)果表明,加密雖然使網(wǎng)絡(luò)增加了路由發(fā)現(xiàn)階段和路由維護延時,但這種影響非常小并不影響網(wǎng)絡(luò)正常運行,在安全性方面能有效的防止惡意節(jié)點針對路由發(fā)現(xiàn)和路由維護進行的攻擊,在一些特殊的領(lǐng)域相較于網(wǎng)絡(luò)攻擊所帶來的損失消耗一定的網(wǎng)絡(luò)資源是值得,然而在正常的通信中可能帶來的延時開銷任然是一個不足之處,還有待下一步的研究。
[1]鄭相全.無線自組網(wǎng)絡(luò)技術(shù)使用教程[M].北京:清華大學(xué)出版社,2004.
[2]陳玲,王華.移動Ad Hoc 網(wǎng)絡(luò)路由協(xié)議研究——一種基于AODV路由協(xié)議的改進算法[J].微計算機信息,2006,22(3):167-169.
[3]趙海燕. Ad Hoc網(wǎng)絡(luò)中QoS保障的路由算法研究[D].濟南:山東師范大學(xué), 2008.
[4]張串絨,張玉清,李發(fā)根,等. 適于ad hoc網(wǎng)絡(luò)安全通信的新簽密算法[J]通信學(xué)報, 2010(3):8-11.
[5]吉祖勤, 方元康. Ad Hoc網(wǎng)絡(luò)安全路由協(xié)議SDSR設(shè)計[J]. 計算機工程, 2011(16):132-136.
[編輯] 洪云飛
10.3969/j.issn.1673-1409(N).2012.03.030
TP393
A
1673-1409(2012)03-N090-03
2012-01-15
湖北省自然科學(xué)基金項目(2011CDC126)。
陳龍(1986-),男,2011年大學(xué)畢業(yè),碩士生,現(xiàn)主要從事計算機網(wǎng)絡(luò)安全及路由協(xié)議方面的研究工作。
陳琳(1972-),男,1992年大學(xué)畢業(yè),博士,副教授,現(xiàn)主要從事計算機網(wǎng)絡(luò)和通信與信息系統(tǒng)方面的教學(xué)與研究工作。