Transcript Document
NS2 – Installation
Outline
Introduction
Install Cygwin
Install NS2
2
Introduction-NS2
The simulation network environment software
Wired
Wireless
Install NS2
Under UNIX
NS2
Under Windows
Cygwin + NS2
3
Install Cygwin
Cygwin 下載:http://cygwin.com/
4
Install Cygwin
執行所下載的 setup.exe
5
Install Cygwin
選擇安裝模式:Install from Internet
6
Install Cygwin
選擇所下載安裝檔案的暫存目錄
7
Install Cygwin
選擇 Internet 的連接方式
8
Install Cygwin
選擇下載地點:
9
Install Cygwin
選擇要安裝的軟體套件:選擇X11整個系列的套件
(Default -> Install)
10
Install Cygwin
切換目錄模式:點選 View 按鈕,顯示所有套件的
資訊(Category → Full)
11
Install Cygwin
利用搜尋的方式,選擇細部套件:套件 – gcc4、gcc、gcc-g++、gnuplot
、make、patch、perl、tar、 X11全裝、diffutils、gawk、tar、 gzip、
w32api(Skip -> X.X.X<軟體的版本>)
12
Install Cygwin
下載安裝中
13
Install Cygwin
安裝完成
14
Cygwin
開啟Cygwin,並確認有如下圖同表示成功安裝
帳號@電腦名稱
15
Download NS2
NS2 下載
http://www.isi.edu/nsnam/ns/ns-build.html#allinone
下載 ns-allinone-2.34.tar.gz
插入圖片
16
Install NS2
將下載的檔案存放於 “E:\cygwin\home\帳號” 目錄下,並且解壓縮至此
手動解壓縮 ns-allinone-2.34.tar.gz
輸入解壓縮指令tar zxvf ns-allinone-2.34.tar.gz
17
Edit file1
編輯tclUnixTime.c
ns-allinone-2.34\tcl8.4.18\unix\tclUnixTime.c
複製下面的內容加進去到tclUnixTime.c 程式碼檔
案的 #include標頭檔的下面
#ifndef TIMEZONE_DEFINED_
#define TIMEZONE_DEFINED_
struct timezone {
int tz_minuteswest;
int tz_dsttime;
};
#endif
18
Edit file2
編輯ns-linux-util.h
ns-allinone-2.34\ns-2.34\tcp\linux\ns-linux-util.h
18行~24行 增加此行#include <stdint.h>
#ifndef NS_LINUX_UTIL_H
#define NS_LINUX_UTIL_H
#include <stdlib.h>
#include <stdint.h>
#include "ns-linux-param.h"
extern struct tcp_congestion_ops tcp_reno;
19
Edit file2
47行~55行 刪除2行
#define s32 long
#define s64 long long
#define uint64_t u64
#define uint32_t u32
#define ktime_t s64
extern ktime_t net_invalid_timestamp();
extern int
ktime_equal(const ktime_t cmp1,const ktime_t cmp2);
20
Install NS2
切換至 ns-allinone-2.34目錄
cd ns-allinone-2.34
21
Install NS2
安裝 NS2
./install
22
Install NS2
在安裝的過程中,由於Cygwin沒有安裝 diff套件,
所以安裝程式會詢問要不要繼續,選擇 y 繼續安裝
23
Confirm Error
下圖為./install成功
24
Edit file3
在安裝完成後,在”E:\cygwin\home\帳號\.bashrc”檔案
的最下面,加入下列的環境變數
export NS_HOME=/home/帳號/ns-allinone-2.34
export PATH==$NS_HOME/nam1.15:$NS_HOME/tcl8.4.18/unix:$NS_HOME/tk8.4.18/unix:$NS_HOME/bin:$PATH
export
LD_LIBRARY_PATH=$NS_HOME/tcl8.4.18/unix:$NS_HOME/tk8.4.18/unix:$NS_H
OME/otcl1.13:$NS_HOME/lib:$LD_LIBRARY_PATH
export TCL_LIBRARY=$NS_HOME/tcl8.4.18/library
25
Dwonload dos2unix-5.3.1
上網下載此檔案dos2unix-5.3.1-win32.zip
建立目錄dos2unix
解壓縮到/ns-allinone-2.34/dos2unix
將.bashrc複製到dos2unix目錄下
cd ns-allinone-2.34/dos2unix
dos2unix .bashrc
dos2unix目錄下的.bashrc 複蓋回去原來的位置
*注意:重新編譯好的.bashrc 檔案大小比原來的小
26
Dwonload examples
http://www.isi.edu/nsnam/dist/
下載 ns-allinone-2.29 版本
解壓縮後,找到ns-tutorial資料夾複製到ns-allinone2.34/ns-2.34/底下
(如2.35版的無須下載範例)
27
Verify NS2
安裝驗證
cd ns-allinone-2.34/ns-2.34 ; ./validate
驗證非常耗時
28
Run example
執行範例
在命令列中輸入 startxwin 產生新視窗
29
Run example
執行範例(Cont.)
輸入 cd ns-allinone-2.34/ns-2.34/ns-tutorial/examples (2.34)
ns-allinone-2.35/ns-2.35/tcl/ex (2.35)
輸入
ns example2.tcl(2.34)
ns nam-example.tcl(2.35)
30
Result
執行範例(Cont.)
31
Reference
Cygwin
http://www.cygwin.com/
The Network Simulator - ns-2
http://www.isi.edu/nsnam/ns/
Running Ns and Nam Under Windows
9x/2000/XP Using Cygwin
http://www.sims.berkeley.edu/~christin/ns-cygwin.shtml
Learing NS Website
http://netlab.cse.yzu.edu.tw/ns2/ns2_website/
32