導航:首頁 > 網路共享 > ns2網路模擬軟體需要編程嗎

ns2網路模擬軟體需要編程嗎

發布時間:2024-03-14 14:16:44

如何用NS2模擬一個MESH網路

NS是Network Simulator的英文縮寫,字面翻譯即為網路模擬器,又稱網路模擬器.
NS2則是網路模擬器的第2版.
NS2是一款開放源代碼的網路模擬軟體,它也是目前網路研究領域應用最廣泛的網路模擬軟體之一.

畢業論文中剛好用到了這個軟體.在模擬完畢之後,花點時間來寫點入門級的東東.
1.在Linux下的安裝
申明:我的pc上安裝的是Ubuntu版本,個人用戶名為ryan
首先下載軟體包ns-allinone-2.31.tar.gz(目前最新版本).
具體步驟如下:
(1)到自家目錄下確定軟體包的所在
ryan@Ubuntu:~$cd
ryan@Ubuntu:~$ls -l ns-allinone-2.31.tar.gz
(2)解壓軟體包,使用tar命令解壓為.gz結尾的軟體包
ryan@Ubuntu:~$tar zxf ns-allinone-2.31.tar.gz
zxf為解壓.gz專用參數,如果想看到解壓輸出的過程,也可以加上V,即用vzxf參數解壓,詳細的tar命令的參數
和使用方法可以參加linux的有關資料.
(3)運行安裝命令
ryan@Ubuntu:~$cd ns-allinone-2.31
ryan@Ubuntu:~/ns-allinone-2.31 $./install
執行./install命令後,會出現很多編譯過程的結果輸出,主要沒有錯誤信息並停止,不用去管它,不出意外,
等待一段時間後會正常退出到提示符.
(4)設置全局路徑變數
上一步的安裝成功後,最後輸出部分會提示你必須設置三個全局變數path,ld_library_path和tcl_library.
在自己的家目錄下編輯終端配置文件 .bashrc,注意要帶"."開頭, .bashrc是bash終端的配置文件,每次打開
一個終端窗口,該文件中的腳本就會自動運行.在Linux中它是隱藏文件,一般用ls命令看不出來,沒關系,採用
vi命令編輯該文件:
ryan@Ubuntu:~$cd
ryan@Ubuntu:~$vi .bashrc
將游標移動到文件的最後一行,按"ins"鍵進行插入,在此文件中添加一下三行:
export path=$path:~/ns-allinone-2.31/bin:/home/ryan/ns-allinone-2.31/tcl8.4.13/unix
export ld_library_path=$ld_library_path:/home/ryan/ns-allinone-2.31/otcl-1.12:/home/ryan/ns-allinone-2.30/lib
export tcl_library=$tcl_library:/home/ryan/ns-allinone-2.31/tcl.4.13/library
編輯完成後,按"esc"鍵退出插入模式,再按":wq"存檔退出.
重新打開新的終端,腳本運行生效.
(5)簡單測試
重新打開新的終端,環境變數的設置才會生效,如果.bashrc文件中有什麼錯誤,這時在新開的終端中會有提示信息
顯示出來.如果沒有錯誤,則在終端提示符下輸入ns命令進行測試.操作步驟如下:
A)打開一個新的終端
B)輸入ns並回車
ryan@Ubuntu:~ns
C)輸入一段測試用的tcl腳本代碼進行測試
%puts "hello world"回車
如下所示顯示則表示安裝成功.
hello world
%
2.如何快速入門
ns中兩個語言是c++和tcl,所以懂得這兩種語言的語法是入門的關鍵.
c++我就不多說了,很多關於這方面的書籍,而且個人覺得作為一名計算機專業的學生,學好c++是根本吧.
只有tcl,感覺語法和網路編程語言php比較類似,個人以前用它開發過網站,感覺很熟悉,也容易理解.即使不懂,我感覺半天就可以上手.
這里還推薦一本書<ns和網路模擬>,主要看看第4,5,7章就ok了,最後分析數據的時候再看看第6章.
在自己動手之前,認真研究mflood的例子,這是一個原型的東西,看懂了基本就可以下一步了.如果以後遇到不懂的,可以重新回頭看.
3.如何開發,講講自己的經驗.
開發工具非常重要,本人採用eclipse作為開發工具,感覺非常好用.至於...安裝就不需要我講解了吧-_-#必要的插件是必須的.
用eclipse建立ns的工程,開發自己的源代碼(c++文件).基本就是.h和.cc文件的code,需要一定的c++基礎(ps:好久不寫代碼,犯了很多幼稚的錯誤)
調試c++代碼時,可以使用eclipse工具,非常方便,而且定位錯誤也准確,我想使用過這個平台的人都深有體會吧.
編譯通過之後,編寫tcl腳本,開始模擬測試...
ps:如果你的協議有邏輯錯誤,那我就無話可說了.
我的畢業論文做的是無線mesh網路的QoS組播路由協議,基於MAODV協議的改進,增加了QoS的參數約束!
全部協議實現共18個文件,代碼量在5k的樣子,開發時間為1個星期,後期模擬5*10個場景...效果滿意...

⑵ 網路模擬軟體的簡介

在這種情況下,模擬就成了最佳可供選擇的測試、評估和驗證手段之一。本文對當前若干主流網路模擬軟體進行了簡要介紹和評價,並對兩款主流的網路模擬軟體Opnet和NS2進行了用例對比分析,最後對各種網路模擬軟體進行了總結。網路模擬也被稱為網路模擬,因為對各種網路模擬過程來說,其中也有「模擬」的含義,即,網路模擬既可以取代真實的應用環境得出可靠的運行結果和數據,也可以模仿一個系統過程中的某些行為和特徵。顧名思義,網路模擬,就是用計算機程序對通信網路進行模型化,通過程序的運行模仿通信網路的運行過程。那麼,為什麼要進行通信網路的模擬呢?
在網路迅速膨脹的今天,網路研究人員一方面要不斷思考新的網路協議和演算法,為網路發展做前瞻性的基礎研究;另一方面也要研究如何利用和整合現有的資源,使網路達到最高效能。無論是哪一方面都需要對新的網路方案進行驗證和分析。進行網路技術的研究一般有以下3種手段: 模擬方法,應用網路模擬軟體建立所研究的網路系統的模擬模型,在計算機上運行這個模型,並分析運行的輸出結果。

⑶ 我的電腦是win7家庭普通版,想要使用NS2網路模擬器模擬

(一)准備工作
NS2(Network Simulator 2)必須在UNIX/Linux平台下運行,因此一般需要安裝UNIX/Linux 操作系統。若要在Windows下使用NS可以採用Windows+虛擬機(VMware、Virtual PC)+NS組合的方式,或者是Windows+Cygwin(一個模擬的Linux平台)+NS組合的方式。目前Windows的使用較為普遍,因此本文主要介紹Windows+Cygwin(一個模擬的Linux平台)+NS的方式。
1.Cygwin
Cygwin是一個在Windows平台上運行的UNIX模擬環境,是Cygnus solutions公司開發的自由軟體。它對於學習UNIX/Linux操作環境,從UNIX到Windows的應用程序移植,以及進行某些特殊的開發工作,尤其是使用gnu工具集在Windows上進行嵌入式系統開發,非常有用。隨著嵌入式系統開發在國內日漸流行,越來越多的開發者對Cygwin產生了興趣。
Cygwin當初首先把gcc,gdb,gas等開發工具進行了改進,使他們能夠生成並解釋Win32的目標文件。然後,他們要把這些工具移植到Windows平台上去。一種方案是基於Win32 API對這些工具的源代碼進行大幅修改,這樣做顯然需要大量工作。因此,他們採取了一種不同的方法——他們寫了一個共享庫(就是Cygwin dll),把Win32 API中沒有的UNIX風格的調用(如fork,spawn,signals,select,sockets等)封裝在裡面,也就是說,他們基於Win32 API寫了一個UNIX系統庫的模擬層。這樣,只要把這些工具的源代碼和這個共享庫連接到一起,就可以使用UNIX主機上的交叉編譯器來生成可以在Windows平台上運行的工具集。以這些移植到Windows平台上的開發工具為基礎,Cygnus又逐步把其他的工具(幾乎不需要對源代碼進行修改,只需要修改他們的配置腳本)軟體移植到Windows上來。這樣,在Windows平台上運行bash和開發工具、用戶工具,感覺好像在Linux上工作。
目前國內的網站上有"在線安裝"和"本地安裝"兩種。兩者在本質上並沒有多少不同,只是Cygwin必須安裝特定的軟體包。默認的軟體包不夠用。在線安裝更夠更新Cygwin的的軟體包,可以減少安裝過程中的一些不必要的錯誤。因此,本文採用在線安裝,下面介紹一下安裝Cygwin的步驟:
1. 首先關閉殺毒軟體,否則可能會誤報病毒導致安裝失敗。
2. 從http://www.Cygwin.com/ 下載setup.exe在線安裝包。
3. 點擊setup.exe開始安裝,選擇」install from Internet」從網路上進行安裝,如圖

4. 對軟體包進行篩選,不需要的軟體包點擊「skip」,則會跳過該安裝包的安裝。如圖所示

必要軟體包是Cygwin用來生成並解釋Win32的目標文件,缺一不可。安裝過程也可以不點擊skip,則默認將所有軟體包都安裝,如果是系統允許,可建議這么做,避免有些必要的安裝包沒有選擇到,而出現錯誤。Cygwin必要的安裝包如下:

[plain] view plain
gcc
gcc-g++
gnuplot
make
patch
perl
tar
X-startup-scripts
xorg-x11-base
xorg-x11-bin
xorg-x11-devel
xorg-x11-bin-dlls
xorg-x11-bin-lndir
xorg-x11-etc
xorg-x11-fenc
xorg-x11-fnts
xorg-x11-libs-data

軟體包安裝成功後,點下一步,則安裝成功。
2.下載NS2源代碼

NS2存在很多版本,不同的版本存在不同的兼容性問題。例如:Ns2.28以後不再提供編譯好的可執行文件,因此需要自己編譯源碼,時間比較長;Ns2.29,2.30等較早版本存在兼容性問題,安裝後無法使用,需要打補丁或改源碼,操作難度較大,因此要選擇最新版本2.35,避免打補丁等操作。打開網址 http://www.isi.e/下載ns-allinone-2.35 安裝包。下載完後,解壓到c:\Cygwin\home\Administrator\ns-allinone-2.35。路徑要嚴格選擇對,否則使用過程中會出現問題。

(二)NS2編譯安裝

打開Cygwin terminal,切換到解壓的目錄cd/home/Administrator/ns-allinone-2.35
輸入./install安裝。此安裝過程很緩慢,因為是從源代碼進行編譯。
(注意:一定要關閉殺毒軟體!我發現金山毒霸會誤報病毒而導致編譯失敗)

安裝完成後,用 ultraedit 打開 c:\Cygwin\home\Administrator\.bashrc配置環境變數。
在文件的尾部添加如下代碼:

[plain] view plain
export
NS_HOME=/home/Administrator/ns-allinone-2.35
export
PATH=$NS_HOME/nam-1.15:$NS_HOME/tcl8.5.10/UNIX:$NS_HOME/tk8.5.10/UNIX:$NS_HOME/bin:$PATH
export
LD_LIBRARY_PATH=$NS_HOME/tcl8.5.10/UNIX:$NS_HOME/tk8.5.10/UNIX:$NS_HOME/otcl-1.14:$NS_HOME/lib:$LD_LIBRARY_PATH
export
TCL_LIBRARY=$NS_HOME/tcl8.5.10/library

使用UtraEdit而不要使用記事本,因為是UNIX文本,刪除不必要的空格和回車;環境變數之間要用冒號分隔,而不是分號。
2、必須在Cygwin 下運行 source .bashrc使環境變數生效。
3、環境變數生效後,輸入startxwin啟動Cygwin的xwindow界面,只有xwindow界面才可以運行NS模擬,否則會出錯。如圖所示:

4、切換到需要使用的TCL文件目錄。輸入ns [file-name].tcl啟動模擬。可以使用自帶的example2.tcl進行測試,如果配置成功

閱讀全文

與ns2網路模擬軟體需要編程嗎相關的資料

熱點內容
路由器ap網路插哪個口 瀏覽:633
移動網路手機接入點代理怎麼設置 瀏覽:494
網路寫文章哪裡找 瀏覽:684
懷化整合營銷網路推廣怎麼做 瀏覽:849
無線網路組網有哪些 瀏覽:840
聯想電腦網路連上後自己斷開了 瀏覽:588
東莞幹部網路學院登錄密碼 瀏覽:655
網路安全學院網課 瀏覽:387
網路電視無線網密碼改了怎麼辦 瀏覽:753
有線網路安全服務 瀏覽:676
路由器的網路怎麼看 瀏覽:284
如何讓自己的網路提升十倍以上 瀏覽:876
光貓橋接後電腦無法連接網路 瀏覽:659
台式機沒有藍牙怎麼連接網路 瀏覽:465
違反網路安全行為 瀏覽:56
計算機網路二進制反碼算術 瀏覽:259
樓下網路怎麼弄路由器到樓上 瀏覽:369
g460無法啟動無線網路 瀏覽:98
榮耀八網路信號加強 瀏覽:642
網路智能軟體推廣怎麼樣 瀏覽:884

友情鏈接