NFD - Named Data Networking Forwarding Daemon
=============================================

NFD is a network forwarder that implements and evolves together with the Named Data
Networking (NDN) `protocol <http://named-data.net/doc/ndn-tlv/>`__. After the initial
release, NFD will become a core component of the `NDN Platform
<http://named-data.net/codebase/platform/>`__ and will follow the same release cycle.

NFD Documentation
-----------------

.. toctree::
   :hidden:
   :maxdepth: 3

   overview
   INSTALL
   FAQ
   manpages

* :doc:`overview`

  A brief overview of NFD and its major modules.

* :doc:`INSTALL`

  Instructions for obtaining, installing, and running NFD.

* :doc:`FAQ`

  Suggestions for configuring and running non-standard NFD setups.

* :doc:`manpages`

**Additional documentation**

* `NFD Developer's Guide <http://named-data.net/techreport/ndn-0021-3-nfd-developer-guide.pdf>`_

  A comprehensive guide to the design and implementation of NFD. The developer's guide also contains
  suggestions and hints for anyone wanting to modify or extend NFD.

* `NFD Wiki <http://redmine.named-data.net/projects/nfd/wiki>`_

  + `NFD Management protocol <http://redmine.named-data.net/projects/nfd/wiki/Management>`_
  + `NFD Configuration file format <http://redmine.named-data.net/projects/nfd/wiki/ConfigFileFormat>`_

  The NFD Wiki contains detailed protocol specifications and
  information for building on unsupported platforms.

* `API Documentation (doxygen) <doxygen/annotated.html>`_

* `Release Notes <RELEASE_NOTES.html>`_

License
-------

NFD is an open and free software package licensed under GPL 3.0 license and is the
centerpiece of our committement to making NDN's core technology open and free to all
Internet users and developers. For more information about the licensing details and
limitation, refer to `COPYING.md <https://github.com/named-data/NFD/blob/master/COPYING.md>`_.
