DARC: Design and Evaluation of an I/O Controller for Data Protection
DARC: Design and Evaluation of an I/O Controller for Data Protection ∗ ∗ Markos Fountoulakis , Manolis Marazakis, Michail D. Flouris, and Angelos Bilas Institute of Computer Science (ICS) Foundation for Research and Technology - Hellas (FORTH) N. Plastira 100, Vassilika Vouton, Heraklion, GR-70013, Greece {mfundul,maraz,flouris,bilas}@ics.forth.gr ABSTRACT tualization, versioning, data protection, error detection, I/O Lately, with increasing disk capacities, there is increased performance concern about protection from data errors, beyond masking of device failures. In this paper, we present a prototype I/O 1. INTRODUCTION stack for storage controllers that encompasses two data pro- tection features: (a) persistent checksums to protect data at- In the last three decades there has been a dramatic in- rest from silent errors and (b) block-level versioning to allow crease of storage density in magnetic and optical media, protection from user errors. Although these techniques have which has led to significantly lower cost per capacity unit. been previously used either at the device level (checksums) Today, most I/O stacks already encompass RAID features or at the host (versioning), in this work we implement these for protecting from device failures. However, recent stud- features in the storage controller, which allows us to use ies of large magnetic disk populations indicate that there any type of storage devices as well as any type of host I/O is also a significant failure rate of hardware and software stack. The main challenge in our approach is to deal with components in the I/O path, many of which are silent until persistent metadata in the controller I/O path.
[Show full text]