NFD version 0.2.0

Release date: August 25, 2014

Changes since version 0.1.0:

  • Documentation

  • Core

    • Add support for temporary privilege drop and elevation (issue #1370)

    • Add support to reinitialize multicast Faces and (partially) reload config file (issue #1584)

    • Randomization routines are now uniform across all NFD modules (issue #1369)

    • Enable use of new NDN naming conventions (issue #1837 and issue #1838)

  • Faces

    • WebSocket Face support (issue #1468)

    • Fix Ethernet Face support on Linux with libpcap version >= 1.5.0 (issue #1511)

    • Fix to recognize IPv4-mapped IPv6 addresses in FaceUri (issue #1635)

    • Fix to avoid multiple onFail events (issue #1497)

    • Fix broken support of multicast UDP Faces on OSX (issue #1668)

    • On Linux, path MTU discovery on unicast UDPv4 faces is now disabled (issue #1651)

    • Added link layer byte counts in FaceCounters (issue #1729)

    • Face IDs 0-255 are now reserved for internal NFD use (issue #1620)

    • Serialized StreamFace::send(Interest|Data) operations using queue (issue #1777)

  • Forwarding

    • Outgoing Interest pipeline now allows strategies to request a fresh Nonce (e.g., when the strategy needs to re-express the Interest) (issue #1596)

    • Fix in the incoming Data pipeline to avoid sending packets to the incoming Face (issue #1556)

    • New RttEstimator class that implements the Mean-Deviation RTT estimator to be used in forwarding strategies

    • Fix memory leak caused by not removing PIT entry when Interest matches CS (issue #1882)

    • Fix spurious assertion in NCC strategy (issue #1853)

  • Tables

    • Fix in ContentStore to properly adjust internal structure when Cs::setLimit is called (issue #1646)

    • New option in configuration file to set an upper bound on ContentStore size (issue #1623)

    • Fix to prevent infinite lifetime of Measurement entries (issue #1665)

    • Introducing capacity limit in PIT NonceList (issue #1770)

    • Fix memory leak in NameTree (issue #1803)

    • Fix segfault during Fib::removeNextHopFromAllEntries (issue #1816)

  • Management

    • RibManager now fully support CHILD_INHERIT and CAPTURE flags (issue #1325)

    • Fix in FaceManager to respond with canonical form of Face URI for Face creation command (issue #1619)

    • Fix to prevent creation of duplicate TCP/UDP Faces due to async calls (issue #1680)

    • Fix to properly handle optional ExpirationPeriod in RibRegister command (issue #1772)

    • Added functionality of publishing RIB status (RIB dataset) by RibManager (issue #1662)

    • Fix issue of not properly canceling route expiration during processing of unregister command (issue #1902)

    • Enable periodic clean up of route entries that refer to non-existing faces (issue #1875)

  • Tools

    • Extended functionality of nfd-status

      • -x to output in XML format, see NFD Status XML Schema

      • -c to retrieve channel status information (enabled by default)

      • -s to retrieve configured strategy choice for NDN namespaces (enabled by default)

      • Face status now includes reporting of Face flags (local and on-demand)

      • On-demand UDP Faces now report remaining lifetime (expirationPeriod)

      • -r to retrieve RIB information

    • Improved nfd-status-http-server

      • HTTP server now presents status as XSL-formatted XML page

      • XML dataset and formatted page now include certificate name of the corresponding NFD (issue #1807)

    • Several fixes in ndn-autoconfig tool (issue #1595)

    • Extended options in nfdc:

      • -e to set expiration time for registered routes

      • -o to specify origin for registration and unregistration commands

    • Enable all-faces-prefix'' option in ``nfd-autoreg to register prefix for all face (on-demand and non-on-demand) (issue #1861)

    • Enable processing auto-registration in nfd-autoreg for faces that existed prior to start of the tool (issue #1863)

  • Build

    • Enable support of precompiled headers for clang and gcc to speed up compilation

  • Other small fixes and extensions