董 繪 ,王曉喃
(1.蘇州大學(xué) 計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院,江蘇 蘇州 215000;2.常熟理工學(xué)院 計(jì)算機(jī)科學(xué)與工程學(xué)院,江蘇 常熟 215500)
路由協(xié)議是網(wǎng)絡(luò)的關(guān)鍵和核心問(wèn)題之一[1].路由器是互聯(lián)網(wǎng)的重要組成部分,它通過(guò)路由協(xié)議實(shí)現(xiàn)路徑的配置[2],根據(jù)數(shù)據(jù)包附帶的信息來(lái)判斷網(wǎng)絡(luò)條件,以確定數(shù)據(jù)的傳輸路徑.數(shù)據(jù)的傳輸路徑分為單路徑與多路徑,與此對(duì)應(yīng)的路由協(xié)議是單路徑路由協(xié)議和多路徑路由協(xié)議.
一般來(lái)說(shuō),單路徑路由協(xié)議在鏈路斷裂的情況下需要進(jìn)行路由修復(fù),因此會(huì)造成傳輸時(shí)延長(zhǎng),丟包率高等一些問(wèn)題[3].采用多路徑路由協(xié)議傳輸數(shù)據(jù)會(huì)克服上述問(wèn)題,達(dá)到理想的預(yù)期效果.因此,本文采用NS-2對(duì)單路徑路由協(xié)議與多路徑路由協(xié)議進(jìn)行了性能分析.
路由協(xié)議劃分為兩類:靜態(tài)路由協(xié)議和動(dòng)態(tài)路由協(xié)議.由于靜態(tài)路由協(xié)議不能及時(shí)適應(yīng)網(wǎng)絡(luò)狀態(tài)的變化,所以互聯(lián)網(wǎng)的路由協(xié)議主要是動(dòng)態(tài)路由協(xié)議.動(dòng)態(tài)路由協(xié)議分為距離向量路由協(xié)議和鏈路狀態(tài)路由協(xié)議[4].本次實(shí)驗(yàn)是對(duì)距離向量路由協(xié)議的仿真.
距離向量路由協(xié)議DVRP(Distance Vector Routing Protocol)是為小型網(wǎng)絡(luò)環(huán)境設(shè)計(jì)的.在大型網(wǎng)絡(luò)環(huán)境下,這類協(xié)議在學(xué)習(xí)路由及保持路由將產(chǎn)生較大的流量,占用過(guò)多的帶寬.距離向量路由協(xié)議的特征是:即使拓?fù)浣Y(jié)構(gòu)不發(fā)生變化,也會(huì)定時(shí)將路由更新發(fā)布出去.每臺(tái)路由器的路由協(xié)議維護(hù)本地計(jì)時(shí)器,當(dāng)計(jì)時(shí)器為0時(shí),就發(fā)送路由更新.這些更新包括全部或者部分路由表[5].這樣,路由器就能從其他路由器獲取網(wǎng)絡(luò)設(shè)備列表,以便進(jìn)行路由選擇.距離向量路由協(xié)議使用跳數(shù)作為度量值來(lái)計(jì)算到達(dá)目的地的路徑長(zhǎng)度.路由器的鄰居為同一鏈路上并配置相同路由協(xié)議的路由器[6].
DVMRP(Distance Vector Multicast Routing Protocol)是一種互聯(lián)網(wǎng)路由協(xié)議.DVMRP為互聯(lián)網(wǎng)的主機(jī)組提供了一種面向無(wú)連接信息組播的有效機(jī)制[7].DVMRP協(xié)議采用“擴(kuò)散和剪枝”技術(shù)來(lái)廣播數(shù)據(jù).對(duì)于每一個(gè)數(shù)據(jù)源節(jié)點(diǎn),DVMRP剛開(kāi)始總是將要傳送的數(shù)據(jù)通過(guò)網(wǎng)絡(luò)進(jìn)行擴(kuò)散.路由器將上游路由器剪枝信息進(jìn)行傳輸.當(dāng)有新的節(jié)點(diǎn)需要接收數(shù)據(jù)時(shí),原先已經(jīng)被剪掉的分支仍然可以通過(guò)嫁接而重新回到分布樹(shù).
圖1 網(wǎng)絡(luò)仿真拓?fù)鋱D
在NS-2環(huán)境下,用于分析DVRP和DVMRP兩個(gè)協(xié)議性能的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)如圖1所示.
圖1中,網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)包含4個(gè)路由器和2個(gè)主機(jī),數(shù)據(jù)流采用CBR形式.拓?fù)浣Y(jié)構(gòu)中所有節(jié)點(diǎn)通過(guò)雙向鏈路連接,所有鏈路的隊(duì)列管理機(jī)制都采用DropTail方式,鏈路的參數(shù)如表1所示.
在上述環(huán)境下,我們對(duì)DVRP和DVMRP的傳輸時(shí)延、吞吐量和丟包率進(jìn)行了分析和比較.
網(wǎng)絡(luò)的傳輸時(shí)延(delay)是指數(shù)據(jù)從網(wǎng)絡(luò)的源端傳送到目的端所需的時(shí)間[8].圖2為DVRP和DVMRP的傳輸時(shí)延曲線.可以看出,采用多路徑路由協(xié)議時(shí)的傳輸時(shí)延明顯低于單路徑路由協(xié)議下的傳輸時(shí)延且多路徑路由協(xié)議下的時(shí)延曲線波動(dòng)較小.原因是DVMRP采用一種逆向轉(zhuǎn)發(fā)的機(jī)制構(gòu)造一棵以Router1為根的傳播路徑樹(shù)(如圖1所示),并且該協(xié)議還維護(hù)一個(gè)父子節(jié)點(diǎn)的關(guān)系數(shù)據(jù),發(fā)送節(jié)點(diǎn)根據(jù)此數(shù)據(jù)確定最佳傳輸路徑,節(jié)約了尋路時(shí)間,從而呈現(xiàn)出圖1所示的時(shí)延曲線.相比之下,DV算法是基于鄰居節(jié)點(diǎn)的路由信息計(jì)算自己的最佳路由,所以當(dāng)鄰居節(jié)點(diǎn)的鏈路狀態(tài)發(fā)生改變時(shí)需要一定的延遲進(jìn)行路由修復(fù),從而增加了傳輸時(shí)延.
表1 鏈路參數(shù)表
圖2 傳輸時(shí)延對(duì)比
網(wǎng)絡(luò)的吞吐量(throughput)是指在不丟包的情況下單位時(shí)間內(nèi)節(jié)點(diǎn)接收的數(shù)據(jù)量[8].圖3為DVRP和DVMRP吞吐量的比較曲線.可以看出,從0.1 s到1.0 s之間DVRP的吞吐量曲線呈水平,這是因?yàn)镃BR從0.1 s開(kāi)始啟動(dòng),在這期間的鏈路狀態(tài)沒(méi)有發(fā)生任何變化,路由器router1可以進(jìn)行正常的數(shù)據(jù)傳輸.從1.0 s開(kāi)始,有鏈路斷開(kāi),導(dǎo)致吞吐量大幅度下降.DVMRP吞吐量的曲線從0.6 s開(kāi)始呈指數(shù)型增長(zhǎng),這是因?yàn)閺?.6 s到1.6 s增加了兩個(gè)接收節(jié)點(diǎn)n3和n4,DVMRP發(fā)現(xiàn)n3和n4是鄰居路由器,因此路由表中添加了兩條路徑信息:n0-n1-n3-n5和n0-n1-n4-n5,因此鏈路的吞吐量快速增加.從1.9 s開(kāi)始,DVMRP采用“剪枝”技術(shù)刪除之前增加的接收節(jié)點(diǎn),導(dǎo)致吞吐量的增長(zhǎng)速度減慢,到4.3 s時(shí),增加的接收節(jié)點(diǎn)全部被刪除,吞吐量開(kāi)始逐漸減小.
丟包率(packet loss rate)定義了傳輸期間網(wǎng)絡(luò)丟失數(shù)據(jù)包的數(shù)量,這里是指丟失的數(shù)據(jù)包占傳輸?shù)臄?shù)據(jù)總量的比例[8].圖4為DVRP和DVMRP丟包率的比較曲線.從圖4中可以看出,DVRP的丟包率遠(yuǎn)高于DVMRP的丟包率,且DVMRP的丟包率幾乎為零.原因是當(dāng)有鏈路斷開(kāi)時(shí),DVRP要進(jìn)行路由修復(fù),而在路由修復(fù)過(guò)程中會(huì)持續(xù)發(fā)生丟包現(xiàn)象.由于DVMRP記錄了路徑樹(shù)上的路由信息,當(dāng)鏈路發(fā)生變化時(shí),它會(huì)選擇記錄中的其他路徑傳輸數(shù)據(jù),所以有效降低了丟包率.
圖3 吞吐量對(duì)比
圖4 丟包率對(duì)比
本文在相同的網(wǎng)絡(luò)條件下對(duì)多路徑路由協(xié)議和單路徑路由協(xié)議的性能進(jìn)行了比較分析,分析結(jié)果表明多路徑路由協(xié)議的性能優(yōu)于單路徑路由協(xié)議.但是,多路徑路由協(xié)議建立和維護(hù)多條路由路徑的代價(jià)高于單路徑路由協(xié)議,所以要根據(jù)具體的應(yīng)用情況確定使用何種路由協(xié)議.
[1]FarazShamim,ZaheerAziz.IP路由協(xié)議疑難解析[M].盧澤新,白建軍,朱培棟,等,譯.北京:人民郵電出版社,2008.
[2]James Macfarlane.Network Routing Basics[M].吉林:吉林長(zhǎng)白山出版社,2007:07.
[3]王元亮,賈力.計(jì)算機(jī)網(wǎng)絡(luò)通信與數(shù)據(jù)傳輸[M].昆明:云南科學(xué)技術(shù)出版社,2002.
[4]謝希仁.計(jì)算機(jī)網(wǎng)絡(luò)[M].北京:電子工業(yè)出版社,2008.
[5]Kenneth D Reed.協(xié)議分析[M].孫坦,譯.北京:電子工業(yè)出版社,2004.
[6]齊小剛,劉立芳,劉三陽(yáng).基于距離向量深度的多約束路徑選擇算法[J].電子學(xué)報(bào),2009,37(1):175-179.
[7]方路平,劉世華,陳盼,等.NS-2網(wǎng)絡(luò)模擬基礎(chǔ)與應(yīng)用[M].北京:國(guó)防工業(yè)出版社,2008.
[8]黃化吉,馮穗力.NS網(wǎng)絡(luò)模擬和協(xié)議仿真[M].北京:人民郵電出版社,2010.