docs: Prepare release of version 2.1
Change-Id: I3694a8791b9540fc1b926a83ff55421b47e0f1b1
Refs: #3151
diff --git a/docs/source/RELEASE_NOTES.rst b/docs/source/RELEASE_NOTES.rst
index 3b33d33..babf221 100644
--- a/docs/source/RELEASE_NOTES.rst
+++ b/docs/source/RELEASE_NOTES.rst
@@ -5,8 +5,150 @@
All of the ndnSIM documentation is accessible from the `ndnSIM website <http://ndnsim.net>`__.
-Release 2.0
------------
+Release 2.1 (Changes since release 2.0)
+---------------------------------------
+
+Release date: September 4, 2015
+
+Overview
+~~~~~~~~
+
+- Integration with ndn-cxx and NFD codebases has been refactored to include ndn-cxx and
+ NFD repositories as git submodules within ndnSIM repository (:issue:`3138`).
+
+ This refactoring simplifies upgrading ndn-cxx and NFD to new versions and prevents old
+ simulation code to break because of API changes in newer versions of ndn-cxx library.
+
+ .. note::
+ In order to retrieve the marked versions of ndn-cxx and NFD, use ``--recursive``
+ option to the git clone command or run ``git submodule update --init`` after clone,
+ pull, or merge.
+
+- The official home for ndnSIM codebase has been moved to `GitHub named-data-ndnSIM
+ organization <https://github.com/named-data-ndnSIM>`__ (:issue:`3123`):
+
+ * `ndnSIM codebase <https://github.com/named-data-ndnSIM/ndnSIM>`__
+ * `Modified version of ndn-cxx <https://github.com/named-data-ndnSIM/ndn-cxx>`__
+ * `Modified version of NFD <https://github.com/named-data-ndnSIM/NFD>`__
+ * `Modified version of NS-3 <https://github.com/named-data-ndnSIM/ns-3-dev>`__
+ * `Modified version of python bindings generator <https://github.com/named-data-ndnSIM/pybindgen>`__
+
+- Modified version of NS-3 was updated to (rebased on top of) version 2.23-dev, with
+ ndnSIM codebase adjusted to reflect API changes (:issue:`3122`)
+
+- NFD and ndn-cxx has been upgraded to version 0.3.4 (:issue:`3125`)
+
+New features
+~~~~~~~~~~~~
+
+- ndnSIM-specific version of :ndnsim:`ndn::Face` (:issue:`2370`)
+
+ The updated version of :ndnsim:`ndn::Face` specially designed to allow writing
+ simulation applications in the same way as real applications. It is also possible to
+ directly use codebase of the existing applications to drive simulations, provided that
+ the codebase meets or can be adjusted to meet the requirements listed in
+ :doc:`guide-to-simulate-real-apps`.
+
+- Full support for NFD'S RIB manager (:issue:`2370`)
+
+ .. note::
+ RIB manager support is currently available only for applications based on ndn-cxx.
+ :ndnsim:`FibHelper::AddRoute` and :ndnsim:`FibHelper::RemoveRoute` used by
+ :ndnsim:`ndn::Producer` and :ndnsim:`ndn::GlobalRoutingHelper` are currently
+ interacting directly with NFD's FIB manager. This issue will be resolved in the next
+ release of ndnSIM (:issue:`3121`)
+
+- Tutorial and example on how to speed up simulations with MPI module of NS-3:
+ `<http://ndnsim.net/2.0/parallel-simulations.html>`__
+
+- Two new helpers to simplify writing basic simulation scenarios:
+
+ - :ndnsim:`ScenarioHelper` leverages C++11 constructs to write scenarios. Example:
+
+ .. code-block:: c++
+
+ ScenarioHelper helper;
+ helper.createTopology({
+ {"1", "2"},
+ {"2", "3"}
+ });
+
+ helper.addRoutes({
+ {"1", "2", "/prefix", 1},
+ {"2", "3", "/prefix", 1}
+ });
+
+ helper.addApps({
+ {"1", "ns3::ndn::ConsumerCbr",
+ {{"Prefix", "/prefix"}, {"Frequency", "1"}},
+ "0s", "100s"},
+ {"3", "ns3::ndn::Producer",
+ {{"Prefix", "/prefix"}, {"PayloadSize", "1024"}},
+ "0s", "100s"}
+ });
+
+
+ - :ndnsim:`FactoryCallbackApp` simplifies creation of basic apps without creating a
+ separate class that is derived from ``ns3::Applications``. Example:
+
+ .. code-block:: c++
+
+ class SomeApp
+ {
+ public:
+ SomeApp(size_t initParameter);
+ ...
+ };
+
+ FactoryCallbackApp::Install(node, [] () -> shared_ptr<void> {
+ return make_shared<SomeApp>(42);
+ })
+ .Start(Seconds(1.01));
+
+Improvements and bug fixes
+~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+- Updates of ndnSIM documentation
+
+ * Updated the structure for the `ndnSIM website index page <http://ndnsim.net>`__
+ * Updated installation instructions to reflect refactoring and relocation of ndnSIM codebase
+ * API documentation (doxygen) improvements
+ * Updated list of ndnSIM research papers
+
+- The NDN stack can now be updated to handle any simulation topology changes after
+ its initial installation on a node (:issue:`2717`)
+
+- Application ID that appears in :ndnsim:`ndn::AppDelayTracer` output is now ID of the
+ application on the node, not ID of the application face that was used previously.
+
+- FibHelper has been extended to support route removals (:issue:`2358`)
+
+- ndnSIM codebase now partially covered with unit-tests (:issue:`2369`, :issue:`3059`,
+ :issue:`2783`)
+
+- Bugfixes:
+
+ * In :ndnsim:`ndn::GlobalRoutingHelper::CalculateAllPossibleRoutes` that caused crash in
+ some cases (:issue:`2535`)
+
+ * In FailLink and Uplink methods of :ndnsim:`ndn::LinkControlHelper` class that affected
+ more links than requested (:issue:`2783`)
+
+ * With hop count of data packets retrieved from the Contest Store of NFD (:issue:`2764`)
+
+ * In :ndnsim:`ndn::Producer` application that caused a wrong dummy signature to be added
+ to the constructed data packets (:issue:`2927`)
+
+
+
+********************************************************************************
+
+
+
+Release 2.0 (Changes since release 1.0)
+---------------------------------------
+
+Release date: January 13, 2015
Overview
~~~~~~~~
@@ -36,7 +178,7 @@
New Features
~~~~~~~~~~~~
-- Integration with NFD codebase:
+- 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).