In this DIY we will learn how to install Network Simulator (NS)-2.35 in Ubuntu 12.04. If you found yourself here then I assume you already know about the NS, so I will skip the introduction part. And if you don't then you may want to follow this link.
Step 1: Setting up the Prerequisites
1. First of all, download Network Simulator (NS- 2.35) from here.I assume you have downloaded it into your '/home/user_name/Documents' directory.
2. Now we have to update the Ubuntu with its latest components. Open up a terminal and run these commands:
Make sure that your Ubuntu is fully updated ( i.e. there should be no pending updates in your Ubuntu Software Center and in Software Updater).
3. Before installing the NS we have to install some essential packages required by the NS. So run the following commands:
Step 2: Extract and Install NS
1. Extract the downloaded NS package either using the right click context menu "Extract here" or using the following command from a terminal:
2. Now its time to finally install the NS. Open up a terminal and move to the directory where you have extracted the package, in our case its ‘/home/user_name/Documents’ and install NS using the following command (image 1):
It will take around 15 minutes so have patience.
Step 3: Set the Environment Variables
1. Assuming everything went well in the previous step and you have successfully installed your NS. Now that NS is installed, there are some environment variables that need to be added to your profile. This can be done by editing the ".bashrc" file. Open a new terminal and open the file using:
NOTE: You may want to create a backup of the .bashrc before editing, the easiest way is to copy the file to a different location. Later you can replace the edited .bashrc with the copied one in case something goes sideways or if you want to remove the NS.
2. Add the following lines AT THE END of the file. Be sure to change "/path_to" to the path of where you have extracted the NS (e.g. '/home/user_name/Documents').
Save the file and restart the system, alternatively you can just reload the .bashrc as:
Step 4: Validate the Installation
You need to validate NS to check if everything is OK but keep in mind that it will take a lot of time (about 1:30 hrs). Open up a terminal and move to the directory '/home/user_name/Documents/ns-allinone-2.35/ns-2.35/' and run:
And That's it ! You can now run ns from a terminal window by executing: ns
If you received the "%" sign, it means that NS is running (image 2). Congratulations !!
* Uninstalling the NS
If you want to remove the NS from your system then follow these steps:
P.S.
Many people are getting the following error when they run the ns after the installation:
If you get this error then kindly ensure that you have set the path (as in step 3) correctly and try restarting the system. If the error persists then try running the ns from '/ns-allinone-2.35/ns-2.35/bin/'.
You can start working on NS now, the standard Marc Greis' tutorial on NS can be found here. Another tutorial is 'NS by example' by Jae Chung and Marc Claypool, and is available here.
Have Fun !!
— * — * — * — * —
Step 1: Setting up the Prerequisites
1. First of all, download Network Simulator (NS- 2.35) from here.I assume you have downloaded it into your '/home/user_name/Documents' directory.
2. Now we have to update the Ubuntu with its latest components. Open up a terminal and run these commands:
1 | sudo apt-get update |
2 | sudo apt-get dist-upgrade |
3 | sudo apt-get update |
Make sure that your Ubuntu is fully updated ( i.e. there should be no pending updates in your Ubuntu Software Center and in Software Updater).
3. Before installing the NS we have to install some essential packages required by the NS. So run the following commands:
1 | sudo apt-get install build-essential autoconf automake |
2 | sudo apt-get install tcl8.5-dev tk8.5-dev |
3 | sudo apt-get install perl xgraph libxt-dev libx11-dev libxmu-dev |
Step 2: Extract and Install NS
1. Extract the downloaded NS package either using the right click context menu "Extract here" or using the following command from a terminal:
1 | cd /home/user_name/Documents |
2 | tar -xvzf ns-allinone-2.35.tar.gz |
2. Now its time to finally install the NS. Open up a terminal and move to the directory where you have extracted the package, in our case its ‘/home/user_name/Documents’ and install NS using the following command (image 1):
1 | cd /home/user_name/Documents/ns-allinone-2.35 |
2 | ./install |
It will take around 15 minutes so have patience.
Image 1. Installation in Progress. |
Step 3: Set the Environment Variables
1. Assuming everything went well in the previous step and you have successfully installed your NS. Now that NS is installed, there are some environment variables that need to be added to your profile. This can be done by editing the ".bashrc" file. Open a new terminal and open the file using:
1 | sudo gedit .bashrc |
NOTE: You may want to create a backup of the .bashrc before editing, the easiest way is to copy the file to a different location. Later you can replace the edited .bashrc with the copied one in case something goes sideways or if you want to remove the NS.
2. Add the following lines AT THE END of the file. Be sure to change "/path_to" to the path of where you have extracted the NS (e.g. '/home/user_name/Documents').
# LD_LIBRARY_PATH |
OTCL_LIB=/path_to/ns-allinone-2.35/otcl-1.14/ |
NS2_LIB=/path_to/ns-allinone-2.35/lib/ |
USR_Local_LIB=/usr/local/lib/ |
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$OTCL_LIB:$NS2_LIB:$USR_Local_LIB |
# TCL_LIBRARY |
TCL_LIB=/path_to/ns-allinone-2.35/tcl8.5.10/library/ |
USR_LIB=/usr/lib/ |
export TCL_LIBRARY=$TCL_LIBRARY:$TCL_LIB:$USR_LIB |
# PATH |
XGRAPH=/path_to/ns-allinone-2.35/xgraph-12.2/:/path_to/ns-allinone-2.35/bin/:/path_to/ns-allinone-2.35/tcl8.5.10/unix/:/path_to/ns-allinone-2.35/tk8.5.10/unix/ |
NS=/path_to/ns-allinone-2.35/ns-2.35/ |
NAM=/path_to/ns-allinone-2.35/nam-1.15/ |
export PATH=$PATH:$XGRAPH:$NS:$NAM |
Save the file and restart the system, alternatively you can just reload the .bashrc as:
1 | source ~/.bashrc |
Step 4: Validate the Installation
You need to validate NS to check if everything is OK but keep in mind that it will take a lot of time (about 1:30 hrs). Open up a terminal and move to the directory '/home/user_name/Documents/ns-allinone-2.35/ns-2.35/' and run:
1 | ./validate |
And That's it ! You can now run ns from a terminal window by executing: ns
If you received the "%" sign, it means that NS is running (image 2). Congratulations !!
Image 2. Installation Successful. |
* Uninstalling the NS
If you want to remove the NS from your system then follow these steps:
1 | Delete the directory 'ns-allinone-2.35'. |
2 | Delete the ns related files from '/user/local/bin'. |
3 | Edit the '.bashrc file' and remove the paths that you have added during the installation. |
4 | Restart the system and run following commands one by one: |
5 | sudo apt-get autoremove |
6 | sudo apt-get clean |
P.S.
Many people are getting the following error when they run the ns after the installation:
Image 3. Error: 'ns' is currently not installed. |
If you get this error then kindly ensure that you have set the path (as in step 3) correctly and try restarting the system. If the error persists then try running the ns from '/ns-allinone-2.35/ns-2.35/bin/'.
You can start working on NS now, the standard Marc Greis' tutorial on NS can be found here. Another tutorial is 'NS by example' by Jae Chung and Marc Claypool, and is available here.
Have Fun !!
— * — * — * — * —
excellent tutorial
ReplyDeleteam getting segmentation fault (core dumbed ) problem when am running NAM file .
ReplyDeleteany solution for my problem plz sort out my queries sir.
yuvasekar7@gmail.com
Kindly run the validation step as explained in step 4 to check whether you have installed the ns correctly. Also check your tcl for any non-terminated variable. If the problem still persists then copy the 'nam' file from your '/home/[username]/ns-allinone-2.35/nam-1.15' folder and paste it into '/usr/local/bin' folder. Goodluck :)
Deletethank you sir , i got solution of my project .
ReplyDeletei got quick reply from your website once again thank you sir
Glad to know that. Goodluck :)
DeleteI'm beginner in ubuntu. when I install n2 I get this:
ReplyDeleteg++ -o tcl2c++ tcl2c++.o
make: g++: Command not found
make: *** [tcl2c++] Error 127
tclcl-1.20 make failed! Exiting ...
can you help me to find a solution please !!
perfect tutorial
ReplyDeleteSir I have installed Ns2. It's working fine but when I trying to used from root by entering command sudo su and then going to the file which I want to run but terminal says Ns2 is not installed but normally it's working without rooting means without sudo su command. Please help me to resolve this query.
ReplyDeleteI have installed ns-2 on my ubuntu system but when i'm validating ns some of the test results difer from reference output.
ReplyDeletevalidate overall report: some tests failed:
./test-all-tcp ./test-all-testReno ./test-all-newreno ./test-all-sack ./test-all-tcpOptions ./test-all-tcpReset ./test-all-testReno-full ./test-all-testReno-bayfull ./test-all-sack-full ./test-all-tcp-init-win ./test-all-tcpVariants ./test-all-LimTransmit ./test-all-aimd ./test-all-rfc793edu ./test-all-rfc2581 ./test-all-rbp ./test-all-frto ./test-all-ecn ./test-all-ecn-ack ./test-all-ecn-full ./test-all-quickstart ./test-all-manual-routing ./test-all-red ./test-all-adaptive-red ./test-all-red-pd ./test-all-rio ./test-all-vq ./test-all-rem ./test-all-gk ./test-all-pi ./test-all-cbq ./test-all-schedule ./test-all-links ./test-all-oddBehaviors
to re-run a specific test, cd tcl/test; ./test-all-TEST-NAME
i am getting "ns make failed" error after ./install step :(
ReplyDeletei got the same error what to do
Deleteafter adding the lines and running the I got this error
ReplyDeletens2@ubuntu:~/Documents/ns-allinone-2.35$ source ~/.bashrc
LD_LIBRARY_PATH: command not found
Makefile:93: recipe for target 'mdart/mdart_adp.o' failed
ReplyDeletemake: *** [mdart/mdart_adp.o] Error 1
Ns make failed!
I got this error while installing
help needed...
ReplyDeleteAfter installing NS-2.35, the system generate error:
can' t find X includes
otcl-1.14 configuration failed! Existing....
i have already installed gcc-4.8.4 and g++-4.8.4 and reinstalled it but remains the same. I have tried a lot of patches but not successful yet.... please Guide and thanx in advance....