張賢軍 李 鶴
(1.北京海淀區(qū)復(fù)興路20號網(wǎng)管中心 北京 100840)(2.91917部隊(duì)20分隊(duì) 北京 100841)
目前,隨著Internet的迅猛發(fā)展,需要通過網(wǎng)絡(luò)傳送的信息越來越多,以及網(wǎng)絡(luò)帶寬與網(wǎng)絡(luò)規(guī)模的不斷擴(kuò)充,以數(shù)學(xué)計(jì)算為基礎(chǔ)的傳統(tǒng)網(wǎng)絡(luò)設(shè)計(jì)理論己經(jīng)無法滿足數(shù)據(jù)網(wǎng)絡(luò)的實(shí)際需要,所有這些,都對網(wǎng)絡(luò)研究人員提出了許多新的挑戰(zhàn),因此,越來越需要一種新的網(wǎng)絡(luò)規(guī)劃和設(shè)計(jì)手段來提高網(wǎng)絡(luò)設(shè)計(jì)的客觀性和設(shè)計(jì)結(jié)果的可靠性,降低網(wǎng)絡(luò)建設(shè)的投資風(fēng)險(xiǎn)。網(wǎng)絡(luò)仿真技術(shù)正是在這種需求的推動下而產(chǎn)生的。
網(wǎng)絡(luò)仿真是一種利用數(shù)學(xué)建模和統(tǒng)計(jì)分析的方法模擬網(wǎng)絡(luò)行為,通過建立網(wǎng)絡(luò)設(shè)備和網(wǎng)絡(luò)鏈路的統(tǒng)計(jì)模型,模擬網(wǎng)絡(luò)流量的傳輸,從而獲取網(wǎng)絡(luò)設(shè)計(jì)及優(yōu)化所需要的網(wǎng)絡(luò)性能數(shù)據(jù)的技術(shù)。網(wǎng)絡(luò)仿真作為一種新的網(wǎng)絡(luò)規(guī)劃和設(shè)計(jì)技術(shù),以其獨(dú)有的方法為網(wǎng)絡(luò)規(guī)劃設(shè)計(jì)提供客觀、可靠的定量依據(jù),縮短網(wǎng)絡(luò)建設(shè)周期、提高網(wǎng)絡(luò)建設(shè)中決策的科學(xué)性、降低網(wǎng)絡(luò)建設(shè)的投資風(fēng)險(xiǎn)。網(wǎng)絡(luò)仿真技術(shù)已經(jīng)成為網(wǎng)絡(luò)規(guī)劃、設(shè)計(jì)和開發(fā)中的主流技術(shù)。
網(wǎng)絡(luò)仿真技術(shù)具有以下特點(diǎn):
1)仿真基于統(tǒng)計(jì)模型,統(tǒng)計(jì)復(fù)用的隨機(jī)性精確再現(xiàn);
2)全新的模擬實(shí)驗(yàn)機(jī)理使其可以在高度復(fù)雜的網(wǎng)絡(luò)環(huán)境下得到高可信度的結(jié)果;
3)其預(yù)測功能是其他任何方法都無法比擬的,能夠驗(yàn)證實(shí)際方案或比較多個不同的設(shè)計(jì)方案;
4)使用范圍廣、既可以用于現(xiàn)有網(wǎng)絡(luò)的優(yōu)化和擴(kuò)容、也可以用于新網(wǎng)絡(luò)的設(shè)計(jì),特別適用于大中型網(wǎng)絡(luò)的設(shè)計(jì)和優(yōu)化,為網(wǎng)絡(luò)的規(guī)劃設(shè)計(jì)提供可靠的定量依據(jù);
5)初期應(yīng)用成本不高,建好的網(wǎng)絡(luò)模型可以延續(xù)使用、后期投資還會不斷下降。
網(wǎng)絡(luò)仿真的應(yīng)用包括:
·容量規(guī)劃和預(yù)測服務(wù);
·故障分析;
·端到端的性能分析
·分析新增業(yè)務(wù)和用戶對網(wǎng)絡(luò)的影響;
·使網(wǎng)絡(luò)設(shè)計(jì)達(dá)最優(yōu)的性價(jià)比;
·預(yù)測業(yè)務(wù)量的增長;
·指導(dǎo)新網(wǎng)絡(luò)建設(shè)。
在現(xiàn)代通信網(wǎng)絡(luò)研究中,網(wǎng)絡(luò)模擬技術(shù)得到了日趨廣泛的應(yīng)用,而網(wǎng)絡(luò)模擬的有效性和準(zhǔn)確性很大程度上依賴于所采用的網(wǎng)絡(luò)模擬工具的性能。在研究開發(fā)網(wǎng)絡(luò)模擬工具的方法和實(shí)現(xiàn)方面,國內(nèi)所做的研究相對較少,但國外已經(jīng)有許多研究成果,包括商業(yè)軟件工具和研究用軟件工具,如 OPNET,QualNet,NS- 2,NS - 3,GloMoSim,NCTUNS,GTNetS(包括 RT IKit library),OMNET++,SSFNet,JiST和Yans等。在此介紹幾種常用的網(wǎng)絡(luò)仿真工具。其中在教育、科研、商業(yè)等領(lǐng)域使用最廣泛的是NS2與OPNET。
OPNET[20](Optimal Network Engineering Tools)仿真軟件是MIL3公司的產(chǎn)品,是由MIT的幾位教師在1986年創(chuàng)建的,OPNET網(wǎng)絡(luò)仿真技術(shù)以其獨(dú)特的方法能夠?yàn)榫W(wǎng)絡(luò)的規(guī)劃設(shè)計(jì)提供客觀,可靠的定量依據(jù),能幫助開發(fā)人員定位關(guān)鍵事務(wù),分析出極限情況下的end-to-end性能,可以確定增加應(yīng)用和用戶后對網(wǎng)絡(luò)的影響,并使用定量的方法,對網(wǎng)絡(luò)做出準(zhǔn)確的規(guī)劃和伸縮性分析,使網(wǎng)絡(luò)設(shè)計(jì)得到最優(yōu)的性價(jià)比。目前用戶范圍廣泛,包括企業(yè)、網(wǎng)絡(luò)運(yùn)營商、儀器配備廠商,以及軍事、教育、銀行、保險(xiǎn)等領(lǐng)域。
OPNEST的產(chǎn)品核心包括:
1)Service Provider Guru:面向網(wǎng)絡(luò)服務(wù)提供商的智能化網(wǎng)絡(luò)管理軟件;
2)OPNET Modeler:為技術(shù)人員提供一個網(wǎng)絡(luò)技術(shù)和產(chǎn)品開發(fā)的平臺;
3)IT Guru:幫助網(wǎng)絡(luò)專業(yè)人士預(yù)測和分析網(wǎng)絡(luò)和網(wǎng)絡(luò)應(yīng)用性能,診斷問題。查找影響系統(tǒng)性能的瓶頸;
4)WDM Guru:用于波分復(fù)用光纖網(wǎng)絡(luò)的分析,評測。OPNET主要特點(diǎn)包括:
1)有限狀態(tài)機(jī);2)對協(xié)議編程的全面支持;3)層次化的網(wǎng)絡(luò)模型;4)高效的仿真引擎;5)集成的分析工具;6)系統(tǒng)的完全開放性;7)集成調(diào)試器;8)動畫。
QualNet[3]是一種應(yīng)用于無線、有線以及混合動態(tài)網(wǎng)絡(luò)的快速而且精確的開發(fā)、仿真系統(tǒng)。Scalable Network Technologies Inc.公司將美國加州大學(xué)洛杉磯分校(UCLA)開發(fā)的開放源代碼的GloMoSim成功地轉(zhuǎn)化為了商業(yè)版本——QualNet。目前已經(jīng)在世界范圍內(nèi)50多個國家和地區(qū)得到了推廣應(yīng)用。主要對無線移動通信網(wǎng)絡(luò)進(jìn)行了優(yōu)化處理,從仿真速度上得到了很大的提升,同時(shí)通過對無線信道和射頻技術(shù)的建模也保證了較高的仿真精度。允許用戶在真正的并行仿真環(huán)境當(dāng)中優(yōu)化并行仿真性能。對小規(guī)模同種復(fù)雜度的網(wǎng)絡(luò)模型仿真,QualNet仿真速度是其它仿真器的幾倍,對于大規(guī)模網(wǎng)絡(luò),QualNet仿真速度是其它仿真器的幾十倍,如果QualNet采用并行仿真機(jī)制,能達(dá)到比其它仿真器快千倍的速度。QualNet的協(xié)議模塊更加獨(dú)立,更加模塊化,可以方便屏蔽、增加、刪除某些協(xié)議模塊。支持TCP/IP協(xié)議棧的標(biāo)準(zhǔn)層間接口,用戶無需自己開發(fā)這種類型。
QualNet模型庫組件包括:
1)Developer Library:用于建模多種網(wǎng)絡(luò),包括 WAN,LAN,IPv6,衛(wèi)星庫與STK/Connect接口;
2)Wireless Library:包含802.lla/b/g和移動 AdHoc網(wǎng)絡(luò);
3)Multimedia and Enterprise Library:用于 WAN建模,VOIP,排隊(duì),調(diào)度,MPLS和其它QoS功能;
4)Advanced Wireless Library:用于802.16和802.16e,即所謂的 WIMAX;
5)Cellular Library:用于GSM蜂窩網(wǎng)建模;
6)Standard Interfaces Library:用于把軍用仿真器通過HLA或DIS接口集成到QualNet中;
7)Network Emulation Interface Library:用于 hardware,software,和human-in-the-loop的仿真模擬;
8)Military Radios Library:用于 Link11,Link-16,EPLRS和SINCGARS網(wǎng)絡(luò)建模;
9)Propagation Library:TIREM,用于基于 Terrain的地形及傳播效果建模;
10)Propagation Library:Urban,用于城市路徑缺失和地形建模;
NS[4]起源于1986年的Real Network Simulator項(xiàng)目,1995年在施樂公司(Xerox)的支持下加入美國DARPA支持的項(xiàng)目VINT(the Virtual InterNet Tested),是 VINT項(xiàng)目的基礎(chǔ)和核心部分。在不斷吸收世界各地研究者的成果過程中,NS從原始版本進(jìn)化到較成熟版本NS-2。NS-2是面向?qū)ο蟮?、離散事件驅(qū)動的網(wǎng)絡(luò)模擬器,由C++和Otcl語言編寫而成。它是一個完全免費(fèi)的軟件,具有開放的體系結(jié)構(gòu),并帶有大量協(xié)議庫支持,尤其適合于對基于TCP/IP的網(wǎng)絡(luò)進(jìn)行模擬,是進(jìn)行網(wǎng)絡(luò)模擬最流行的軟件之一,享有很高的學(xué)術(shù)聲譽(yù)。NS-2有多種平臺下的版本,包括UNIX,LINUX和Windows等。
NS-2仿真軟件是一個軟件包,包括Tcl/Tk、Otel、NS、Tclcl等組件,NS-2的特點(diǎn)包括:1)支持各種業(yè)務(wù)模型和多種通信協(xié)議;2)采用面向?qū)ο蠹夹g(shù);3)有很強(qiáng)的結(jié)果處理能力。
NS-3全稱是Network Simulator Version 3,它是一個極具特色的新型網(wǎng)絡(luò)模擬器,與其他網(wǎng)絡(luò)模擬器相比,NS-3在完備性、開源性、易用性和可擴(kuò)展性等方面的特色使得它優(yōu)于現(xiàn)有的大多數(shù)主流網(wǎng)絡(luò)模擬器。NS-3的功能極其強(qiáng)大,可以對各種網(wǎng)絡(luò)、各種協(xié)議、各個層次進(jìn)行模擬和研究,由于提供了靈活的擴(kuò)展支持,研究者可以根據(jù)自己的需要進(jìn)行任意的擴(kuò)展[5~7]。NS-3目前只提供了一些基本的功能模塊。
NS-3是一種面向?qū)ο蟮木W(wǎng)絡(luò)模擬器,它本質(zhì)是一個離散事件模擬器,其本身有一個虛擬時(shí)鐘,所有的模擬都有離散事件驅(qū)動。NS-3不是NS-2的擴(kuò)展,不支持NS-2的APIs。它使用C++模組化元件并直接用C++描述拓?fù)?。目前的NS-3與NS-2相比,模塊還少很多,但是將NS-2模塊移植過來的工作一直在穩(wěn)步進(jìn)行。另外,NS-3自身也有很多模塊正在開發(fā)中,主要有:仿真與實(shí)時(shí)調(diào)度模塊,同步Posix-like API,網(wǎng)絡(luò)模擬之源NSC的整合,可視化模塊,IPv6,實(shí)用應(yīng)用程序整合,并行模擬,統(tǒng)計(jì)分析模塊,Wimax模塊,水下聲學(xué)模塊等等[10]。
OMNET++(Objective Modular Network Testbed in C++的縮寫)是一個專門為大型網(wǎng)絡(luò)提供開源的、基于組件的、模塊化的開放網(wǎng)絡(luò)仿真平臺。OMNET++作為離散事件仿真器,具備強(qiáng)大完善的圖形界面接口和可嵌入式仿真內(nèi)核,可運(yùn)行于多個操作系統(tǒng)平臺,簡便定義網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu),具備方便快捷的編程、調(diào)試和跟蹤支持等功能。
OMNEST是OMNET++的一個商業(yè)版本。目前業(yè)內(nèi)唯一一款開放性最好的、運(yùn)算速度最快的基于離散事件仿真的商業(yè)軟件,能夠完全滿足客戶定制化需求,進(jìn)行任意的封裝、擴(kuò)展、集成和模塊化,內(nèi)核源碼和開發(fā)的代碼全部基于C++,面向?qū)ο蟮乃枷胧褂脩糨p松上手。
OMNEST可以廣泛的應(yīng)用于各種離散事件仿真:通信網(wǎng)絡(luò)通信協(xié)議、排隊(duì)網(wǎng)絡(luò)、電信網(wǎng)絡(luò)、衛(wèi)星通信網(wǎng)絡(luò)、海軍空軍數(shù)據(jù)鏈、傳感器網(wǎng)絡(luò)、陸軍的戰(zhàn)術(shù)通信網(wǎng)、電子對抗系統(tǒng)、硬件系統(tǒng)、……、任何其它適合應(yīng)用離散事件處理的仿真系統(tǒng)的建模和仿真。
GTNetS[9]全稱是 The Georgia Tech Network Simulator,是美國喬治亞工學(xué)院的Dr.George Riley領(lǐng)導(dǎo)的MANIACS研究小組開發(fā)的一款網(wǎng)絡(luò)模擬器,主要用于大中型網(wǎng)絡(luò)研究,包括對分布式模擬的支持(需要RTI Kit library)。
GTNetS是一個全特性的網(wǎng)絡(luò)模擬環(huán)境,其設(shè)計(jì)理念是創(chuàng)造一個完全近似于實(shí)際網(wǎng)路的模擬環(huán)境,使得模擬能夠準(zhǔn)確地反映真實(shí)網(wǎng)絡(luò)狀況并且方便代碼在模擬環(huán)境和實(shí)際環(huán)境間移植。在GTNetS中,協(xié)議棧各層之間有明確的界限。數(shù)據(jù)包Packets中包含一系列的協(xié)議數(shù)據(jù)單元PDUs,這些PDUs會隨著Packets在協(xié)議棧中的上下流動而被剝離或者添加。節(jié)點(diǎn)對象Node可以綁定多個網(wǎng)絡(luò)接口,每個接口又可以綁定一個IP地址和物理鏈路,這與現(xiàn)實(shí)環(huán)境中電腦+網(wǎng)卡的結(jié)構(gòu)十分相似。傳輸層協(xié)議對象采用一種與真實(shí)網(wǎng)絡(luò)協(xié)議(TCP)類似的方式與端口綁定,在傳輸層協(xié)議對象間通過源IP、源端口、目的IP、目的端口進(jìn)行連接。應(yīng)用層和傳輸層協(xié)議間的接口使用大家所熟悉的類UNIX sockets API進(jìn)行連接,應(yīng)用層可以承載多種協(xié)議對象,包括模擬的和真實(shí)的數(shù)據(jù)。
網(wǎng)絡(luò)仿真是分析、研究、設(shè)計(jì)和改善網(wǎng)絡(luò)性能必不可少的工具,它能幫助人們更確切、更詳細(xì)地分析網(wǎng)絡(luò)模型的功能。文章主要介紹了網(wǎng)絡(luò)仿真技術(shù)及仿真工具的基本情況,對了解、選擇網(wǎng)絡(luò)仿真系統(tǒng)具有實(shí)際參考價(jià)值。
[1]王波,周志偉.網(wǎng)絡(luò)模擬軟件NS2與OPNET的剖析比較[J].計(jì)算機(jī)系統(tǒng)應(yīng)用,2010,19(6).
[2]石懷偉,李明生,王少華.網(wǎng)絡(luò)仿真技術(shù)與OPNET應(yīng)用實(shí)踐[J].計(jì)算機(jī)系統(tǒng)應(yīng)用,2006.3.
[3]QualNet 4.5User’s Guide[EB/OL].http://www.qualnet.com/publications/documentation/.
[4]Varadhan K,F(xiàn)all K.The ns Manual[EB/OL].http://www.isi.edu/nsnam/ns/.
[5]Henderson T R,Lacage M,Riley G F.Network Simulations with the ns-3Simulator[C]//Proceedings of the ACM SIG COMM 08.Seattle,Washington:[s.n.],2008.
[6]Ns-3developers.ns-3Tutorial[EB/OL].2008-10-07.http://www.nsnam.org/docs/tutorial/index.html.
[7]Ns-3developers.ns-3Reference Manual[EB/OL].2008-10-07.http://www.nsnam.org/docs/manual.html.
[8]石為人,黃河,鮮曉東,等.OMNET++與NS2在無線傳感器網(wǎng)絡(luò)仿真中的比較研究[J].計(jì)算機(jī)科學(xué),2008,35(10).
[9]Riley G F.The Georgia Tech Network Simulator[C]//Proceedings of the ACM SIGCOMM 2003Workshops.NewYork,NY,USA:[s.n.],2003.
[10]Henderson T.ns-3tutorial slides[C]//Proceedings of the International Conference on Simulation Tools and Techniques 2008(Simutools 2008).Mercure Marseille,F(xiàn)rance:[s.n.],2008.