Make sure info about what is being sent is not propagated too fast.
In this base model, a node knows that something was sent after one
timestep. This requires keeping separating receiving from received and
updating only once per timestep.
Signed-off-by: Csaba Kiraly <csaba.kiraly@gmail.com>
Treat send in block proposer as in validators to simplify
code and fix steps. Previously first step included first two
timelots: initial send by block proposer and first send by
validators.
Signed-off-by: Csaba Kiraly <csaba.kiraly@gmail.com>
Keeps track of sent and received samples per line per neighbor.
Only send what wasn't yet sent or wasn't received from the other side.
Signed-off-by: Csaba Kiraly <csaba.kiraly@gmail.com>
It is faster to store and process data availability as bitmaps.
It is also enough, as we will not do anything with the data itself.
Signed-off-by: Csaba Kiraly <csaba.kiraly@gmail.com>