基于NS2軟件 的網(wǎng)絡(luò)協(xié)議仿真.doc_第1頁
基于NS2軟件 的網(wǎng)絡(luò)協(xié)議仿真.doc_第2頁
基于NS2軟件 的網(wǎng)絡(luò)協(xié)議仿真.doc_第3頁
基于NS2軟件 的網(wǎng)絡(luò)協(xié)議仿真.doc_第4頁
基于NS2軟件 的網(wǎng)絡(luò)協(xié)議仿真.doc_第5頁
已閱讀5頁,還剩3頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

基于網(wǎng)絡(luò)模擬軟件NS2的網(wǎng)絡(luò)協(xié)議仿真【摘要】:網(wǎng)絡(luò)模擬是網(wǎng)絡(luò)協(xié)議性能及研究中非常重要的一個(gè)組成部分。本文介紹了網(wǎng)絡(luò)模擬軟件 NS2 的結(jié)構(gòu)和特點(diǎn)以及仿真過程,并實(shí)例介紹了基于NS2的網(wǎng)絡(luò)協(xié)議仿真?!娟P(guān)鍵詞】:NS2;TCP;UDP;路由;仿真一、引言網(wǎng)絡(luò)模擬是網(wǎng)絡(luò)協(xié)議性能及研究中非常重要的一個(gè)組成部分,算法是否合理、是否具有實(shí)用價(jià)值、是否能夠提高網(wǎng)絡(luò)的性能等都需要通過實(shí)驗(yàn)證明。由于在真實(shí)的網(wǎng)絡(luò)環(huán)境中進(jìn)行實(shí)踐驗(yàn)證耗資巨大,多數(shù)高校和科研機(jī)構(gòu)并不具備完整有效的實(shí)驗(yàn)環(huán)境,而且真實(shí)網(wǎng)絡(luò)中實(shí)驗(yàn)數(shù)據(jù)的收集和分析也有一定困難。網(wǎng)絡(luò)仿真軟件通過在計(jì)算機(jī)上建立一個(gè)虛擬的網(wǎng)絡(luò)環(huán)境來實(shí)現(xiàn)對(duì)真實(shí)網(wǎng)絡(luò)環(huán)境的模擬,科研人員在這個(gè)平臺(tái)上不僅能對(duì)網(wǎng)絡(luò)的通信、設(shè)備、協(xié)議、結(jié)構(gòu)以及應(yīng)用進(jìn)行研究,還能對(duì)網(wǎng)絡(luò)的性能進(jìn)行分析和評(píng)估。仿真軟件大大提高了網(wǎng)絡(luò)設(shè)計(jì)開發(fā)的效率,同時(shí)也降低了費(fèi)用和風(fēng)險(xiǎn),已經(jīng)成為研究中不可或缺的工具。二、NS2 的結(jié)構(gòu)和特點(diǎn)目前,使用較多的網(wǎng)絡(luò)仿真軟件有OPNET,Matlab,NS2 和GloMoSim 等。選擇免費(fèi)且開放源代碼的NS2作為仿真平臺(tái),是因?yàn)樵撈脚_(tái)是一種離散事件網(wǎng)絡(luò)仿真平臺(tái),可以運(yùn)行在Linux或Windows操作系統(tǒng)上。作為一種可擴(kuò)展、易配置、可編程的事件驅(qū)動(dòng)的網(wǎng)絡(luò)仿真軟件,NS2能夠近乎真實(shí)地在各個(gè)層次上模擬網(wǎng)絡(luò)運(yùn)行,并支持多種協(xié)議。其主要功能包括以下幾點(diǎn)。一)靈活的仿真環(huán)境作為一款開源軟件,NS2所有源代碼公開,任何人都可以獲得、使用和修改其源代碼。這對(duì)于利用NS2來構(gòu)建特殊的網(wǎng)絡(luò)仿真實(shí)驗(yàn)環(huán)境非常方便和迅速。二)結(jié)果分析及再現(xiàn)容易 研究人員通過配置環(huán)境參數(shù)獲得理想的網(wǎng)絡(luò)環(huán)境,即可實(shí)時(shí)跟蹤并記錄關(guān)鍵節(jié)點(diǎn)的重要信息,從而獲得網(wǎng)絡(luò)性能參數(shù),并可以隨時(shí)再現(xiàn)某些特殊情況,這在真實(shí)網(wǎng)中是難以做到的。三)良好的可擴(kuò)展性NS2使用C+和OTCL兩種程序設(shè)計(jì)語言,分別完成具體協(xié)議的模擬,實(shí)現(xiàn)與網(wǎng)絡(luò)仿真環(huán)境的配置和建立。對(duì)于有一定編程基礎(chǔ)的人員來說,可以根據(jù)自身的需要方便地設(shè)計(jì)新協(xié)議,擴(kuò)展新的功能模塊。四)在線資源支持NS2的官方網(wǎng)站建立圖書館性質(zhì)的庫,收集了很多經(jīng)典的演示場(chǎng)景和案例。三、NS2 網(wǎng)絡(luò)仿真過程(一)NS2 仿真的層次 網(wǎng)絡(luò)仿真要經(jīng)歷模型建立、模擬實(shí)現(xiàn)和結(jié)果分析3個(gè)階段。NS2仿真分為2 個(gè)層次。1.基于OTCL編程的用戶層次,只需編寫OTCL腳本。 2.基于C+ 和OTCL 的系統(tǒng)層次,能夠?qū)S2內(nèi)核進(jìn)行功能擴(kuò)展,增加新的 C+和OTCL類,添加所需的網(wǎng)絡(luò)元素。仿真過程如圖1所示。 (2) NS2 仿真的步驟1. 配置網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu),確定鏈路的基本特性,如延時(shí)、帶寬和選擇策略等。2. 建立協(xié)議代理,包括端設(shè)備的協(xié)議綁定和通信業(yè)務(wù)量模型的建立。 3. 配置業(yè)務(wù)量模型參數(shù),確定網(wǎng)絡(luò)上的業(yè)務(wù)量分布。4. 設(shè)置Trace對(duì)象,把仿真中發(fā)生的特定類型事件記錄在Trace文件中,通過Trace 文件保存整個(gè)仿真過程。仿真完成后,用戶對(duì)Trace文件進(jìn)行分析研究。四、網(wǎng)絡(luò)協(xié)議仿真實(shí)例(一)TCP 協(xié)議仿真TCP協(xié)議是重要的傳輸層協(xié)議。不僅要理解TCP協(xié)議的工作原理,而且還要理解在網(wǎng)絡(luò)發(fā)生擁塞時(shí),如何在TCP協(xié)議控制下實(shí)現(xiàn)擁塞控制的過程。針對(duì)這一內(nèi)容,建立如圖2所示的仿真場(chǎng)景,節(jié)點(diǎn)n0,n1與節(jié)點(diǎn)n3之間分別建立一條TCP連接,鏈路帶寬及傳輸延時(shí)如圖2所示。圖2的網(wǎng)絡(luò)仿真拓?fù)浣Y(jié)構(gòu)以TCP擁塞控制協(xié)議為例,在仿真開始時(shí),由n0和n1節(jié)點(diǎn)同時(shí)向 n3 節(jié)點(diǎn)發(fā)送FTP數(shù)據(jù)流,將初始擁塞窗口大小設(shè)為1,在 NAM 動(dòng)畫中通過控制播放速度,可以清晰地觀察到在TCP協(xié)議控制下,發(fā)送窗口的大小隨著確認(rèn)包的返回成倍增加(1,2,4,8),當(dāng)擁塞窗口增大到一定程度時(shí),n2節(jié)點(diǎn)開始發(fā)生丟包現(xiàn)象,此時(shí)n1節(jié)點(diǎn)將重傳丟失的數(shù)據(jù)包,并減小發(fā)送窗口。其數(shù)據(jù)包傳輸如圖3所示。通過這個(gè)仿真實(shí)例,可以很好地理解TCP慢啟動(dòng)和擁塞控制協(xié)議的工作原理。(二)UDP 協(xié)議仿真 在上述仿真場(chǎng)景中,將傳輸層協(xié)議修改為UDP,令n0和n1節(jié)點(diǎn)在仿真開始時(shí)開始向n3發(fā)送CBR數(shù)據(jù)流,重新運(yùn)行仿真腳本,圖4是在NAM動(dòng)畫演示中截 取的圖象。圖3和圖4進(jìn)行對(duì)比可知,圖3中鏈路上方為發(fā)送方n0向n3發(fā)送的數(shù)據(jù)包,而鏈路下方的小豎 線是由接收方n3向發(fā)送方返回的確認(rèn)包;在圖4中,僅在鏈路上方有發(fā)送的數(shù)據(jù)流,接收方并不返回確認(rèn),仿真結(jié)果對(duì)理論分析提供了有力的支持。從NAM動(dòng)畫中還可以看到,應(yīng)用UDP協(xié)議時(shí),當(dāng)網(wǎng)絡(luò)中間節(jié)點(diǎn)丟棄數(shù)據(jù)包,發(fā)送方并不會(huì)因此而降低發(fā)送速度,造成嚴(yán)重的丟包現(xiàn)象。(三)IP 網(wǎng)絡(luò)單播路由協(xié)議仿真根據(jù)IP網(wǎng)絡(luò)單播路由協(xié)議的定義和運(yùn)行機(jī)制,建立一個(gè)網(wǎng)絡(luò)協(xié)議的NS2運(yùn)行場(chǎng)景。再利用NS2模擬器產(chǎn)生NAM動(dòng)畫播放器需要的輸入文件,以NAM動(dòng)畫的方式演示網(wǎng)絡(luò)協(xié)議的運(yùn)行過程。1.IP 網(wǎng)絡(luò)路由協(xié)議仿真的網(wǎng)絡(luò)結(jié)構(gòu)如圖5所示,它由6個(gè)節(jié)點(diǎn)組成,通過雙向鏈路連接起來。鏈路帶寬為1 Mbit/s,延時(shí)為5 ms。節(jié)點(diǎn)0作為數(shù)據(jù)源發(fā)送端,在節(jié)點(diǎn)0上綁定一個(gè)UDP代理,在UDP代理上綁定一個(gè)CBR流量發(fā)生器。2.IP 網(wǎng)絡(luò)單播路由協(xié)議仿真。IP網(wǎng)絡(luò)單播路由協(xié)議主要包含單播路由協(xié)議 OSPF協(xié)議和RIP協(xié)議。其中,RIP協(xié)議是一種分布式的基于距離向量的路由選擇協(xié)議,采用Bellman-Ford 算法;OSPF 協(xié)議是分布式的鏈路狀態(tài)協(xié)議,采用最短路徑算法。在NS2中的會(huì)期路由采用all-pairs SPF算法,動(dòng)態(tài)路由采用分布式Bellman-Ford 算法,可以借助會(huì)期路由和動(dòng)態(tài)路由來演示單播路由協(xié)議的動(dòng)態(tài)運(yùn)行過程。會(huì)期路由可以演示OSPF協(xié)議運(yùn)行過程,采用圖5所示的網(wǎng)絡(luò)結(jié)構(gòu)進(jìn)行仿真。 采用OTCL語言編寫腳本,以NAM動(dòng)畫來演示會(huì)期路由的運(yùn)行過程,如圖6所示,假設(shè)節(jié)點(diǎn)0發(fā)送的數(shù)據(jù)流用長(zhǎng)虛線表示,可以看到節(jié)點(diǎn)0到節(jié)點(diǎn)5開始傳輸數(shù)據(jù)時(shí),路徑經(jīng)過節(jié)點(diǎn)1和節(jié)點(diǎn)3。當(dāng)節(jié)點(diǎn)1和節(jié)點(diǎn)3之間的鏈路出現(xiàn)故障時(shí),重新計(jì)算新的路由,經(jīng)過節(jié)點(diǎn)1和節(jié)點(diǎn)4傳輸數(shù)據(jù),如圖7所示。當(dāng)節(jié)點(diǎn)1和節(jié)點(diǎn)3之間的鏈路故障修復(fù)后,數(shù)據(jù)又按照?qǐng)D6來傳輸。通過動(dòng)態(tài)路由可以演示RIP協(xié)議運(yùn)行過程,如圖8所示,假設(shè)節(jié)點(diǎn)0發(fā)送的數(shù)據(jù)流用長(zhǎng)虛線表示,節(jié)點(diǎn)0到節(jié)點(diǎn)5開始傳輸數(shù)據(jù)路徑經(jīng)過節(jié)點(diǎn)1,節(jié)點(diǎn)2和節(jié)點(diǎn)3。當(dāng)節(jié)點(diǎn)2和節(jié)點(diǎn)3之間的鏈路出現(xiàn)故障時(shí),重新計(jì)算新的路由,經(jīng)過節(jié)點(diǎn)1和節(jié)點(diǎn)3傳輸數(shù)據(jù),如圖9所示。五、總結(jié)隨著網(wǎng)絡(luò)系統(tǒng)復(fù)雜度的增大,傳統(tǒng)的分析法和實(shí)驗(yàn)法越來越不適應(yīng)網(wǎng)絡(luò)系統(tǒng)的特點(diǎn),仿真法成為網(wǎng)絡(luò)性能分析的主流方法。NS2作為一種離散事件網(wǎng)絡(luò)仿真平臺(tái),可以運(yùn)行在Linux或Windows 操作系統(tǒng)上。作為一種可擴(kuò)展、易配置、可編程的事件驅(qū)動(dòng)的網(wǎng)絡(luò)仿真軟件,NS2能夠近乎真實(shí)地在各個(gè)層次上模擬網(wǎng)絡(luò)運(yùn)行,并支持多種協(xié)議。目前NS2已廣泛應(yīng)用于計(jì)算機(jī)網(wǎng)絡(luò)的研究與設(shè)計(jì)中。參考文獻(xiàn):1 徐雷鳴.NS2與網(wǎng)絡(luò)模擬M.

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論