The applications to reproduce our comparative evaluations run on the RIOT operating system. The RIOT tutorial provides a setup guide for installing the necessary toolchains. More information on how to compile an application for RIOT and on how to flash the resulting binary on real hardware is summarized in The Quickest Start and the Getting Started.
The experiments are designed to run on the FIT IoT-Lab testbed. All protocol deployments use the IoT-Lab M3 board.
More information on the m3
nodes sum up here and here.
Follow this guide for a step-wise description on scheduling experiments in the testbed.
The ndn/app
, coap/app
, and oscore/app
folders contain the applications that we used to perform our experiments.
The explicit RIOT version is included as a git submodule. This repository needs to be cloned recursively with:
git clone --recursive https://github.com/inetrg/tnsm-icn-coap-objectsecurity-2021
If the RIOT submodule
is empty, then update the submodule.
From the root of this repository, run:
git submodule update --init
To compile a particular application, we first change into an app directory, e.g.:
cd ndn/app
and then compile for the m3
board using the following command:
BOARD=iotlab-m3 make all
This generates the binary files bin/app.[bin,elf]
, which can then be flashed on the testbed nodes following the step-wise testbed guide.
For these experiments, the manage.sh
script sets required environment variables, processes static forwarding entries, and prepares the binary for experimentation.