blob: b5376ab9a822a6e29d5a5cb611a8e9d07fea4e15 [file] [log] [blame]
Alexander Afanasyev40ee3812014-07-01 00:25:21 -07001.. _NFD Release Notes:
Beichuan Zhang55b8ed42014-04-26 22:25:44 -07002
Alexander Afanasyev40ee3812014-07-01 00:25:21 -07003NFD Release Notes
4=================
Beichuan Zhang55b8ed42014-04-26 22:25:44 -07005
Alexander Afanasyev7c10b3b2015-01-20 12:24:27 -08006NFD version 0.3.0 (changes since version 0.2.0)
7-----------------------------------------------
8
9Release date: February 2, 2015
10
11
12New features:
13^^^^^^^^^^^^^
14
15- **Build**
16
17 + The code now requires C++11. The minimum supported gcc version is 4.6, as earlier versions
18 do not have proper support for C++11 features.
19
20- **Faces**
21
22 + Enable detection of WebSocket connection failures using ping/pong messages (:issue:`1903`)
23
24 + In EthernetFace:
25
26 * Avoid putting the NIC in promiscuous mode if possible (:issue:`1278`)
27
28 * Report packets dropped by the kernel if debug is enabled (:issue:`2441`)
29
30 * Integrate NDNLP fragmentation (:issue:`1209`)
31
32- **Forwarding**
33
34 + Strategy versioning (:issue:`1893`)
35
36 + New Dead Nonce List table to supplement PIT for loop detection (:issue:`1953`)
37
38 + Abstract retransmission suppression logic (:issue:`2377`)
39
40 + New forwarding strategy for access router (:issue:`1999`)
41
42- **Management**
43
44 + Add config file-based strategy selection (:issue:`2053`)
45
46 The sample config file now includes strategy selection for ``/``, ``/localhost``,
47 ``/localhost/nfd``, and ``/ndn/broadcast`` namespaces as follows:
48
49 ::
50
51 tables
52 {
53 ...
54 strategy_choice
55 {
56 / /localhost/nfd/strategy/best-route
57 /localhost /localhost/nfd/strategy/broadcast
58 /localhost/nfd /localhost/nfd/strategy/best-route
59 /ndn/broadcast /localhost/nfd/strategy/broadcast
60 }
61 }
62
63 + Implement Query Operation in FaceManager (:issue:`1993`)
64
65 + FaceManager now responds with producer-generated NACK when query is invalid (:issue:`1993`)
66
67 + Add functionality for automatic remote prefix registration (:issue:`2056`)
68
69 + Only canonical FaceUri are allowed in faces/create commands (:issue:`1910`)
70
71- **Tables**
72
73 + StrategyInfoHost can now store multiple StrategyInfo of distinct types (:issue:`2240`)
74
75 + Enable iteration over PIT and CS entries (:issue:`2339`)
76
77 + Allow predicate to be specified in Measurements::findLongestPrefixMatch (:issue:`2314`)
78
79 + Calculate the implicit digest of Data packets in CS only when necessary (:issue:`1706`)
80
81- **Tools**
82
83 + Publish ``/localhop/ndn-autoconf/routable-prefixes`` from ``ndn-autoconfig-server``
84 (:issue:`1954`)
85
86 + Display detailed NFD software verion in ``nfd-status-http-server`` and ``nfd-status``
87 (:issue:`1916`)
88
89 + ``nfdc`` now accepts FaceUri in all commands (:issue:`1995`)
90
91 + Add daemon mode for ``ndn-autoconfig`` to re-run detection when connectivity changes
92 (:issue:`2417`)
93
94- **Core**
95
96 + New scheduler::ScopedEventId class to automatically handle scheduled event lifetime
97 (:issue:`2295`)
98
99Updates and bug fixes:
100^^^^^^^^^^^^^^^^^^^^^^
101
102- **Documentation**
103
104 + NFD Developer's guide has been updated to reflect changes in the codebase
105
106 + Installation instruction updates
107
108 + Update of config file instructions for disabling unix sockets (:issue:`2190`)
109
110- **Core**
111
112 + Use implementations moved to ndn-cxx library
113
114 + Use Signal from ndn-cxx (:issue:`2272`, :issue:`2300`)
115
116 + use ethernet::Address from ndn-cxx (:issue:`2142`)
117
118 + Use MAX_NDN_PACKET_SIZE constant from ndn-cxx (:issue:`2099`)
119
120 + Use DEFAULT_INTEREST_LIFETIME from ndn-cxx (:issue:`2202`)
121
122 + Use FaceUri from ndn-cxx (:issue:`2143`)
123
124 + Use DummyClientFace from ndn-cxx (:issue:`2186`)
125
126 + Use ndn::dns from ndn-cxx (:issue:`2207`)
127
128 + Move Network class implementation from ``tools/`` to ``core/``
129
130 + Ignore non-Ethernet ``AF_LINK`` addresses when enumerating NICs on OSX and other BSD systems
131
132 + Fix bug on not properly setting FreshnessPeriod inside SegmentPublisher (:issue:`2438`)
133
134- **Faces**
135
136 + Fix spurious assertion failure in StreamFace (:issue:`1856`)
137
138 + Update websocketpp submodule (:issue:`1903`)
139
140 + Replace FaceFlags with individual fields (:issue:`1992`)
141
142 + Drop WebSocket message if the size is larger than maximum NDN packet size (:issue:`2081`)
143
144 + Make EthernetFace more robust against errors (:issue:`1984`)
145
146 + Prevent potential infinite loop in TcpFactory and UdpFactory (:issue:`2292`)
147
148 + Prevent crashes when attempting to create a UdpFace over a half-working connection
149 (:issue:`2311`)
150
151 + Support MTU larger than 1500 in EthernetFace (for jumbo frames) (:issue:`2305`)
152
153 + Re-enable EthernetFace on OS X platform with boost >=1.57.0 (:issue:`1922`)
154
155 + Fix ``ioctl()`` calls on platforms where libpcap uses ``/dev/bpf*`` (:issue:`2327`)
156
157 + Fix overhead estimation in NDNLP slicer (:issue:`2317`)
158
159 + Replace usage of deprecated EventEmitter with Signal in Face abstractions (:issue:`2300`)
160
161 + Fix NDNLP PartialMessage cleanup scheduling (:issue:`2414`)
162
163 + Remove unnecessary use of DNS resolver in (Udp|Tcp|WebSocket)Factory (:issue:`2422`)
164
165- **Forwarding**
166
167 + Updates related to NccStrategy
168
169 * Fix to prevent remembering of suboptimal upstreams (:issue:`1961`)
170
171 * Optimizing FwNccStrategy/FavorRespondingUpstream test case (:issue:`2037`)
172
173 * Proper detection for new PIT entry (:issue:`1971`)
174
175 * Use UnitTestTimeFixture in NCC test case (:issue:`2163`)
176
177 * Fix loop back to sole downstream (:issue:`1998`)
178
179 + Updates related to BestRoute strategy
180
181 + Redesign best-route v2 strategy test case (:issue:`2126`)
182
183 + Fix clang compilation error in best-route v2 test case (:issue:`2179`)
184
185 + Use UnitTestClock in BestRouteStrategy2 test (:issue:`2160`)
186
187 + Allow strategies limited access to FaceTable (:issue:`2272`)
188
189- **Tables**
190
191 + Ensure that eviction of unsolicited Data is done in FIFO order (:issue:`2043`)
192
193 + Simplify table implementations with C++11 features (:issue:`2100`)
194
195 + Fix issue with Fib::removeNextHopFromAllEntries invalidating NameTree iterator
196 (:issue:`2177`)
197
198 + Replace deprecated EventEmitter with Signal in FaceTable (:issue:`2272`)
199
200 + Refactored implementation of ContentStore based on std::set (:issue:`2254`)
201
202- **Management**
203
204 + Allow omitted FaceId in faces/create command (:issue:`2031`)
205
206 + Avoid deprecated ``ndn::nfd::Controller(Face&)`` constructor (:issue:`2039`)
207
208 + Enable check of command length before accessing verb (:issue:`2151`)
209
210 + Rename FaceEntry to Route (:issue:`2159`)
211
212 + Insert RIB command prefixes into RIB (:issue:`2312`)
213
214- **Tools**
215
216 + Display face attribute fields instead of FaceFlags in ``nfd-status`` and
217 ``nfd-status-http-server`` output (:issue:`1991`)
218
219 + Fix ``nfd-status-http-server`` hanging when nfd-status output is >64k (:issue:`2121`)
220
221 + Ensure that ``ndn-autoconfig`` canonizes FaceUri before sending commands to NFD
222 (:issue:`2387`)
223
224 + Refactored ndn-autoconfig implementation (:issue:`2421`)
225
226 + ndn-autoconfig will now register also ``/localhop/nfd`` prefix towards the hub (:issue:`2416`)
227
228- **Tests**
229
230 + Use UnitTestClock in Forwarder persistent loop test case (:issue:`2162`)
231
232 + Use LimitedIo in FwForwarder/SimpleExchange test case (:issue:`2161`)
233
234- **Build**
235
236 + Fix build error with python3 (:issue:`1302`)
237
238 + Embed CI build and test running script
239
240 + Properly disable assertions in release builds (:issue:`2139`)
241
242 + Embed setting of ``PKG_CONFIG_PATH`` variable to commonly used values (:issue:`2178`)
243
244 + Add conditional compilation for NetworkInterface and PrivilegeHelper
245
246 + Support tools with multiple translation units (:issue:`2344`)
247
248Removals
249^^^^^^^^
250
251- Remove ``listen`` option from unix channel configuration (:issue:`2188`)
252
253- Remove usage of deprecated ``MetaInfo::TYPE_*`` constants (:issue:`2128`)
254
255- Eliminate MapValueIterator in favor of ``boost::adaptors::map_values``
256
257****************************************************************************
258
Alexander Afanasyev40ee3812014-07-01 00:25:21 -0700259NFD version 0.2.0 (changes since version 0.1.0)
260-----------------------------------------------
261
Alexander Afanasyev186c3162014-07-29 08:59:49 -0700262Release date: August 25, 2014
Alexander Afanasyev40ee3812014-07-01 00:25:21 -0700263
264- **Documentation**
265
266 + `"NFD Developer's Guide" by NFD authors
267 <http://named-data.net/wp-content/uploads/2014/07/NFD-developer-guide.pdf>`_ that
268 explains NFD's internals including the overall design, major modules, their
269 implementation, and their interactions
270
271 + New detailed instructions on how to enable auto-start of NFD using OSX ``launchd``
272 and Ubuntu's ``upstart`` (see `contrib/ folder
273 <https://github.com/named-data/NFD/tree/master/contrib>`_)
274
275- **Core**
276
Alexander Afanasyev7c10b3b2015-01-20 12:24:27 -0800277 + Add support for temporary privilege drop and elevation (:issue:`1370`)
Alexander Afanasyev40ee3812014-07-01 00:25:21 -0700278
279 + Add support to reinitialize multicast Faces and (partially) reload config file
Alexander Afanasyev7c10b3b2015-01-20 12:24:27 -0800280 (:issue:`1584`)
Alexander Afanasyev40ee3812014-07-01 00:25:21 -0700281
Alexander Afanasyev7c10b3b2015-01-20 12:24:27 -0800282 + Randomization routines are now uniform across all NFD modules (:issue:`1369`)
Alexander Afanasyev40ee3812014-07-01 00:25:21 -0700283
Alexander Afanasyev7c10b3b2015-01-20 12:24:27 -0800284 + Enable use of new NDN naming conventions (:issue:`1837` and :issue:`1838`)
Alexander Afanasyev186c3162014-07-29 08:59:49 -0700285
Alexander Afanasyev40ee3812014-07-01 00:25:21 -0700286- **Faces**
287
Alexander Afanasyev7c10b3b2015-01-20 12:24:27 -0800288 + `WebSocket <http://tools.ietf.org/html/rfc6455>`_ Face support (:issue:`1468`)
Alexander Afanasyev40ee3812014-07-01 00:25:21 -0700289
Alexander Afanasyev7c10b3b2015-01-20 12:24:27 -0800290 + Fix Ethernet Face support on Linux with ``libpcap`` version >=1.5.0 (:issue:`1511`)
Alexander Afanasyev40ee3812014-07-01 00:25:21 -0700291
Alexander Afanasyev7c10b3b2015-01-20 12:24:27 -0800292 + Fix to recognize IPv4-mapped IPv6 addresses in ``FaceUri`` (:issue:`1635`)
Alexander Afanasyev40ee3812014-07-01 00:25:21 -0700293
Alexander Afanasyev7c10b3b2015-01-20 12:24:27 -0800294 + Fix to avoid multiple onFail events (:issue:`1497`)
Alexander Afanasyev40ee3812014-07-01 00:25:21 -0700295
Alexander Afanasyev7c10b3b2015-01-20 12:24:27 -0800296 + Fix broken support of multicast UDP Faces on OSX (:issue:`1668`)
Alexander Afanasyev40ee3812014-07-01 00:25:21 -0700297
Alexander Afanasyev7c10b3b2015-01-20 12:24:27 -0800298 + On Linux, path MTU discovery on unicast UDPv4 faces is now disabled (:issue:`1651`)
Alexander Afanasyev40ee3812014-07-01 00:25:21 -0700299
Alexander Afanasyev7c10b3b2015-01-20 12:24:27 -0800300 + Added link layer byte counts in FaceCounters (:issue:`1729`)
Alexander Afanasyev186c3162014-07-29 08:59:49 -0700301
Alexander Afanasyev7c10b3b2015-01-20 12:24:27 -0800302 + Face IDs 0-255 are now reserved for internal NFD use (:issue:`1620`)
Alexander Afanasyev186c3162014-07-29 08:59:49 -0700303
Alexander Afanasyev7c10b3b2015-01-20 12:24:27 -0800304 + Serialized StreamFace::send(Interest|Data) operations using queue (:issue:`1777`)
Alexander Afanasyev186c3162014-07-29 08:59:49 -0700305
Alexander Afanasyev40ee3812014-07-01 00:25:21 -0700306- **Forwarding**
307
Alexander Afanasyev7c10b3b2015-01-20 12:24:27 -0800308 + Outgoing Interest pipeline now allows strategies to request a fresh ``Nonce`` (e.g., when
309 the strategy needs to re-express the Interest) (:issue:`1596`)
Alexander Afanasyev40ee3812014-07-01 00:25:21 -0700310
311 + Fix in the incoming Data pipeline to avoid sending packets to the incoming Face
Alexander Afanasyev7c10b3b2015-01-20 12:24:27 -0800312 (:issue:`1556`)
Alexander Afanasyev40ee3812014-07-01 00:25:21 -0700313
Alexander Afanasyev7c10b3b2015-01-20 12:24:27 -0800314 + New ``RttEstimator`` class that implements the Mean-Deviation RTT estimator to be used in
315 forwarding strategies
Alexander Afanasyev40ee3812014-07-01 00:25:21 -0700316
Alexander Afanasyev7c10b3b2015-01-20 12:24:27 -0800317 + Fix memory leak caused by not removing PIT entry when Interest matches CS (:issue:`1882`)
Alexander Afanasyev186c3162014-07-29 08:59:49 -0700318
Alexander Afanasyev7c10b3b2015-01-20 12:24:27 -0800319 + Fix spurious assertion in NCC strategy (:issue:`1853`)
Alexander Afanasyev186c3162014-07-29 08:59:49 -0700320
Alexander Afanasyev40ee3812014-07-01 00:25:21 -0700321- **Tables**
322
323 + Fix in ContentStore to properly adjust internal structure when ``Cs::setLimit`` is called
Alexander Afanasyev7c10b3b2015-01-20 12:24:27 -0800324 (:issue:`1646`)
Alexander Afanasyev40ee3812014-07-01 00:25:21 -0700325
Alexander Afanasyev7c10b3b2015-01-20 12:24:27 -0800326 + New option in configuration file to set an upper bound on ContentStore size (:issue:`1623`)
Alexander Afanasyev40ee3812014-07-01 00:25:21 -0700327
Alexander Afanasyev7c10b3b2015-01-20 12:24:27 -0800328 + Fix to prevent infinite lifetime of Measurement entries (:issue:`1665`)
Alexander Afanasyev40ee3812014-07-01 00:25:21 -0700329
Alexander Afanasyev7c10b3b2015-01-20 12:24:27 -0800330 + Introducing capacity limit in PIT NonceList (:issue:`1770`)
Alexander Afanasyev186c3162014-07-29 08:59:49 -0700331
Alexander Afanasyev7c10b3b2015-01-20 12:24:27 -0800332 + Fix memory leak in NameTree (:issue:`1803`)
Alexander Afanasyev186c3162014-07-29 08:59:49 -0700333
Alexander Afanasyev7c10b3b2015-01-20 12:24:27 -0800334 + Fix segfault during Fib::removeNextHopFromAllEntries (:issue:`1816`)
Alexander Afanasyev186c3162014-07-29 08:59:49 -0700335
Alexander Afanasyev40ee3812014-07-01 00:25:21 -0700336- **Management**
337
Alexander Afanasyev7c10b3b2015-01-20 12:24:27 -0800338 + RibManager now fully support ``CHILD_INHERIT`` and ``CAPTURE`` flags (:issue:`1325`)
Alexander Afanasyev40ee3812014-07-01 00:25:21 -0700339
Alexander Afanasyev7c10b3b2015-01-20 12:24:27 -0800340 + Fix in ``FaceManager`` to respond with canonical form of Face URI for Face creation command
341 (:issue:`1619`)
Alexander Afanasyev40ee3812014-07-01 00:25:21 -0700342
Alexander Afanasyev7c10b3b2015-01-20 12:24:27 -0800343 + Fix to prevent creation of duplicate TCP/UDP Faces due to async calls (:issue:`1680`)
Alexander Afanasyev40ee3812014-07-01 00:25:21 -0700344
Alexander Afanasyev7c10b3b2015-01-20 12:24:27 -0800345 + Fix to properly handle optional ExpirationPeriod in RibRegister command (:issue:`1772`)
Alexander Afanasyev186c3162014-07-29 08:59:49 -0700346
Alexander Afanasyev7c10b3b2015-01-20 12:24:27 -0800347 + Added functionality of publishing RIB status (RIB dataset) by RibManager (:issue:`1662`)
Alexander Afanasyev186c3162014-07-29 08:59:49 -0700348
Alexander Afanasyev7c10b3b2015-01-20 12:24:27 -0800349 + Fix issue of not properly canceling route expiration during processing of ``unregister``
350 command (:issue:`1902`)
Alexander Afanasyev186c3162014-07-29 08:59:49 -0700351
Alexander Afanasyev7c10b3b2015-01-20 12:24:27 -0800352 + Enable periodic clean up of route entries that refer to non-existing faces (:issue:`1875`)
Alexander Afanasyev186c3162014-07-29 08:59:49 -0700353
Alexander Afanasyev40ee3812014-07-01 00:25:21 -0700354- **Tools**
355
356 + Extended functionality of ``nfd-status``
357
358 * ``-x`` to output in XML format, see :ref:`nfd-status xml schema`
359 * ``-c`` to retrieve channel status information (enabled by default)
360 * ``-s`` to retrieve configured strategy choice for NDN namespaces (enabled by default)
361 * Face status now includes reporting of Face flags (``local`` and ``on-demand``)
362 * On-demand UDP Faces now report remaining lifetime (``expirationPeriod``)
Alexander Afanasyev186c3162014-07-29 08:59:49 -0700363 * ``-r`` to retrieve RIB information
364
365 + Improved ``nfd-status-http-server``
366
367 * HTTP server now presents status as XSL-formatted XML page
368 * XML dataset and formatted page now include certificate name of the corresponding NFD
Alexander Afanasyev7c10b3b2015-01-20 12:24:27 -0800369 (:issue:`1807`)
Alexander Afanasyev40ee3812014-07-01 00:25:21 -0700370
Alexander Afanasyev7c10b3b2015-01-20 12:24:27 -0800371 + Several fixes in ``ndn-autoconfig`` tool (:issue:`1595`)
Alexander Afanasyev40ee3812014-07-01 00:25:21 -0700372
373 + Extended options in ``nfdc``:
374
375 * ``-e`` to set expiration time for registered routes
376 * ``-o`` to specify origin for registration and unregistration commands
377
Alexander Afanasyev186c3162014-07-29 08:59:49 -0700378 + Enable ``all-faces-prefix'' option in ``nfd-autoreg`` to register prefix for all face
Alexander Afanasyev7c10b3b2015-01-20 12:24:27 -0800379 (on-demand and non-on-demand) (:issue:`1861`)
Alexander Afanasyev186c3162014-07-29 08:59:49 -0700380
Alexander Afanasyev7c10b3b2015-01-20 12:24:27 -0800381 + Enable processing auto-registration in ``nfd-autoreg`` for faces that existed prior to
382 start of the tool (:issue:`1863`)
Alexander Afanasyev186c3162014-07-29 08:59:49 -0700383
Alexander Afanasyev40ee3812014-07-01 00:25:21 -0700384- **Build**
385
386 + Enable support of precompiled headers for clang and gcc to speed up compilation
387
388- `Other small fixes and extensions
389 <https://github.com/named-data/NFD/compare/NFD-0.1.0...master>`_
390
Alexander Afanasyev7c10b3b2015-01-20 12:24:27 -0800391****************************************************************************
392
Alexander Afanasyev40ee3812014-07-01 00:25:21 -0700393NFD version 0.1.0
394-----------------
395
396Release date: May 7, 2014
Beichuan Zhang55b8ed42014-04-26 22:25:44 -0700397
398This is an incomplete list of features that are implemented in NFD version 0.1.0.
399
Alexander Afanasyev26181532014-05-07 23:38:51 -0700400- **Packet Format**
Beichuan Zhang55b8ed42014-04-26 22:25:44 -0700401
402 + `NDN-TLV <http://named-data.net/doc/ndn-tlv/>`_
403 + LocalControlHeader, to allow apps to set outgoing face and learn incoming face.
404
Alexander Afanasyev26181532014-05-07 23:38:51 -0700405- **Faces**
Beichuan Zhang55b8ed42014-04-26 22:25:44 -0700406
407 + Unix stream socket
408 + UDP unicast
409 + UDP multicast
410 + TCP
411 + Ethernet, currently without fragmentation.
412
413 .. note::
414 Ethernet support will not work properly on Linux kernels with TPACKET_V3 flexible
415 buffer implementation (>= 3.2.0) and libpcap >= 1.5.0 (e.g., Ubuntu Linux 14.04).
416 Refer to `Issue 1551 <http://redmine.named-data.net/issues/1511>`_ for more
417 detail and implementation progress.
418
Alexander Afanasyev26181532014-05-07 23:38:51 -0700419- **Management**
Beichuan Zhang55b8ed42014-04-26 22:25:44 -0700420
421 + Use of signed Interests as commands, with authentication and authorization.
422 + Face management
423 + FIB management
424 + Per-namespace strategy selection
425 + NFD status publishing
426 + Notification to authorized apps of internal events, including Face creation and destruction.
427
Alexander Afanasyev26181532014-05-07 23:38:51 -0700428- **Tables and forwarding pipelines** support most Interest/Data processing, including
Beichuan Zhang55b8ed42014-04-26 22:25:44 -0700429 selectors.
430
Alexander Afanasyev26181532014-05-07 23:38:51 -0700431- **RIB Management** that runs as a separate process, ``nrd``. It supports basic prefix
Beichuan Zhang55b8ed42014-04-26 22:25:44 -0700432 registration by applications, but no flags yet.
433
Alexander Afanasyev26181532014-05-07 23:38:51 -0700434- **Strategies**
Beichuan Zhang55b8ed42014-04-26 22:25:44 -0700435
436 + ``broadcast``
437 + ``best-route``
438 + ``ncc``: based on ccnx 0.7 for experimentation
439 + ``client-control``: authorized application can directly control Interest forwarding
440
Alexander Afanasyev26181532014-05-07 23:38:51 -0700441- **Name-based scoping**
Beichuan Zhang55b8ed42014-04-26 22:25:44 -0700442
443 + ``/localhost``: communication only within localhost using "local" Faces
444 (UnixStreamFace, LocalTcpFace). NFD will strictly enforce this scope for Interests
445 and Data packets
446 + ``/localhop``: one-hop communication (e.g., if at least one incoming or outgoing Face
447 in PIT entry is non-local, the Interest cannot be forwarded to any non-local Face)
448
Alexander Afanasyev26181532014-05-07 23:38:51 -0700449- **Support configuration file**, which is in the Boost INFO format.
Beichuan Zhang55b8ed42014-04-26 22:25:44 -0700450
Alexander Afanasyev26181532014-05-07 23:38:51 -0700451- **Applications**
Beichuan Zhang55b8ed42014-04-26 22:25:44 -0700452
453 + Tools to discover hubs on NDN testbed.
454 + peek/poke and traffic generators for testing and debugging.
455 + ``nfdc``, a command-line tool to configure NFD.
456 + ``nfd-status``, a command-line tool to query NFD status.
457 + ``nfd-status-http-server``, which reads the NFD status and publishes over HTTP.
458
459
460Planned Functions and Features for Next Releases
461------------------------------------------------
462
463- NACK
464 A packet sent back by a producer or a router to signal the unavailability of a requested
465 Data packet. The protocol specification for NACK is in progress.
466
467- New strategies
468 Additional strategies, including self-learning that populates the FIB by observing
469 Interest and Data exchange.
470
Alexander Afanasyev26181532014-05-07 23:38:51 -0700471- Hop-by-hop Interest limit mechanism
472 For congestion control
Beichuan Zhang55b8ed42014-04-26 22:25:44 -0700473
474- Face enhancements
475 Add fragmentation support for Ethernet face, may add support for new types such as
476 WiFi direct and WebSockets.
477
478- Tables
479 Experiment and evaluate different data structures and algorithms.
480
481- RIB management
482 Move to more scalable data structures and support all flags in prefix registrations.
483
484- Tunnel management
485 For hub nodes to authenticate incoming tunnel requests and maintain the tunnels.
486
487- Extensible name-based scoping
Alexander Afanasyev26181532014-05-07 23:38:51 -0700488 Configurable organization-based scoping