Direct Access File System (DAFS)
Research
DAFS is an emerging commercial standard for network-attached storage
on server cluster interconnects such as VI and InfiniBand. The DAFS
architecture and protocol leverage adapter support for user-level
networking, remote direct memory access (RDMA), and reliable
communication. Our research in this context focuses on:
-
Demonstrating the performance benefits of the DAFS structure
(read our
Usenix'02
paper).
-
Proposing direct-access networking alternatives to RDMA.
One alternative is the tagged receiver buffer pre-posting
mechanism, which is described and evaluated in our
FAST'03
paper.
-
Using RDMA to reduce the per-I/O server CPU overhead. This is
achievable with Optimistic DAFS (ODAFS), our proposed extension
to DAFS described and evaluated in our
FAST'03
paper.
-
Understanding the structure and performance of DAFS kernel
servers. Our
BSDCon'02
paper describes our experience with designing and implementing a
kernel server for FreeBSD.
-
Using DAFS for database network storage. Some of the benefits
of using DAFS to improve the performance of database access are
demonstrated in our
Usenix'02 paper.
-
Addressing caching issues in user-level file system clients. A
technical
report describes our implementation of a user-level
client cache for DAFS.
Work to date has produced the following software releases:
-
A kernel DAFS server for FreeBSD 4.3
(over the Emulex
cLAN VI adapter) and FreeBSD 4.6 (over Myrinet
VI-GM). This server implements a large subset of the
DAFS
specification and is currently in use in a number of academic and
industrial environments.
-
A user-level implementation of a general-purpose caching layer between
applications and the DAFS client API, accessible through a POSIX-like API.
The client caching implementation is based on DAFS open
delegations.
-
A port of Berkeley DB to DAFS.
Experience with DB over DAFS has improved our understanding of the system.
-
Ports of a number of device drivers to FreeBSD.
We are using and building on a DAFS client provider API implementation
originally developed by Jeff Chase's
group at Duke University.
Researchers
Publications
-
Kostas Magoutis, Salimah Addetia, Alexandra Fedorova, Margo I. Seltzer,
"Making the Most out of Direct Access Network-Attached Storage", to appear
in Proceedings of Second USENIX Conference on File and Storage Technologies
(FAST'03), San Francisco, CA, March 31-April 2, 2003.
-
Kostas Magoutis, Salimah Addetia, Alexandra Fedorova, Margo I. Seltzer,
Jeffrey S. Chase, Andrew J. Gallatin, Richard Kisley, Rajiv G. Wickremesinghe,
Eran Gabber, "Structure and Performance of the Direct Access File System"
(pdf),
in Proceedings of USENIX Annual Technical Conference, Monterey, CA, June
9-14, 2002.
-
Kostas Magoutis, "The Optimistic Direct Access File System: Design and
Network Interface Support" (ps,
pdf)
in Proceedings of Workshop on Novel Uses of System Area Networks (SAN-1)
(Held in conjunction with HPCA-8),
Cambridge, MA, February 2, 2002.
-
Kostas Magoutis, "Design and Implementation of a Direct Access File System
(DAFS) Kernel Server for FreeBSD" (ps,
pdf),
in Proceedings of USENIX
BSDCon 2002 Conference, San Franscisco, CA, February 11-14, 2002.
-
Salimah Addetia, "User-level Client-side Caching for DAFS", Harvard University
TR-14-01, (ps,
pdf).
Software Releases
-
DAFS client API implementation (source
and release
notes). This software was modified and expanded from its original
release to support new functionality and fully interoperate with our
kernel server.
-
DAFS kernel server for FreeBSD (patch
for FreeBSD
4.3 and release
notes). This release includes
-
DAFS server, under sys/miscfs/dafs/
-
Driver support for the Emulex cLAN card, under sys/pci/falcon/
-
Memory registration/deregistration support for block I/O initiated by the
DAFS server
-
Patch
and errata
for zero-copy optimized NFS implementation used in the USENIX 2002 paper
If you are using this software and have feedback for us, or if you would
like to be included in a mailing list to receive notification of updates
in the future, send us mail.
In the News
Funding
This page is maintained by Kostas
Magoutis