网络仿真软件性能比较
| 【導讀】網絡仿真技術是一種通過建立網絡設備和網絡鏈路的統計模型, 并模擬網絡流量的傳輸, 從而獲取網絡設計或優化所需要的網絡性能數據的仿真技術。由于仿真不是基于數學計算, 而是基于統計模型,因此,統計復用的隨機性被精確地再現。 |
?
網絡仿真技術是一種通過建立網絡設備和網絡鏈路的統計模型, 并模擬網絡流量的傳輸, 從而獲取網絡設計或優化所需要的網絡性能數據的仿真技術。由于仿真不是基于數學計算, 而是基于統計模型,因此,統計復用的隨機性被精確地再現。
網絡仿真技術具有以下特點:一, 全新的模擬實驗機理使其具有在高度復雜的網絡環境下得到高可信度結果的特點。二, 網絡仿真的預測功能是其他任何方法都無法比擬的;三,使用范圍廣, 既可以用于現有網絡的優化和擴容,也可以用于新網絡的設計,而且特別適用于中大型網絡的設計和優化;四,初期應用成本不高, 而且建好的網絡模型可以延續使用, 后期投資還會不斷下降。
OPNET
產品性能簡介:OPNET產品主要面向專業人士,幫助客戶進行網絡結構、設備和應用的設計、建設、分析和管理。OPNET的產品主要針對三類客戶,分成四個系列。三類客戶是指:網絡服務提供商;網絡設備制造商和一般企業。
四個系列產品核心包括:1.ServiceProviderGuru:面向網絡服務提供商的智能化網絡管理軟件。是OPNET公司的最新產品。2.OPNET Modeler:為技術人員(工程師)提供一個網絡技術和產品開發平臺。可以幫助他們設計和分析網絡、網絡設備和通信協議。3.ITGuru:幫助網絡專業人士預測和分析網絡和網絡應用的性能,診斷問題,查找影響系統性能的瓶頸,提出并驗證解決方案。 4.WDM Guru,用于波分復用光纖網絡的分析、評測。
我使用的是OPNET Modeler8.1,所以就它和其他的網絡仿真軟件進行比較。OPNET Technology公司的仿真軟件OPNET具有下面的突出特點,使其能夠滿足大型復雜網絡的仿真需要:
1.????? 提供三層建模機制,最底層為Process模型,以狀態機來描述協議;其次為Node模型,由相應的協議模型構成,反映設備特性;最上層為網絡模型。三層模型和實際的網絡、設備、協議層次完全對應,全面反映了網絡的相關特性;
2.????? 提供了一個比較齊全的的基本模型庫,包括:路由器、交換機、服務器、客戶機、ATM設備、DSL設備、ISDN設備等等;
3.????? 采用離散事件驅動的模擬機理(discrete event driven),與時間驅動相比,計算效率得到很大提高。
4.????? 采用混合建模機制,把基于包的分析方法和基于統計的數學建模方法結合起來,既可得到非常細節的模擬結果,也大大提高了仿真效率。
5.????? OPNET具有豐富的統計量收集和分析功能。它可以直接收集常用的各個網絡層次的性能統計參數,能夠方便地編制和輸出仿真報告。
6.????? 提供了和網管系統、流量監測系統的接口,能夠方便的利用現有的拓撲和流量數據建立仿真模型,同時還可對仿真結果進行驗證。
OPNET的缺點:
1.????? 價錢昂貴.OPNET的單使用者授權費超過2萬5千美金. 價格的因素使得盜版猖獗。
2.????? 學習的進入障礙很高,通過專門培訓而達到較為熟練程度至少需一個多月的時間.
3.????? 仿真網絡規模和流量很大時, 仿真的效率會降低。目前解決方法:采用分層的建模方法,匯聚網絡流量,簡化網絡模型;背景流量和前景流量相配合;流量比例壓縮方法;優化調整仿真參數設計;路由流量的簡化;結果分析;如何針對不同的統計參數,選擇合適的結果收集和處理方法。來源:(廣東省電信科學技術研究院)
4.????? 軟件所提供的模型庫是有限的,因此某些特殊網絡設備的建模必須依靠節點和過程層次的編程方能實現。(A.網絡仿真軟件提供的標準的結果參數,往往不能滿足實際用戶的全部需要,如果用戶需要收集網絡設備的某些特殊參數時,必須通過過程層次上的編程來收集自己感興趣的網絡參數。B.一般,廠家提供的網絡協議的模型都滯后于標準頒布之日數月甚至一年,如果急需使用廠家模型庫中沒有提供的新協議、新標準時,就只有通過編程的方法,開發自己的協議模型。C.對于大型網絡的仿真,有時需要根據實際情況,通過編程改變模型的某些特性來提高仿真計算效率。)涉及底層編程的網元建模具有較高的技術難度,因為需要對協議和標準及其實現的細節有深入的了解、并掌握網絡仿真軟件復雜的建模機理。因此,一般需要經過專門培訓的專業技術人員才能完成。編程的難度限制了OPNET的普及與推廣。此外,建立在OPNET上的仿真平臺當前無法脫離OPNET環境,也是OPNET的一個局限性。
5.????? OPNET對路由協議的仿真比較適合,但是對鏈路的仿真好想就只能通過Pipeline stage來做。例如有用戶試了把pipeline stage中radio的propagation delay model的傳輸速度(default值是光速)改為聲波在海水中的速度1500m/s,但是仿真出來的propagation delay結果居然沒太大的改變。而根據使用經驗matlab或者spw就比較合適做鏈路層的仿真。
NS (NETWORK SIMULATOR)簡介
NS是一個由UC Berkeley開發的用于仿真各種IP網絡的為主的優秀的仿真軟件。該軟件的開發最初是針對基于UNIX系統下的網絡設計和仿真而進行的。
Tcl(Tool Command Language)與Tk是安裝在UNIX/Linux環境下的兩個包,他們一起構成了一套開發系統應用程序和圖形用戶界面接口(GUI)應用程序的環境。Tk是Tcl在X Window環境下的擴展,它包含了Tcl的全部c庫函數,以及支持X Window的窗口,控件等c庫函數,為用戶開發圖形用戶界面提供了方便。
NS的設計實現了使用兩種程序設計語言,C++和Otcl。這兩種程序設計語言都是面向對象的。C++程序模塊的運行速度非常快,是強制類型的程序設計語言,容易實現精確的,復雜的算法,但是修改和發現,修正bug所花費的時間較長,因為它比較復雜。Otcl是腳本程序編寫語言,是無強制類型的,比較簡單,容易實現和修改,容易發現的修正bug,雖然它的運行速度和C++的模塊相比要慢很多。
NS的仿真原理-網絡組件。NSobject是所有基本網絡組件的父類它本身的父類是TclObject類。這個類的對象有一個基本功能,就是處理數據包(PACKET)。所有的基本網絡組件可以劃分為兩類,分類器(Classifier)和連接器(Connector)。它們都是NSobject、的直接子類,也是所有基本網絡組件的父類。分類器的派生類組件對象包括地址分類器和多播分類器等。連接器的派生類組件對象包括隊列,延遲,各種代理,和追蹤對象類。應用程序是建立在傳輸代理上的應用程序的模擬。NS2中有兩種類型的“應用程序”,數據源發生器和模擬的應用程序。NS是離散事件驅動的網絡仿真器。它使用Event Scheduler對所有組件希望完成的工作和計劃該工作發生的時間進行列表和維護。
NS的工作平臺可以是Windows,Linux,Uinx,machitosh,還要求系統裝有C++編譯器。NS的工作流程:NS代碼使用OTCL語言編寫,通過OTCL語言解釋器解釋,使用NS仿真庫進行編譯和仿真,輸出仿真結果,根據仿真結果記錄,可進一步進行相關內容分析,生成網絡拓補圖或者得到數據的可視化的圖表。使用輔助的NAM工具,在NS中可以清晰顯示網絡拓補圖,使用X Graph工具,可以將NS的仿真結果用圖表形式表示,
NS設計的出發點是基于網絡仿真,它集成了多種網絡協議,業務類型,路由排隊管理機制,路由算法。此外,NS還集成了組播業務和應用于局域網仿真有關的部分、MAC層協議。其仿真主要針對路由層,傳輸層,數據鏈路層展開,因此NS可以進行對固定,無線,衛星以及混合等多種網絡的仿真。但它最適用于TCP層以上的模擬。NS的特點是源代碼公開;可擴展性強;速度和效率優勢明顯。
NS與OPNET優缺點比較:
1.????? OPNET與NS2的關系有點象windows和linux的關系。而它們也分別是在這兩個環境下(OPNET在win,NS2在linux)安裝使用最匹配。
2.????? OPNET是商業軟件,所以界面非常好。功能上很強大,界面錯落有致,統一嚴格。操作也很方便,對節點的修改主要就是對其屬性的修改。是優點也是其缺點,如果你需要特殊的節點或很適合自己的節點就不如NS2方便。同時,由于是商業軟件所以版本推出不如NS2快。
3.????? NS2是自由軟件,免費,這是與OPNET相比最大的優勢,因此它的普及度較高,是OPNET強有力的競爭對手。
4.????? NS2界面不如OPNET,雖然功能也很強大,但有很多零散的東西,剛學的時候很麻煩,不容易上手。操作上比較方便,但由于不是同一公司開發的,所以格式上不是很統一,說明手冊的條理也不是很好。沒有現成的節點什么的你可以自己用C++編,可以按照自己的意圖來構造你想要的節點。
MATLAB軟件
MATLAB軟件是由美國Mathworks公司推出的用于數值計算和圖形處理的科學計算系統環境。MATLAB是英文MATrix LABoratory(短陣實驗室)的縮寫。在MATLAB環境下,用戶可以集成地進行程序設計、數值計算、圖形繪制、輸入輸出、文件管理等各項操作。 MATLAB提供了一個人機交互的數學系統環境,該系統的基本數據結構是矩陣,在生成矩陳對象時,不要求作明確的維數說明。與利用c語言或FoRTRAN語言作數值計算的程序設計相比,利用MATLAB可以節省大量的編程時間。
MATLAB的良好的開放性和運行的可靠性使原先控制領域里的封閉式軟件包(如英國的UMIST,瑞典的LUND和SIMNON,德國的KEDDC)紛紛淘汰,而改以MATLAB為平臺加以重建。
MathWorks公司于2001年推出MATLAB6.0版本,6.x版在繼承和發展其原有的數值計算和圖形可視能力的同時,出現了以下幾個重要變化:(1)推出了SIMULINK。這是一個交互式操作的動態系統建模、仿真、分析集成環境。它的出現使人們有可能考慮許多以前不得不做簡化假設的非線性因素、隨機因素,從而大大提高了人們對非線性、隨機動態系統的認知能力。(2)開發了與外部進行直接數據交換的組件,打通了MATLAB進行實時數據分析、處理和硬件開發的道路。(3)推出了符號計算工具包。1993年MathWorks公司從加拿大滑鐵盧大學購得Maple的使用權,以Maple為“引擎”開發了Symbolic Math Toolbox 1.0。MathWorks公司此舉加快結束了國際上數值計算、符號計算孰優孰劣的長期爭論,促成了兩種計算的互補發展新時代。(4)構作了Notebook 。MathWorks公司瞄準應用范圍最廣的Word ,運用DDE和OLE,實現了MATLAB與Word的無縫連接,從而為專業科技工作者創造了融科學計算、圖形可視、文字處理于一體的高水準環境。
MTALAB系統由五個主要部分組成,下面分別加以介紹。 (1)MATALB語言體系MATLAB是高層次的矩陣/數組語言.具有條件控制、函數調用、數據結構、輸入輸出、面向對象等程序語言特性。利用它既可以進行小規模端程,完成算法設計和算法實驗的基本任務,也可以進行大規模編程,開發復雜的應用程序。 (2)MATLAB工作環境 這是對MA丁LAB提供給用戶使用的管理功能的總稱.包括管理工作空間中的變量據輸入輸出的方式和方法,以及開發、調試、管理M文件的各種工具。 (3)圖形句相系統 這是MATLAB圖形系統的基礎,包括完成2D和3D數據圖示、圖像處理、動畫生成、圖形顯示等功能的高層MATLAB命令,也包括用戶對圖形圖像等對象進行特性控制的低層MATLAB命令,以及開發GUI應用程序的各種工具。 (4)MATLAB數學函數庫這是對MATLAB使用的各種數學算法的總稱.包括各種初等函數的算法,也包括矩陣運算、矩陣分析等高層次數學算法。 (5)MATLAB應用程序接口(API) 這是MATLAB為用戶提供的一個函數庫,使得用戶能夠在MATLAB環境中使用c程序或FORTRAN程序,包括從MATLAB中調用于程序(動態鏈接),讀寫MAT文件的功能。 可以看出MATLAB是一個功能十分強大的系統,是集數值計算、圖形管理、程序開發為一體的環境。除此之外,MA丁LAB還具有根強的功能擴展能力,與它的主系統一起,可以配備各種各樣的工具箱,以完成一些特定的任務。
在國際學術界,MATLAB已經被確認為準確、可靠的科學計算標準軟件。在許多國際一流學術刊物上,(尤其是信息科學刊物),都可以看到MATLAB的應用。 在設計研究單位和工業部門,MATLAB被認作進行高效研究、開發的首選軟件工具。如美國National Instruments公司信號測量、分析軟件LabVIEW,Cadence公司信號和通信分析設計軟件SPW等,或者直接建筑在MATLAB之上,或者以MATLAB為主要支撐。又如HP公司的VXI硬件,TM公司的DSP,Gage公司的各種硬卡、儀器等都接受MATLAB的支持。
MATLAB的缺點:
1.????? MATLAB的缺點是它和其他高級程序相比,程序的執行速度較慢。由于MATLAB的程序不用編譯等預處理,也不生成可執行文件,程序為解釋執行,所以速度較慢。
2.????? MATLAB另一個缺點是不能實現端口操作和實時控制,但結合C++Builder運用,實現優勢互補就可以克服這一缺點。
3.????? MATLAB還有一個缺點就是這個軟件太大,按現在流行的版本5.2,自身有400多兆,占硬盤空間近1個G,一般稍早些的計算機都安裝不下。
價格:在網上,MATLAB 6.5.1正版軟件1900人民幣可以買到。
其他仿真軟件
CASSAP仿真軟件
對于設計擴頻數字移動通信這樣復雜龐大的系統,依靠過去傳統的設計方法是無法完成的,美國Synopsys(新思科技)公司提供的設計工具cossap能幫助設計人員在算法概念級建立一個系統模型,可定義并可隨時改變系統的參數,模擬系統信號處理流程來研究系統的算法性能、指標。COSSAP的設計思想為自頂向下(Top—Down)的設計方法,即先進行系統性能分析、算法分析,再進行硬件、軟件劃分、設計,最后將軟、硬件合并、仿真、調測、驗證之后,才能完成系統設計
CASSAP為數字信號處理系統的開發者提供了一個最有效的仿真工具,使工程師在概念、算法和體系結構層次完成算法仿真。其首創的數據流驅動仿真器比傳統的基于時鐘周期的仿真器速度提高了8-16倍。提供超過1000個高層模塊可作動態的數據流驅動仿真(支持異步、多速率),并可對其中所需模塊自動生成行為級或RTL級VHDL,用于ASIC/FPGA實現,也可生成各種風格的DSP代碼,供DSP處理器作軟件實現。CASSAP可廣泛應用于需分析和評估算法、實現方式的數字傳輸系統,如通訊、圖像、多媒體等,并提供了針對GSM、CDMA、DECT等標準的專用開發平臺。
SPW仿真軟件
SPW仿真軟件是Cadence公司的產品,提供面向電子系統的模塊化設計,仿真及實施環境,是進行算法開發,濾波器設計,C代碼生成,硬/軟件結構聯合設計和硬件綜合的理想環境。
SPW最出眾的地方就是和HDS的接口,和Matlab的接口。matlab里面的很多模型可 以直接調入SPW,然后用HDS生成C語言仿真代碼或者是HDL語言仿真代碼。也就是說,要是簡單行事的話,就可以直 接用matlab做個模型,然后就做到版圖中去。
可以說,SPW包括了Matlab的很多功能,連demo都有點象。。它的通常的應用領域包括無線和有線載波通信、多媒體和網絡設備。
總結
以上是生活随笔為你收集整理的网络仿真软件性能比较的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: lr增强细节_LR和PS如何进行风光后期
- 下一篇: 使用SceneKit编写VR全景播放器