Next4: Snapshots in Ext4 Filesystem

Team

  • Aditya Dani
  • Shardul Mangade
  • Piyush Nimbalkar
  • Harshad Shirwadkar

Mentor

Vedang Manerikar and Chinmay Kamat

Year: 2010-2011

Abstract

The growing value of data as a strategic asset has given rise to the necessity of implementing reliable backup and recovery solutions in the most efficient and cost-effective manner. We implement Next4 - file system based snapshot feature in Ext4 which provides incremental versions of data, enabling reliable backup and data recovery. The design is integrated into the Ext4 file system and does not require any application level intelligence.

Next4 aims at implementing a snapshot feature as an add-on to the basic Ext4 file system without causing any considerable changes to the original Ext4 on-disk format. It is implemented by infusing the copy-on-write strategy for metadata blocks and the move-on-write strategy for data blocks. Every snapshot is stored as a sparse file and these files are maintained in a linked list. They contain either modified data blocks or a ‘hole’ in case of
unmodified blocks. A ‘hole’ indicates that the corresponding block should be read from other snapshot files. Thus each snapshot is an incremental backup of the data within the system.

What distinguishes our implementation of snapshots is the way that the data is backed up, improving both space utilization as well as performance. Ext4, the successor of most widely used Ext3 file system, is shipped as the base file system with most Linux distributions today. The project discussion has already received positive response from the maintainers of the Ext4 and the code is underway for mainline kernel submission, once approved Next4 will cater the huge number of users with its benefits.

Achievements

  • Won the 1st Prize in Paper Presentation Competition in Quark 2011 at BITS, Goa.
  • Won the 2nd Prize in Open Software Competition in Techkriti 2011 at IIT, Kanpur.
  • Won the 2nd Prize in Paper Presentaion Competition in Techkriti 2011 at IIT, Kanpur.
  • Won the 3rd Prize in Project Competition in Quark 2011 at BITS, Goa.
  • Won the Marvell Special Prize in Concepts 2011 at PICT, Pune.
  • Links

  • Source code - https://github.com/piyush-nimbalkar/ext4-snapshots
  • Mention on Next3 Home Page - http://next3.sourceforge.net