The Direct Access File System

The Direct Access File System (DAFS) is a new, fast, and lightweight remote file system protocol. DAFS targets the data center by addressing the performance and functional needs of clusters of application servers. We call this the local file sharing environment. File access performance is improved by utilizing Direct Access Transports, such as InfiniBand, Remote Direct Data Placement, and the Virtual Interface Architecture. DAFS also enhances file sharing semantics compared to prior network file system protocols. Applications using DAFS through a user-space I/O library can bypass operating system overhead, further improving performance. We present performance measurements of an IP-based DAFS network, demonstrating the DAFS protocol's lower client CPU requirements over commodity Gigabit Ethernet. We also provide the first multiprocessor scaling results for a well-known application (GNU gzip) converted to use DAFS.

[1]  Mark Wittle,et al.  Direct Access File System (DAFS) , 2001 .

[2]  Matthew T. O'Keefe,et al.  The Global File System: A File System for Shared Disk Storage , 1997 .

[3]  John Linn,et al.  Generic Security Service Application Program Interface Version 2, Update 1 , 2000, RFC.

[4]  Kai Li,et al.  Retrospective: virtual memory mapped network interface for the SHRIMP multicomputer , 1994, ISCA '98.

[5]  Chandramohan A. Thekkath,et al.  Petal: distributed virtual disks , 1996, ASPLOS VII.

[6]  Margo I. Seltzer,et al.  Making the Most Out of Direct-Access Network Attached Storage , 2003, FAST.

[7]  William I. Nowicki,et al.  NFS: Network File System Protocol specification , 1989, RFC.

[8]  Charles L. Seitz,et al.  Myrinet: A Gigabit-per-Second Local Area Network , 1995, IEEE Micro.

[9]  Alex Rapaport,et al.  Mpi-2: extensions to the message-passing interface , 1997 .

[10]  Abhishek Chandra,et al.  Scalability of Linux Event-Dispatch Mechanisms , 2000, USENIX Annual Technical Conference, General Track.

[11]  David Robinson,et al.  NFS version 4 Protocol , 2000, RFC.

[12]  Mahadev Satyanarayanan,et al.  Scale and performance in a distributed file system , 1987, SOSP '87.

[13]  Kostas Magoutis,et al.  Design and Implementation of a Direct Access File System (DAFS) Kernel Server for FreeBSD , 2002, BSDCon.

[14]  Frank B. Schmuck,et al.  GPFS: A Shared-Disk File System for Large Computing Clusters , 2002, FAST.

[15]  Peter Druschel,et al.  A Scalable and Explicit Event Delivery Mechanism for UNIX , 1999, USENIX Annual Technical Conference, General Track.

[16]  John Linn,et al.  Generic Security Service Application Program Interface , 1993, RFC.

[17]  Jeffrey S. Chase,et al.  End system optimizations for high-speed TCP , 2001, IEEE Commun. Mag..

[18]  Robert W. Horst TNet: A Reliable System Area Network , 1995, IEEE Micro.

[19]  Chandramohan A. Thekkath,et al.  Frangipani: a scalable distributed file system , 1997, SOSP.

[20]  Margo I. Seltzer,et al.  Structure and Performance of the Direct Access File System , 2002, USENIX ATC, General Track.

[21]  John T. Kohl,et al.  The Kerberos Network Authentication Service (V5 , 2004 .

[22]  R. S. Fabry,et al.  A fast file system for UNIX , 1984, TOCS.

[23]  Mendel Rosenblum,et al.  The design and implementation of a log-structured file system , 1991, SOSP '91.

[24]  Sun Microsystems,et al.  RPC: Remote Procedure Call Protocol specification: Version 2 , 1988, RFC.

[25]  Milon Mackey,et al.  An implementation of the Hamlyn sender-managed interface architecture , 1996, OSDI '96.

[26]  Paul R. McJones,et al.  Evolving the UNIX System Interface to Support Multithreaded Programs , 1997 .