HoneyBadgerBFT
HoneyBadgerBFT copied to clipboard
Visualization of Messages
A visualization of the protocol flow could facilitate understanding the protocol flow for newcomers. It could also provide a way to help debugging or diagnosing network problems/faults. Also it could help build a mental model for the relative costs and bandwidth usage for protocol components.
One of HoneyBadgerBFT's features is its regular message pattern. Each possible message fits into a predefined possibly possible slot. To me this suggests a "grid" layout to make the structure as clear as possible. Here's a mockup/sketch of a visualization panel:
This would be a display of a single node's view of a single block/epoch of the honey badger protocol. The idea is that each possible message that could be received would be indicated by an unlit light (grey square), when such message is received, the light turns yellow. Messages sent
This visualization makes some invariants clear. For example, in Reliable Broadcast, only one ECHO
message and one READY
message can be received from any node (redundant such messages are discarded). In the case of Binary Agreement, possibly both of EST(0)
or EST(1)
could be received.
This issue was moved to initc3/HoneyBadgerBFT-Python#35
/cc @amiller