基于NS-2的無線網(wǎng)絡(luò)路由實(shí)驗(yàn)設(shè)計(jì)
摘要:在計(jì)算機(jī)網(wǎng)絡(luò)教學(xué)過程中,構(gòu)建具有相當(dāng)規(guī)模的物理無線網(wǎng)絡(luò)實(shí)驗(yàn)環(huán)境不切實(shí)際。因此,文中在NS-2網(wǎng)絡(luò)仿真器環(huán)境下,設(shè)計(jì)了3種典型的無線網(wǎng)絡(luò)路由協(xié)議驗(yàn)證性實(shí)驗(yàn),仿真實(shí)驗(yàn)直觀再現(xiàn)了無線網(wǎng)絡(luò)路由協(xié)議的工作原理,同時給出路由協(xié)議的性能評價指標(biāo),引導(dǎo)學(xué)生提出新的路由協(xié)議并進(jìn)行創(chuàng)新性實(shí)驗(yàn)設(shè)計(jì),培養(yǎng)學(xué)生的創(chuàng)新能力和科研素質(zhì)。
關(guān)鍵詞:NS-2;無線網(wǎng)絡(luò);實(shí)驗(yàn)設(shè)計(jì)
移動無線Adhoc網(wǎng)絡(luò)具有無基礎(chǔ)設(shè)施、分布式、自組織、自配置、自管理的特性,可在應(yīng)急條件下快捷部署的計(jì)算機(jī)網(wǎng)絡(luò),在軍事、搶險(xiǎn)救災(zāi)、突發(fā)事件應(yīng)對等方面具有廣泛的潛在應(yīng)用。移動Adhoc網(wǎng)絡(luò)技術(shù)抽象復(fù)雜、難于理解,在教學(xué)過程中構(gòu)建具有相當(dāng)規(guī)模的實(shí)驗(yàn)網(wǎng)絡(luò)不切實(shí)際。因此,設(shè)計(jì)基于NS-2網(wǎng)絡(luò)仿真軟件的實(shí)驗(yàn),讓學(xué)生在個人電腦上完成,深刻理解Adhoc網(wǎng)絡(luò)技術(shù)的原理、學(xué)會評價其性能,針對目前已提出的Adhoc路由技術(shù)的不足,探索一些創(chuàng)新性實(shí)驗(yàn)設(shè)計(jì)方案,改進(jìn)或者提出更優(yōu)的路由技術(shù)。
1 無線移動Adhoe網(wǎng)絡(luò)路由
路由的任務(wù)是把數(shù)據(jù)分組從源節(jié)點(diǎn)經(jīng)過中間網(wǎng)絡(luò)節(jié)點(diǎn)送達(dá)到目的節(jié)點(diǎn),是移動Adhoc網(wǎng)絡(luò)組網(wǎng)的關(guān)鍵技術(shù),影響著網(wǎng)絡(luò)延時、吞吐量等性能的優(yōu)劣。由于無線移動Adhoc網(wǎng)絡(luò)拓?fù)鋭討B(tài)變化、資源限制等特點(diǎn),給路由技術(shù)的設(shè)計(jì)帶來了巨大的困難,在數(shù)據(jù)包的傳輸過程中,中間節(jié)點(diǎn)主要涉及2個基本行為,即確定最佳路徑和數(shù)據(jù)包的轉(zhuǎn)發(fā),數(shù)據(jù)包的轉(zhuǎn)發(fā)較為簡單,路由選擇較為復(fù)雜,目前典型的路由技術(shù)有DSDV、DSR、AODV等。
1.1 目的節(jié)點(diǎn)序列距離矢量協(xié)議(DSDV)
DSDV是基于Belhnan-Ford算法表驅(qū)動的平面路由協(xié)議,每個節(jié)點(diǎn)都存儲維護(hù)一張路由表,記錄網(wǎng)絡(luò)的全局視圖。路由表記錄著目的節(jié)點(diǎn)、跳數(shù)、下一條節(jié)點(diǎn)和目的節(jié)點(diǎn)序列號標(biāo)識,序列號標(biāo)隱含了路由的時間信息來區(qū)分新舊(過時的)路由,同時避免環(huán)路的產(chǎn)生。路由信息的建立維護(hù)過程是每個節(jié)點(diǎn)周期性地與鄰節(jié)點(diǎn)交換路由表信息,以維持所有節(jié)點(diǎn)都擁有完整的路徑信息,同時,節(jié)點(diǎn)路由信息發(fā)生改變時也觸發(fā)路由信息的重新建立。作為先應(yīng)式路由的DSDV路由協(xié)議,再發(fā)送數(shù)據(jù)之前已建立好整個網(wǎng)絡(luò)的路由信息,數(shù)據(jù)可以立即傳輸,因此適用于實(shí)時性應(yīng)用環(huán)境中,但是網(wǎng)絡(luò)拓?fù)渥兓l繁時,維護(hù)路由信息的代價很高,因此不適合移動性強(qiáng)和大規(guī)模的網(wǎng)絡(luò)環(huán)境中。
1.2 動態(tài)源路由協(xié)議(DSR)
和先應(yīng)式表驅(qū)動路由不同,DSR是一種按需(On_demand)平面路由協(xié)議,當(dāng)一個節(jié)點(diǎn)需要發(fā)送數(shù)據(jù)報(bào)文時,首先檢查路由緩沖,是否存在從源節(jié)點(diǎn)到目的節(jié)點(diǎn)的一條路由,如果存在,就啟動該路由通往的節(jié)點(diǎn)轉(zhuǎn)發(fā)信息,其他非參與節(jié)點(diǎn)睡眠以節(jié)省能量等資源。如果不存在通往目的節(jié)點(diǎn)的路由,該節(jié)點(diǎn)則啟動路由搜索,路由搜索過程:源節(jié)點(diǎn)通過泛洪方式廣播路由請求分組給鄰居節(jié)點(diǎn),鄰居節(jié)點(diǎn)收到路由請求分組后,檢查自己的地址是否在路由請求分組中,如存在,就不轉(zhuǎn)發(fā)路由請求分組,如不存在,就把自己的地址添加到路由請求分組,并轉(zhuǎn)發(fā)補(bǔ)充了自己地址的的路由請求分組,這個過程持續(xù)到有一個路由請求分組到達(dá)目的節(jié)點(diǎn),當(dāng)路由請求分組到達(dá)目的節(jié)點(diǎn)時,節(jié)點(diǎn)要返回一個路由應(yīng)答分組通知節(jié)點(diǎn)己收到該路由請求。到達(dá)目的節(jié)點(diǎn)的的路由請求分組包含從源節(jié)點(diǎn)到目的節(jié)點(diǎn)的路由,目的節(jié)點(diǎn)就可以選擇利用反向路由來發(fā)送路由應(yīng)答,從源節(jié)點(diǎn)到目的節(jié)點(diǎn)可能在多條路由,一個源節(jié)點(diǎn)可能從目的節(jié)點(diǎn)那收到很多個路由應(yīng)答,DSR協(xié)議把這些路由緩存在路由緩存中以備將來所用。DSR協(xié)議主機(jī)不需要周期性的發(fā)送路由發(fā)現(xiàn)報(bào)文,支持主機(jī)睡眠。但是數(shù)據(jù)收發(fā)的每個報(bào)文都需要攜帶完整的路由信息,降低了網(wǎng)絡(luò)帶寬的利用率,在大規(guī)模的網(wǎng)絡(luò)中也不適用。
1.3 按需平面路由協(xié)議(AODV)
AODV路由協(xié)議結(jié)合DSR的優(yōu)點(diǎn),改進(jìn)DSDV,在需要時才建立路由信息,允許節(jié)點(diǎn)獲得多條路徑到達(dá)目的節(jié)點(diǎn)且不要求節(jié)點(diǎn)維護(hù)這些路由信息,因此其收斂速度快、計(jì)算量小、存儲資源消耗小、對網(wǎng)絡(luò)帶寬占用小。節(jié)點(diǎn)需要數(shù)據(jù)發(fā)送時也同DSR路由協(xié)議一樣,啟動路由搜索過程,也采用節(jié)點(diǎn)序列號避免環(huán)路的產(chǎn)生。
2 無線網(wǎng)絡(luò)路由實(shí)驗(yàn)設(shè)計(jì)
UC Berkeley開發(fā)的NS-2是開源的網(wǎng)絡(luò)仿真軟件,用戶可根據(jù)問題定義,是否需要修改源碼,編寫TCL模擬腳本和結(jié)果分析3個過程完成研究任務(wù)。筆者在計(jì)算機(jī)網(wǎng)絡(luò)專業(yè)課程教學(xué)中,設(shè)計(jì)了NS-2仿真環(huán)境下的無線網(wǎng)絡(luò)路由實(shí)驗(yàn),讓學(xué)生在自己的個人電腦上完成該試驗(yàn)。
2.1 實(shí)驗(yàn)?zāi)康?br />組建物理無線網(wǎng)絡(luò)實(shí)驗(yàn)環(huán)境不切實(shí)際,因此在NS-2網(wǎng)絡(luò)仿真器環(huán)境下,設(shè)計(jì)3種典型的無線網(wǎng)絡(luò)路由協(xié)議驗(yàn)證性實(shí)驗(yàn),使學(xué)生理解表驅(qū)動路由協(xié)議和按需路由工作原理的基礎(chǔ)上,引導(dǎo)學(xué)生提出性能評價體系對比已提出的無線網(wǎng)絡(luò)路由協(xié)議優(yōu)缺點(diǎn)和適用場合,從而改進(jìn)或者提出新的路由協(xié)議并進(jìn)行創(chuàng)新性實(shí)驗(yàn)設(shè)計(jì),培養(yǎng)學(xué)生的創(chuàng)新能力和科研素質(zhì)。
2.2 實(shí)驗(yàn)設(shè)計(jì)
實(shí)驗(yàn)采用確定無線網(wǎng)絡(luò)結(jié)構(gòu)、編寫TCL仿真代碼和設(shè)定trace文件記錄網(wǎng)絡(luò)事件,利用Gawk和gnuplot工具對網(wǎng)絡(luò)事件數(shù)據(jù)統(tǒng)計(jì)分析,得出網(wǎng)絡(luò)性能評價的過程進(jìn)行。
2.2.1 拓?fù)浣Y(jié)構(gòu)
為了直觀觀測路由收斂和工作原理,實(shí)驗(yàn)采用如圖1所示的拓?fù)浣Y(jié)構(gòu),共有8個Adhoc節(jié)點(diǎn),節(jié)點(diǎn)間的距離設(shè)置為200 m,每個節(jié)點(diǎn)的通信范圍設(shè)置為250 m。節(jié)點(diǎn)7向節(jié)點(diǎn)6發(fā)送恒定速率(CBR)的數(shù)據(jù)流,同時節(jié)點(diǎn)7在仿真10 s后開始向節(jié)點(diǎn)5的正上方移動。
2.2.2 仿真實(shí)現(xiàn)
1)編碼
2)運(yùn)行演示
編寫好仿真腳本后,啟動xwin窗口,使用ns*.tlc命令,*為仿真文件名。運(yùn)行過程用nam動畫演示,節(jié)點(diǎn)發(fā)送的廣播以圓圈逐步擴(kuò)散,數(shù)據(jù)分組以小黑點(diǎn)按路由傳輸,不能及時傳送的分組進(jìn)入隊(duì)列緩存,如滿則丟棄。
2.2.3 實(shí)驗(yàn)結(jié)果分析
1)trace文件解讀 仿真運(yùn)行完成后,截取其中建立9條鏈路的開始一段trace文件,如下所示:
Trace文件的記錄共有21欄,其中(1)表示事件類型,共有4類事件:s分組的發(fā)送事件,r分組接收事件,d分組丟棄,f分組轉(zhuǎn)發(fā);(2)時間發(fā)生時間;(3)處理事件的節(jié)點(diǎn);(4)Trace名稱;(5-6)分隔符;(7)分組ID;(8)分組類型;(9)分組大??;(10-13)MAC層的信息;(14-17)分隔符;(18-21)IP層的信息。
2)路由協(xié)議性能評價 設(shè)計(jì)“優(yōu)良”的adhoc無線網(wǎng)絡(luò)路由協(xié)議是目前無線組網(wǎng)的關(guān)鍵技術(shù)之一,“優(yōu)良”需要完整的評價體系,一般采用定性分析和定量相結(jié)合的方式進(jìn)行。定性分析可以從適應(yīng)動態(tài)拓?fù)?、控制開銷、分布式操作、基于需求的操作、先應(yīng)操作、“睡眠”周期操作、路由方式和路由更新方式等方面進(jìn)行,可以得出路由協(xié)議的適應(yīng)性。定量指標(biāo)包括數(shù)據(jù)包成功接收率、端到端平均時延、路由開銷、分組數(shù)據(jù)的丟包率、第一個封包的接收時間等指標(biāo),可以統(tǒng)計(jì)Trace文件得到。
2.2.4 實(shí)驗(yàn)結(jié)果分析
通過本實(shí)驗(yàn),學(xué)生可直觀的觀測無線網(wǎng)絡(luò)數(shù)據(jù)分組的傳送過程,分析trace文件,可以全面理解網(wǎng)絡(luò)行為同時從網(wǎng)絡(luò)延遲、丟包率、吞吐量等各個方面理解評價網(wǎng)絡(luò)性能,全面理解無線網(wǎng)絡(luò)路由的工作原理,但是上面的實(shí)驗(yàn)由于拓?fù)浣Y(jié)構(gòu)簡單,而無線adhoc網(wǎng)絡(luò)一般范圍大,節(jié)點(diǎn)移動性強(qiáng),為了仿真真實(shí)的應(yīng)用場景,可以用NS-2下的cbr工具生成多條業(yè)務(wù)流,用setdest工具生成更加真實(shí)的應(yīng)用場景進(jìn)行仿真。下面是仿真時間為100 s,暫停時間設(shè)為0 s,也就是節(jié)點(diǎn)在仿真時間內(nèi)一直移動,設(shè)置CBR流,最大的連接數(shù)為10條,每秒發(fā)出10個封包。在500 m*500 m的范圍內(nèi)節(jié)點(diǎn)數(shù)分別設(shè)為100、150、200、250、300、400對3種典型路由協(xié)議進(jìn)行仿真統(tǒng)計(jì)出的平均延時。
在節(jié)點(diǎn)數(shù)量較小時,平均傳輸延遲相當(dāng),隨著節(jié)點(diǎn)數(shù)量的增加,DSDV比DSR和AODV大,說明DSDV路由表建立后,隨著節(jié)點(diǎn)移動和節(jié)點(diǎn)數(shù)的增加,需要更新路由表次數(shù)更頻繁,影響包傳送的時間。
3 結(jié)束語
無線網(wǎng)絡(luò)技術(shù)是目前計(jì)算機(jī)網(wǎng)絡(luò)教學(xué)的重點(diǎn)和研究的熱點(diǎn)問題,原理抽象,不易理解,難以掌握,同時面向?qū)嶋H應(yīng)用還有一些需要解決的問題,在教學(xué)過程中,結(jié)合教學(xué)內(nèi)容的特點(diǎn),設(shè)計(jì)一些研究性實(shí)驗(yàn),使學(xué)生面對問題、分析問題進(jìn)而提出解決問題和采用方便的手段就行驗(yàn)證,從而提高教學(xué)質(zhì)量。
評論