NS-3 Based Named Data Networking Simulator – ndnSIM2.0 Installation in Ubuntu 14.04

Used Operating System : Ubuntu 14.04

Install Required Dependencies :

sudo apt-get install python-software-properties
sudo add-apt-repository ppa:boost-latest/ppa
sudo apt-get update
sudo apt-get install libboost1.55-all-dev

If you want visualizer Module :
sudo apt-get install python-dev python-pygraphviz python-kiwi
sudo apt-get install python-pygoocanvas python-gnome2
sudo apt-get install python-rsvg ipython

Downloading ndnSIM:
mkdir ndnSIM
cd ndnSIM
git clone https://github.com/named-data/ndn-cxx.git ndn-cxx
git clone https://github.com/cawka/ns-3-dev-ndnSIM.git ns-3
git clone https://github.com/cawka/pybindgen.git pybindgen
git clone https://github.com/named-data/ndnSIM.git ns-3/src/ndnSIM

Compiling and running ndnSIM :

Compile and install ndn-cxx library:
cd ndnSIM/ndn-cxx
./waf configure –boost-libs=/usr/lib/x86_64-linux-gnu
After successful configuration you will see a window like this :

(click on the image to see the zoomed version)

ndnsim1

ndnsim2

During configuration, If you are facing a error like Cryptopp is not found, then do the following steps

Go to the link http://www.cryptopp.com/#download
Step 1 :Download the latest zip file . Current latest version is Crypto++ 5.6.2.

Step 2 :Go to the downloads folder,
mkidr cryptopp
cd cryptopp
unzip -a cryptopp562.zip

Step 3: Go to the path :/Downloads/cryptopp .There you will find a makefile named GNUmakefile.Open that file.
Uncomment the line “CXXFLAGS += -fPIC”.

Step 4: Make and Install: make static dynamic test PREFIX=/usr/local
If make is successful, you will see the following output:
> ls -al *.a
-rw-r–r– 1 user user 56069234 2010-09-07 01:14 libcryptopp.a
After the library successfully builds, run cryptest.exe v to validate the library.
> cryptest.exe v

Finally, install the library. By default, Crypto++ installs to /usr/include and /usr/lib. This must be done using root since files are written to /usr/bin, /usr/include, and /usr/lib. Note that make install does not copy the test vectors into /usr/bin. If your distribution does not support su, try issuing sudo make install.
> su –
Password:
cd …/cryptopp/
make install PREFIX=/usr/local

mkdir -p /usr/local/include/cryptopp /usr/local/lib /usr/local/bin
cp *.h /usr/local/include/cryptopp
cp *.a /usr/local/lib
cp *.so /usr/local/lib
cp *.exe /usr/local/bin

Compile NS-3 with ndnSIM module:
cd ns-3
./waf configure –disable-python –enable-examples
ndnsim3

./waf

ndnsim4

export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig
export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH

Simulating using ndnSIM:

To enable logging:
NS_LOG=ndn.Producer:ndn.Consumer ./waf –run=<scenario name>

To enable Visualizer:

If you have compiled with python bindings, then you can try to run these simulations with visualizer:

./waf –run=ndn-simple –vis

References :

(1) http://ndnsim.net/2.0/getting-started.html

(2) http://www.cryptopp.com/#download

(3) http://www.cryptopp.com/wiki/Linux

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s