Reliable Broadcast in Practical Networks: Algorithm and Evaluation

07/29/2020
by   Yingjian Wu, et al.
0

Reliable broadcast is an important primitive to ensure that a source node can reliably disseminate a message to all the non-faulty nodes in an asynchronous and failure-prone networked system. Byzantine Reliable Broadcast protocols were first proposed by Bracha in 1987, and have been widely used in fault-tolerant systems and protocols. Several recent protocols have improved the round and bit complexity of these algorithms. Motivated by the constraints in practical networks, we revisit the problem. In particular, we use cryptographic hash functions and erasure coding to reduce communication and computation complexity and simplify the protocol design. We also identify the fundamental trade-offs of Byzantine Reliable Broadcast protocols with respect to resilience (number of nodes), local computation, round complexity, and bit complexity. Finally, we also design and implement a general testing framework for similar communication protocols. We evaluate our protocols using our framework. The results demonstrate that our protocols have superior performance in practical networks.

READ FULL TEXT

Please sign up or login with your details

Forgot password? Click here to reset