Mini-NDN Installing Instructions

What equipment will I need?

Basically, you'll need a laptop/desktop with a recent Linux distro (Ubuntu, Fedora). We recommend Ubuntu. For this guide, the Ubuntu 14.04 LTS was used. Also, note that you'll need administrative privileges in order to download and install extra packages and also to execute Mini-NDN.

Installing Mini-NDN

If you have all the dependencies (see sections below) installed simply clone this repository and run:

sudo ./install.sh -i

else if you don't have the dependencies, the following command will install them along with Mini-NDN:

sudo ./install.sh -a

else if you want to install the dependencies manually, follow the instructions below:

Installing NDN

Each node in Mini-NDN will run the official implementation of NDN. The following dependencies are needed:

Mini-NDN uses NFD, NLSR, and ndn-tools.

To install NFD: http://named-data.net/doc/NFD/current/INSTALL.html

To install NLSR: http://named-data.net/doc/NLSR/current/INSTALL.html

To install ndn-tools: https://github.com/named-data/ndn-tools

Installing Mininet

Mini-NDN is based on Mininet. To install Mininet:

First, clone Mininet from github:

git clone --depth 1 https://github.com/mininet/mininet.git

After Mininet source is on your system, run the following command to install Mininet core dependencies and Open vSwitch:

./util/install.sh -nv

To check if Mininet is working correctly, run this test:

sudo mn --test pingall

This will print out a series of statements that show the test setup and the results of the test. Look for Results: two-thirds of the way down where it will indicate the percentage of dropped packets. Your results should show "0% dropped (2/2 received)".

Installing Infoedit

Infoedit is used to edit configuration files such as NFD configuration file.

To install infoedit: https://github.com/NDN-Routing/infoedit

Verification

You can use these steps to verify your installation:

  1. Issue the command: sudo minindn --experiment=pingall --nPings=50
  2. When the mini-ndn> CLI prompt appears, the experiment has finished. On the Mini-NDN CLI, issue the command exit to exit the experiment.
  3. Issue the command: grep -c content /tmp/minindn/*/ping-data/*.txt. Each file should report a count of 50.
  4. Issue the command: grep -c timeout /tmp/minindn/*/ping-data/*.txt. Each file should report a count of 0.