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 | |
Vince Lehman | de5560c | 2015-04-29 17:18:51 -0500 | [diff] [blame] | 4 | NLSR version 0.2.0 (changes since version 0.1.0) |
| 5 | ++++++++++++++++++++++++++++++++++++++++++++++++ |
| 6 | |
| 7 | Release date: April 30, 2015 |
| 8 | |
| 9 | **Build**: |
| 10 | |
| 11 | - 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`) |
| 12 | |
| 13 | - Require OpenSSL (:issue:`2375`) |
| 14 | |
| 15 | **New features**: |
| 16 | |
| 17 | - Add nlsrc command-line tool (:issue:`1834`) |
| 18 | |
| 19 | - Advertise/Withdraw name prefixes at runtime (:issue:`1834`) |
| 20 | |
| 21 | - Assign zero cost to hyperbolic direct neighbors (:issue:`1975`) |
| 22 | |
| 23 | - Only hyperbolic costs are adjusted before registering (:issue:`1974`) |
| 24 | |
| 25 | - Add ability to specify different logging levels (:issue:`1935`) |
| 26 | |
| 27 | - Add LSDB dataset publishers (:issue:`2280`) |
| 28 | |
| 29 | - Add LSDB dataset tlv abstractions (:issue:`2280`) |
| 30 | |
| 31 | - Allow zero cost neighbors for hyperbolic routing table calculation (:issue:`1982`) |
| 32 | |
| 33 | - Faces are now created with canonical Face URI (:issue:`1911`) |
| 34 | |
| 35 | - Add configurable router event intervals (:issue:`2071`) |
| 36 | |
| 37 | - Add router-dead-interval configuration setting (:issue:`1878`) |
| 38 | |
| 39 | - Add log formatting specified by log4cxx configuration file (:issue:`1950`) |
| 40 | |
| 41 | - Face URIs in configuration file are checked for validity on load (:issue:`2070`) |
| 42 | |
| 43 | - Configuration variables with default values are now optional (:issue:`1949`) |
| 44 | |
| 45 | - Recalculate routing table after face destroy event (:issue:`2635`) |
| 46 | |
| 47 | - Add Travis-CI build script |
| 48 | |
| 49 | **Code changes**: |
| 50 | |
| 51 | - Change adjacency status from uint32_t to enum (:issue:`1946`) |
| 52 | |
| 53 | - Remove scheduler from NLSR class (:issue:`1981`) |
| 54 | |
| 55 | - Change hyperbolic cost adjustment factor from 100 to 1000 (:issue:`1974`) |
| 56 | |
| 57 | - Remove use of outdated namespace ``ndn::Tlv`` (:issue:`2079`) |
| 58 | |
| 59 | - Remove use of deprecated ``ndn::nfd::Controller(Face&)`` constructor (:issue:`2133`) |
| 60 | |
| 61 | - Routing update publishing is abstracted to SyncLogicHandler (:issue:`2289`) |
| 62 | |
| 63 | - Make ConfParameter variable types consistent with min and max values (:issue:`2084`) |
| 64 | |
| 65 | - Replace LSA string literals with constants (:issue:`2310`) |
| 66 | |
| 67 | - Subscribe to FaceMonitor notifications using connect (:issue:`2350`) |
| 68 | |
| 69 | - Log exceptions thrown in event loop |
| 70 | |
| 71 | - Change ``ndn::ptr_lib::shared_ptr`` to ``std::shared_ptr`` (:issue:`2110`) |
| 72 | |
| 73 | - Avoid deprecated ``ndn::Name::set`` method (:issue:`2505`) |
| 74 | |
| 75 | - Update waf to version 1.8.8-dev |
| 76 | |
| 77 | - Add sorting tiebreaker to NexthopList (:issue:`2715`) |
| 78 | |
| 79 | - Update Jenkins-CI build scripts |
| 80 | |
| 81 | **Bug fixes**: |
| 82 | |
| 83 | - Fix python3 build error (:issue:`1956`) |
| 84 | |
| 85 | - Fix typos in nlsr.conf security section (:issue:`1985`) |
| 86 | |
| 87 | - Stop SyncLogicHandler from fetching a router’s own LSAs (:issue:`2005`) |
| 88 | |
| 89 | - Fix Name LSA comparison which could cause incorrect advertised names to be removed (:issue:`2029`) |
| 90 | |
| 91 | - Fix issue where more faces than max-faces-per-prefix could be applied to a prefix (:issue:`2018`) |
| 92 | |
| 93 | - Stop LSDB from retrieving and out of date LSA when a new one is detected (:issue:`1987`) |
| 94 | |
| 95 | - Correct mistakes in documentation |
| 96 | |
| 97 | - Correct bitmask used to copy Name LSA sequence number (:issue:`2323`) |
| 98 | |
Alexander Afanasyev | 7decbbf | 2014-08-24 21:29:01 -0700 | [diff] [blame] | 99 | NLSR version 0.1.0 (initial release) |
| 100 | ++++++++++++++++++++++++++++++++++++ |
Vince Lehman | b722b10 | 2014-08-24 16:33:49 -0500 | [diff] [blame] | 101 | |
Alexander Afanasyev | 7decbbf | 2014-08-24 21:29:01 -0700 | [diff] [blame] | 102 | Release date: August 25, 2014 |
Vince Lehman | b722b10 | 2014-08-24 16:33:49 -0500 | [diff] [blame] | 103 | |
Alexander Afanasyev | 7decbbf | 2014-08-24 21:29:01 -0700 | [diff] [blame] | 104 | The main design goal of NLSR is to provide a routing protocol to populate `NFD's |
| 105 | <http://named-data.net/doc/NFD/current/>`_ RIB. NLSR calculates the routing table using |
| 106 | link-state or hyperbolic routing and produces multiple faces for each reachable name |
| 107 | prefix in a single authoritative domain. |
Vince Lehman | b722b10 | 2014-08-24 16:33:49 -0500 | [diff] [blame] | 108 | |
Alexander Afanasyev | 7decbbf | 2014-08-24 21:29:01 -0700 | [diff] [blame] | 109 | **Included features**: |
Vince Lehman | b722b10 | 2014-08-24 16:33:49 -0500 | [diff] [blame] | 110 | |
Junxiao Shi | f09e263 | 2015-01-02 18:15:01 -0700 | [diff] [blame] | 111 | - Advertise availability of content through the configured router |
Vince Lehman | b722b10 | 2014-08-24 16:33:49 -0500 | [diff] [blame] | 112 | |
Alexander Afanasyev | 7decbbf | 2014-08-24 21:29:01 -0700 | [diff] [blame] | 113 | - 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] | 114 | |
Junxiao Shi | f09e263 | 2015-01-02 18:15:01 -0700 | [diff] [blame] | 115 | - 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] | 116 | |
Junxiao Shi | f09e263 | 2015-01-02 18:15:01 -0700 | [diff] [blame] | 117 | - Configure maximum number of faces per prefix in NFD’s RIB |
Vince Lehman | b722b10 | 2014-08-24 16:33:49 -0500 | [diff] [blame] | 118 | |
Junxiao Shi | f09e263 | 2015-01-02 18:15:01 -0700 | [diff] [blame] | 119 | - 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] | 120 | |
Junxiao Shi | f09e263 | 2015-01-02 18:15:01 -0700 | [diff] [blame] | 121 | - Provide two routing protocols: |
Vince Lehman | b722b10 | 2014-08-24 16:33:49 -0500 | [diff] [blame] | 122 | |
Junxiao Shi | f09e263 | 2015-01-02 18:15:01 -0700 | [diff] [blame] | 123 | + Link State routing: calculate route cost based on link costs |
| 124 | + Hyperbolic routing: calculate route cost based on hyperbolic coordinates |
Vince Lehman | b722b10 | 2014-08-24 16:33:49 -0500 | [diff] [blame] | 125 | |
Alexander Afanasyev | 7decbbf | 2014-08-24 21:29:01 -0700 | [diff] [blame] | 126 | - Use a hierarchical trust model for routing within a single administrative domain |
Vince Lehman | b722b10 | 2014-08-24 16:33:49 -0500 | [diff] [blame] | 127 | |
Junxiao Shi | f09e263 | 2015-01-02 18:15:01 -0700 | [diff] [blame] | 128 | - Keep NFD’s RIB updated on failure and recovery |