Monday, 24 August 2015

Installing ndnSIM on Ubuntu 15.04


The ndnSIM is NS-3 module that implements Named Data Networking (NDN) communication model, the clean slate Internet design. ndnSIM is specially optimized for simulation purposes and has a cleaner and more extensible internal structure comparing to the existing NDN implementation (NDNx).        - ndnSIM website

The steps for installation I followed from the ndnSIM website are as follows:


1. Boost library

Minimum version: 1.49
To check the version installed on your system do:
dpkg -s libboost-dev | grep 'Version'

If the version requirement is not satisfied, do the following:
sudo add-apt-repository ppa:boost-latest/ppa
sudo apt-get update
sudo apt-get install libboost-all-dev 

The version installed on mine is

2. ndn-cxx library

Add the NDN ppa repository and install ndn-cxx-dev
sudo add-apt-repository ppa:named-data/ppa
sudo apt-get update
sudo apt-get install ndn-cxx-dev

The following installations are optional:
sudo apt-get install doxygen graphviz python-sphinx python-pip
sudo pip install sphinxcontrib-doxylink sphinxcontrib-googleanalytics

3. For the visualizer

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

4. If not already installed, git

sudo apt-get install git

5. ndnSIM source download

mkdir ndnSIM
cd ndnSIM

git clone ns-3
git clone pybindgen

git clone --recursive ns-3/src/ndnSIM

6. Prerequisites for build

sudo apt-get install build-essential
sudo apt-get install libsqlite3-dev libcrypto++-dev

7. Compile and install ndn-cxx library

cd ndnSIM/ndn-cxx
./waf configure --enable-shared --disable-static
sudo ./waf install 
sudo ldconfig

8. Compile ns3 with ndnSIM module

cd <ns-3-folder>
./waf configure --enable-examples

9. Run your first example

./waf --run=ndn-simple --vis



  1. After following all above steps , I cantable to run first example in ndnSIM.
    can you please help me to solve error ??

    1. Sorry for the late reply... Can you post the exact error you got? If you were able to solve it by now, please post the solution as well. I will edit the blog accordingly.

  2. Thanks dude it worked for me..just one thing to add after step 7 please run > sudo ldconfig

    1. Thanks for the update... Glad it worked out...

  3. I am not able to Compile ns3 with ndnSIM module after following the commands you gave.
    plz help me out

    1. Please share the exact error that you are facing...

  4. when i try to configure ns3 with ndnSIM (step8)i have the following error : ImportError: No module named doxygen
    how can I fix it plz . thank you

    1. Try this:
      sudo apt-get install doxygen graphviz python-sphinx python-pip

    2. I am having the same problem. I have used the above command but it still says "No module named doxygen". Pls help.

  5. This comment has been removed by the author.

  6. The source downloading links have changed.. I have updated the dame above (Step 5). For the latest version clone these.

  7. what i need to install from beginning?

    I have window 8 and VMware installed on my system.

    Kindly guide me further.

  8. Hello
    can it work on Ubuntu 14.4.5 installed on VMware?

  9. hello
    i want to install ndnsim 1.0 version it possible to install ? to do this.........?
    because in this version l3-aggregate trace .cc there so .........
    please give me reply

  10. sir can u make video of ndnsim installation

  11. In the step seven, there is no directory that exists with the name ndncxx.There are two files, ns-3 and pybindgen.

  12. Dear Sir,

    We are thankful to your services about ndnsim.We are giving tips for ndnsim research scholars.Please use our links.


  13. Hello,
    I’ve been trying to run the examples in ndnsim and have followed the set of instruction here to install it.
    Everything gets successfully compiled and the modules are built including the visualizer but when I try to run ./waf run=ndn-simple –vis,
    the output isn’t visible. It gives me the following outputs. The python bindings and visualizer are all enabled during
    ./waf configure –enable-examples
    I just see a list of modules that are built and no errors or any output of the visualizer. The visualizer isn't launching.
    Can you help me with this ?

    1. I can share the exact situation via screenshots

  14. i had approached for my vanet research implementation using ndnsim with now the support is good.