EIDA mechanism, submited to NanoCom 2023

This page shows the patch code to reproduce the results of the EIDA mechanism article, available at this page.

The simulation uses BitSimulator version 0.9.5. You need to download it. Afterwards, apply diff.patch patch to BitSimulator (e.g. run patch -p1 <diff.patch in BitSimulator directory). Compile the simulator.

The scenario.xml describes the scenario to be executed (the network topology, number of nodes, anchors place, ...) using the following command: bitsimulator scenario.xml.


Figure 1 can be reproduced with the following command, followed by pressing a space: visualtracer --initialTimeSkip 899640000


Figure 2 can be reproduced using gnuplot by taking into consideration the IDs occurence presented in table 2

first create a file called bar.dat:

#  EIDA1   EIDA2     EIDA
0     2          6            8
1     2          5            7
2     2          1            3
3     2          2            4
4     2          2            4
5     2          3            5
Second create a file called variation.gnuplot:
set terminal pdf
set output 'output.pdf'
red = "#FF0000"; green = "#00FF00"; blue = "#0000FF";
set yrange [0:10]
set style data histogram
set style histogram rowstacked
set style fill solid border -1
set boxwidth 0.75
set xtics format ""
set grid ytics
set xlabel "ID"
set ylabel "Number of nodes that chose this ID"
plot "bar.dat" using 2:xtic(1) title "EIDA phase 1" linecolor rgb red, \
      "bar.dat" using 3 title "EIDA phase 2" linecolor rgb blue

Then run gnuplot using cmd in the files location using the following command: gnuplot variation.gnuplot


Table 2 uses the results of EIDA simulation using the command bitsimulator that present each node choose which ID.