亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于NS2的網絡仿真技術研究

        2010-12-22 09:02:06
        河池學院學報 2010年2期
        關鍵詞:網絡通信數據源隊列

        梁 潘

        (阿壩師范高等??茖W校 電子信息工程系,四川 郫縣 611741)

        基于NS2的網絡仿真技術研究

        梁 潘

        (阿壩師范高等??茖W校 電子信息工程系,四川 郫縣 611741)

        網絡仿真是網絡通信設計的重要環(huán)節(jié),也是網絡通信性能分析的關鍵 .介紹了 NS2作為一款開源的免費仿真工具在構件庫、靈活性、通用性等方面所具有的優(yōu)勢;剖析了 NS2的系統(tǒng)結構、仿真原理、仿真設計流程;以 NS2為平臺對丟尾隊列算法進行仿真實驗,并對實驗數據加以分析,證明了該平臺仿真的有效性,同時給出了利用NS2進行網絡通信研究的一般方法 .

        網絡仿真;NS2;丟尾隊列

        0 引言

        網絡通信的研究一般分為理論研究、網絡仿真、實驗網三個階段,網絡仿真由于采用仿真軟件進行模擬,使很多研究人員能夠研究大規(guī)模網絡和設計、開發(fā)新協(xié)議新算法,并能在網絡試用前對其進行檢驗和改進,所以網絡仿真技術發(fā)展飛速,應用領域越來越廣 .由于國內近幾年才開始使用該技術研究網絡通信,所以還相對比較落后,為此研究網絡仿真技術具有重要的意義 .

        1 NS2綜述

        1.1 NS2的特點

        目前,國外研制了 OPENT、MATLAB、NS2、SPD等幾種高質量的網絡仿真軟件 .這幾種仿真軟件各有特點:OPENT主要運用于網絡路由模擬,MATLAB運用于科學計算、矩陣運算,NS2在 IP網絡協(xié)議、算法模擬方面具有更多優(yōu)勢,SPD則主要運用于DSP的模擬場合 .除了 NS2外其他幾種軟件均需要投入高昂的費用,這對科研院所、高校來說是一筆巨大的開支 .所以,這里主要討論開源、免費的NS2.

        NS2是一個離散事件驅動的網絡仿真工具,由 LNBL的網絡研究小組開發(fā),其前身是 S.Keshav研制的REAL網絡仿真器[1],NS2具有如下特點[2-3].

        (1)豐富的構件庫 .NS2對網絡仿真中一些常用、通用的實體進行了建模,封裝了節(jié)點 (node)、鏈路(Link)、隊列管理 (QueueManagement)、代理 (Agent)等,這些實體的特性和功能通過相關封裝類的對象來實現,豐富的構件庫支持包括廣域網、局域網、移動通信網和衛(wèi)星通信網在內的多種網絡 .

        (2)靈活性高 .NS2使用了分裂模型的開發(fā)機制,采用 C++和 Otcl兩種語言,它們之間采用 Tclcl進行自動連接和映射,由于 C++運行速度快但改變比較慢、Otcl運行速度慢但轉變快的特點,前者經常用于具體協(xié)議的描述,后者常用來重新設置和修改模擬場景 .

        (3)支持各種業(yè)務模型和多種通信協(xié)議來模擬產生實際網絡中的業(yè)務流 .NS2內置了流量產生器和應用模擬器,流量產生器實現指數分布、Pareto分布、固定比特和 Trace文件等四種概率模型流量的產生,應用模擬器則實現了 FTP、Telnet等各種常用的業(yè)務模型;NS2同時還支持多種路由協(xié)議,如廣播路由、多播路由、靜態(tài)路由、動態(tài)路由等 .

        (4)強大的結果處理能力 .NS2能將仿真過程中需要的數據完整地收集到文件中以便后期處理,文件中詳細的記錄了仿真的整個過程,包括每一個數據分組到達、離開鏈路或隊列,或者被丟棄分組的信息,最后可以利用 Xgraph或 Gnuplot繪圖工具輕松地將仿真結果轉換成直觀的圖表 .

        1.2 NS2的系統(tǒng)結構

        NS2系統(tǒng)是由眾多軟件包組成,主要包括 C/C++、Tcl/Tk、OTcl、Tclcl和 NS,其結構如圖 1.Tcl是開放的腳本語言,用來對 NS編程;Tk提供了 Tcl的圖形界面開發(fā)環(huán)境;Otcl是 Tcl面向對象的擴展,用來提供C++對象面向用戶的接口;Tclcl則提供了 NS和 Otcl的接口,其封裝了六個 C++類:Tcl、Tc lObject、TclClass、TclComman、EmbeddedTcl和 InstVar.

        為了充分發(fā)揮 C++語言運算速度快和 Otcl語言靈活的優(yōu)點,NS2使用了圖 2所示的分裂模型將他們結合起來,所以結構中存在編譯類和解釋類,一般情況下,C++用于各種協(xié)議、數據流業(yè)務的實現,Otcl用于模擬場景的建立,在做網絡仿真研究時,仿真對象通過解釋器建立并初始化,Tclcl通過 TclObject、TclClass兩個類把Otcl和 C++類關聯起來使相應類的對象建立映射并一一對應 .

        NS2由網絡組件對象庫、網絡設置模型庫和事件調度器三個部分組成 .事件調度器是NS2的總控部分,由于NS2是一個事件驅動的仿真器,所以網絡仿真就是在不斷地處理事件,在仿真開始前,按照網絡模擬腳本中的描述生成所有事件,按事件觸發(fā)時間排序并存放在事件表中,仿真時時間調度器就從事件表中依次提取事件并處理 .網絡組件對象庫中包含節(jié)點、鏈路、代理等,它們共同繼承了 NsObject和事件處理器類來處理多項事務 .節(jié)點實際是仿真真實網絡中的計算機、交換機和路由器等網絡設備,它們通過鏈路連接起來,在 NS2中,鏈路與 TCP/IP網絡分層結構中的數據鏈路不同,它同時實現了物理層、數據鏈路層及網絡層的部分功能;代理是實際產生和消費分組的對象,是傳輸層的實體,分為 TCP和 UDP代理 .如前所述,NS2的網絡組件非常豐富,所以簡單網絡仿真時只要熟悉研究課題中需要使用的網絡組件,其他的都可做“透明”處理來完成 .

        1.3 NS2的仿真原理及流程

        用戶在使用 NS2做網絡仿真通信時,必須分析仿真過程中要涉及到解釋層還是編譯層,如果僅僅涉及解釋層 (NS2能提供所有組件),則不需要對 NS2系統(tǒng)本身進行任何修改,只需編寫 Tcl或 Otcl腳本,搭建合適的網絡模擬場景并確定鏈路的基本特性 (如帶寬、延遲、隊列管理類型、應用層業(yè)務等)及節(jié)點的初始設置(單播、多播、有線、無線、位置等),最后建立追蹤文件將仿真過程中用戶感興趣的數據保存下來以便分析 .在仿真過程中可以使用Network Animator(NAM)觀測仿真的動態(tài)過程,顯示從開始到結束整個過程中拓撲結構 (無線網絡)變化、隊列情況、丟包狀況等 .這類仿真主要用于在教學過程中加深學生對網絡協(xié)議和算法的理解 .如果所需要的仿真功能在 NS2中沒有提供,例如對某個協(xié)議的改進或新提出的算法進行仿真,這就涉及到編譯層,需要添加新的 C++和Otcl類添加新的協(xié)議,然后編寫 Otcl腳本重復上述涉及解釋層的工作 .添加新協(xié)議的流程需要注意的是[4]:(1)做適當的類定義,添加協(xié)議類;(2)定義新協(xié)議的分組頭結構;(3)定義 C++和 Otcl代碼之間的接口連接;(4)定義數據包接收 (recv())、命令處理 (command())以及時鐘類等函數;(5)對新協(xié)議代碼做必要改動,并在 NS目錄下運行Make Depend和Make重新編譯 NS2.

        2 仿真實驗

        NS2功能強大、數據準確,對有線網、無線網都提供了支持,本文將以丟尾隊列[5]的隊列管理模式為例,使用NS2作為仿真器,驗證該隊列管理方法理論分析的正確性,給出使用 NS2平臺進行網絡通信研究的一般步驟 .

        2.1 丟尾隊列簡介

        在網絡通信中,路由器中數據報到來的速度高于轉發(fā)的速度,則隊列會增長,當達到路由器的內存或規(guī)定的極限值時,丟棄所有額外的數據報,這便是丟尾隊列方法 .在簡單情況下,數據報攜帶來自單個 TCP連接的報文段通過路由器,報文被丟棄時 TCP進入慢啟動狀態(tài)降低吞吐率,直到 TCP開始收到 ACK報文并增大擁塞窗口,但是,因為數據報一般是多路復用的,連續(xù)的數據報來自不同的源站,這會造成尾部隊列策略使路由器丟棄來自N個連接的一個報文段,使 TCP的N個實例同時進入慢啟動狀態(tài) .

        2.2 基于NS2的尾部隊列策略仿真實驗

        為了驗證上述尾部隊列策略存在的問題,在W inXP+Cygwin+ns2.28的環(huán)境下做了仿真實驗 .

        (1)參數設置 .實驗采用圖 3所示拓撲結構,n2與n3之間的鏈路為瓶頸鏈路,S(1)、S(2)和 S(3)為源數據的發(fā)送點,n3為目的節(jié)點,主要考查n2與n3之間鏈路上的隊列變化情況 .實驗的參數為:瓶頸鏈路帶寬為 0.7MB、時延 20ms、隊列大小為 100,各源節(jié)點到n2的鏈路帶寬為 10MB、時延 1ms,源節(jié)點與n2節(jié)點隊列大小為 20,模擬周期 50 s.

        (2)核心 TcL腳本分析 .根據 NS2原理和所提供的網絡組件結合 2.2(1)中的參數設置,編寫了實現尾部隊列策略仿真的 Tcl腳本,由于篇幅有限,這里僅對核心代碼做分析 .

        #創(chuàng)建節(jié)點n2、n3以及它們之間的瓶頸鏈路并設置帶寬、時延和隊列管理策略#

        #使用隨機數來設定每個數據源 S(1)、S(2)和 S(3)的 ftp業(yè)務開始發(fā)送時間#

        (3)實驗分析與結論 .在 NS2中運行以上 Tcl腳本后,利用 Gawk語言從相關 Trace文件中提取第二列(事件發(fā)生時間)、第六列 (此時分組大小)數據,再利用 Gnuplot繪圖工具繪制當前隊列大小變化 (圖 4)和各個 TCP數據源發(fā)送時的窗口大小變化 (圖 5)曲線圖 .

        從圖 4可看出隊列在 13 s、25 s、37 s、49 s時達到實驗時設置的隊列大小極限 100,此時開始執(zhí)行丟尾策略,結合圖 5可看出,各個數據源大概在 13 s、25 s、37 s、49 s時被丟尾策略丟包,然后同時調整窗口大小,由此可知,各個 TCP數據源的窗口大小變化存在高度的同步性,既當隊列滿時,3個數據源新到的尾部數據同時被丟棄,使其進入慢啟動狀態(tài) .

        3 結語

        本文在介紹 NS2的系統(tǒng)結構、仿真原理、仿真設計流程的基礎上,以該仿真平臺對丟尾隊列策略進行仿真實驗,從數據分析及曲線變化圖來看,仿真結果和丟尾隊列策略理論分析是一致的,這證明了 NS2仿真模擬的可靠性 .網絡發(fā)展日新月異,隨著網絡規(guī)模的擴大,新協(xié)議、算法的不斷提出,網絡仿真正成為國內外網絡研究人員研究的熱點,NS2作為一種開源、免費、高效的仿真工具必將得到更為廣泛的應用 .

        [1]Fall K,Varadhan K.The NSManual.[EB/OL].http://www.isi.edu/nsnam/ns/doc/index/html,2003-11.

        [2]徐雷鳴,龐博,趙耀 .NS與網絡模擬[M].北京:人民郵電出版社,2003.

        [3]王永勝,吳德偉,劉勇.基于 NS2網絡仿真研究[J].計算機仿真,2004,21(11):257-259.

        [4]The network simulatorNS-2:Documentation[DB/OL].http://www.isi.edu/nsnam/ns/ns-documentation/html.

        [5]Douglas E Comer.用 TCP/IP進行網際互聯,第一卷:原理、協(xié)議與結構 (第四版)[M].北京:電子工業(yè)出版社,2003:1.

        A study into the Network S imulation Based on NS2

        L IANG Pan

        (Depart ment of Electron ic I nformation,Aba Teachers College,Pixian,Sichuan 611741,China)

        Network simulation of network communication design is an important step,and it is also the key to network communication performance analysis.The paperArticle describes the advantages ofNS2 as a free open source simulation tools in the component library,flexibility and versatility.Then it analyses the system structure,NS2 method and s imulation design process.And finally it conducts an experimenton theDistiller’s tail queue algorithm byNS2 and gets useful data to prove the validity of the simulation and obtains the generic methods of network communication.

        ne twork s imulation;NS2;distiller’s tail queue

        TP3

        A

        1672-9021(2010)02-0057-05

        梁潘 (1978-),男,四川廣漢人,阿壩師范高等??茖W校電子信息工程系講師,主要研究方向:計算機軟件與網絡 .

        阿壩師專校級規(guī)劃項目 (ASC09-15)

        2010-03-10

        [責任編輯普梅笑 ]

        猜你喜歡
        網絡通信數據源隊列
        隊列里的小秘密
        基于多隊列切換的SDN擁塞控制*
        軟件(2020年3期)2020-04-20 00:58:44
        基于網絡通信的智能照明系統(tǒng)設計
        電子制作(2019年15期)2019-08-27 01:11:48
        在隊列里
        網絡通信中信息隱藏技術的應用
        基于網絡通信的校園智能音箱設計
        電子制作(2018年1期)2018-04-04 01:48:30
        Web 大數據系統(tǒng)數據源選擇*
        談計算機網絡通信常見問題及技術發(fā)展
        電子制作(2017年17期)2017-12-18 06:41:06
        豐田加速駛入自動駕駛隊列
        基于不同網絡數據源的期刊評價研究
        一区二区三区日本久久| 99re8这里有精品热视频免费| 影视先锋av资源噜噜| 国产免费网站看v片元遮挡| 网红极品女神精品视频在线| 91国产熟女自拍视频| 日本一区二区视频免费在线看| 人妻饥渴偷公乱中文字幕| 国产成人精品日本亚洲11| 中文字幕久久久久久精| 和少妇人妻邻居做爰完整版| 一区二区在线观看日本视频| 色妞一区二区三区免费视频| 亚洲男人免费视频网站| 欧美精品一区二区精品久久| a级特黄的片子| 亚洲VA不卡一区| 国产三级视频一区二区| 白嫩少妇在线喷水18禁| 亚洲中文字幕久久精品一区| 中文字幕无线码免费人妻| 日产精品久久久久久久性色| 久久青草亚洲AV无码麻豆| av高清视频在线麻豆免费观看| 久久一本日韩精品中文字幕屁孩| 欧美精品亚洲精品日韩专区| 亚洲色偷偷综合亚洲av伊人| 在线观看av片永久免费| 亚洲无人区乱码中文字幕动画 | 亚洲男人av香蕉爽爽爽爽| 亚洲免费观看一区二区三区| 青青草手机视频免费在线播放| 国产精品久久国产精品99 gif| 亚洲美腿丝袜 欧美另类| 精品视频专区| 亚洲福利视频一区二区三区| 97精品人妻一区二区三区蜜桃| 国产女主播精品大秀系列| 中字无码av电影在线观看网站| 手机av在线观看视频| 永久免费视频网站在线|