王全國(guó) 劉苓
摘 要:網(wǎng)絡(luò)仿真是一種通過建立網(wǎng)絡(luò)設(shè)備、鏈路和協(xié)議模型,模擬網(wǎng)絡(luò)流量的傳輸,從而獲取網(wǎng)絡(luò)設(shè)計(jì)或優(yōu)化所需要的網(wǎng)絡(luò)性能數(shù)據(jù)的仿真技術(shù)。這種技術(shù)能以極低的成本實(shí)現(xiàn)復(fù)雜網(wǎng)絡(luò)的再現(xiàn)與分析。網(wǎng)絡(luò)仿真軟件是網(wǎng)絡(luò)仿真的實(shí)現(xiàn)技術(shù),在網(wǎng)絡(luò)仿真中起著關(guān)鍵作用。文章介紹三種網(wǎng)絡(luò)仿真軟件:OPNET、NS和OMNET,分別分析這三種仿真軟件的特點(diǎn)和使用情況。
關(guān)鍵詞:網(wǎng)絡(luò)仿真;OPNET;NS;OMNET
中圖分類號(hào):TP391. 9 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1006-8937(2015)32-0088-01
1 網(wǎng)絡(luò)仿真的必要性
隨著信息技術(shù)的發(fā)展,網(wǎng)絡(luò)也日益復(fù)雜化,多種網(wǎng)絡(luò)趨于融合,網(wǎng)絡(luò)負(fù)載也日益繁重,在這種情況下如論是對(duì)現(xiàn)有網(wǎng)絡(luò)進(jìn)行優(yōu)化還是規(guī)劃新建網(wǎng)絡(luò)都是個(gè)很有挑戰(zhàn)性的課題。
隨著網(wǎng)絡(luò)的日趨復(fù)雜,規(guī)模日趨龐大,對(duì)網(wǎng)絡(luò)仿真的要求也日益強(qiáng)烈。無論文構(gòu)建網(wǎng)絡(luò)、改造升級(jí)網(wǎng)絡(luò)還是測(cè)試協(xié)議,都需要的對(duì)網(wǎng)絡(luò)性能進(jìn)行評(píng)價(jià),網(wǎng)絡(luò)的性能進(jìn)行評(píng)價(jià),從而提降低投資風(fēng)險(xiǎn)。越來越需要一種新的網(wǎng)絡(luò)設(shè)計(jì)手段,在種背景下,網(wǎng)絡(luò)仿真軟件應(yīng)運(yùn)而生。網(wǎng)絡(luò)仿真技術(shù)實(shí)際上是通過建立網(wǎng)絡(luò)鏈路、協(xié)議模型并模擬網(wǎng)絡(luò)流量的傳輸,從而獲得網(wǎng)絡(luò)優(yōu)化數(shù)據(jù)的目的。它能為網(wǎng)絡(luò)規(guī)劃設(shè)計(jì)提供客觀、可靠的依據(jù),縮短網(wǎng)絡(luò)建構(gòu)周期。
2 三種常見的網(wǎng)絡(luò)仿真平臺(tái)及特點(diǎn)
目前用于網(wǎng)絡(luò)仿真平臺(tái)有很多種,如:NS-2、OMNET++、 OPNET等。
2.1 NS-2
NS-2(network simulator-2)是一種面向?qū)ο蟮木W(wǎng)絡(luò)仿真器,它最初是由UC Berkeley開發(fā)的,主要用于研究的離散事件的仿真。使用的分裂對(duì)象模型,是由OTCL(具有面向?qū)ο筇匦缘腡CL腳本程序設(shè)計(jì)語(yǔ)言)和C++系統(tǒng)編程語(yǔ)言共同開發(fā)的。之所以共同開發(fā)是因?yàn)榫唧w協(xié)議的模擬和實(shí)現(xiàn),需要一種程序設(shè)計(jì)語(yǔ)言能夠高效率的處理字節(jié)(Byte),報(bào)頭(Packet Header)等信息,而網(wǎng)絡(luò)仿真要圍繞網(wǎng)絡(luò)組件和環(huán)境參數(shù)的配置進(jìn)行,需要的時(shí)間越短越好,模擬環(huán)境的建立和參數(shù)信息的配置一次能夠完成比較好,腳本語(yǔ)言有很大的優(yōu)勢(shì),面向?qū)ο筇匦缘腡CL腳本語(yǔ)言可以充分滿足需求。它也是致力于OSI模型仿真,包括物理成行為。
NS-2在配置網(wǎng)絡(luò)仿真過程中,節(jié)點(diǎn)的機(jī)構(gòu)和實(shí)際環(huán)境中的網(wǎng)絡(luò)節(jié)點(diǎn)非常相似,對(duì)于一個(gè)網(wǎng)絡(luò)節(jié)點(diǎn)來說,對(duì)應(yīng)的就是地址分類器(Address Classifier)和端口分類器(Port Classifier),在數(shù)據(jù)傳送過程中,首先地址分類器判斷IP地址是否與本節(jié)點(diǎn)相同,如果相同則發(fā)送到相應(yīng)的節(jié)點(diǎn),如果不相同就將數(shù)據(jù)包重新發(fā)送[1]。
總之,NS-2是開放源代碼的自由仿真軟件,為我們提供了一個(gè)很好的試驗(yàn)平臺(tái),實(shí)體結(jié)構(gòu)也非常清晰,有利于構(gòu)建新的網(wǎng)絡(luò)協(xié)議和網(wǎng)絡(luò)實(shí)體。對(duì)于源代碼用戶可以自由下載,它的這一特點(diǎn)決定了它與LINUX操作系統(tǒng)更匹配,NS-2雖然的功能很強(qiáng)大,但是學(xué)習(xí)的時(shí)候不容易上手。
2.2 OMNeT++
OMNeT++英文全稱是Objective Modular Network Testbed in C++,是近年來在科學(xué)和工業(yè)領(lǐng)域里逐漸流行的一種基于組件的模塊化的開放的網(wǎng)絡(luò)仿真平臺(tái),是一個(gè)基于離散事件的的模擬器,最早用于通信系統(tǒng)和分布式網(wǎng)絡(luò)的仿真。它在網(wǎng)絡(luò)仿真領(lǐng)域占據(jù)重要地位。
2.3 OPNET Modeler
OPNET Modeler作為美國(guó)OPNET Technology公司四大網(wǎng)絡(luò)仿真系列產(chǎn)品中的重要一員,主要針對(duì)有大型復(fù)雜網(wǎng)絡(luò)仿真需要的網(wǎng)絡(luò)設(shè)計(jì)專業(yè)人員而開發(fā),功能十分強(qiáng)大。
其特點(diǎn)如下:
①對(duì)相關(guān)特征充分反映真實(shí)網(wǎng)絡(luò),對(duì)應(yīng)于真實(shí)的網(wǎng)絡(luò)在網(wǎng)絡(luò)層、設(shè)備層和層協(xié)議狀態(tài)機(jī)建立了為每個(gè)協(xié)議描述了底層的過程模型;利用協(xié)議模型的設(shè)備特征模型;上部中間節(jié)點(diǎn)網(wǎng)絡(luò)模型的網(wǎng)絡(luò)結(jié)構(gòu)。三層來構(gòu)建一個(gè)接一個(gè)相應(yīng)的建模機(jī)制,清晰,且容易理解。
②利用的現(xiàn)狀仿真軟件更強(qiáng)大的模型庫(kù),可以充分滿足大眾需求的用戶。同時(shí),用戶也可以選擇,同時(shí)采用OPNET技術(shù)公司提供更強(qiáng)大的專用模型庫(kù)。
③相對(duì)于時(shí)間驅(qū)動(dòng)機(jī)制模擬誤差,為了提高計(jì)算效率,同時(shí)采用OPNET由離散事件仿真機(jī)制(離散的事件驅(qū)動(dòng))。具體地說,只有當(dāng)事件發(fā)生(網(wǎng)絡(luò)狀態(tài)改變)模擬器工作,否則,跳過這時(shí)間不執(zhí)行任何計(jì)算。
④實(shí)現(xiàn)在同一時(shí)間,提高效率的模擬可以得到盡可能詳細(xì)的仿真結(jié)果,同時(shí)采用OPNET對(duì)數(shù)學(xué)建模方法基于統(tǒng)計(jì)和分析方法基于包,一個(gè)混合建模機(jī)制。
⑤有一個(gè)強(qiáng)大的數(shù)據(jù)收集、統(tǒng)計(jì)、分析、仿真結(jié)果驗(yàn)證和仿真報(bào)告輸出功能,可以實(shí)現(xiàn)網(wǎng)絡(luò)層的性能統(tǒng)計(jì)數(shù)據(jù),用于各種參數(shù)直接收集。
⑥使用現(xiàn)有的網(wǎng)絡(luò)管理系統(tǒng)的流量數(shù)據(jù)的拓?fù)浜徒煌ūO(jiān)控系統(tǒng)建立仿真模型,同時(shí)采用OPNET專門提供相應(yīng)的數(shù)據(jù)接口,提高資源的利用效率和勞動(dòng)。
業(yè)務(wù)建模的準(zhǔn)確性的關(guān)鍵是任何通信系統(tǒng)性能評(píng)估。如果你想獲得實(shí)際的網(wǎng)絡(luò)設(shè)計(jì)有指導(dǎo)意義的結(jié)果,所以源用于仿真業(yè)務(wù)必須能夠正確地反映統(tǒng)計(jì)特征的實(shí)際業(yè)務(wù),但由于精度和速度的模擬業(yè)務(wù)的內(nèi)在矛盾,因?yàn)闃I(yè)務(wù)是大量的數(shù)據(jù),如聲音和視頻,如果精確的商業(yè)模擬方法可以使整個(gè)仿真變得非常緩慢,如果每個(gè)數(shù)據(jù)包發(fā)送從應(yīng)用層,模擬一個(gè)兩個(gè)的聲音流可能需要30 min,根據(jù)簡(jiǎn)單的業(yè)務(wù),同時(shí)采用OPNET提供多種業(yè)務(wù)建模方法。
3 網(wǎng)絡(luò)仿真的步驟
三種網(wǎng)絡(luò)仿真的步驟相似,即包含明確仿真任務(wù),選擇仿真內(nèi)容,運(yùn)行仿真,分析仿真結(jié)果等環(huán)節(jié)。仿真步驟如圖1所示.
4 結(jié) 語(yǔ)
由于網(wǎng)絡(luò)在組建的過程中有一定的復(fù)雜性,一般還要求網(wǎng)絡(luò)容易擴(kuò)展,所以網(wǎng)絡(luò)仿真有一定的難度。網(wǎng)絡(luò)仿真軟件理論化的網(wǎng)絡(luò)設(shè)計(jì)平臺(tái),它能夠大大的縮減網(wǎng)絡(luò)的開發(fā)時(shí)間,提高研究效率。隨著社會(huì)的發(fā)展,網(wǎng)絡(luò)世界也變得越來越復(fù)雜,對(duì)網(wǎng)絡(luò)仿真技術(shù)的需求也逐漸提高,網(wǎng)絡(luò)仿真技術(shù)的軟件應(yīng)用也會(huì)越來越廣泛。
參考文獻(xiàn):
[1] 徐雷鳴,龐博,照耀. NS與網(wǎng)絡(luò)仿真[M].北京:人民郵電出版社,2003.
[2] LUCIO G F, FARRERAM P, JAMMEH E,et al. OPNETmodelerand
NS-2: Comparing the accuracy of network simulators for packe-tl-
evel analysis using a network test bed[EB/OL]. http://privatewww.e-
ssex.ac.uk/fleum/weas.pdf,2003-07-22.
[3] 沈海紅,王進(jìn),鄭寶玉.基于3種主流網(wǎng)絡(luò)仿真軟件的網(wǎng)絡(luò)仿真探討 [J].江蘇通信技術(shù),2004,(4).