FAQ

  • How does Mini-NDN work?

Mini-NDN’s principles of operation most heavily rely on the underlying Mininet code it relies on. Mininet uses a combination of limited containerization via network namespaces (which give processes isolated interfaces and routing tables) and emulated ethernet connections via veth connections. In practical terms, Mini-NDN ensures that processes running on distinct nodes will run seperately and without interfering with each other.

  • How does Mini-NDN apply link loss/delay/etc.?

Mini-NDN relies on Mininet’s code, which in turn uses the Linux tc utility on a stations’ virtualized interfaces to apply configurations known as qdiscs to these links. Note that these will only be applied on egress packets from a station where it’s applied. For more information on qdiscs and tc, view the information here.

  • Why use Mini-NDN rather than a simulator such as ndnSIM?

Mini-NDN is easier and faster to use because, rather than serving as a mathematical model of a network, it is instead running real NDN code on a real Linux kernel. This also means it’s quite useful for testing code changes, as it can more accurately test the interaction of software componenents.

Criteria

Mini-NDN

ndnSIM

Based On

Mininet

ns-3

Language

Python

C++

Library/Forwarder/Applications

Use system binaries (free to use any compatible versions)

Integrated (fixed release version)

Application language

C++ (ndn-cxx), CCL (ndn-cpp, PyNDN, ndn-js, jNDN)

C++ (ndn-cxx)

Simulation size

Medium - Large (cluster edition in development)

Large (can be parallelized using MPI)

Simulation time

Real time

Quick (depending on size/memory)

Porting real applications

Drop in

Changes required

Interactivity

Can interact directly with NFD, NLSR or Apps

Can show stats while running

Logs

May need to manually setup to collect

Available with tracer

Post processing scripts

Not available, users need to write their own

Available to use to process the logs

Other

Not yet supported (Wifi in development)

WiFi, LTE, etc available from ns-3