Vince Lehman | b722b10 | 2014-08-24 16:33:49 -0500 | [diff] [blame] | 1 | Release Notes |
Alexander Afanasyev | 7decbbf | 2014-08-24 21:29:01 -0700 | [diff] [blame] | 2 | ============= |
Vince Lehman | b722b10 | 2014-08-24 16:33:49 -0500 | [diff] [blame] | 3 | |
Muktadir R Chowdhury | 800833b | 2016-07-29 13:43:59 -0500 | [diff] [blame^] | 4 | NLSR version 0.3.0 (changes since version 0.2.2) |
| 5 | ++++++++++++++++++++++++++++++++++++++++++++++++ |
| 6 | |
| 7 | Release date: August 1, 2016 |
| 8 | |
| 9 | **Code changes**: |
| 10 | |
| 11 | - Do not advertise Adjacency LSAs when hyperbolic routing is enabled (:issue:`2402`) |
| 12 | |
| 13 | - Do not distribute coordinate LSAs when using link-state routing. (:issue:`3661`) |
| 14 | |
| 15 | - LSAs should be segmented before they are published (:issue:`2965`) |
| 16 | |
| 17 | - Don't use DummyClientFace::sentDatas (:issue:`3383`) |
| 18 | |
| 19 | - Remove disabled security files (:issue:`2960`) |
| 20 | |
| 21 | - Lsa type should be argument for base class LSA constructor (:issue:`2788`) |
| 22 | |
| 23 | - Use ndn-cxx/DummyClientFace (:issue:`2637`) |
| 24 | |
| 25 | **Bug fixes**: |
| 26 | |
| 27 | - Unit tests cases are installed with `./waf install` (:issue:`3359`) |
| 28 | |
| 29 | |
Vince Lehman | 0ff5d45 | 2016-01-04 17:20:19 -0600 | [diff] [blame] | 30 | NLSR version 0.2.2 (changes since version 0.2.1) |
| 31 | ++++++++++++++++++++++++++++++++++++++++++++++++ |
| 32 | |
| 33 | Release date: January 5, 2016 |
| 34 | |
| 35 | **Code changes**: |
| 36 | |
| 37 | - Adapt code to changes in NFD/ndn-cxx version 0.4.0 release |
| 38 | |
Vince Lehman | 5363c79 | 2015-06-26 15:25:38 -0500 | [diff] [blame] | 39 | NLSR version 0.2.1 (changes since version 0.2.0) |
| 40 | ++++++++++++++++++++++++++++++++++++++++++++++++ |
| 41 | |
| 42 | Release date: June 30, 2015 |
| 43 | |
| 44 | **Code changes**: |
| 45 | |
| 46 | - Using a configuration file without ``prefix-update-validator`` disables runtime advertise/withdraw instead of exiting (:issue:`2814`) |
| 47 | |
| 48 | **Bug fixes**: |
| 49 | |
| 50 | - Prevent incomplete removal of NPT entry (:issue:`2785`) |
| 51 | |
| 52 | - Correct bidirectional links with differing costs (:issue:`2801`) |
| 53 | |
| 54 | - Fix non-incrementing Adjacency number in AdjLsa::writeLog (:issue:`2594`) |
| 55 | |
| 56 | - Remove FaceDestroyEvent test's reliance on nlsrSeqNo.txt (:issue:`2881`) |
| 57 | |
| 58 | - Test ACTIVE/INACTIVE Adjacencies in LSA construction (:issue:`2735`) |
| 59 | |
Vince Lehman | de5560c | 2015-04-29 17:18:51 -0500 | [diff] [blame] | 60 | NLSR version 0.2.0 (changes since version 0.1.0) |
| 61 | ++++++++++++++++++++++++++++++++++++++++++++++++ |
| 62 | |
| 63 | Release date: April 30, 2015 |
| 64 | |
| 65 | **Build**: |
| 66 | |
| 67 | - The code now requires C++11. The minimum supported gcc version is 4.6, as earlier versions do not have proper support for C++11 features. (:issue:`1930`) |
| 68 | |
| 69 | - Require OpenSSL (:issue:`2375`) |
| 70 | |
| 71 | **New features**: |
| 72 | |
| 73 | - Add nlsrc command-line tool (:issue:`1834`) |
| 74 | |
| 75 | - Advertise/Withdraw name prefixes at runtime (:issue:`1834`) |
| 76 | |
| 77 | - Assign zero cost to hyperbolic direct neighbors (:issue:`1975`) |
| 78 | |
| 79 | - Only hyperbolic costs are adjusted before registering (:issue:`1974`) |
| 80 | |
| 81 | - Add ability to specify different logging levels (:issue:`1935`) |
| 82 | |
| 83 | - Add LSDB dataset publishers (:issue:`2280`) |
| 84 | |
| 85 | - Add LSDB dataset tlv abstractions (:issue:`2280`) |
| 86 | |
| 87 | - Allow zero cost neighbors for hyperbolic routing table calculation (:issue:`1982`) |
| 88 | |
| 89 | - Faces are now created with canonical Face URI (:issue:`1911`) |
| 90 | |
| 91 | - Add configurable router event intervals (:issue:`2071`) |
| 92 | |
| 93 | - Add router-dead-interval configuration setting (:issue:`1878`) |
| 94 | |
| 95 | - Add log formatting specified by log4cxx configuration file (:issue:`1950`) |
| 96 | |
| 97 | - Face URIs in configuration file are checked for validity on load (:issue:`2070`) |
| 98 | |
| 99 | - Configuration variables with default values are now optional (:issue:`1949`) |
| 100 | |
| 101 | - Recalculate routing table after face destroy event (:issue:`2635`) |
| 102 | |
| 103 | - Add Travis-CI build script |
| 104 | |
| 105 | **Code changes**: |
| 106 | |
| 107 | - Change adjacency status from uint32_t to enum (:issue:`1946`) |
| 108 | |
| 109 | - Remove scheduler from NLSR class (:issue:`1981`) |
| 110 | |
| 111 | - Change hyperbolic cost adjustment factor from 100 to 1000 (:issue:`1974`) |
| 112 | |
| 113 | - Remove use of outdated namespace ``ndn::Tlv`` (:issue:`2079`) |
| 114 | |
| 115 | - Remove use of deprecated ``ndn::nfd::Controller(Face&)`` constructor (:issue:`2133`) |
| 116 | |
| 117 | - Routing update publishing is abstracted to SyncLogicHandler (:issue:`2289`) |
| 118 | |
| 119 | - Make ConfParameter variable types consistent with min and max values (:issue:`2084`) |
| 120 | |
| 121 | - Replace LSA string literals with constants (:issue:`2310`) |
| 122 | |
| 123 | - Subscribe to FaceMonitor notifications using connect (:issue:`2350`) |
| 124 | |
| 125 | - Log exceptions thrown in event loop |
| 126 | |
| 127 | - Change ``ndn::ptr_lib::shared_ptr`` to ``std::shared_ptr`` (:issue:`2110`) |
| 128 | |
| 129 | - Avoid deprecated ``ndn::Name::set`` method (:issue:`2505`) |
| 130 | |
| 131 | - Update waf to version 1.8.8-dev |
| 132 | |
| 133 | - Add sorting tiebreaker to NexthopList (:issue:`2715`) |
| 134 | |
| 135 | - Update Jenkins-CI build scripts |
| 136 | |
| 137 | **Bug fixes**: |
| 138 | |
| 139 | - Fix python3 build error (:issue:`1956`) |
| 140 | |
| 141 | - Fix typos in nlsr.conf security section (:issue:`1985`) |
| 142 | |
| 143 | - Stop SyncLogicHandler from fetching a router’s own LSAs (:issue:`2005`) |
| 144 | |
| 145 | - Fix Name LSA comparison which could cause incorrect advertised names to be removed (:issue:`2029`) |
| 146 | |
| 147 | - Fix issue where more faces than max-faces-per-prefix could be applied to a prefix (:issue:`2018`) |
| 148 | |
| 149 | - Stop LSDB from retrieving and out of date LSA when a new one is detected (:issue:`1987`) |
| 150 | |
| 151 | - Correct mistakes in documentation |
| 152 | |
| 153 | - Correct bitmask used to copy Name LSA sequence number (:issue:`2323`) |
| 154 | |
Alexander Afanasyev | 7decbbf | 2014-08-24 21:29:01 -0700 | [diff] [blame] | 155 | NLSR version 0.1.0 (initial release) |
| 156 | ++++++++++++++++++++++++++++++++++++ |
Vince Lehman | b722b10 | 2014-08-24 16:33:49 -0500 | [diff] [blame] | 157 | |
Alexander Afanasyev | 7decbbf | 2014-08-24 21:29:01 -0700 | [diff] [blame] | 158 | Release date: August 25, 2014 |
Vince Lehman | b722b10 | 2014-08-24 16:33:49 -0500 | [diff] [blame] | 159 | |
Alexander Afanasyev | 7decbbf | 2014-08-24 21:29:01 -0700 | [diff] [blame] | 160 | The main design goal of NLSR is to provide a routing protocol to populate `NFD's |
| 161 | <http://named-data.net/doc/NFD/current/>`_ RIB. NLSR calculates the routing table using |
| 162 | link-state or hyperbolic routing and produces multiple faces for each reachable name |
| 163 | prefix in a single authoritative domain. |
Vince Lehman | b722b10 | 2014-08-24 16:33:49 -0500 | [diff] [blame] | 164 | |
Alexander Afanasyev | 7decbbf | 2014-08-24 21:29:01 -0700 | [diff] [blame] | 165 | **Included features**: |
Vince Lehman | b722b10 | 2014-08-24 16:33:49 -0500 | [diff] [blame] | 166 | |
Junxiao Shi | f09e263 | 2015-01-02 18:15:01 -0700 | [diff] [blame] | 167 | - Advertise availability of content through the configured router |
Vince Lehman | b722b10 | 2014-08-24 16:33:49 -0500 | [diff] [blame] | 168 | |
Alexander Afanasyev | 7decbbf | 2014-08-24 21:29:01 -0700 | [diff] [blame] | 169 | - Use `ChronoSync <https://github.com/named-data/ChronoSync>`_ to synchronize routers' LSA sequence numbers and Interest/Data to retrieve LSAs |
Vince Lehman | b722b10 | 2014-08-24 16:33:49 -0500 | [diff] [blame] | 170 | |
Junxiao Shi | f09e263 | 2015-01-02 18:15:01 -0700 | [diff] [blame] | 171 | - Produce a list of ranked forwarding options for each name prefix to facilitate NDN's adaptive forwarding strategies |
Vince Lehman | b722b10 | 2014-08-24 16:33:49 -0500 | [diff] [blame] | 172 | |
Junxiao Shi | f09e263 | 2015-01-02 18:15:01 -0700 | [diff] [blame] | 173 | - Configure maximum number of faces per prefix in NFD’s RIB |
Vince Lehman | b722b10 | 2014-08-24 16:33:49 -0500 | [diff] [blame] | 174 | |
Junxiao Shi | f09e263 | 2015-01-02 18:15:01 -0700 | [diff] [blame] | 175 | - Set up NFD tunnels to neighbors automatically and maintain the tunnels to neighbors |
Vince Lehman | b722b10 | 2014-08-24 16:33:49 -0500 | [diff] [blame] | 176 | |
Junxiao Shi | f09e263 | 2015-01-02 18:15:01 -0700 | [diff] [blame] | 177 | - Provide two routing protocols: |
Vince Lehman | b722b10 | 2014-08-24 16:33:49 -0500 | [diff] [blame] | 178 | |
Junxiao Shi | f09e263 | 2015-01-02 18:15:01 -0700 | [diff] [blame] | 179 | + Link State routing: calculate route cost based on link costs |
| 180 | + Hyperbolic routing: calculate route cost based on hyperbolic coordinates |
Vince Lehman | b722b10 | 2014-08-24 16:33:49 -0500 | [diff] [blame] | 181 | |
Alexander Afanasyev | 7decbbf | 2014-08-24 21:29:01 -0700 | [diff] [blame] | 182 | - Use a hierarchical trust model for routing within a single administrative domain |
Vince Lehman | b722b10 | 2014-08-24 16:33:49 -0500 | [diff] [blame] | 183 | |
Junxiao Shi | f09e263 | 2015-01-02 18:15:01 -0700 | [diff] [blame] | 184 | - Keep NFD’s RIB updated on failure and recovery |