Installing Network Simulator 2 in Ubuntu
Are you baffled by random errands saying “ ns2 doesn’t work on ubuntu “ and so ?
Are you a linux geek don’t wanna boot to windows for network simulator software ?
did your lab admin made a mess with your system in the name of installing ns2 :D ?
_then you are in a right place :) _
You can make NS working in your system by putting little effort on your ubuntu :)
Step 1:
Download network simulator software from here
if you prefer other old versions you can swich by viewing files in that page
the file will be of almost 57 MB
**Step 2: **
Extract the files to your own desired directory
I did in **/home/karthik/Desktop/ **
step 3:
now go to your working directory of ns2 by
cd /home/karthik/Desktop/ns-allinone-2.34
step 4:
Run this command to check any unresolved dependencies existing between installation
sudo apt-get install build-essential autoconf automake libxmu-dev
run the command ./install in terminal
it will take around 5 minutes
step 5:
Well Thats were your installation of ns2 exits :)
now you have to configure to make it alive
you have to edit in the shell
run gedit ~./bashrc
add at end of the file this lines
remember change /home/karthik/Desktop/ **to your file path say **/home/host-name/
** **
# LD_LIBRARY_PATH OTCL_LIB=/home/karthik/Desktop/ns-allinone-2.34/otcl-1.13 NS2_LIB=/home/karthik/Desktop/ns-allinone-2.34/lib X11_LIB=/usr/X11R6/lib USR_LOCAL_LIB=/usr/local/lib export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$OTCL_LIB:$NS2_LIB:$X11 LIB:$USR_LOCAL_LIB_
# TCL_LIBRARY TCL_LIB=/home/karthik/Desktop/ns-allinone-2.34/tcl8.4.18/library USR_LIB=/usr/lib export TCL_LIBRARY=$TCL_LIB:$USR_LIB
# PATH XGRAPH=/home/karthik/Desktop/ns-allinone-2.34/bin: /home/karthik/Desktop/ ns-allinone-2.34/tcl8.4.18/unix : /home/karthik/Desktop/ns-allinone-2.34/tk8.4.18/unix NS=/home/karthik/Desktop/ns-allinone-2.34/ns-2.34/ NAM=/home/karthik/Desktop/ns-allinone-2.34/nam-1.14/ PATH=$PATH:$XGRAPH:$NS:$NAM
now save the file and close it
run** source ~/.bashrc**
ignore if any errors ;)
then run** ./validate**
this is the longest step it takes 30-45 minutes hence you can have a meal during the course of time ;)
**step 6: **
this is editing thing ( optional )
just make links to the files in /home/karthik/Desktop/ns-allinone-2.34/bin ** by right click on all files and choose **make link
copy all and paste to **/usr/bin/ **directory by running
sudo nautilus
then** rename** the file name for eg) link to ns ** to **ns and so on . do this till all files are renamed .
**step 7: **
Sample code
now u can check out a demo to test you ns 2 by writing a sample code as below :
#Create a simulator object set ns [new Simulator]
#Open the nam trace file set nf [open out.nam w] $ns namtrace-all $nf
#Define a ‘finish’ procedure proc finish {} { global ns nf $ns flush-trace #Close the trace file close $nf #Execute nam on the trace file exec nam out.nam & exit 0 }
#Create two nodes set n0 [$ns node] set n1 [$ns node]
#Create a duplex link between the nodes $ns duplex-link $n0 $n1 1Mb 10ms DropTail
#Call the finish procedure after 5 seconds of simulation time $ns at 5.0 “finish”
#Run the simulation $ns run
now copy this code and paste to a file say myfirstprogram.tcl
then run ns myfirstprogram.tcl
you must see a window like this :
and … You did it , Enjoy :)