Monday, 18 May 2015 00:00

ReFS (Protogon) details

Rate this item
(0 votes)

b2ap3_thumbnail_ReFS.jpgWindows 8 developers blog contains a large article describing the architecture of the new file system ReFS (Resilient File System), previously known under the code name Protogon that is developed for Windows Server 8 and in future would be refined and installed on the client Windows machines. Previous file system NTFS version 1.2 was presented in the far 1993 as part of Windows NT 3.1 and by introduction of Windows XP in 2001 NTFS reached version 3.1, and only then it was installed on to the client machines. Somehwat the same path awaits ReFS as well.

NTFS does not meet the requirements of modern file systems for many reasons. Furthermore, it has never been seen as an elegant file system and high-performance file system.

Leading specialist and manager of Windows Storage and File System division Surendra Verma explains that ReFS will be based on NTFS and preserve compatibility with the key features and at the same time it will be an entirely different architecture. Some features and semantics of NTFS would be eliminated, including support for short names, object ID, compression, encryption at the level of files (EFS), disk limits (quotas), data flows, transactions, sparse files, extended attributes and hard links.

ReFS data structure organised as B+ trees

ReFS key goals

  • Preserve maximum compatibility with a set of widely used NTFS features and get rid of unnecessary features that only complicate the system
  • Data verification and automatic correction
  • Maximum scalability.
  • Inability of complete shutdown of file system due to isolation of bad sectors.
  • Flexible architecture using such function as Storage Spaces specially created for and implemented in ReFS.

ReFS key functions

(some are available from Storage Spaces only)

  • Integrity of metadata with checksums.
  • Integrity streams: method of data recording to disk for additional protection of data in the event of partial disk failure.
  • Transaction model "allocate on write" (copy on write)
  • Large volume, file and directory sizes. Volume size is limited to 278 bites under cluster size of 16 KB (264 * 16 * 210), stack Windows supports 264. Maximum number of files in directory: 264. Maximum number of directories in volume: 264.
  • Storage pooling and virtualization makes file system creation and management easy.
  • Data striping for performance (bandwidth can be managed) and redundancy for fault tolerance.
  • Disk scrubbing for protection against latent disk errors.
  • Resiliency to corruptions with "salvage" for maximum volume availability in all cases.
  • Shared storage pools across machines for additional failure tolerance and load balancing.

Additionally, ReFS will inherit many functions and semantics of NTFS, including BitLocker encryption, access control lists, USN journal, change notifications, symbolic links, junction points, mount points, reparse points, volume snapshots, file IDs and oplocks.

Of course, data stored on ReFS will be accessible for clients through the same APIs, that are used today on all operating systems that can access NTFS volumes.

Last modified on Monday, 18 May 2015 20:02
Data Recovery Expert

Viktor S., Ph.D. (Electrical/Computer Engineering), was hired by DataRecoup, the international data recovery corporation, in 2012. Promoted to Engineering Senior Manager in 2010 and then to his current position, as C.I.O. of DataRecoup, in 2014. Responsible for the management of critical, high-priority RAID data recovery cases and the application of his expert, comprehensive knowledge in database data retrieval. He is also responsible for planning and implementing SEO/SEM and other internet-based marketing strategies. Currently, Viktor S., Ph.D., is focusing on the further development and expansion of DataRecoup’s major internet marketing campaign for their already successful proprietary software application “Data Recovery for Windows” (an application which he developed).

More in this category: « File systems

Leave a comment

Make sure you enter the (*) required information where indicated. HTML code is not allowed.