<aside> 🚧 This document will be completely rewritten according to the experiment plan written by Marcin. So, I don’t read the details in this document right now.
</aside>
I implemented several queuing mechanisms described by design doc written by Marcin. This document contains a series of simulations to find the optimal queuing mechanism.
Before starting detailed analysis, I measured the mix propagation time (from the sender to the last mix) of each message, and compared the results between queuing mechanisms.
All the details can be found at the PR. Here, I mention only important configurations to understand the simulation results.
The following simulations change the parameters below to understand the property of each queuing mechanism.
[Mix Propagation Times (sec)]
NONE PURE_COIN_FLIPPING PURE_RANDOM_SAMPLING PERMUTED_COIN_FLIPPING
count 7.000000 6.000000 6.000000 6.000000
mean 1.122000 6.663500 4.207000 4.403333
std 0.106276 0.867867 0.978162 1.395482
min 1.009000 5.771000 2.609000 2.840000
25% 1.024500 6.082500 3.981750 3.429250
50% 1.157000 6.350000 4.315000 4.108000
75% 1.174500 7.306750 4.458500 5.274250
max 1.290000 7.891000 5.626000 6.498000