Davide Pesavento | 08b91c8 | 2019-04-13 19:42:10 -0400 | [diff] [blame^] | 1 | # NFD - Named Data Networking Forwarding Daemon |
Alexander Afanasyev | a141700 | 2014-01-21 20:29:55 -0800 | [diff] [blame] | 2 | |
Davide Pesavento | 08b91c8 | 2019-04-13 19:42:10 -0400 | [diff] [blame^] | 3 |  |
Davide Pesavento | cffb4e5 | 2016-09-12 20:03:08 +0200 | [diff] [blame] | 4 | [](https://travis-ci.org/named-data/NFD) |
Davide Pesavento | 08b91c8 | 2019-04-13 19:42:10 -0400 | [diff] [blame^] | 5 |  |
Nick Gordon | 3257af2 | 2017-12-21 14:15:55 -0600 | [diff] [blame] | 6 | |
Alexander Afanasyev | 0c3e93d | 2014-05-12 15:49:56 -0700 | [diff] [blame] | 7 | ## Overview |
| 8 | |
Beichuan Zhang | 55b8ed4 | 2014-04-26 22:25:44 -0700 | [diff] [blame] | 9 | NFD is a network forwarder that implements and evolves together with the Named Data |
Davide Pesavento | 08b91c8 | 2019-04-13 19:42:10 -0400 | [diff] [blame^] | 10 | Networking (NDN) [protocol](https://named-data.net/doc/NDN-packet-spec/current/). |
| 11 | Since the initial public release in 2014, NFD has been a core component of the |
| 12 | [NDN Platform](https://named-data.net/codebase/platform/). |
Steve DiBenedetto | 1a3c673 | 2014-03-13 06:44:05 -0600 | [diff] [blame] | 13 | |
Beichuan Zhang | 55b8ed4 | 2014-04-26 22:25:44 -0700 | [diff] [blame] | 14 | The main design goal of NFD is to support diverse experimentation of NDN technology. The |
| 15 | design emphasizes *modularity* and *extensibility* to allow easy experiments with new |
| 16 | protocol features, algorithms, new applications. We have not fully optimized the code for |
| 17 | performance. The intention is that performance optimizations are one type of experiments |
| 18 | that developers can conduct by trying out different data structures and different |
| 19 | algorithms; over time, better implementations may emerge within the same design framework. |
| 20 | |
| 21 | NFD will keep evolving in three aspects: improvement of the modularity framework, keeping |
| 22 | up with the NDN protocol spec, and addition of other new features. We hope to keep the |
Steve DiBenedetto | 62a9394 | 2014-08-24 17:13:52 -0600 | [diff] [blame] | 23 | modular framework stable and lean, allowing researchers to implement and experiment with |
| 24 | various features, some of which may eventually work into the protocol spec. |
Davide Pesavento | 08b91c8 | 2019-04-13 19:42:10 -0400 | [diff] [blame^] | 25 | |
| 26 | ## Documentation |
| 27 | |
| 28 | See [`docs/INSTALL.rst`](docs/INSTALL.rst) for compilation and installation instructions. |
| 29 | |
| 30 | Extensive documentation is available on NFD's [homepage](https://named-data.net/doc/NFD/). |
| 31 | |
| 32 | ## Reporting bugs |
| 33 | |
| 34 | Bug reports and feedback are highly appreciated and can be submitted through the |
| 35 | [NFD issue tracker](https://redmine.named-data.net/projects/nfd/issues) or the |
| 36 | [ndn-interest mailing list](http://www.lists.cs.ucla.edu/mailman/listinfo/ndn-interest). |
| 37 | |
| 38 | ## Contributing |
| 39 | |
| 40 | NFD is developed by a community effort. Although the first release was mostly done by the |
| 41 | members of [NSF-sponsored NDN project team](https://named-data.net/project/participants/), |
| 42 | it already contains significant contributions from people outside the project team (see |
| 43 | [`AUTHORS.md`](AUTHORS.md)). We strongly encourage participation from all interested parties, |
| 44 | since broader community support is key for NDN to succeed as a new Internet architecture. |
| 45 | |
| 46 | If you are new to the NDN software community, please read [`README-dev.md`](README-dev.md) |
| 47 | and the [Contributor's Guide](CONTRIBUTING.md) to get started. |
| 48 | |
| 49 | ## License |
| 50 | |
| 51 | NFD is an open and free software package licensed under the GPL version 3 and is the |
| 52 | centerpiece of our committement to making NDN's core technology open and free to all |
| 53 | Internet users and developers. For more information about the licensing details and |
| 54 | limitations, refer to [`COPYING.md`](COPYING.md). |