next up previous
Next: Introduction

Implementation of a Fault-Tolerant Real-Time Network-Attached Storage Device

Ashish Raniwala, Srikant Sharma, Anindya Neogi, Tzi-cker Chiueh
Experimental Computer Systems Laboratory
Computer Science Department
State University of New York at Stony Brook
Stony Brook, NY 11794-4400
{ashish, srikant, neogi, chiueh}@cs.sunysb.edu
tel +1-516-632-8436
fax +1-516-632-8334

Abstract:

Phoenix is a fault-tolerant real-time network-attached storage device (NASD). Like other NASD architectures, Phoenix provides an object-based interface to data stored on network-attached disks. In addition, it features many functionalities not available in other NASDs. Phoenix supports both best-effort reads/writes and real-time disk read accesses required to support real-time multimedia applications. A standard cycle-based scan-order disk scheduling algorithm is used to provide guaranteed disk I/O performance. Phoenix ensures data availability through a RAID5-like parity mechanism, and supports service availability by maintaining the same level of quality of service (QoS) in event of single disk failures. Given a spare disk, Phoenix automatically reconstructs the failed disk data onto the spare disk while servicing on-going real-time clients without degradation in service quality. Phoenix speeds up this reconstruction process by dynamically maintaining additional redundancy beyond the RAID5-style parity on the unused space left on the disks. Phoenix attempts to improve the reliability of the disk subsystem by reducing its overall power consumption, using active prefetching techniques in conjunction with disk low-power modes. This paper describes the design and implementation details of the first Phoenix prototype.



 
next up previous
Next: Introduction
Ashish Raniwala    (ashish@cs.sunysb.edu)   &   Srikant Sharma   (srikant@cs.sunysb.edu )