@@ -16,19 +16,31 @@ RIOT provides three shell to interact with the CCN-Lite stack:
16
16
incorrect ID, you should get an error message.) You have to
17
17
call this command, before you can actually send or receive
18
18
anything.
19
- * ` ccnl_int ` - generates and sends out an Interest. The command expects one
20
- mandatory and one optional parameter. The first parameter
21
- specifies the exact name (or a prefix) to request, the second
22
- parameter specifies the link-layer address of the relay to use.
23
- If the second parameter is omitted, the Interest will be
24
- broadcasted. You may call it like this:
25
- ` ccnl_int /riot/peter/schmerzl b6:e5:94:26:ab:da `
26
- * ` ccnl_cont ` - generates and populates Content. The command expects one
27
- mandatory and one optional parameter. The first parameter
28
- specifies the name of the content to be created, the second
29
- parameter specifies the content itself. The second parameter may
30
- include spaces, e.g. you can call:
31
- ` ccnl_cont /riot/peter/schmerzl Hello World! Hello RIOT! `
19
+ * ` ccnl_int ` - generates and sends out an Interest. The command expects one
20
+ mandatory and one optional parameter. The first parameter
21
+ specifies the exact name (or a prefix) to request, the second
22
+ parameter specifies the link-layer address of the relay to use.
23
+ If the second parameter is omitted, the Interest will be
24
+ broadcasted. You may call it like this:
25
+ ` ccnl_int /riot/peter/schmerzl b6:e5:94:26:ab:da `
26
+ * ` ccnl_cont ` - generates and populates content. The command expects one
27
+ mandatory and one optional parameter. The first parameter
28
+ specifies the name of the content to be created, the second
29
+ parameter specifies the content itself. The second parameter
30
+ may include spaces, e.g. you can call:
31
+ ` ccnl_cont /riot/peter/schmerzl Hello World! Hello RIOT! `
32
+ * ` ccnl_fib ` - modifies the FIB or shows its current state. If the command is
33
+ called without parameters, it will print the current state of
34
+ the FIB. It can also be called with the action parameters ` add `
35
+ or ` del ` to add or delete an entry from the FIB, e.g.
36
+ ` ccnl_fib add /riot/peter/schmerzl ab:cd:ef:01:23:45:67:89 `
37
+ will add an entry for ` /riot/peter/schmerzl ` with
38
+ ` ab:cd:ef:01:23:45:67:89 ` as a next hop and
39
+ ` ccnl_fib del /riot/peter/schmerzl `
40
+ will remove the entry for ` /riot/peter/schmerzl ` and
41
+ ` ccnl_fib del ab:cd:ef:01:23:45:67:89 `
42
+ will remove all entries with ` ab:cd:ef:01:23:45:67:89 ` as a
43
+ next hop.
32
44
33
45
## Example setup
34
46
@@ -39,11 +51,32 @@ An example usage of this application could be setup like this:
39
51
windows.
40
52
3 . Call ` make -B clean all term ` in the first terminal and `PORT=tap1 make
41
53
term` in the second one.
42
- 4 . Enter ` open 3` in both terminals.
54
+ 4 . Enter ` ccnl_open 3` in both terminals.
43
55
5 . Enter ` ccnl_cont /riot/peter/schmerzl Hello World! Hello RIOT! ` on the first
44
56
terminal.
45
- 6 . Enter ` ccnl_int /riot/peter/schmerzl ` in the second terminal.
46
- 7 . See the content being displayed. Be happy!
57
+ 6 . Add a FIB entry for this prefix on the second node, e.g. using the broadcast
58
+ address: ` ccnl_fib add /riot/peter/schmerzl ff:ff:ff:ff:ff:ff `
59
+ 7 . Enter ` ccnl_int /riot/peter/schmerzl ` in the second terminal.
60
+ 8 . See the content being displayed. Be happy!
61
+
62
+ ## Makefile configuration
63
+
64
+ The ccn-lite package provides several configuration options through defines
65
+ that can be set in the application Makefile. The following options are
66
+ mandatory for now:
67
+ * ` CFLAGS += -DUSE_LINKLAYER ` - use CCN directly over the link layer
68
+ * ` CFLAGS += -DCCNL_UAPI_H_ ` - tell ccn-lite to use the UAPI
69
+ * ` CFLAGS += -DUSE_SUITE_NDNTLV ` - use NDNTLV packet format
70
+ * ` CFLAGS += -DNEEDS_PREFIX_MATCHING ` - enables prefix matching
71
+ * ` CFLAGS += -DNEEDS_PACKET_CRAFTING ` - enable userspace packet creation
72
+ Here's a list of some additional interesting options:
73
+ * ` CFLAGS += -DUSE_RONR ` - enable Reactive Optimistic Name-based
74
+ Routing (RONR)
75
+ * ` CFLAGS += -DUSE_STATS ` - enable statistics
76
+ * ` CFLAGS += -DUSE_DUP_CHECK ` - enable duplicate checks when forwarding
77
+ * ` CFLAGS += -DUSE_HMAC256 ` - HMAC256 signed packets for CCNx1.0
78
+ encoding
79
+
47
80
48
81
## Wireshark dissector
49
82
0 commit comments