Ashlesh Gawande | 6c86e30 | 2019-09-17 22:27:05 -0500 | [diff] [blame] | 1 | Release Notes |
| 2 | ============= |
| 3 | |
awlane | 73add71 | 2024-08-12 21:49:00 -0500 | [diff] [blame] | 4 | Mini-NDN version 0.7.0 (Major changes since version 0.6.0) |
| 5 | ---------------------------------------------------------- |
| 6 | |
| 7 | **Breaking Changes**: |
| 8 | |
| 9 | - Install behavior regarding existing installation of dependencies has been reversed; by default, these are now ignored. This is meant |
| 10 | to clear up confusion regarding installing on existing installs which have been used for NDN development previously. The previous |
Davide Pesavento | 750d040 | 2025-02-25 16:50:50 -0500 | [diff] [blame^] | 11 | behavior can be enabled using ``--use-existing``. |
awlane | 73add71 | 2024-08-12 21:49:00 -0500 | [diff] [blame] | 12 | |
| 13 | **New features**: |
| 14 | |
Davide Pesavento | 750d040 | 2025-02-25 16:50:50 -0500 | [diff] [blame^] | 15 | - Added ``NFDCBatch`` to NFDC helper, which allows the user to use the existing NFDC wrapper API to instead create and execute a batch file. |
| 16 | When running large numbers of commands, this significantly speeds up performance due to not needing to add delay between individual CLI calls. |
| 17 | - Added ``MinindnAdhoc`` class which can be used to construct adhoc Mini-NDN-Wifi networks from topology files. |
awlane | 73add71 | 2024-08-12 21:49:00 -0500 | [diff] [blame] | 18 | - Model mobility parameters can now also be passed to Mini-NDN-Wifi via topology files. |
Davide Pesavento | 750d040 | 2025-02-25 16:50:50 -0500 | [diff] [blame^] | 19 | - Working directory can be passed as constructor argument to ``Minindn`` objects. |
| 20 | - We have added a new ``--release`` flag to the installer which simplifies installing matching releases of dependencies. |
| 21 | Reference the :doc:`install documentation <install>` for more information. |
| 22 | - Experimental WiFi support for NLSR helper. |
| 23 | See the :doc:`experiment docs <experiment>` for details (`issue: 5232 <https://redmine.named-data.net/issues/5232>`__) |
awlane | 73add71 | 2024-08-12 21:49:00 -0500 | [diff] [blame] | 24 | - Added a Dockerfile for Mini-NDN. A prebuilt image for *linux/amd64* platforms is available on the |
Davide Pesavento | 750d040 | 2025-02-25 16:50:50 -0500 | [diff] [blame^] | 25 | `GitHub container registry <https://github.com/named-data/mini-ndn/pkgs/container/mini-ndn>`__. |
| 26 | - The previous testbed topology generation script has been deprecated and removed. |
| 27 | Please reference the `NDN Play website <https://play.ndn.today/?testbed=1>`__ for a replacement. |
awlane | 73add71 | 2024-08-12 21:49:00 -0500 | [diff] [blame] | 28 | |
| 29 | **Improvements**: |
| 30 | |
| 31 | - Ethernet unicast faces are now supported natively by NLSR wrapper, NFDC wrapper, and NDN routing helper. No additional formatting by the user is needed |
| 32 | for ethernet addresses extracted from the Mininet API when passed to these functions (`issue: 5321 <https://redmine.named-data.net/issues/5232>`__) |
Davide Pesavento | 750d040 | 2025-02-25 16:50:50 -0500 | [diff] [blame^] | 33 | - ``NdnRoutingHelper`` has been parallelized along with minor optimizations. You can now also use it to create |
awlane | 73add71 | 2024-08-12 21:49:00 -0500 | [diff] [blame] | 34 | permanent faces (`issue: 5264 <https://redmine.named-data.net/issues/5264>`__) |
Davide Pesavento | 750d040 | 2025-02-25 16:50:50 -0500 | [diff] [blame^] | 35 | - ``checkConvergence`` method of ``Experiment`` helper can now output more detailed information when flag ``returnConvergenceInfo`` is set |
awlane | 73add71 | 2024-08-12 21:49:00 -0500 | [diff] [blame] | 36 | (`issue: 5236 <https://redmine.named-data.net/issues/5236>`__) |
Davide Pesavento | 750d040 | 2025-02-25 16:50:50 -0500 | [diff] [blame^] | 37 | - ``getPopen`` can now accept commands formatted as lists as well as strings |
| 38 | - We now natively edit ``nfd.conf`` files using infoconv to read and write it as json rather than calling infoedit at the shell |
awlane | 73add71 | 2024-08-12 21:49:00 -0500 | [diff] [blame] | 39 | (`issue: 5318 <https://redmine.named-data.net/issues/5318>`__) |
| 40 | - Added Sprint PoP topology |
Davide Pesavento | 750d040 | 2025-02-25 16:50:50 -0500 | [diff] [blame^] | 41 | - Link bandwidth value (``bw``) can now be specified as decimal megabits rather than only integers in topology files |
| 42 | - NFDC was significantly refactored for the ``NFDCBatch`` change. |
awlane | 73add71 | 2024-08-12 21:49:00 -0500 | [diff] [blame] | 43 | |
| 44 | **Bug fixes**: |
| 45 | |
| 46 | - NFDC helper properly supports existing faces and no longer outputs unnecessary error messages if face exists by default. |
| 47 | - Fixed out of date ndnsec commands |
Davide Pesavento | 750d040 | 2025-02-25 16:50:50 -0500 | [diff] [blame^] | 48 | - Socket path now defaults to NFD default as of release 24.07. You can specify a different path with the ``defaultSocketLocation`` |
| 49 | argument in the ``Nfd`` object constructor (`issue: 5309 <https://redmine.named-data.net/issues/5309>`__) |
awlane | 73add71 | 2024-08-12 21:49:00 -0500 | [diff] [blame] | 50 | - Fixed jitter being parsed into incorrect type from topology files |
Davide Pesavento | 750d040 | 2025-02-25 16:50:50 -0500 | [diff] [blame^] | 51 | - Moved vestigial CLI arguments relating to ``wifi_ping.py`` example out of the Mini-NDN-Wifi class |
awlane | 73add71 | 2024-08-12 21:49:00 -0500 | [diff] [blame] | 52 | |
| 53 | |
dulalsaurab | 90faa58 | 2021-12-19 21:08:01 +0000 | [diff] [blame] | 54 | Mini-NDN version 0.6.0 (Major changes since version 0.5.0) |
| 55 | ---------------------------------------------------------- |
| 56 | |
| 57 | **Breaking Changes**: |
| 58 | |
| 59 | - Rewrite install script (`issue: 4630 <https://redmine.named-data.net/issues/4630>`__) |
| 60 | |
| 61 | - Set dependency versions: PPA, git repository & commit |
| 62 | - Separate download and build+install steps |
| 63 | - Don't reinstall package if it's already installed |
Davide Pesavento | 750d040 | 2025-02-25 16:50:50 -0500 | [diff] [blame^] | 64 | - More details :doc:`here <install>` |
dulalsaurab | 90faa58 | 2021-12-19 21:08:01 +0000 | [diff] [blame] | 65 | |
| 66 | - `Note: <https://redmine.named-data.net/issues/5161>`__ We have dropped support for python 2, the latest Mini-NDN requires at least python 3.0 |
| 67 | |
| 68 | **New features**: |
| 69 | |
| 70 | - Update Mini-NDN codebase with Mini-NDN-Wifi code (`issue: 4858 <https://redmine.named-data.net/issues/4858>`__) |
| 71 | |
| 72 | - Provide pre-built Mini-NDN Vagrant box and Docker container |
| 73 | |
| 74 | - Added several new examples: |
| 75 | |
| 76 | - consumer/producer |
| 77 | - ndnping |
| 78 | - traffic generator |
| 79 | - catchunks/putchunks |
| 80 | |
| 81 | - Allow for creation of net object without topology (`issue: 5162 <https://redmine.named-data.net/issues/5162>`__) |
| 82 | |
| 83 | **Improvements and Bug Fixes**: |
| 84 | |
| 85 | - Support running NDN applications on mixed topologies (`issue: 5160 <https://redmine.named-data.net/issues/5160>`__) |
| 86 | |
Davide Pesavento | 750d040 | 2025-02-25 16:50:50 -0500 | [diff] [blame^] | 87 | - Support route addition using face-id in ``Nfdc`` helper (`issue: 5130 <https://redmine.named-data.net/issues/5130>`__) |
dulalsaurab | 90faa58 | 2021-12-19 21:08:01 +0000 | [diff] [blame] | 88 | |
Davide Pesavento | 750d040 | 2025-02-25 16:50:50 -0500 | [diff] [blame^] | 89 | - Add wrapper for ndnpingserver and fix passing the Mininet host object as a prefix on ndnpingclient |
dulalsaurab | 90faa58 | 2021-12-19 21:08:01 +0000 | [diff] [blame] | 90 | |
Davide Pesavento | 750d040 | 2025-02-25 16:50:50 -0500 | [diff] [blame^] | 91 | - Show status of route calculation in ``NdnRoutingHelper`` |
dulalsaurab | 90faa58 | 2021-12-19 21:08:01 +0000 | [diff] [blame] | 92 | |
Davide Pesavento | 750d040 | 2025-02-25 16:50:50 -0500 | [diff] [blame^] | 93 | - Incorporate changes of ``NDNPing`` Class (wrapper of pingserver and pingclient) in the examples |
dulalsaurab | 90faa58 | 2021-12-19 21:08:01 +0000 | [diff] [blame] | 94 | |
| 95 | - Support simple topology files with no additional parameters |
| 96 | |
| 97 | |
Saurab Dulal | 576a419 | 2020-08-25 00:55:22 -0500 | [diff] [blame] | 98 | Mini-NDN version 0.5.0 (Major changes since version 0.4.0) |
| 99 | ---------------------------------------------------------- |
| 100 | |
| 101 | **Breaking Changes**: |
| 102 | |
| 103 | - `Mini-NDN re-design <https://redmine.named-data.net/issues/5062>`__: simple and robust design with better quality, control, and more consistency with Mininet |
| 104 | |
| 105 | **New features**: |
| 106 | |
| 107 | - Add a script to generate up-to-date NDN testbed topologies for Mini-NDN |
| 108 | |
| 109 | - Add Mini-NDN utility application for PCAP logging |
| 110 | |
| 111 | - Add NDN routing helper to compute centralized LS and HR routes |
| 112 | |
| 113 | - Add routing helper to allow IP communication in experiments |
| 114 | |
| 115 | - Add startup experiments for NLSR and current testbed topology |
| 116 | |
| 117 | - Move the NDNPing wrapper method to a helper class |
| 118 | |
| 119 | - Create a helper class to provide a wrapper around ``nfdc`` |
| 120 | |
| 121 | **Improvements and Bug Fixes**: |
| 122 | |
Davide Pesavento | 750d040 | 2025-02-25 16:50:50 -0500 | [diff] [blame^] | 123 | - Change ``workDir`` and ``resultDir`` to be class attribute |
Saurab Dulal | 576a419 | 2020-08-25 00:55:22 -0500 | [diff] [blame] | 124 | |
| 125 | - Quiet apt install for Vagrant |
| 126 | |
| 127 | - Fix route computation bug in ``ndn_routing_helper`` |
| 128 | |
| 129 | - Fix overwriting of existing prefixes in ``ndn_routing_helper`` |
| 130 | |
Davide Pesavento | 750d040 | 2025-02-25 16:50:50 -0500 | [diff] [blame^] | 131 | - Move log files to ``resultDir`` after evaluation finishes |
Saurab Dulal | 576a419 | 2020-08-25 00:55:22 -0500 | [diff] [blame] | 132 | |
| 133 | - Check for duplicate HR coordinates in the topology file |
| 134 | |
| 135 | - Check PSync integration and add a tests case for it |
| 136 | |
| 137 | - Bug fixes in nfdc and experiments |
| 138 | |
| 139 | - Added functionality to check Mini-NDN dependencies |
| 140 | |
| 141 | - Parser fix to avoid an infinite loop |
| 142 | |
| 143 | - Allow use of NFD and NLSR PPA with Mini-NDN |
| 144 | |
| 145 | - Remove arbitrary arguments in favor of parsing arguments from experiment files |
| 146 | |
| 147 | - Auto-complete command-line arguments |
| 148 | |
| 149 | - Add option to set CS size |
| 150 | |
| 151 | - Adjust to use ndn-cxx logging |
| 152 | |
| 153 | |
Ashlesh Gawande | 6c86e30 | 2019-09-17 22:27:05 -0500 | [diff] [blame] | 154 | Mini-NDN version 0.4.0 (changes since version 0.3.0) |
| 155 | ---------------------------------------------------- |
| 156 | |
| 157 | Release date: January 10, 2018 |
| 158 | |
| 159 | **New features**: |
| 160 | |
| 161 | - Use SIGQUIT to quit Mini-NDN, SIGINT to kill programs |
| 162 | |
| 163 | - Use Infoedit to edit NFD and NLSR configuration files |
| 164 | |
Davide Pesavento | 750d040 | 2025-02-25 16:50:50 -0500 | [diff] [blame^] | 165 | - Use ``nlsr.conf`` installed in the system |
Ashlesh Gawande | 6c86e30 | 2019-09-17 22:27:05 -0500 | [diff] [blame] | 166 | |
| 167 | - Provide a Vagrantfile to setup Mini-NDN and NDN |
| 168 | |
| 169 | - Provide option to disable NLSR |
| 170 | |
| 171 | - Provide an option to run NLSR in dry-run mode |
| 172 | |
Davide Pesavento | 750d040 | 2025-02-25 16:50:50 -0500 | [diff] [blame^] | 173 | - Add option to specify whether to use TCP or UDP face in ``nlsr.conf`` |
Ashlesh Gawande | 6c86e30 | 2019-09-17 22:27:05 -0500 | [diff] [blame] | 174 | |
| 175 | - Add option to specify arbitrary arguments to use in experiments |
| 176 | |
| 177 | - Include a single option to install Mini-NDN and all the dependencies |
| 178 | |
| 179 | **Bug fixes**: |
| 180 | |
| 181 | - Fix "key does not exist error" after NLSR starts |
| 182 | |
| 183 | - Update install.sh to call ldconfig after installing ChronoSync |
| 184 | |
| 185 | - Add hyperbolic coordinates to default topology |
| 186 | |
| 187 | **Misc changes**: |
| 188 | |
| 189 | - Add an experiment to test nlsrc |
| 190 | |
| 191 | - Create faces in NFD for each neighbor in NLSR |
| 192 | |
| 193 | - Update to latest ndn-cxx |
| 194 | |
Davide Pesavento | 750d040 | 2025-02-25 16:50:50 -0500 | [diff] [blame^] | 195 | - Use ``/tmp/minindn`` folder as default work dir instead of ``/tmp`` |
Ashlesh Gawande | 6c86e30 | 2019-09-17 22:27:05 -0500 | [diff] [blame] | 196 | |
| 197 | Mini-NDN version 0.3.0 (changes since version 0.2.0) |
| 198 | ---------------------------------------------------- |
| 199 | |
| 200 | Release date: March 3, 2017 |
| 201 | |
| 202 | **New features**: |
| 203 | |
| 204 | - Mini-NDN cluster edition |
| 205 | |
| 206 | - New experiments for making NLSR testing easier |
| 207 | |
| 208 | **Bug fixes**: |
| 209 | |
| 210 | - Set site name correctly |
| 211 | |
| 212 | - Install missing certificates in NLSR security config |
| 213 | |
| 214 | - Fix quitting of NLSR due to key not found error |
| 215 | |
| 216 | **Misc changes**: |
| 217 | |
Davide Pesavento | 750d040 | 2025-02-25 16:50:50 -0500 | [diff] [blame^] | 218 | - Removed ``nlsr.conf`` file, generate it within the code |
Ashlesh Gawande | 6c86e30 | 2019-09-17 22:27:05 -0500 | [diff] [blame] | 219 | |
| 220 | - Use argparse instead of deprecated optparse |
| 221 | |
| 222 | - Update security config section for NLSR |
| 223 | |
| 224 | - Change mininet prompt to mini-ndn |
| 225 | |
| 226 | - Set network name at one place |
| 227 | |
Davide Pesavento | 750d040 | 2025-02-25 16:50:50 -0500 | [diff] [blame^] | 228 | - Update ``install.sh`` script to install openssl |
Ashlesh Gawande | 6c86e30 | 2019-09-17 22:27:05 -0500 | [diff] [blame] | 229 | |
Davide Pesavento | 750d040 | 2025-02-25 16:50:50 -0500 | [diff] [blame^] | 230 | - Update ``install.sh`` script to install cryptopp from package instead of |
Ashlesh Gawande | 6c86e30 | 2019-09-17 22:27:05 -0500 | [diff] [blame] | 231 | compiling from source |
| 232 | |
Davide Pesavento | 750d040 | 2025-02-25 16:50:50 -0500 | [diff] [blame^] | 233 | - Update ``install.sh`` to clean build folder every time to get rid of |
Ashlesh Gawande | 6c86e30 | 2019-09-17 22:27:05 -0500 | [diff] [blame] | 234 | removed files such as old experiments |
| 235 | |
Davide Pesavento | 750d040 | 2025-02-25 16:50:50 -0500 | [diff] [blame^] | 236 | - Fix old code - use ``net.hosts`` instead of storing hosts in a variable |
Ashlesh Gawande | 6c86e30 | 2019-09-17 22:27:05 -0500 | [diff] [blame] | 237 | |
| 238 | - Use nfdc instead of deprecated nfd-status |
| 239 | |
| 240 | Mini-NDN version 0.2.0 (changes since version 0.1.1) |
| 241 | ---------------------------------------------------- |
| 242 | |
| 243 | Release date: August 18, 2016 |
| 244 | |
| 245 | **New features**: |
| 246 | |
| 247 | - Automatic security configuration for NLSR |
| 248 | |
Davide Pesavento | 750d040 | 2025-02-25 16:50:50 -0500 | [diff] [blame^] | 249 | - Use ``/usr/local/etc/ndn/nfd.conf`` as default config file for NFD |
Ashlesh Gawande | 6c86e30 | 2019-09-17 22:27:05 -0500 | [diff] [blame] | 250 | |
Davide Pesavento | 750d040 | 2025-02-25 16:50:50 -0500 | [diff] [blame^] | 251 | - Class to monitor ``/proc/$PID/stat`` file for PID |
Ashlesh Gawande | 6c86e30 | 2019-09-17 22:27:05 -0500 | [diff] [blame] | 252 | |
| 253 | - Mini-NDN exits gracefully on SIGINT and non-convergence |
| 254 | |
Davide Pesavento | 750d040 | 2025-02-25 16:50:50 -0500 | [diff] [blame^] | 255 | - Faster Mini-NDN install script - does not do ``apt-get update`` every time |
Ashlesh Gawande | 6c86e30 | 2019-09-17 22:27:05 -0500 | [diff] [blame] | 256 | |
Davide Pesavento | 750d040 | 2025-02-25 16:50:50 -0500 | [diff] [blame^] | 257 | - NLSR is launched with explicit config file for easier process identification |
Ashlesh Gawande | 6c86e30 | 2019-09-17 22:27:05 -0500 | [diff] [blame] | 258 | |
| 259 | - Add and update more documentation |
| 260 | |
| 261 | **Bug fixes**: |
| 262 | |
| 263 | - NFD is killed correctly on exit |
| 264 | |
| 265 | - Best route strategy is set correctly |
| 266 | |
| 267 | Mini-NDN version 0.1.1 (changes since version 0.1.0) |
| 268 | ---------------------------------------------------- |
| 269 | |
| 270 | Release date: November 4, 2015 |
| 271 | |
| 272 | **New features**: |
| 273 | |
Davide Pesavento | 750d040 | 2025-02-25 16:50:50 -0500 | [diff] [blame^] | 274 | - Use ``nfd.conf.sample`` from currently installed NFD |
Ashlesh Gawande | 6c86e30 | 2019-09-17 22:27:05 -0500 | [diff] [blame] | 275 | |
Davide Pesavento | 750d040 | 2025-02-25 16:50:50 -0500 | [diff] [blame^] | 276 | - Add working directory option to allow execution environment outside of ``/tmp`` |
Ashlesh Gawande | 6c86e30 | 2019-09-17 22:27:05 -0500 | [diff] [blame] | 277 | |
Davide Pesavento | 750d040 | 2025-02-25 16:50:50 -0500 | [diff] [blame^] | 278 | - Add results directory option to store experiment results after completion |
Ashlesh Gawande | 6c86e30 | 2019-09-17 22:27:05 -0500 | [diff] [blame] | 279 | |
| 280 | - Add support for switches in GUI and configuration file |
| 281 | |
| 282 | - Add failNode and recoverNode methods to Experiment class |
| 283 | |
| 284 | - Add most connected node (MCN) failure experiment |
| 285 | |
| 286 | - Add option to specify percentage of nodes pinged |
| 287 | |
| 288 | **Code changes**: |
| 289 | |
| 290 | - Refactor program options into container class |
| 291 | |
| 292 | - Remove unused "FIB Entries" option from NDN host options |
| 293 | |
| 294 | **Bug fixes**: |
| 295 | |
| 296 | - Abort start up if experiment name is invalid |
| 297 | |
| 298 | - Restart pings after recovery in failure experiment |
| 299 | |
| 300 | Mini-NDN version 0.1.0 (initial release) |
| 301 | ---------------------------------------- |
| 302 | |
| 303 | Release date: July 15, 2015 |
| 304 | |
| 305 | Mini-NDN is a lightweight networking emulation tool that enables |
| 306 | testing, experimentation, and research on the NDN platform. Based on |
| 307 | Mininet, Mini-NDN uses the NDN libraries, NFD, NLSR, and tools released |
Davide Pesavento | 750d040 | 2025-02-25 16:50:50 -0500 | [diff] [blame^] | 308 | by the `NDN project <https://named-data.net/codebase/platform/>`__ to |
Ashlesh Gawande | 6c86e30 | 2019-09-17 22:27:05 -0500 | [diff] [blame] | 309 | emulate an NDN network on a single system. |
| 310 | |
| 311 | **Included features**: |
| 312 | |
| 313 | - Run a complete NDN network on a single system |
| 314 | |
| 315 | - Automatic configuration of NLSR to provide a routable NDN network |
| 316 | |
| 317 | - Supports user created NDN applications |
| 318 | |
| 319 | - Create a topology using the included Mini-NDN Edit GUI application |
| 320 | |
| 321 | - Allows individual configuration of NFD and NLSR parameters for each |
| 322 | node |
| 323 | |
| 324 | - Provides an experiment management framework for easy creation of |
| 325 | custom networking experiments |
| 326 | |
| 327 | - Uses a simple topology file format to define hosts, links, and |
| 328 | configuration values |
| 329 | |
| 330 | - Configure network link parameters including bandwidth, delay, and |
| 331 | loss rate |
| 332 | |
| 333 | - Includes a pre-configured topology file to replicate the NDN testbed |