[Nfd-dev] NFD version 0.1.0 released

Alex Afanasyev alexander.afanasyev at ucla.edu
Mon May 12 15:01:18 PDT 2014


Hi everybody,

We are pleased to formally announce release of version 0.1.0 of our new NDN Forwarding Daemon.

I would like to thank you everybody for the essential comments and initial testing of the release candidate.

Since the release candidate we did several improvements and bug fixes, as well provided updated documentation.  The documentation is still not as we would wanted to have and we are setting the goal of adding more detailed description of the NFD internals for version 0.2.x, which we plan to release some time in June.

NFD overview and release notes are available online on NFD's homepage: http://named-data.net/doc/NFD/0.1.0/

Binary release
--------------

As of release 0.1.0, we are providing NFD binaries for the supported platforms, which are the preferred installation method of NFD:

- Ubuntu 12.04, 13.10, and 14.04: http://named-data.net/doc/NFD/0.1.0/FAQ.html#how-to-start-using-ndn-ppa-repository-on-ubuntu-linux
- OSX 10.8, 10.9 with MacPorts: http://named-data.net/doc/NFD/0.1.0/FAQ.html#how-to-start-using-ndn-macports-repository-on-osx

Next releases would include support for other platforms.  Please send us feedback on the platforms you're using, so we can prioritize our goals.  We would also appreciate if someone can provide help with packaging the current NFD release for other platforms.

Besides simplicity of installation, the binary release includes automatic initial configuration and platform-specific tools to automatically start NFD and related daemons.  In particular, on OSX NFD is controlled using launchd and on Ubuntu using upstart mechanisms.  In both cases, `nfd-start` and `nfd-stop` scripts are convenience wrappers for launchd and upstart.  For more information refer to https://github.com/named-data/NFD/tree/master/contrib/osx-launchd and https://github.com/named-data/NFD/tree/master/contrib/upstart.

Source releases
---------------

The source code and source-code installation instructions are always available on NFD's homepage:

- Getting Started with NFD:  http://named-data.net/doc/NFD/0.1.0/getting-started.html
- Github NFD repository:  https://github.com/named-data/NFD

Additional information
----------------------

- NFD Wiki: http://redmine.named-data.net/projects/nfd/wiki/
- Feature requests and bug reports are welcome on our NDN Redmine: http://redmine.named-data.net/projects/nfd

Besides officially supported platforms, NFD is known to work on: Fedora 20, CentOS 6, Raspberry Pi, OpenWRT, FreeBSD 10.0, and several other platforms.  We are soliciting help with documenting common problems / pitfalls in installing/using NFD on different platforms on NFD WiKi (http://redmine.named-data.net/projects/nfd/wiki/Wiki#Installation-experiences-for-selected-platforms).

=========================================================================================

Features in 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.

---
NFD Team



More information about the Nfd-dev mailing list