Release 2.0

Overview

ndnSIM 2.0 is a new release of NS-3 based Named Data Networking (NDN)
simulator that went through extensive refactoring and rewriting. The key
new features of the new version:

-   ndnSIM no longer re-implements basic NDN primitives and directly
    uses implementation from ndn-cxx library (NDN C++ library with
    eXperimental eXtensions).

-   All NDN forwarding and management is implemented directly using
    source code of Named Data Networking Forwarding Daemon (NFD). The
    current code is based on a22a2172611b1cb93b2e2f53d9d5da122b384f3e
    commit of NFD repository.

Note RIB Manager is not yet available in ndnSIM.

-   Packet format changed to the NDN packet format.

-   Code style changes to conform to ndn-cxx Code Style and Coding
    Guidelines This change also includes renaming of the header and
    source files: *.h -> *.hpp, *.cc -> *.cpp

-   ndnSIM now uses C++11.

New Features

-   Integration with NFD codebase:
-   A realistic behavior is added to the simulations.
-   Forwarding plane extensions can be used in both ndnSIM simulations
    and real NFD deployment.
-   Per namespace forwarding strategies for different namespaces (one
    strategy per namespace).
-   New examples:
-   ndn-load-balancer
-   ndn-grid-multiple-strategies
-   ndn-different-strategy-per-prefix
-   Basic examples using python bindings: ndn-simple.py and ndn-grid.py
-   Use of the the full-featured NDN packet format.
-   Full-featured support for Interest selectors.
-   Full-featured crypto operations can be simulated (disabled by
    default).
-   FibHelper to manage FIB entries.
-   StrategyChoiceHelper to manage per-namespace forwarding strategy
    selection.

Changes

-   HopCount tracing now includes only one way network-level hop count
    (e.g., the number of physical links traversed by a packet).
    Previously, this tracing was round-trip and included applications
    hops.
-   Python bindings have changed and, due to limitations of pybindgen,
    currently cover a smaller subset of C++ code (Task #2341).
-   LinkControlHelper now uses ErrorRate to simulate link
    failure/recovery. Previously it was relying on Up/Down flag on NDN
    level.
-   The Face abstraction of NFD is now used.

Bug fixes

-   Fix processing files with customized LossRate or Queue model in
    AnnotatedTopologyReader Bug #2354.

Removals

-   PyNDN emulation
-   (temporarily) ApiFace. Will be replaced with emulation of ndn-cxx
    ndn::Face in future releases (Issue #2370).
-   (temporarily) UdpFace, TcpFace (Issue #2371).
-   Limits, LimitsWindow, LimitsRate.
-   PIT, FIB with "replacement" policies.
-   Old deprecated packet formats.
  1. 963621b docs: Add release notes and final documentation corrections by Alexander Afanasyev · 9 years ago ndnSIM-2.0
  2. 47a6092 docs: Correction of name spelling by Spyridon Mastorakis · 9 years ago
  3. a149775 docs: Extend list of research papers that use ndnSIM by Alexander Afanasyev · 9 years ago
  4. 460f57c docs: Documentation update by Spyridon Mastorakis · 10 years ago
  5. 60a7b62 docs: Updating copyright notices in files by Alexander Afanasyev · 10 years ago
  6. eb7d530 bindings: Removing all automatically generated bindings by Alexander Afanasyev · 10 years ago
  7. be55cf6 src: Updating code style to conform (more or less) to ndn-cxx style by Alexander Afanasyev · 10 years ago
  8. 76f8f65 src: Renaming files according to ndn-cxx naming convention by Alexander Afanasyev · 10 years ago
  9. a8e339c docs: Update by Alexander Afanasyev · 10 years ago
  10. 4597741 docs: Adding explanation of columns in trace files by Alexander Afanasyev · 10 years ago
  11. b42619d docs: Adding documentation item about ndn::cs::Nocache content store by Alexander Afanasyev · 10 years ago
  12. 4e30a8f docs: Typo correction by Alexander Afanasyev · 11 years ago
  13. dc794a3 model: Remove assert in fib::Entry::UpdateFaceRtt and fib::Entry::UpdateStatus by Alexander Afanasyev · 11 years ago
  14. f5a0bf2 docs: Small update by Alexander Afanasyev · 11 years ago
  15. 6283f30 docs: Another small addition by Alexander Afanasyev · 11 years ago
  16. d16b50c docs: Another small update by Alexander Afanasyev · 11 years ago
  17. 819eb77 docs: Small update and bugfix by Alexander Afanasyev · 11 years ago
  18. 9ab7d67 docs: Documentation update and returning requirement of boost 1.48 by Alexander Afanasyev · 11 years ago
  19. fc9d9e1 docs: Documentation update by Alexander Afanasyev · 11 years ago
  20. f34fe56 docs: Redesigned the index page of the ndnSIM website by Alexander Afanasyev · 11 years ago
  21. 3fe94dc utils/tracers: Modifying (simplifying) interface for ndnSIM tracers by Alexander Afanasyev · 11 years ago
  22. 772f51b src: Global renaming ContentObject -> Data by Alexander Afanasyev · 11 years ago
  23. e63a7c1 docs: Adding one more research paper by Alexander Afanasyev · 11 years ago
  24. 7920651 docs: Update documentation and Doxygen documentation generation by Alexander Afanasyev · 11 years ago
  25. a79df57 docs: Fixing typo by Alexander Afanasyev · 11 years ago
  26. 0fb80b9 helper+docs+examples: New helper to simplify link failing by Alexander Afanasyev · 11 years ago
  27. 6ed9f50 docs: Adding another research paper to the list by Alexander Afanasyev · 11 years ago
  28. abb493a model: Enabling serialization/deserialization of Exclude filter in ndnSIM wire format by Alexander Afanasyev · 11 years ago
  29. 3fba288 docs: Update list of research papers that use ndnSIM by Alexander Afanasyev · 11 years ago
  30. 2230d86 docs: Extending list of research papers by Alexander Afanasyev · 11 years ago v0.4.2
  31. e6bf47e Slight update of packet format: adding overall packet length to the by Alexander Afanasyev · 11 years ago
  32. b70a6c5 doc: Small update with packet format description by Alexander Afanasyev · 11 years ago
  33. 4cd50e3 docs: Adding research papers section to ndnSIM website by Alexander Afanasyev · 11 years ago
  34. b5e77d8 examples+docs: Adding a new example to print out instantaneous PIT sizes periodically by Alexander Afanasyev · 11 years ago
  35. 9fb2e3d docs: Small update of the documentation by Alexander Afanasyev · 11 years ago
  36. 701e508 docs: Adding google mirrors and new section referring to the recommended way to run custom simulation using the provided template by Alexander Afanasyev · 11 years ago
  37. b99cb6c Merge feature branch 'feature-l2-tracer' by Alexander Afanasyev · 11 years ago
  38. 27370c5 docs: Documenting new L2Tracer with a scenario and graph building example by Alexander Afanasyev · 11 years ago
  39. 8682ae0 examples: Adding new example to illustrate use of L2Tracer to trace aggregate packet drop rate on nodes by Hovaidi Ardestani Mohammad · 11 years ago
  40. 326410e docs: Updating documentation by Alexander Afanasyev · 11 years ago
  41. 1ab1aad examples: Fixing error in ndn-simple-with-pcap by Alexander Afanasyev · 11 years ago
  42. 6cf8343 docs: adding disclaimer notice in examples section of documentation by Alexander Afanasyev · 11 years ago
  43. fc8425c utils: Porting several new IPv4 tracers from the old code. Extending ndn-app-delay-tracer by Alexander Afanasyev · 11 years ago
  44. e685212 docs: Extending and reorganizing documentation. Adding basic description about forwarding strategies enforcing Interest limits by Alexander Afanasyev · 11 years ago
  45. 1a0fff6 apps+model+utils: Implementing Interest/Data hop counting using new PacketTag by Alexander Afanasyev · 11 years ago
  46. 400aae1 apps+utils: Correcting Interest-Delay tracing by Alexander Afanasyev · 11 years ago
  47. 29dfb98 docs: add description of generated file by ndn::AppDelayTracer by Alexander Afanasyev · 11 years ago
  48. 27e365b src bug: Adding missing topology files by Alexander Afanasyev · 11 years ago
  49. db64ff1 app+utils+doc: Adding application-level trace helper to record Interest-Data delays by Alexander Afanasyev · 11 years ago
  50. b1d6b03 tracers: simplification of ndn::CsTracer (there no real need for virtual calls) by Alexander Afanasyev · 11 years ago
  51. bf5d610 docs: zipf figure update by Alexander Afanasyev · 12 years ago
  52. 1380010 zipf: Small changes (style and small logic correction) and adding documentation section by Alexander Afanasyev · 12 years ago
  53. 26b558b docs: small documentation update (restructured FAQ about boost libraries) by Alexander Afanasyev · 12 years ago
  54. 71278d4 docs: Correcting documentation of custom applications. Adding docs about new versions of ContentStore by Alexander Afanasyev · 12 years ago
  55. f4a0359 docs: new example with content store helper, description of special content store implementations that allow tracking of lifetime of cached entries by Alexander Afanasyev · 12 years ago
  56. 9c0794a docs: Adding reference to ndnSIM mailing list by Alexander Afanasyev · 12 years ago
  57. 5931480 tracers+docs: Correcting compilation and installation of trace helpers by Alexander Afanasyev · 12 years ago
  58. 475c82f docs: correcting typo that disabled GoogleAnalytics in doxygen docs by Alexander Afanasyev · 12 years ago
  59. 462bb21 docs: Small sphinx template correction by Alexander Afanasyev · 12 years ago
  60. e97c607 docs: New example on how to use custom strategy with 2-bottleneck topology by Alexander Afanasyev · 12 years ago
  61. b1314b1 docs: add small section about TraceSource and trace helpers by Alexander Afanasyev · 12 years ago
  62. e095f0f docs: Restructuring docs and adding new section about customizing Content Store and PIT by Alexander Afanasyev · 12 years ago
  63. aa1c4c3 docs: modifying documentation examples (now code in the documentation is taken from real code in examples/ folder) by Alexander Afanasyev · 12 years ago
  64. 2170fba docs: small reorganization by Alexander Afanasyev · 12 years ago
  65. e74cc1c docs: Adding forwarding strategy example by Alexander Afanasyev · 12 years ago
  66. 5d79e68 model: Initial attempt to optimize Interest/Data encoding/decoding via a custom packet format by Alexander Afanasyev · 12 years ago
  67. 042b4a7 fw+doc: Renaming and extending limit extenstion by Alexander Afanasyev · 12 years ago
  68. 15b7114 docs: Small update of Doxygen by Alexander Afanasyev · 12 years ago
  69. 6dbacda docs: Adding a new example of how to use AnnotatedTopologyReader, as well as a new FAQ section with a couple of commonly asked questions. by Alexander Afanasyev · 12 years ago
  70. 7099ffb docs: Adding example of how to build ndnSIM using non-root-installed boost libraries by Alexander Afanasyev · 12 years ago
  71. 1cd79ae docs: Documentation update by Alexander Afanasyev · 12 years ago
  72. 3cdda24 doc: Adding more descriptions of how to compile ndnSIM by Alexander Afanasyev · 12 years ago
  73. 67ae4b6 Small update of documentation (changing ndnSIM website URL) by Alexander Afanasyev · 12 years ago
  74. 5b054aa Small documentation update by Alexander Afanasyev · 12 years ago
  75. f6807a5 Final updates and documentation fixes by Alexander Afanasyev · 12 years ago
  76. 2b4c947 Another set of refactoring by Alexander Afanasyev · 12 years ago
  77. b8d14ad Documentation correction by Alexander Afanasyev · 12 years ago
  78. 8a53f76 More documentation update: new names for forwarding strategies by Alexander Afanasyev · 12 years ago
  79. 508269a Major update of documentation (ns-3 color scheme, NDN and IRL logos) by Alexander Afanasyev · 12 years ago
  80. 4bfeb95 Removing the customized layout for doxygen by Alexander Afanasyev · 12 years ago
  81. 5b147e8 Adding link to the technical report by Alexander Afanasyev · 12 years ago
  82. d4a5951 Small update of docs by Alexander Afanasyev · 12 years ago v0.1
  83. 1503ecf Update documentation (wrong URLs) by Alexander Afanasyev · 12 years ago
  84. 39485d8 Adding Hit/Miss trace source by Alexander Afanasyev · 12 years ago
  85. b4fee8b Adding more doxygen documentation by Alexander Afanasyev · 12 years ago
  86. 4a4ea60 Renaming CcnxLocalFace to CcnxAppFace by Alexander Afanasyev · 12 years ago
  87. 98c9dbb Wrong URLs in docs by Alexander Afanasyev · 12 years ago
  88. 97fb44d More documentation updates by Alexander Afanasyev · 12 years ago
  89. d4e97b3 Adding more documentation stuff by Alexander Afanasyev · 12 years ago
  90. 07b0063 Documentation update by Alexander Afanasyev · 12 years ago
  91. 6315ef7 Updating documentation by Alexander Afanasyev · 12 years ago
  92. 4d32516 Add a small documentation by Alexander Afanasyev · 12 years ago