The Network Simulator - NS 2
From [1], Ns is a discrete event simulator targeted at networking research. Ns provides substantial support for simulation of TCP, routing, and multicast protocols over wired and wireless (local and satellite) networks.
- Home page: http://www.isi.edu/nsnam/ns/
- Wiki page: http://nsnam.isi.edu/nsnam/index.php/Main_Page
Contents
Configuration hints
To get the software running you must
- setup your system to compile the NS
- download the NS source
- compile the sources
- set up the user environment to run the NS
In the following are described these steps.
Ubuntu Linux installation
As root the commands are the following. To setup the linux machine:
name=ns useradd -c "ns, NS network simulator user, " \ -d /home/$name \ -g users \ -m -k /etc/skel \ -s /bin/bash \ $name passwd $name apt-get update; apt-get update apt-get dist-upgrade --show-upgraded apt-get install g++ gcc tk8.4 tcl8.4 libc6-dev \ libx11-dev libx11-dev xlibs-dev make
To install the software,
Logout and login as ns user, download the source code from http://sourceforge.net/projects/nsnam/.
You need the file ns-allinone-2.30.tgz or newer. Here are example steps:
cd mkdir ns cd ns wget http:/..../ns-allinone-2.30.tgz tar xzvf ns-allinone-2.30.tgz cd ns-allinone-2.30 # compile the software ./install.sh
At the end of this step the software should be compiled with no errors.
Environment setup
these command should be executed before running the ns.
NS_HOME=/home/ns/ns-allinone-2.30 export NS_HOME PATH=$PATH:$NS_HOME/bin export PATH
For example, you can put them into the file
.bashrc
Patch WiMax for ns 2.30
The WiMax patch is from http://ndsl.csie.cgu.edu.tw/wimax_ns2.php, this was for the 2.29 version, and we ported it to the 2.30 version.
Download the patch here: Media:ns2.30_wimax.tgz
patch installation instuctions
- uncompress the zipped file into the the ns2.30 directory
cd ..../ns2.30 tar xzvf ns2.30_wimax.tgz
- Makefile changes:
after the line containing mac/mac-802_3.o add these ones: mac/802_16/packet-802_16.o \ mac/802_16/timer-802_16.o \ mac/802_16/mac-802_16.o \ mac/802_16/traffic/UGS_traffic.o \ mac/802_16/traffic/ertPS_traffic.o \ mac/802_16/traffic/rtPS_traffic.o \ mac/802_16/traffic/nrtPS_traffic.o \ mac/802_16/traffic/BE_traffic.o \
- recompile the package with make