The Design and Evaluation of Network RAID Protocols

Scalable distributed storage systems are being built out of collections of small storage bricks, which are network-connected systems with a small amount of storage and little internal redundancy. In these systems, data must be replicated across multiple bricks for good reliability. In this paper we investigate "network RAID protocols": the protocols used to read and write redundant data over a network. Several distributed storage projects have implemented such protocols, but without a systematic basis for designing the protocols, choosing features, or comparing one protocol to another. The choice of protocol depends on factors such as the relative performance of client systems to storage bricks, the semantic guarantees desired, and the offered workload. We offer a taxonomy of the possibilities and a performance evaluation to help choose among them. We classify protocols by three main features: the structure of the data path between clients and storage; the method used for serializing operations; and the method used to ensure atomicity and failure tolerance. We find that system load and performance depend primarily on the data path structure, with direct client-to-storage communication fastest but placing the greatest load on client systems. Under normal conditions pessimistic and optimistic serialization methods give nearly equal performance, and there is little or no penalty for providing multi-block write atomicity.

By: Deepak R. Kenchammana-Hosekote, Richard A. Golding, Claudio Fleiner, Omer A. Zaki

Published in: RJ10316 in 2004


This Research Report is available. This report has been submitted for publication outside of IBM and will probably be copyrighted if accepted for publication. It has been issued as a Research Report for early dissemination of its contents. In view of the transfer of copyright to the outside publisher, its distribution outside of IBM prior to publication should be limited to peer communications and specific requests. After outside publication, requests should be filled only by reprints or legally obtained copies of the article (e.g., payment of royalties). I have read and understand this notice and am a member of the scientific community outside or inside of IBM seeking a single copy only.


Questions about this service can be mailed to .