Improving Ext2 Integrity with Checksums
Brian Pellin and Chloe Schulze
Abstract: We have modified the ext2 file system to include checksumming on a per block basis.
Our goal is to follow a realistic failure model, which accepts that disks can
partially fail and do so silently. The addition of checksumming to ext2 detects silent
data corruption and notifies the user if data has been changed on disk without his/her
knowledge. This solution may also solve some other errors, such as malicious changes to
data. We make no attempt to recover lost data, only to notify the user of the occurrence.
Our implementation is comparable to the performance of ext2, with the addition of
overhead incurred from reading, writing and computing checksums. We broke down the components
of the overhead and found that for warm cache reads the computation of the checksum
dominates CPU costs. Additionally, for cold cache operations, we found that the time
is severely dominated by the disk positioning to read the checksums.
Available as: PDF
or Postscript
Click
here to download the kernel files we modified.
Click
here to download our benchmarks.
|