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