trachten / cpisync

A library for synchronizing remote data with minimum communication.
GNU General Public License v3.0
26 stars 11 forks source link

IBLT needs a revision to meet its space constraints #83

Open novakboskov opened 3 years ago

novakboskov commented 3 years ago

This may look good enough at first glance but it is not optimal.

For the given decode success rate and maximum number of symmetric differences, there are optimal k (number of hash functions) and h (hedge factor).

For the maximum number of symmetric differences up to 1000 and the decode success rate above 99.5%, optimal k and h can be found here. Space-optimal k and h are obtained via a brute force search. Apparently, there is no analytical result that can meet the strict practical requirements.

This is how the parameters are used in IBLT construction.