Skip to content

Tags

Tags give the ability to mark specific points in history as being important
  • NFD-0.3.3
    Changes since version 0.3.2)
    
    Release date: July 1, 2015
    
    New features:
    
    - Content Store replacement policy interface (Issue 1207)
    - Add unit file and instructions for systemd (Issue 1586)
    - NDN Essential Tools version 0.1 featuring:
      - ndnpeek, ndnpoke: a pair of programs to request and make
        available for retrieval of a single Data packet
      - ndnping, ndnpingserver: reachability testing tools for Named
        Data Networking
      - ndndump: a traffic analysis tool that captures Interest and Data
        packets on the wire
      - ndn-dissect: an NDN packet format inspector. It reads zero or
        more NDN packets from either an input file or the standard
        input, and displays the Type-Length-Value (TLV) structure of
        those packets on the standard output.
    
    Updates and bug fixes:
    
    - Avoid loopback new Interest in AccessStrategy (Issue 2831)
    - Simplified implementation of nfd-status using SegmentFetcher utility
      class (Issue 2456)
    
    Deprecated:
    
    - ndn-tlv-peek and ndn-tlv-poke command-line tools: use ndnpeek and
      ndnpoke programs from NDN Essential Tools repository .
    
    Upcoming features:
    
    - NDNLPv2 (http://redmine.named-data.net/projects/nfd/wiki/NDNLPv2,
      Issues 2520, 2879, 2763, 2883, 2841, 2866)
    - Refactored implementation of NFD management (Issues 2200, 2107)
    
  • NFD-0.3.2
    Changes since version 0.3.1
    
    Release date: May 12, 2015
    
    New features:
    
    - Tables
      - Change lookup API to allow async implementations of ContentStore
        (Issue 2411)
    - Management
      - Perform FIB updates before modifying RIB (Issue 1941)
    
    Updates and bug fixes:
    
    - Documentation
      - Update planned Features: face enhancements (Issue 2617)
      - Updated NFD's developer guide to reflect new changes and adding
        a new section on NFD/ndn-cxx unit testing
    - Face
      - Refactor channel acceptors to avoid use of shared pointers
        (Issue 2613)
      - Refactor code to avoid deprecated Block::fromBuffer overloads
        (Issue 2553)
      - Refactor code to use move semantics for sockets where possible
        (Issue 2613)
      - Switch to non-throwing version of websocketpp APIs (Issue 2630)
    - Forwarding
      - Extend measurements lifetime in AccessStrategy (Issue 2452)
    - Management
      - Stop removed namespace from inheriting ancestor route (Issue 2757)
      - Fix TestFibUpdates/EraseFace on Ubuntu 14.04 32-bit (Issue 2697)
    - Tools
      - Fix hanging of nfdc on wrong input (Issue 2690)
    - Build
      - Make build scripts compatible with Python 3 (Issue 2625)
      - Get rid of the last use of ndn::dns in NFD (Issue 2422)
      - Update waf build system to version 1.8.9 (Issues 2209, 2657, 2792)
      - Tweak default pkg-config search paths (Issue 2711)
      - Use C version of snprintf (Issue 2299)
      - Emulate std::to_string when it is missing (Issue 2299)
      - Fix several "defined but not used" warnings with gcc-5 (Issue 2767)
      - Disable precompiled headers on OS X with clang < 6.1.0 (Issue 2804)
    
  • NFD-0.3.1
    Changes since version 0.3.0
    
    Release date: March 3, 2015
    
    New features:
    
    - nfd and nrd daemons are now merged into a single process using
      separate threads (Issue 2489)
    - Core
      - Extend ConfigFile to support passing a parsed ConfigSection
        (Issue 2495)
      - Allow customization of Logger and LoggerFactory (Issue 2433)
      - Make global io_service, scheduler, and global random generator
        thread-local, and logger thread-safe (Issue 2489)
    - Forwarding
      - Introduce exponential back-off interest retransmission
        suppression mechanism and enable its use in the best-route
        strategy (Issue 1913)
      - Strategies are now registered with a macro, making it simpler to
        introduce new strategies to NFD codebase (Issue 2410)
    - Tables
      - ContentStore now recognizes CachingPolicy-NoCache from
        LocalControlHeader (Issue 2185)
    
    Updates and bug fixes:
    
    - Faces
      - Remove Tcp|UdpChannel::connect overloads that perform DNS
        resolution (Issue 2422)
      - Properly handle error conditions in UdpChannel::newPeer (Issue 2516)
      - Fix inconsistency of UDP face timeouts in sample nfd.conf and
        actual defaults (Issue 2473)
      - Introduce Face-specific logging macros (Issue 2450)
      - Refactor handling of LinkType face trait and fix FaceStatus
        reporting: the link type was not properly propagated (Issue 2563)
      - Avoid exceptions in NDNLP PartialMessageStore (Issue 2261)
      - Update websocketpp to version 0.5.1
    - Tables
      - Reduce priority of DeadNonceList log messages from DEBUG to
        TRACE
    - Management
      - Change register/unregister logging in RibManager to INFO level
        (Issue 2547)
    - Tools
      - Change prefix for
        the local hub prefix discovery <local-prefix-discovery> to be
        under /localhop/nfd (Issue 2479, Issue 2512)
    - Tests
      - Change naming conventions for unit test files and test suite
        names (Issue 2497)
      - Fix segfault in TableNameTree test suite when all test logs are
        enabled (Issue 2564)
    
  • NFD-0.3.0
    Changes since version 0.2.0
    
    Release date: February 2, 2015
    
    New features:
    
    -   Build
        -   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.
    -   Faces
        -   Enable detection of WebSocket connection failures using
            ping/pong messages (Issue 1903)
        -   In EthernetFace:
            -   Avoid putting the NIC in promiscuous mode if possible (Issue 1278)
            -   Report packets dropped by the kernel if debug is enabled
                (Issue 2441)
            -   Integrate NDNLP fragmentation (Issue 1209)
    -   Forwarding
        -   Strategy versioning (Issue 1893)
        -   New Dead Nonce List table to supplement PIT for loop detection
            (Issue 1953)
        -   Abstract retransmission suppression logic (Issue 2377)
        -   New forwarding strategy for access router (Issue 1999)
    -   Management
        -   Add config file-based strategy selection (Issue 2053)
    
            The sample config file now includes strategy selection for /,
            /localhost, /localhost/nfd, and /ndn/broadcast namespaces as
            follows:
    
                tables
                {
                  ...
                  strategy_choice
                  {
                    /               /localhost/nfd/strategy/best-route
                    /localhost      /localhost/nfd/strategy/broadcast
                    /localhost/nfd  /localhost/nfd/strategy/best-route
                    /ndn/broadcast  /localhost/nfd/strategy/broadcast
                  }
                }
    
        -   Implement Query Operation in FaceManager (Issue 1993)
        -   FaceManager now responds with producer-generated NACK when query
            is invalid (Issue 1993)
        -   Add functionality for automatic remote prefix registration
            (Issue 2056)
        -   Only canonical FaceUri are allowed in faces/create commands
            (Issue 1910)
    
    -   Tables
        -   StrategyInfoHost can now store multiple StrategyInfo of distinct
            types (Issue 2240)
        -   Enable iteration over PIT and CS entries (Issue 2339)
        -   Allow predicate to be specified in
            Measurements::findLongestPrefixMatch (Issue 2314)
        -   Calculate the implicit digest of Data packets in CS only when
            necessary (Issue 1706)
    -   Tools
        -   Publish /localhop/ndn-autoconf/routable-prefixes from
            ndn-autoconfig-server (Issue 1954)
        -   Display detailed NFD software verion in nfd-status-http-server
            and nfd-status (Issue 1916)
        -   nfdc now accepts FaceUri in all commands (Issue 1995)
        -   Add daemon mode for ndn-autoconfig to re-run detection when
            connectivity changes (Issue 2417)
    -   Core
        -   New scheduler::ScopedEventId class to automatically handle
            scheduled event lifetime (Issue 2295)
    
    Updates and bug fixes:
    
    -   Documentation
        -   NFD Developer's guide has been updated to reflect changes in the
            codebase
        -   Installation instruction updates
        -   Update of config file instructions for disabling unix sockets
            (Issue 2190)
    -   Core
        -   Use implementations moved to ndn-cxx library
    
              -   Use Signal from ndn-cxx (Issues 2272 and 2300)
              -   use ethernet::Address from ndn-cxx (Issue 2142)
              -   Use MAX_NDN_PACKET_SIZE constant from ndn-cxx (Issue 2099)
              -   Use DEFAULT_INTEREST_LIFETIME from ndn-cxx (Issue 2202)
              -   Use FaceUri from ndn-cxx (Issue 2143)
              -   Use DummyClientFace from ndn-cxx (Issue 2186)
              -   Use ndn::dns from ndn-cxx (Issue 2207)
    
        -   Move Network class implementation from tools/ to core/
        -   Ignore non-Ethernet AF_LINK addresses when enumerating NICs on
            OSX and other BSD systems
        -   Fix bug on not properly setting FreshnessPeriod inside
            SegmentPublisher (Issue 2438)
    
    -   Faces
        -   Fix spurious assertion failure in StreamFace (Issue 1856)
        -   Update websocketpp submodule (Issue 1903)
        -   Replace FaceFlags with individual fields (Issue 1992)
        -   Drop WebSocket message if the size is larger than maximum NDN
            packet size (Issue 2081)
        -   Make EthernetFace more robust against errors (Issue 1984)
        -   Prevent potential infinite loop in TcpFactory and UdpFactory
            (Issue 2292)
        -   Prevent crashes when attempting to create a UdpFace over a
            half-working connection (Issue 2311)
        -   Support MTU larger than 1500 in EthernetFace (for jumbo frames)
            (Issue 2305)
        -   Re-enable EthernetFace on OS X platform with boost >=1.57.0
            (Issue 1922)
        -   Fix ioctl() calls on platforms where libpcap uses /dev/bpf*
            (Issue 2327)
        -   Fix overhead estimation in NDNLP slicer (Issue 2317)
        -   Replace usage of deprecated EventEmitter with Signal in Face
            abstractions (Issue 2300)
        -   Fix NDNLP PartialMessage cleanup scheduling (Issue 2414)
        -   Remove unnecessary use of DNS resolver in
            (Udp|Tcp|WebSocket)Factory (Issue 2422)
    -   Forwarding
        -   Updates related to NccStrategy
            -   Fix to prevent remembering of suboptimal upstreams (Issue 1961)
            -   Optimizing FwNccStrategy/FavorRespondingUpstream test case
                (Issue 2037)
            -   Proper detection for new PIT entry (Issue 1971)
            -   Use UnitTestTimeFixture in NCC test case (Issue 2163)
            -   Fix loop back to sole downstream (Issue 1998)
        -   Updates related to BestRoute strategy
            -   Redesign best-route v2 strategy test case (Issue 2126)
            -   Fix clang compilation error in best-route v2 test case
                (Issue 2179)
            -   Use UnitTestClock in BestRouteStrategy2 test (Issue 2160)
        -   Allow strategies limited access to FaceTable (Issue 2272)
    -   Tables
        -   Ensure that eviction of unsolicited Data is done in FIFO order
            (Issue 2043)
        -   Simplify table implementations with C++11 features (Issue 2100)
        -   Fix issue with Fib::removeNextHopFromAllEntries invalidating
            NameTree iterator (Issue 2177)
        -   Replace deprecated EventEmitter with Signal in FaceTable (Issue 2272)
        -   Refactored implementation of ContentStore based on std::set
            (Issue 2254)
    -   Management
        -   Allow omitted FaceId in faces/create command (Issue 2031)
        -   Avoid deprecated ndn::nfd::Controller(Face&) constructor (Issue 2039)
        -   Enable check of command length before accessing verb (Issue 2151)
        -   Rename FaceEntry to Route (Issue 2159)
        -   Insert RIB command prefixes into RIB (Issue 2312)
    -   Tools
        -   Display face attribute fields instead of FaceFlags in nfd-status
            and nfd-status-http-server output (Issue 1991)
        -   Fix nfd-status-http-server hanging when nfd-status output is
            >64k (Issue 2121)
        -   Ensure that ndn-autoconfig canonizes FaceUri before sending
            commands to NFD (Issue 2387)
        -   Refactored ndn-autoconfig implementation (Issue 2421)
        -   ndn-autoconfig will now register also /localhop/nfd prefix
            towards the hub (Issue 2416)
    -   Tests
        -   Use UnitTestClock in Forwarder persistent loop test case (Issue 2162)
        -   Use LimitedIo in FwForwarder/SimpleExchange test case (Issue 2161)
    -   Build
        -   Fix build error with python3 (Issue 1302)
        -   Embed CI build and test running script
        -   Properly disable assertions in release builds (Issue 2139)
        -   Embed setting of PKG_CONFIG_PATH variable to commonly used
            values (Issue 2178)
        -   Add conditional compilation for NetworkInterface and
            PrivilegeHelper
        -   Support tools with multiple translation units (Issue 2344)
    
    Removals
    
    -   Remove listen option from unix channel configuration (Issue 2188)
    -   Remove usage of deprecated MetaInfo::TYPE_* constants (Issue 2128)
    -   Eliminate MapValueIterator in favor of boost::adaptors::map_values
    
  • NFD-0.2.0
    Changes since version 0.1.0
    
    -   Documentation
        -   "NFD Developer's Guide" by NFD authors that explains NFD's
            internals including the overall design, major modules, their
            implementation, and their interactions
        -   New detailed instructions on how to enable auto-start of NFD
            using OSX launchd and Ubuntu's upstart (see contrib/ folder)
    -   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 #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 innfd-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
    
  • NFD-0.2.0-rc2
    Changes since version 0.1.0:
    
    -   Documentation
        -   "NFD Developer's Guide" by NFD authors that explains NFD's
            internals including the overall design, major modules, their
            implementation, and their interactions
        -   New detailed instructions on how to enable auto-start of NFD
            using OSX launchd and Ubuntu's upstart (see contrib/ folder)
    -   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)
    -   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
    -   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)
    -   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)
    -   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
    
        -   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
    
    -   Build
        -   Enable support of precompiled headers for clang and gcc to speed
            up compilation
    -   Other small fixes and extensions
    
  • NFD-0.2.0-rc1
    Changes since version 0.1.0:
    
    -   Documentation
        -   "NFD Developer's Guide" by NFD authors that explains NFD's
            internals including the overall design, major modules, their
            implementation, and their interactions
        -   New detailed instructions on how to enable auto-start of NFD
            using OSX launchd and Ubuntu's upstart (see contrib/ folder)
    -   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)
    -   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)
    -   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
    -   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)
    -   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)
    -   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)
    
        -   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
    
    -   Build
        -   Enable support of precompiled headers for clang and gcc to speed
            up compilation
    -   Other small fixes and extensions
    
  • NFD-0.1.0
    Release 0.1.0
    
    Features in Version 0.1.0
    -------------------------
    
    This is an incomplete list of features that are implemented in NFD version 0.1.0.
    
    - **Packet Format**
    
      + `NDN-TLV <http://named-data.net/doc/ndn-tlv/>`_
      + LocalControlHeader, to allow apps to set outgoing face and learn incoming face.
    
    - **Faces**
    
      + Unix stream socket
      + UDP unicast
      + UDP multicast
      + TCP
      + Ethernet, currently without fragmentation.
    
        .. note::
             Ethernet support will not work properly on Linux kernels with TPACKET_V3 flexible
             buffer implementation (>= 3.2.0) and libpcap >= 1.5.0 (e.g., Ubuntu Linux 14.04).
             Refer to `Issue 1551 <http://redmine.named-data.net/issues/1511>`_ for more
             detail and implementation progress.
    
    - **Management**
    
      + Use of signed Interests as commands, with authentication and authorization.
      + Face management
      + FIB management
      + Per-namespace strategy selection
      + NFD status publishing
      + Notification to authorized apps of internal events, including Face creation and destruction.
    
    - **Tables and forwarding pipelines** support most Interest/Data processing, including
      selectors.
    
    - **RIB Management** that runs as a separate process, ``nrd``.  It supports basic prefix
      registration by applications, but no flags yet.
    
    - **Strategies**
    
      + ``broadcast``
      + ``best-route``
      + ``ncc``: based on ccnx 0.7 for experimentation
      + ``client-control``: authorized application can directly control Interest forwarding
    
    - **Name-based scoping**
    
      + ``/localhost``: communication only within localhost using "local" Faces
        (UnixStreamFace, LocalTcpFace).  NFD will strictly enforce this scope for Interests
        and Data packets
      + ``/localhop``: one-hop communication (e.g., if at least one incoming or outgoing Face
        in PIT entry is non-local, the Interest cannot be forwarded to any non-local Face)
    
    - **Support configuration file**, which is in the Boost INFO format.
    
    - **Applications**
    
      + Tools to discover hubs on NDN testbed.
      + peek/poke and traffic generators for testing and debugging.
      + ``nfdc``, a command-line tool to configure NFD.
      + ``nfd-status``, a command-line tool to query NFD status.
      + ``nfd-status-http-server``, which reads the NFD status and publishes over HTTP.
    
    Planned Functions and Features for Next Releases
    ------------------------------------------------
    
    - NACK
        A packet sent back by a producer or a router to signal the unavailability of a requested
        Data packet. The protocol specification for NACK is in progress.
    
    - New strategies
        Additional strategies, including self-learning that populates the FIB by observing
        Interest and Data exchange.
    
    - Hop-by-hop Interest limit mechanism
        For congestion control
    
    - Face enhancements
        Add fragmentation support for Ethernet face, may add support for new types such as
        WiFi direct and WebSockets.
    
    - Tables
        Experiment and evaluate different data structures and algorithms.
    
    - RIB management
        Move to more scalable data structures and support all flags in prefix registrations.
    
    - Tunnel management
        For hub nodes to authenticate incoming tunnel requests and maintain the tunnels.
    
    - Extensible name-based scoping
        Configurable organization-based scoping
    
  • NFD-0.1.0-rc1
    Release candidate 1 for the initial release (version 0.1.0) of NFD