This repository contains all raw data (and their derived plots) about experiments and benchmarks of PriFi. The goal is to have reproducible plots from raw data.
- Python2
- NodeJS + npm
- underscore JS (just get all dependencies via
npm install
) - Gnuplot
- epstopdf (typically comes with the LaTeX full suite)
Please ignore the root folder! It only contains a bunch of scripts used by the sub-folders.
Go to, e.g., fig3a-e2e-latency
(the numbering of the figures follow the paper) and examinate the Makefile
to understand what is going on.
Structure of each subfolder:
config
: a copy of thesda/simul
folder (in PriFi) at the time of the experiment; it contains all parameterslogs
: raw logs exported from the relay. Raw logs are.txt
files
Most Makefile
s do the same thing:
- parse the raw log into
JSON
format - extract the relevant lines (e.g., latency) into a separate files (e.g.,
measured-latency.compiled
). Note: this is just a fancygrep
, and the output is text - compute statistics (often: simply the mean of the value after the steady-state occurs, excluding obvious failures such as runs with timeouts, etc). This runs the
aggregate.js
main script with a.json
(data source) and a.js
(processor script). Creates ayyy.gnudata
file that can be plotted - eps (runs gnuplot using the
xxx.gnuplot
script and theyyy.gnudata
formatted input) - pdf (converts eps to pdf)
Author: Ludovic Barman