天天看點

NS2虛拟仿真環境搭建(Ubuntu 14.04)

一、基礎環境搭建

首先我們需要搭建系統環境

sudo apt-get install build-essential
sudo apt-get install tcl8.4 tcl8.4-dev tk8.4 tk8.4-dev
sduo apt-get install libxmu-dev libxmu-headers
           

其次下載下傳ns2.35,下載下傳位址: http://www.isi.edu/nsnam/ns/ns-build.html

NS2虛拟仿真環境搭建(Ubuntu 14.04)

将下載下傳的.tar.gz檔案複制到任意目錄下,比如我複制到/home下,解壓

tar -zxvf ns-allinone-2.35.tar.gz
           

解壓之後,

cd ns-allinone-2.35

進入該解壓目錄,然後直接運作

./install
           

注意:安裝過程可能遇到的問題:

例如:ns-2.35/linkstate中ls.h檔案出錯,我們可以根據提示,在erase函數前面加上this->,然後重新安裝,便可成功。

配置環境變量

sudo vim ~/.bashrc
           

在檔案中添加以下代碼:

export PATH="/home/wnt/ns-allinone-2.35/bin:/home/wnt/ns-allinone-2.35/tcl8.5.10/unix:/home/wnt/ns-allinone-2.35/tk8.5.10/unix:$PATH"
export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/home/wnt/ns-allinone-2.35/otcl-1.14:/home/wnt/ns-allinone-2.35/lib"
export TCL_LIBRARY="$TCL_LIBRARY:/home/wnt/ns-allinone-2.35/tcl8.5.10/library"
           

修改生效

source .bashrc 
           

如此,ns2的安裝完成。

二、安裝mUDP,mUdpSink,mTcpsink三個子產品

下載下傳位址mUDP、mUdpSink和mTcpSink

1、建立/ns-allinone-2.35/ns-2.35/measure檔案夾,把下載下傳的檔案放入其中。

NS2虛拟仿真環境搭建(Ubuntu 14.04)

2、修改/ns-allinone-2.31/ns-2.31/common/packet.h,把如下代碼段加入

struct hdr_cmn{}

中。

我加在

dir_t direction_;

後面

int frametype_;
double sendtime_;
unsigned int pkt_id_;
unsigned int frame_pkt_id_;
           

3、修改/ns-allinone-2.35/ns-2.35/中的Makefile和Makefile.in兩個檔案,把如下代碼段加入OBJ_CC中,我放在

xcp/xcpq.o xcp/xcp.o xcp/xcp-end-sys.o \

後面

measure/mtcpsink.o measure/mudp.o measure/mudpsink.o \
           

注意:Makefile中還需要修改

CCOPT = -O2 -Wall -Wno-write-strings

後面增加

-fpermissive

4、修改/ns-allinone-2.35/ns-2.35/tcl/lib/ns-default.tcl,把如下代碼段加入

Agent/Ping set packetSize_ 64

下一行。

Agent/mUDP set packetSize_ 1000
           

當然還要修改mudp.cc源檔案

将以下代碼

mUdpAgent::mUdpAgent() : id_(0), openfile(0)  
{  
        bind("packetSize_", &size_);  
       UdpAgent::UdpAgent();  
}  
           

改為

mUdpAgent::mUdpAgent() :UdpAgent(), id_(0), openfile(0)  
{  
        bind("packetSize_", &size_);  
}  
           

5、在/ns-allinone-2.35/ns-2.35目錄下依次執行

./configure

;

make clean

;

make

三個指令。

繼續閱讀