NS2(Network Simulator 2) 是一種針對網(wǎng)絡(luò)技術(shù)的源代碼公開的、免費的軟件模擬平臺,研究人員使用它可以很容易的進行網(wǎng)絡(luò)技術(shù)的開發(fā),而且發(fā)展到今天,它所包含的模塊幾乎涉及到了網(wǎng)絡(luò)技術(shù)的所有方面。所以,NS成了目前學術(shù)界廣泛使用的一種網(wǎng)絡(luò)模擬軟件。此外,NS也可作為一種輔助教學的工具,已被廣泛應用在了網(wǎng)絡(luò)技術(shù)的教學方面。因此,目前在學術(shù)界和教育界,有大量的人正在使用或試圖使用NS。本文介紹Windows平臺下NS2網(wǎng)絡(luò)仿真環(huán)境的搭建(使用Cygwin)。 (一)準備工作 NS2(Network Simulator 2)必須在UNIX/Linux平臺下運行,因此一般需要安裝UNIX/Linux 操作系統(tǒng)。若要在Windows下使用NS可以采用Windows+虛擬機(VMware、Virtual PC)+NS組合的方式,或者是Windows+Cygwin(一個模擬的Linux平臺)+NS組合的方式。目前Windows的使用較為普遍,因此本文主要介紹Windows+Cygwin(一個模擬的Linux平臺)+NS的方式。 1.CygwinCygwin是一個在Windows平臺上運行的UNIX模擬環(huán)境,是Cygnus solutions公司開發(fā)的自由軟件。它對于學習UNIX/Linux操作環(huán)境,從UNIX到Windows的應用程序移植,以及進行某些特殊的開發(fā)工作,尤其是使用gnu工具集在Windows上進行嵌入式系統(tǒng)開發(fā),非常有用。隨著嵌入式系統(tǒng)開發(fā)在國內(nèi)日漸流行,越來越多的開發(fā)者對Cygwin產(chǎn)生了興趣。 Cygwin當初首先把gcc,gdb,gas等開發(fā)工具進行了改進,使他們能夠生成并解釋Win32的目標文件。然后,他們要把這些工具移植到Windows平臺上去。一種方案是基于Win32 API對這些工具的源代碼進行大幅修改,這樣做顯然需要大量工作。因此,他們采取了一種不同的方法——他們寫了一個共享庫(就是Cygwin dll),把Win32 API中沒有的UNIX風格的調(diào)用(如fork,spawn,signals,select,sockets等)封裝在里面,也就是說,他們基于Win32 API寫了一個UNIX系統(tǒng)庫的模擬層。這樣,只要把這些工具的源代碼和這個共享庫連接到一起,就可以使用UNIX主機上的交叉編譯器來生成可以在Windows平臺上運行的工具集。以這些移植到Windows平臺上的開發(fā)工具為基礎(chǔ),Cygnus又逐步把其他的工具(幾乎不需要對源代碼進行修改,只需要修改他們的配置腳本)軟件移植到Windows上來。這樣,在Windows平臺上運行bash和開發(fā)工具、用戶工具,感覺好像在Linux上工作。 目前國內(nèi)的網(wǎng)站上有"在線安裝"和"本地安裝"兩種。兩者在本質(zhì)上并沒有多少不同,只是Cygwin必須安裝特定的軟件包。默認的軟件包不夠用。在線安裝更夠更新Cygwin的的軟件包,可以減少安裝過程中的一些不必要的錯誤。因此,本文采用在線安裝,下面介紹一下安裝Cygwin的步驟: 1. 首先關(guān)閉殺毒軟件,否則可能會誤報病毒導致安裝失敗。 2. 從http://www.Cygwin.com/ 下載setup.exe在線安裝包。 3. 點擊setup.exe開始安裝,選擇”install from Internet”從網(wǎng)絡(luò)上進行安裝,如圖 4. 對軟件包進行篩選,不需要的軟件包點擊“skip”,則會跳過該安裝包的安裝。如圖所示 必要軟件包是Cygwin用來生成并解釋Win32的目標文件,缺一不可。安裝過程也可以不點擊skip,則默認將所有軟件包都安裝,如果是系統(tǒng)允許,可建議這么做,避免有些必要的安裝包沒有選擇到,而出現(xiàn)錯誤。Cygwin必要的安裝包如下:
軟件包安裝成功后,點下一步,則安裝成功。 2.下載NS2源代碼
NS2存在很多版本,不同的版本存在不同的兼容性問題。例如:Ns2.28以后不再提供編譯好的可執(zhí)行文件,因此需要自己編譯源碼,時間比較長;Ns2.29,2.30等較早版本存在兼容性問題,安裝后無法使用,需要打補丁或改源碼,操作難度較大,因此要選擇最新版本2.35,避免打補丁等操作。打開網(wǎng)址 http://www./下載ns-allinone-2.35 安裝包。下載完后,解壓到c:\Cygwin\home\Administrator\ns-allinone-2.35。路徑要嚴格選擇對,否則使用過程中會出現(xiàn)問題。打開Cygwin terminal,切換到解壓的目錄cd/home/Administrator/ns-allinone-2.35 輸入./install安裝。此安裝過程很緩慢,因為是從源代碼進行編譯。 (注意:一定要關(guān)閉殺毒軟件!我發(fā)現(xiàn)金山毒霸會誤報病毒而導致編譯失?。?br> 安裝完成后,用 ultraedit 打開 c:\Cygwin\home\Administrator\.bashrc配置環(huán)境變量。 在文件的尾部添加如下代碼:
使用UtraEdit而不要使用記事本,因為是UNIX文本,刪除不必要的空格和回車;環(huán)境變量之間要用冒號分隔,而不是分號。 2、必須在Cygwin 下運行 source .bashrc使環(huán)境變量生效。 3、環(huán)境變量生效后,輸入startxwin啟動Cygwin的xwindow界面,只有xwindow界面才可以運行NS仿真,否則會出錯。如圖所示: 4、切換到需要使用的TCL文件目錄。輸入ns [file-name].tcl啟動模擬??梢允褂米詭У膃xample2.tcl進行測試,如果配置成功,會出現(xiàn)如圖界面: |
|