Byzantine Chain Replication

We present a new class of Byzantine-tolerant State Machine Replication protocols for asynchronous environments that we term Byzantine Chain Replication. We demonstrate two implementations that present different trade-offs between performance and security, and compare these with related work. Leveraging an external reconfiguration service, these protocols are not based on Byzantine consensus, do not require majority-based quorums during normal operation, and the set of replicas is easy to reconfigure.

[1]  Robbert van Renesse,et al.  Chain Replication for Supporting High Throughput and Availability , 2004, OSDI.

[2]  Rogério de Lemos,et al.  Architecting dependable systems , 2003, J. Syst. Softw..

[3]  Michael K. Reiter,et al.  Fault-scalable Byzantine fault-tolerant services , 2005, SOSP '05.

[4]  David Clark,et al.  Safety and Security Analysis of Object-Oriented Models , 2002, SAFECOMP.

[5]  Lorenzo Alvisi,et al.  Modeling the effect of technology trends on the soft error rate of combinational logic , 2002, Proceedings International Conference on Dependable Systems and Networks.

[6]  Werner Vogels,et al.  Dynamo: amazon's highly available key-value store , 2007, SOSP.

[7]  Michael J. Freedman,et al.  Object Storage on CRAQ: High-Throughput Chain Replication for Read-Mostly Workloads , 2009, USENIX Annual Technical Conference.

[8]  Fred B. Schneider,et al.  Implementing fault-tolerant services using the state machine approach: a tutorial , 1990, CSUR.

[9]  Sangmin Lee,et al.  Upright cluster services , 2009, SOSP '09.

[10]  Hari Balakrishnan,et al.  Tolerating byzantine faults in transaction processing systems using commit barrier scheduling , 2007, SOSP.

[11]  Seif Haridi,et al.  Key-based consistency and availability in structured overlay networks , 2008, HPDC '08.

[12]  Margo I. Seltzer,et al.  Berkeley DB , 1999, USENIX Annual Technical Conference, FREENIX Track.

[13]  Sape Mullender,et al.  Distributed systems , 1989 .

[14]  Amar Phanishayee,et al.  FAWN: a fast array of wimpy nodes , 2009, SOSP '09.

[15]  Robbert van Renesse,et al.  Bosco: One-Step Byzantine Asynchronous Consensus , 2008, DISC.

[16]  Scott Lystig Fritchie,et al.  Chain replication in theory and in practice , 2010, Erlang '10.

[17]  Leslie Lamport,et al.  Vertical paxos and primary-backup replication , 2009, PODC '09.

[18]  Arun Venkataramani,et al.  Separating agreement from execution for byzantine fault tolerant services , 2003, SOSP '03.

[19]  Jerome H. Saltzer,et al.  End-to-end arguments in system design , 1984, TOCS.

[20]  Miguel Oom Temudo de Castro,et al.  Practical Byzantine fault tolerance , 1999, OSDI '99.

[21]  Chi Ho,et al.  Reducing Costs of Byzantine Fault Tolerant Distributed Applications , 2011 .

[22]  David Mazières,et al.  Beyond One-Third Faulty Replicas in Byzantine Fault Tolerant Systems , 2007, NSDI.

[23]  Lorenzo Strigini,et al.  On Designing Dependable Services with Diverse Off-the-Shelf SQL Servers , 2003, WADS.

[24]  Sam Toueg,et al.  Resilient consensus protocols , 1983, PODC '83.

[25]  Leslie Lamport,et al.  Brief Announcement: Vertical Paxos and Primary-Backup Replication , 2009 .

[26]  Dahlia Malkhi Virtually Synchronous Methodology for Dynamic Service Replication , 2010 .

[27]  David I. August,et al.  SWIFT: software implemented fault tolerance , 2005, International Symposium on Code Generation and Optimization.

[28]  Liuba Shrira,et al.  HQ replication: a hybrid quorum protocol for byzantine fault tolerance , 2006, OSDI '06.

[29]  Christof Fetzer,et al.  ANB- and ANBDmem-Encoding: Detecting Hardware Errors in Software , 2010, SAFECOMP.

[30]  Fred B. Schneider,et al.  The primary-backup approach , 1993 .

[31]  Sape J. Mullender,et al.  Distributed systems (2nd Ed.) , 1993 .

[32]  P. Shenoy,et al.  ZZ and the Art of Practical BFT , 2009 .

[33]  Emin Gün Sirer,et al.  HyperDex: a distributed, searchable key-value store , 2012, SIGCOMM '12.

[34]  Scott Lystig Fritchie,et al.  Proceedings of the 9th ACM SIGPLAN workshop on Erlang, Baltimore, Maryland, USA, September 30, 2010 , 2010, Erlang Workshop.

[35]  Whitfield Diffie,et al.  New Directions in Cryptography , 1976, IEEE Trans. Inf. Theory.

[36]  Michael Dahlin,et al.  Making Byzantine Fault Tolerant Systems Tolerate Byzantine Faults , 2009, NSDI.

[37]  Arun Venkataramani,et al.  ZZ and the art of practical BFT execution , 2011, EuroSys '11.

[38]  Ramakrishna Kotla,et al.  Zyzzyva , 2007, SOSP.

[39]  Robert Griesemer,et al.  Paxos made live: an engineering perspective , 2007, PODC '07.