ccnl: adapt doc to current code
This commit is contained in:
parent
638bb4ce51
commit
fa87339083
@ -3,7 +3,7 @@ simple appserver (all in one shell)
|
|||||||
|
|
||||||
0. create tap devices: *./cpu/native/tapsetup.sh create 3*
|
0. create tap devices: *./cpu/native/tapsetup.sh create 3*
|
||||||
1. build ccn-lite-client: *CFLAGS="-DHAVE_VALGRIND_VALGRIND_H" make -B clean all*
|
1. build ccn-lite-client: *CFLAGS="-DHAVE_VALGRIND_VALGRIND_H" make -B clean all*
|
||||||
2. start: *./bin/ccn-lite-client.elf tap0* (valgrind support included)
|
2. start: *./bin/native/ccn-lite-client.elf tap0* (valgrind support included)
|
||||||
3. start ccn thread: *ccn* [enter] (this starts the ccn relay network stack)
|
3. start ccn thread: *ccn* [enter] (this starts the ccn relay network stack)
|
||||||
4. start appserver thread: *appserver* [enter] (this starts the userland appserver, which registers for "/riot/appserver/"
|
4. start appserver thread: *appserver* [enter] (this starts the userland appserver, which registers for "/riot/appserver/"
|
||||||
5. request content: *interest /riot/appserver/test* [enter] (ask the relay for this "file", userland code splits this up in
|
5. request content: *interest /riot/appserver/test* [enter] (ask the relay for this "file", userland code splits this up in
|
||||||
@ -19,7 +19,7 @@ SHELL 1 |
|
|||||||
--------------------------------------------------------------------------------------------------------------
|
--------------------------------------------------------------------------------------------------------------
|
||||||
0. create tap devices: *./cpu/native/tapsetup.sh create 3* |
|
0. create tap devices: *./cpu/native/tapsetup.sh create 3* |
|
||||||
1. build ccn-lite-client: *make -B clean all* | build ccn-lite: *make clean all*
|
1. build ccn-lite-client: *make -B clean all* | build ccn-lite: *make clean all*
|
||||||
2. start: *./bin/ccn-lite-client.elf tap0* | start: *./bin/ccn-lite-relay.elf tap1*
|
2. start: *./bin/native/ccn-lite-client.elf tap0* | start: *./bin/ccn-lite-relay.elf tap1*
|
||||||
3. start ccn thread: *ccn* [enter] | [it starts ccn automaticly]
|
3. start ccn thread: *ccn* [enter] | [it starts ccn automaticly]
|
||||||
4. set address: *addr 1* [enter] | [it picks address 42 automaticly]
|
4. set address: *addr 1* [enter] | [it picks address 42 automaticly]
|
||||||
5. register prefix the ccn-lite stack: *prefix /riot/ newTRANSface 42* [enter] | [it populates the cache automaticly]
|
5. register prefix the ccn-lite stack: *prefix /riot/ newTRANSface 42* [enter] | [it populates the cache automaticly]
|
||||||
@ -29,27 +29,27 @@ SHELL 1 |
|
|||||||
advanced forward (needs three [four] shells)
|
advanced forward (needs three [four] shells)
|
||||||
====================================================
|
====================================================
|
||||||
|
|
||||||
SHELL 1 | SHELL 2 | SHELL 3 | SHELL 4 (currently a bug in the native port on heavy traffic)
|
SHELL 1 | SHELL 2 | SHELL 3
|
||||||
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
----------------------------------------------------------------------------------------------------------------------------------------------------------------
|
||||||
0. create tap devices: *./cpu/native/tapsetup.sh create 3* | | |
|
0. create tap devices: *./cpu/native/tapsetup.sh create 3* | |
|
||||||
1. build ccn-lite-client: *make -B clean all* | | build ccn-lite: make clean all | ping -Itapbr0 8.8.8.8
|
1. build ccn-lite-client: *make -B clean all* | | build ccn-lite: make clean all
|
||||||
2. start: *./bin/ccn-lite-client.elf tap0* | start: *./bin/ccn-lite-client.elf tap1* | start: ./bin/ccn-lite-relay.elf tap2 |
|
2. start: *./bin/native/ccn-lite-client.elf tap0* | start: *./bin/native/ccn-lite-client.elf tap1* | start: ./bin/ccn-lite-relay.elf tap2
|
||||||
3. start ccn thread: *ccn* [enter] | start ccn thread: *ccn* [enter] | [it starts ccn automaticly] |
|
3. start ccn thread: *ccn* [enter] | start ccn thread: *ccn* [enter] | [it starts ccn automaticly]
|
||||||
4. set address: *addr 1* [enter] | set address: *addr 2* [enter] | [it picks address 42 automaticly] |
|
4. set address: *addr 1* [enter] | set address: *addr 2* [enter] | [it picks address 42 automaticly]
|
||||||
5. *prefix /riot/ newTRANSface 2* [enter] | *prefix /riot/ newTRANSface 42* [enter] | [it populates the cache automaticly] |
|
5. *prefix /riot/ newTRANSface 2* [enter] | *prefix /riot/ newTRANSface 42* [enter] | [it populates the cache automaticly]
|
||||||
6. request content: *interest /riot/text* [enter] | | |
|
6. request content: *interest /riot/text* [enter] | |
|
||||||
|
|
||||||
|
|
||||||
overdosed forward (needs three [four] shells)
|
overdosed forward (needs three [four] shells)
|
||||||
====================================================
|
====================================================
|
||||||
|
|
||||||
SHELL 1 | SHELL 2 | SHELL 3 | SHELL 4
|
SHELL 1 | SHELL 2 | SHELL 3
|
||||||
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
----------------------------------------------------------------------------------------------------------------------------------------------------------------
|
||||||
0. create tap devices: *./cpu/native/tapsetup.sh create 3* | | |
|
0. create tap devices: *./cpu/native/tapsetup.sh create 3* | |
|
||||||
1. build ccn-lite-client: *make -B clean all* | | | ping -Itapbr0 8.8.8.8
|
1. build ccn-lite-client: *make -B clean all* | |
|
||||||
2. start: *./bin/ccn-lite-client.elf tap0* | start: *./bin/ccn-lite-client.elf tap1* | start: *./bin/ccn-lite-client.elf tap2* |
|
2. start: *./bin/native/ccn-lite-client.elf tap0* | start: *./bin/native/ccn-lite-client.elf tap1* | start: *./bin/native/ccn-lite-client.elf tap2*
|
||||||
3. start ccn thread: *ccn* [enter] | start ccn thread: *ccn* [enter] | start ccn thread: *ccn* [enter] |
|
3. start ccn thread: *ccn* [enter] | start ccn thread: *ccn* [enter] | start ccn thread: *ccn* [enter]
|
||||||
4. set address: *addr 1* [enter] | set address: *addr 2* [enter] | set address: *addr 3* [enter] |
|
4. set address: *addr 1* [enter] | set address: *addr 2* [enter] | set address: *addr 3* [enter]
|
||||||
5. | | start appserver: *appserver* [enter] |
|
5. | | start appserver: *appserver* [enter]
|
||||||
6. *prefix /riot/ newTRANSface 2* [enter] | *prefix /riot/ newTRANSface 3* [enter] | |
|
6. *prefix /riot/ newTRANSface 2* [enter] | *prefix /riot/ newTRANSface 3* [enter] |
|
||||||
7. request content: *interest /riot/appserver/test* [enter] | | |
|
7. request content: *interest /riot/appserver/test* [enter] | |
|
||||||
|
|||||||
@ -6,10 +6,10 @@ RIOT's support for CCN messages is based on the work of [Christian Tschudin from
|
|||||||
The network stack can handle multiple faces based on the transceiver or from the local device via RIOT's message system.
|
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 RIOTs 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#L283).
|
All incoming messages get 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 ccn_lite/include (see in file "ccnl-riot.h").
|
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 ccn_lite/include/util (see in file "ccn-riot-client.h").
|
Client related functions are located in `sys/net/include/ccn_lite/util` see in file (ccn-riot-client.h).
|
||||||
|
|
||||||
To deal with the ccn lite network stack one only needs these two api declarations.
|
To deal with the ccn lite network stack one only needs these two api declarations.
|
||||||
|
|
||||||
@ -17,24 +17,25 @@ To deal with the ccn lite network stack one only needs these two api declaration
|
|||||||
Running Test Application
|
Running Test Application
|
||||||
------------------------
|
------------------------
|
||||||
|
|
||||||
A test applications are provided in the projects repository.
|
A test applications are provided in the example directory.
|
||||||
|
|
||||||
### ccn-lite-client
|
### ccn-lite-client
|
||||||
|
|
||||||
It uses RIOTs shell for user interaction.
|
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.
|
The network stack is started on demand in it's own thread. You have to enter `ccn <CS size>` in the shell.
|
||||||
|
|
||||||
A bunch of ccn user land code is provide to construct interests and content objects.
|
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.
|
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 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.
|
If a smaller chunk arrives the user land code prints out the complete file which was requested.
|
||||||
|
|
||||||
You can test this functionality by typing "interest /riot/test" in the shell. *See HOWTO.md in the projects directory*.
|
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 projects directory*.
|
||||||
|
|
||||||
### ccn-lite-relay
|
### ccn-lite-relay
|
||||||
|
|
||||||
It's a stand alone ccn relay without interactive user control
|
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/test".
|
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 stack is ready to server requests coming over the transceiver.
|
||||||
|
|
||||||
Hardware support
|
Hardware support
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user