Hi Adeel!
I am writing to inquire about the status of running CCN-lite over the RIOT
OS and about the platforms RIOT-OS supports. I am not sure if this is the
right mailing list to send my email over but I hope I can be redirected to
the right people if needed.
Yes, devel@riot-os.org (or users@riot-os.org) are the right lists to ask this
kind of questions.
1. The homepage of RIOT-OS claims that CCN-lite is supported over
RIOT. Has that been verified with the latest version of RIOT?
Yes, we ran some tests to verify functionality of the CCN-lite package for
RIOT 2016.04. However, since that release CCN-lite and the support package in
RIOT has been extended by several features, so you might consider using the
latest version in RIOT master.
2. Does CCN-lite only run directly over 802.15.4 or is there a
possibility to run it over the IP over 802.15.4?
In principle yes. The CCN-lite package uses GNRC netapi calls to communicate
with the lower layers. Hence, CCN-lite in RIOT could run on every arbitrary
layer in the GNRC stack (Link layer, IP, UDP...). However, some small
amendments are necessary to adapt CCN-lite in RIOT to run over 6LoWPAN (mostly
for the addressing format). If you're interested in doing this, I would be
more than happy to help.
3. Is there an estimate of how much RAM is required to run CCN-lite
over the RIOT-OS?
From the top of my head: a simple application in RIOT with CCN-lite requires
less than 20kB of RAM on a 32-bit platform (such as an ARM Cortex). However,
CCN-lite uses dynamic memory allocation for the content store, PIT, FIB, and
faces. Hence, at least 30kB of memory are advisable if you want to be able to
do at least a little bit of caching.
Note, that using CCN-lite over IP will consume significantly more RAM.
4. We would like to experiment with CCN-lite over the RIOT-OS. There
are a lot of platforms listed on the homepage. What we are looking for is a
platform that is constrained but at the same time has RAM more than typical
constrained platforms. 64 KB of RAM may suffice for our needs. Anything more
than that would be even better. We would really appreciate if someone could
recommend a platform with RAM >= 64 KB and has been tested to run CCN-lite
over RIOT.
I have been running extensive experiments with CCN-lite on RIOT using the
IoT-Lab testbed over the last months, using the Cortex-M3 nodes there. These
nodes have 64kB of RAM and I can confirm that this suffices to run a
reasonable ICN application with caching. However, the IoT-LAB nodes AFAIK are
not purchasable. An alternative would be to use an STM32 Discovery or Nucleo
board and connect an Atmel at86rf23x transceiver (the same one is used on the
IoT-Lab nodes). Both, MCU family and transceiver are very well supported.
Cheers,
Oleg