On Propagating Updates in a Byzantine Environment

We study how to efficiently diffuse updates to a large distributed system of data replicas, some of which may exhibit arbitrary (Byzantine) failures. We assume that strictly fewer than $t$ replicas fail, and that each update is initially received by at least $t$ correct replicas. The goal is to diffuse each update to all correct replicas while ensuring that correct replicas accept no updates generated spuriously by faulty replicas. To achieve reliable diffusion, each correct replica accepts an update only after receiving it from at least $t$ others. We provide the first analysis of epidemic-style protocols for such environments. This analysis is fundamentally different from known analyses for the benign case due to our treatment of fully Byzantine failures---which, among other things, precludes the use of digital signatures for authenticating forwarded updates. We propose two epidemic-style diffusion algorithms and two measures that characterize the efficiency of diffusion algorithms in general. We characterize both of our algorithms according to these measures, and also prove lower bounds with regards to these measures that show that our algorithms are close to optimal.

[1]  W. Hoeffding Probability Inequalities for sums of Bounded Random Variables , 1963 .

[2]  William Feller,et al.  An Introduction to Probability Theory and Its Applications , 1967 .

[3]  David K. Gifford,et al.  Weighted voting for replicated data , 1979, SOSP '79.

[4]  Roger M. Needham,et al.  Grapevine: an exercise in distributed computing , 1982, CACM.

[5]  Leslie Lamport,et al.  The Byzantine Generals Problem , 1982, TOPL.

[6]  Danny Dolev,et al.  Authenticated Algorithms for Byzantine Agreement , 1983, SIAM J. Comput..

[7]  Sam Toueg,et al.  Asynchronous consensus and broadcast protocols , 1985, JACM.

[8]  Scott Shenker,et al.  Epidemic algorithms for replicated database maintenance , 1988, OPSR.

[9]  B. Pittel On spreading a rumor , 1987 .

[10]  Stephen E. Deering,et al.  Host extensions for IP multicasting , 1986, RFC.

[11]  Gustavus J. Simmons,et al.  A survey of information authentication , 1988, Proc. IEEE.

[12]  Michael K. Reiter,et al.  Secure agreement protocols: reliable and atomic group multicast in rampart , 1994, CCS '94.

[13]  Umesh V. Vazirani,et al.  An Introduction to Computational Learning Theory , 1994 .

[14]  F. Cristian,et al.  ATOMIC BROADCAST: FROM SIMPLE MESSAGE DIFFUSION TO BYZANTINE AGREEMENT , 1995 .

[15]  Louise E. Moser,et al.  Total Ordering Algorithms for Asynchronous Byzantine Systems , 1995, WDAG.

[16]  Rajeev Motwani,et al.  Randomized algorithms , 1996, CSUR.

[17]  Michael K. Reiter,et al.  Probabilistic quorum systems , 1997, PODC '97.

[18]  Michael K. Reiter,et al.  A high-throughput secure reliable multicast protocol , 1996, Proceedings 9th IEEE Computer Security Foundations Workshop.

[19]  Michael K. Reiter,et al.  Byzantine quorum systems , 1997, STOC '97.

[20]  Avishai Wool,et al.  Probabilistic Byzantine quorum systems , 1998, PODC '98.

[21]  Michael K. Reiter,et al.  Secure and scalable replication in Phalanx , 1998, Proceedings Seventeenth IEEE Symposium on Reliable Distributed Systems (Cat. No.98CB36281).

[22]  Kenneth P. Birman,et al.  Bimodal multicast , 1999, TOCS.