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

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

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

溫馨提示

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

評論

0/150

提交評論