This report is the result of knowledge gained in designing and implementing software for RAID-I (RAID the First), a prototype RAID level 5 system designed and built at the University of California at Berkeley. RAID-I is currently fully operational and should soon be available as a network file server. The main purpose of RAID-I is to prototype RAID specific software, gain experience with SCSI, and foresee performance bottlenecks in the implementation of more advanced RAID systems currently being designed at Berkeley. The following assumes that the reader is familiar with RAID systems.

The earlier sections of this document are concerned with describing the RAID-I software. Specifically, they describe how logical RAID block addresses (block number) are mapped to physical disk addresses (disk, sector), how IO requests are serviced, and how the recovery mechanism reconstructs the contents of failed disks concurrently with user request servicing. The latter sections investigate the performance consequences of various parity placement schemes. In particular, we find that at relatively large request sizes, on the order of a few hundred kilobytes, the choice of parity placement can cause significant differences in performance.




Download Full History