熊 輝
(四川職業(yè)技術(shù)學(xué)院 計(jì)科系,四川 遂寧 629000)
各種網(wǎng)絡(luò)仿真工具在此背景下應(yīng)運(yùn)而生。本文就常見的三種網(wǎng)絡(luò)仿真工具(OPNET、NS2及MATLAB),從它們的運(yùn)行環(huán)境、主要模塊及功能、工作流程及應(yīng)用領(lǐng)域進(jìn)行了分析比較。
OPNET對(duì)于網(wǎng)絡(luò)的設(shè)計(jì)和管理,一般分為3個(gè)階段:設(shè)計(jì)階段、發(fā)布階段,實(shí)際運(yùn)營中的故障診斷、排錯(cuò)和升級(jí)優(yōu)化,能面向網(wǎng)絡(luò)研發(fā)的不同階段,既可以作網(wǎng)絡(luò)的設(shè)計(jì),也可以作為發(fā)布網(wǎng)絡(luò)性能的依據(jù),還可以作為已投入運(yùn)營的網(wǎng)絡(luò)的優(yōu)化和故障診斷工具。
NS2可以對(duì)無線、有線網(wǎng)、衛(wèi)星網(wǎng),局域網(wǎng)和廣域網(wǎng)等不同的網(wǎng)絡(luò)形式進(jìn)行仿真。可以支持HTTP、TCP,UDP協(xié)議,支持FTP,Telnet,Web,,CBR and VBR 等高層業(yè)務(wù);對(duì)無線網(wǎng)絡(luò),支持DSR、AODV、DSDV等協(xié)議。NS2是一種可擴(kuò)展易配置和編程的事件驅(qū)動(dòng)網(wǎng)絡(luò)仿真工具。
MATLAB主要用于概念設(shè)計(jì)、算法開發(fā)、建模仿真、實(shí)時(shí)實(shí)現(xiàn)的理想的集成環(huán)境。由于其完整的專業(yè)體系和先進(jìn)的設(shè)計(jì)開發(fā)思路,使得MATLAB在多種領(lǐng)域都有廣闊的應(yīng)用空間,特別是在MATLAB的主要應(yīng)用方向— —科學(xué)計(jì)算、建模仿真以及信息工程系統(tǒng)的設(shè)計(jì)開發(fā)上已經(jīng)成為行業(yè)內(nèi)的首選設(shè)計(jì)工具。
(1)OPNET 運(yùn)行環(huán)境。平臺(tái):Windows、Linux、Unix等各種平臺(tái);系統(tǒng)裝有C++編譯器。
(2)NS2 運(yùn)行環(huán)境。平臺(tái):Windows、Linux、Unix、machitosh,還要求系統(tǒng)裝有 C++編譯器;兩種語言:C++、OTcl。
(3)Matlab運(yùn)行環(huán)境。平臺(tái):主要是Windows平臺(tái)。
3.2.1 OPNET模塊及功能
若固守男女授受不親之禮,則不應(yīng)施以援手救嫂子;此時(shí)施以援手,則是權(quán)的體現(xiàn)。而孟子懂得通權(quán)達(dá)變,用權(quán)變思維處理嫂溺問題。在孔子看來,當(dāng)處在道德兩難的特殊境遇時(shí),道德主體可以暫時(shí)犧牲乃至違背較低層次的道德規(guī)范,以保證更高層次的道德規(guī)范的實(shí)現(xiàn),而這種行為仍具有真正的道德價(jià)值,這就是“權(quán)”。在處理兩難問題時(shí),就需要靈活變通,不能固守于經(jīng)。權(quán)變是人的道德選擇,也是道德實(shí)踐的前提。
(1)OPNET模型分為Network、Node和Process三個(gè)層次,分別在圖形界面的Project Editor、Node Editor和Process Editor工具中建立。
(2)OPNET提供了一個(gè)比較齊全的的基本模型庫,主要包括:Ethernet,F(xiàn)DDI,TR,TCP/IP,ATM,F(xiàn)R,PSTN,Cellular phone,wireless network,Client/Server
(3)OPNET采用基于包的建模機(jī)制,模擬實(shí)際物理網(wǎng)絡(luò)中packet的流動(dòng),包括在網(wǎng)絡(luò)設(shè)備間的流動(dòng)和網(wǎng)絡(luò)設(shè)備內(nèi)部的處理過程,模擬實(shí)際網(wǎng)絡(luò)協(xié)議中的組包和拆包的過程,可以生成、編輯任何標(biāo)準(zhǔn)的或自定義的packet格式,利用DEBUG功能,還可以在模擬過程中察看任何特定的 packet的包頭(Header)和凈荷(Payload)的內(nèi)容。
(4)OPNET采用離散事件驅(qū)動(dòng)的模擬機(jī)理,計(jì)算效率得到很大提高。
3.2.2 NS2模塊及功能
Nam,動(dòng)態(tài)顯示網(wǎng)絡(luò)仿真過程。如:包的傳輸?shù)鹊?Xgraph,顯示仿真過程的數(shù)值特征。如:流量/時(shí)間圖等;拓?fù)鋱D生成器:Gt-itm;節(jié)點(diǎn)移動(dòng)生成器:Setdest;傳輸事件生成器:cbrgen.tcl、tcpgen.tcl。
3.2.3 MATLAB的主要功能
數(shù)值計(jì)算功能;符號(hào)計(jì)算功能;數(shù)據(jù)分析和可視化功能;文字處理功能;SIMULINK動(dòng)態(tài)仿真功能。
3.3.1 OPNET的工作流程
理解系統(tǒng)、仿真目的;選擇需要的建模方面;定義輸入和輸出;確定系統(tǒng)模型、輸出;運(yùn)行仿真;系統(tǒng)結(jié)果是否準(zhǔn)確,驗(yàn)證結(jié)果的容錯(cuò)性和精確性;結(jié)果是否足夠詳細(xì)和統(tǒng)計(jì)可用。
3.3.2 NS2的工作流程
定義網(wǎng)絡(luò)結(jié)構(gòu)、輸出文件、退出過程和網(wǎng)絡(luò)事件,配置響應(yīng)的硬件參數(shù),確定拓?fù)鋱D和傳輸事件文件以及節(jié)點(diǎn)移動(dòng)文件,在運(yùn)行過程中,打開輸出文件,按照定義的事件,運(yùn)行拓?fù)鋱D,同時(shí)將過程數(shù)據(jù)寫入輸出文件,調(diào)用退出過程,接著調(diào)用Nam或Xgraph顯示并關(guān)閉輸出文件。
3.3.3 MATLAB的工作流程
MATLAB及其豐富的Toolbox資源的支持,可以方便地進(jìn)行具有開創(chuàng)性的建模與算法開發(fā)工作,并通過MATLAB強(qiáng)大的圖形和可視化能力反映算法的性能和指標(biāo)。所得到的算法則可以在Simulink環(huán)境中以模塊化的方式實(shí)現(xiàn),通過全系統(tǒng)建模,進(jìn)行全系統(tǒng)的動(dòng)態(tài)仿真以得到算法在系統(tǒng)中的動(dòng)態(tài)驗(yàn)證。
MATLAB主要應(yīng)用于控制器及控制對(duì)象、信號(hào)處理系統(tǒng)、通信系統(tǒng)、機(jī)電液一體化設(shè)計(jì)開發(fā)。OPNET、NS2能夠較好的對(duì)通信系統(tǒng)進(jìn)行仿真,MATLAB一般是高端應(yīng)用,OPNET和NS2主要用于通信系統(tǒng)設(shè)計(jì)開發(fā)的網(wǎng)絡(luò)仿真方面。OPNET和NS2支持底端應(yīng)用和硬件接口。
網(wǎng)絡(luò)仿真技術(shù)是一種全新的網(wǎng)絡(luò)規(guī)劃設(shè)計(jì)方法,該技術(shù)以其獨(dú)特的技術(shù)手段,成為一種經(jīng)濟(jì)、有效和其他傳統(tǒng)方法不可替代的網(wǎng)絡(luò)設(shè)計(jì)的有力工具。隨著數(shù)據(jù)網(wǎng)絡(luò)的日趨復(fù)雜、網(wǎng)絡(luò)規(guī)模的日漸龐大,對(duì)網(wǎng)絡(luò)仿真技術(shù)的需求必將越來越迫切,網(wǎng)絡(luò)仿真的應(yīng)用也將越來越廣泛,網(wǎng)絡(luò)仿真技術(shù)將成為數(shù)據(jù)網(wǎng)絡(luò)規(guī)劃設(shè)計(jì)不可缺少的工具。
[1]http://www.china-ns.com
[2]http://www.ns.nl
[3]http://www.opnet.com
[4]http://www.matlab-world.com