Byzantine-tolerant Erasure-coded Storage
Carnegie Mellon School of Computer Science Technical Report CMU-CS-03-187. September 2003.
Garth R. Goodson, Jay J. Wylie, Gregory R. Ganger, Michael K. Reiter
Electrical and Computer Engineering
Carnegie Mellon University
Pittsburgh, PA 15213
This paper describes a decentralized consistency protocol for survivable storage that exploits data versioning within storage-nodes. Versioning enables the protocol to efficiently provide linearizability and wait-freedom of read and write operations to erasure-coded data in asynchronous environments with Byzantine failures of clients and servers. Exploiting versioning storage-nodes, the protocol shifts most work to clients. Reads occur in a single round-trip unless clients observe concurrency or write failures. Measurements of a storage system using this protocol show that the protocol scales well with the number of failures tolerated, and that it outperforms a highly-tuned instance of Byzantine-tolerant state machine replication.