From 72b06cc9b1835dc85383405bf3071f1c5b17b401 Mon Sep 17 00:00:00 2001 From: Matthias Waehlisch Date: Fri, 26 Sep 2014 14:19:58 +0200 Subject: [PATCH] sys/net/ccn_lite/README.md change wording + add ACM ICN reference sys/net/ccn_lite/README.md fix encoding --- sys/net/ccn_lite/README.md | 41 +++++++++++++++++++------------------- 1 file changed, 21 insertions(+), 20 deletions(-) diff --git a/sys/net/ccn_lite/README.md b/sys/net/ccn_lite/README.md index 37c0eb9e92..d97a4291eb 100644 --- a/sys/net/ccn_lite/README.md +++ b/sys/net/ccn_lite/README.md @@ -4,46 +4,47 @@ CCN lite port of RIOT RIOT's support for CCN messages is based on the work of [Christian Tschudin from University of Basel](http://cn.cs.unibas.ch/people/cft/) [(CCN-lite code available here)](https://github.com/cn-uofbasel/ccn-lite). The network stack can handle multiple faces based on the transceiver or from the local device via RIOT's message system. -To communicate with the stack, one can send messages via RIOTs message system to the CCN-lite relay thread or via a physical network transceiver. +To communicate with the stack, one can send messages via the RIOT message system to the CCN-lite relay thread or via a physical network transceiver. -All incoming messages get processed in the main io loop which you can find [here](ccn-lite-relay.c#L302). +All incoming messages are processed in the main IO loop, which you can find [here](ccn-lite-relay.c#L302). -The public api on the ccn network stack one can find in `sys/net/include/ccn_lite` (see in file "ccnl-riot.h"). -Client related functions are located in `sys/net/include/ccn_lite/util` see in file (ccn-riot-client.h). +The public API of the ccn network stack is defined in `sys/net/include/ccn_lite/ccnl-riot.h`. +Client related functions are defined in `sys/net/include/ccn_lite/util/ccn-riot-client.h`. -To deal with the ccn lite network stack one only needs these two api declarations. +To work with the CCN-lite network stack, only these two API declarations need to be considered. Running Test Application ------------------------ -A test applications are provided in the example directory. +Test applications are provided in the example directory. ### ccn-lite-client -It uses RIOTs shell for user interaction. -The network stack is started on demand in it's own thread. You have to enter `ccn ` in the shell. - -A bunch of ccn user land code is provide to construct interests and content objects. -To request a file e.g. `/riot/text`, the user land code request the first segment (chunk): `/riot/text/0` and stalls until its received. -If this chunk has the default chunk size the next chunk is requested, ... -If a smaller chunk arrives the user land code prints out the complete file which was requested. - -To populate the cache type `ccn 100` and `populate`. -You can test this functionality by typing `interest /riot/text` in the shell. *See HOWTO.md in the applications directory*. +The CCN-lite client uses the RIOT shell for user interaction. +The network stack is started on demand in its own thread. You have to enter `ccn ` in the shell. +Further details are explained in `examples/ccn-lite-client/README.md`. ### ccn-lite-relay -It's a stand alone ccn relay without interactive user control. -The network stack is started on boot up and is configured set the device address and to serve requests for `/riot/text`. -The ccn stack is ready to server requests coming over the transceiver. +The CCN-lite relay is an application without interactive user control. +Further details are explained in `examples/ccn-lite-relay/README.md`. Hardware support ---------------- The CCN-lite stack is currently tested and proved to run on the native port of RIOT and the MSBA2 embedded hardware. On the MSBA2 platform (32 Bit) CCN-lite only needs a stack of 800 bytes. -It uses the heap for the CS, FIB and PIT. +It uses the heap for the CS, FIB, and PIT. + +Reference +--------- + +If you are using this implementation in a scientific context, please cite the implementation as follows: + +* Emmanuel Baccelli, Christian Mehlis, Oliver Hahm, Thomas C. Schmidt, and Matthias Wählisch, "Information Centric Networking in the IoT: Experiments with NDN in the Wild," in Proc. of 1st ACM Conference on Information-Centric Networking (ICN). New York: ACM, pp. 77-86. + +The paper is publicly [available](http://conferences.sigcomm.org/acm-icn/2014/papers/p77.pdf). More ----