2007年11月26日 星期一

NS2 2.31的安裝心得

因為需要用到NS2,目前可以下載的版本是ns2-2.31,然而網路上的安裝教學都只有到2.27,在成功的安裝2.31後,我就野人獻曝一下

事實上,我一開始是按照網路上的教學在windows下安裝ns2-2.27的,然而不得不說,在網路下安裝ns2實在是一件痛苦的過程,因為要先安裝Cygwin,而在安裝Cygwin時又要去手動選擇安裝一堆套件,因為Cygwin沒有select/install all之類的選項,而Cygwin又只提供Online Installer,也就是說,所有套件都是要在安裝時下載,而它的Installer在選擇從哪下載時,又不能使用文字選取,也就是說我雖然在學網下,我也知道NTU以及NCTU都在選單內,然而我只能使用眼睛在那一串長長的Ftp list中尋找這兩個Ftp site,然後,就等Cygwin安裝完

在經過一堆時間後,Cygwin終於安裝後,接下來終於要安裝NS2了,下載NS2後需要compile,在Cygwin下compile的速度只能說,慢!

不管如何,我Cygwin和Cygwin下的NS2安裝了好幾次(第一次應該是Cygwin的X-server沒有裝好,所以導致我NS2跑起來沒有畫面,之後又陸陸續續因為各種原因,裝的不是很順利)

而學弟的一席話點話點醒了我,之所以用cygwin是因為我主要的工作環境是在windows下

但是在windows下並不是只有cygwin一個solution

我最後採取了先裝VMWare,然後裝一個VMOS:RedHat FC6,然後在真正的Linux下安裝NS2

沒辦法,Cygwin實在太慢了,透過這樣的solution在linux下ns2 compile起來還蠻快的

而之所以要寫這一篇文章的原因是因為網路上的教學文章都只有教ns2 2.27的安裝,而這一次我裝的是2.31,有一些東西和2.27不同,因此我在這一篇寫出來,希望可以減低有幸看到這一篇文章的人的痛苦

NS2在Linux下的安裝和Windows下的Cygwin大同小異,網路上很多文章在教了,這裡稍微介紹一下就好,重點還是放在裝好之後的設定

以下的教學以Linux為主,Cygwin照表操課就好,而不管Linux還是Cygwin,你都必須要有一個裝好的Linux/Windows,若Linux不知道要安裝什麼module,則一開始安裝時選全部安裝即可,我裝的是FC6,算滿舊的,應該比FC6新的Linux都沒問題才對,Cygwin的部份請參考柯志亨老師的網頁

1.下載ns2 all at once到家目錄(home directory):ns-allinone-2.31.tar.gz (released Mar 10, 2007)
2.解開它,tar zxvf ns-allinone-2.31.tar.gz
3.安裝它,cd ns-allinone-2.31,./install(中間需要按y確定才會往下走)

ns2到這裡為止算安裝完成了,裝完後它會告訴你需要設定一些環境變數才能跑,因此你需要編輯.bashrc,若使用vi,則在bash下,vi ~/.bashrc,若欲使用linux dektop,則需顯示隱藏檔才能看得到.bashrc並編輯它,在# User specific aliases and functions這一行下面,加入以下這一段然後存檔
export NS_HOME=`pwd`/ns-allinone-2.31

export PATH=$NS_HOME/tcl8.4.14/unix:$NS_HOME/tk8.4.14/unix:$NS_HOME/bin:$NS_HOME/ns-2.31:$PATH

export LD_LIBRARY_PATH=$NS_HOME/tcl8.4.14/unix:$NS_HOME/tk8.4.14/unix:$NS_HOME/otcl-1.13:$NS_HOME/lib:$LD_LIBRARY_PATH

export TCL_LIBRARY=$NS_HOME/tcl8.4.14/library


到這為止若沒有意外NS2應該已經裝好了,在ns 2.27的教學中會讓你以測試一個example來判斷ns2是否裝好,然而,由於ns 2.31的結構有改變,2.31的example實在太多,而我在2.31的目錄中也找不到2.27的那個example,不過後來我在NS by Example上有找到一個example可以測試,下載回來後在bash裡面執行
ns ns-simple.tcl
若出現下面這個畫面表示NS2安裝成功了,可以開始把玩NS2了

沒有留言: