Printer Friendly
The Free Library
14,530,717 articles and books
Member login
User name  
Password 
 
Join us Forgot password?

DAFS: Enabling Data Center Applications.


DAFS (Direct Access File System) A high-performance file sharing protocol based on the VI memory-to-memory architecture. Designed for storage area networks (SANs), DAFS provides bulk data transfer directly between the application buffers of two machines without  is a lightweight protocol A communications protocol designed with less complexity in order to reduce overhead. For example, it uses fixed-length headers because they are faster to parse than variable-length headers.  enabling apps to directly access transport resources.

This is the second in a series of columns authored by members of the DAFS Collaborative, a new industry group formed to create a protocol specification for direct, memory-to-memory data networking.

The Direct Access File System (DAFS) protocol is a new file access method designed to provide application servers with high performance low latency access to shared storage pools over Fibre Channel, Gigabit Ethernet, InfiniBand, and other VT-compliant transports in data center environments.

Designed from the ground up to take full advantage of these next generation interconnect technologies, DAFS is a lightweight protocol that enables applications to directly access transport resources. Consequently, a DAFS-enabled application can transfer data from its application buffers to the network transport, bypassing the operating system while still preserving file semantics. In addition, since DAFS is designed specifically for data center environments, it provides data integrity and availability features such as consistent high speed locking, graceful recovery and fail-over of clients and servers, fencing, and enhanced data recovery.

All of this translates into high-performance file I/O, significantly improved CPU CPU
 in full central processing unit

Principal component of a digital computer, composed of a control unit, an instruction-decoding unit, and an arithmetic-logic unit.
 utilization, and greatly reduced system overhead due to data copies,, user/kernel context switches, thread context switches, interrupts, and network protocol processing.

DAFS vs. Traditional File Access Methods

As mentioned above, DAFS greatly reduces the overhead normally associated with file access methods. Figure 1 compares three file access methods: local file system access, network file system access, and DAFS access. In the case of local or network file systems, data is copied from the disk or network subsystem into a buffer cache, and then copied into the application's private buffer. File access over network file systems incurs additional data copies in the networking stack. Some operating systems can bypass the buffer cache copy in certain cases, but all reads over a traditional network file system require at least one data copy.

DAFS has a fundamental advantage over other file access methods when reading data. By using the remote memory addressing capability of transports like VT (Virtual Interface Architecture The Virtual Interface Architecture (VIA) is an abstract model of a user-level zero-copy network, and is the basis for InfiniBand and iWARP. Created by Microsoft, Intel, and Compaq, the original VIA sought to standardize the interface for high-performance network technologies known as ) and InfiniBand, an application using the DAFS API can read a file without requiring any copies on the client side. Using the "direct" DAFS operations, a client's read or write request causes the DAFS server to issue remote DMA (1) (Digital Media Adapter) See digital media hub.

(2) (Document Management Alliance) A specification that provides a common interface for accessing and searching document databases.
 requests back to the client, so data can be transferred to and from a client application's buffers without any CPU overhead at all on the client side. The DAFS write path is also efficient; to avoid extra data copies on write requests, a traditional local or remote file system must lock down the application's I/O (Input/Output) The transfer of data between the CPU and a peripheral device. Every transfer is an output from one device and an input to another. See PC input/output.

I/O - Input/Output
 buffers before each request. A DAFS client allows an application to register its buffers with the NIC (1) (Network Interface Card) See network adapter. See also InterNIC.

(2) (New Internet Computer) An earlier Linux-based computer from The New Internet Computer Company (NICC), Palo Alto, CA.
 once, which avoids the per-operation registration overhead.

DAFS Client Implementations

Applications can take advantage of these capabilities in several ways. The first is through a user library that implements the DAFS protocol and is loaded as a DLL (1) See data link layer.

(2) (Dynamic Link Library) An executable program module in Windows that performs one or more functions at runtime. DLLs are not launched by the user; they are called for by an executable program or by other DLLs.
 or shared library. Alternatively, an application may access a DAFS server transparently through a load-able kernel module. These two client implementations are shown in Figure 2.

The first method shown is a user library that implements the DAFS protocol. A user space implementation of DAFS offers the greatest potential for increased I/O performance, by taking advantage of its transport's ability to directly access the networking hardware from user space and providing an appropriate API for asynchronous Refers to events that are not synchronized, or coordinated, in time. The following are considered asynchronous operations. The interval between transmitting A and B is not the same as between B and C. The ability to initiate a transmission at either end.  zero-copy I/O. The DAFS library calls into the kernel to set up an initial end-to-end connection, which can then be safely accessed from user space. The NIC (Network Interface Card) implements the necessary protection to prevent any other processeses from accessing or interfering with the connection. A, so applications can transfer data directly to the NIC, avoiding the overhead of data copies and system call context switches while still enjoying the security benefits of traditional kernel-based networking implementations. The combination of direct initiation of I/O and the elimination of data copies reduces operation latency and increases bulk data transfer throughput.

To maximize performance, the DAFS library exports an API that gives the user application explicit control over NIC DMA access to its address space. The library API also exposes the asynchronous nature of the server interaction, allowing an intelligent application to manage overlapped data transfers.

The disadvantage of the user library approach is its lack of compatibility with the usual system call interface to the host OS file systems, requiring applications to be modified to take advantage of these capabilities. The benefit is optimal performance. This approach, therefore, is intended for high-performance applications that are sensitive to either throughput or latency, or applications that can make use of the extended DAFS services made available through the user API.

The second client implementation shown in Figure 2 is a loadable kernel module In computing, loadable kernel modules, or LKM, are object files that contain code to extend the running kernel, or so-called base kernel, of an operating system. . In the Unix world, this takes the form of a Virtual File System (VFS VFS Virtual File System
VFS Vancouver Film School
VFS Virtual Filesystem Switch
VFS Veritas File System
VFS Vines File System
VFS Virtual Fighting Squad (gaming)
VFS Vehicle Fighting System
VFS Virtual Filesystem Switching
). In the Win32 world it is called an Installable File System A file system that can be added to an operating system that is designed to handle multiple file systems. Multiple file systems allow different types of file structures to be accessed. See IFSMgr.  (IFS). The VFS/IFS fits in the traditional place in the operating system architecture where new file systems are added. It is a peer both to the other "remote/redirector" file system implementations (e.g. NFS (Network File System) The file sharing protocol in a Unix network. This de facto Unix standard, which is widely known as a "distributed file system," was developed by Sun. See file sharing protocol and WebNFS.

NFS - Network File System
 and CIFS (Common Internet File System) The file sharing protocol used in Windows. It evolved out of the SMB (Server Message Block) protocol in DOS, which is why the terms CIFS/SMB and SMB/CIFS are sometimes seen. The word "Internet" in the CIFS name has little relevance. ), and to the local file systems (e.g. ufs, FFS (Flash File System) Software from Microsoft that made flash memory look like a disk drive. It was superseded by the Flash Translation Layer (FTL) from PCMCIA and M-Systems. See flash memory. , NTFS (NT File System) An optional file system for Windows NT, 2000 and XP operating systems. NTFS is the more advanced file system, compared to FAT32. It improves performance and is required in order to implement numerous security and administrative features in the OS. , FAT, VxFS). Under this approach, when an application uses the standard kernel interface to read from or write to a file, the VFS/IFS layer passes the request on to the individual file system responsible for that particular file. If the file is on a DAFS file system, then the kernel passes the I/O request to the DAFS VFS/IFS, which issues DAFS requests to a server. Like other remote file systems, each call to the VFS/IFS layer may map to one or more over-the-wire protocol requests to a remote file server.

The advantage of this type of DAFS client implementation is that applications can use it transparently, just like other remote file system implementations (NFS, AFS A distributed file system for large, widely dispersed Unix and Windows networks from Transarc Corporation, now part of IBM. It is noted for its ease of administration and expandability and stems from Carnegie-Mellon's Andrew File System.

AFS - Andrew File System
, DFS (Distributed File System) An enhancement to Windows NT/2000 and 95/98 that allows files scattered across multiple servers to be treated as a single group. With Dfs, a network administrator can build a hierarchical file system that spans the organization's LANs and  for Unix, CIFS for WinNT/Win2k). Applications can enjoy many of the advantages of DAFS without having to be rewritten to the DAFS API. Performance is limited by the kernel transitions involved in any operation to a VFS/IFS, but the kernel DAFS implementation still uses remote DMA and other VI capabilities, so it consumes significantly fewer CPU cycles compared to other remote file systems under similar loads for a given client platform. Even in the worst case, over-the-wire data transfer rates (both single stream and aggregate) will be comparable to local file system access to Fibre Channel connected (direct attached) block storage arrays. Finally, the application still benefits from the non-performance advantages of DAFS, including improved locking and fail-over semantics.

Applications can take advantage of DAFS in several different ways. Applications that run directly on top of DBMS (DataBase Management System) Software that controls the organization, storage, retrieval, security and integrity of data in a database. It accepts requests from the application and instructs the operating system to transfer the appropriate data.  systems automatically benefit once the database program is DAFS-enabled.

Applications that are sensitive to either throughput or latency achieve maximum performance by using a user DAFS library. Alternatively, for applications where transparent access to DAFS is more appropriate, a Loadable Kernel Module delivers all the data management and ease of use advantages of file mode access, with similar or better performance than local access to Fibre Channel connected (direct attached) block storage arrays.

Jeffrey Carter, Matt DeBergalis, John Gillono, and Arthur Lent are in Client Software Development at Network Appliance (Waltham, MA).
COPYRIGHT 2000 West World Productions, Inc.
No portion of this article can be reproduced without the express written permission from the copyright holder.
Copyright 2000, Gale Group. All rights reserved. Gale Group is a Thomson Corporation Company.

 Reader Opinion

Title:

Comment:



 

Article Details
Printer friendly Cite/link Email Feedback
Title Annotation:Industry Trend or Event; DAFS Collaborative
Author:Lent, Arthur
Publication:Computer Technology Review
Geographic Code:1USA
Date:Dec 1, 2000
Words:1229
Previous Article:Directors: The Enterprise SAN Building Blocks.(Technology Information)
Next Article:Eurologic Systems Introduces SANbloc, First 2Gbps Fibre Channel-Ready Network Storage System.(Eurologic Systems SANbloc network storage...
Topics:



Related Articles
Network Attached Storage For Database Applications And The Impact Of DAIS.(Technology Information)
FC & IP Made For Each Other? Or Another Shotgun Marriage?(Government Activity)
DAFS And NISv4 Could Become Semantically Identical.
VI: Enabling High-Performance Data Access.(Industry Trend or Event)(Column)
Storage Networking And The Data Center Of The Future.(Industry Trend or Event)
Giganet Announces VI Over Ethernet Products.(Company Business and Marketing)
DAFS Collaborative: Intel and NetApp Cooperate.(Company Operations)
Enabling Technology For The Data Center OF The Future: DAFS And The InfiniBand Architecture.(Technology Information)
NETWORK APPLIANCE SHIPS FIRST DAFS-ENABLED STORAGE SOLUTIONS.(DAFS Database Accelerator)(Product Announcement)
NETWORK APPLIANCE AND SAS TEAM TO DELIVER POWERFUL ENTERPRISE STORAGE SOLUTIONS.

Terms of use | Copyright © 2009 Farlex, Inc. | Feedback | For webmasters | Submit articles