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 |