CacheDAFS: User Level Client-Side Caching for the Direct Access File System

Abstract

This thesis focuses on the design, implementation, and evaluation of user-level client-side caching for the Direct Access File System (DAFS). DAFS is a high performance file access protocol designed for local sharing in high-speed, low latency networked environments. DAFS operates over memory-to-memory interconnects such as Visual Interface (VI). VI provides a standard for efficient network communication by moving software overheads into hardware and eliminating the operating system from common data transfers. While much work has been done on message passing and distributed shared memory in VI-like environments, DAFS is one of the first attempts to extend user-level networking to network file systems. In the environment of high-speed networks with virtual interfaces, software overheads such as data copies and translation, buffer management and context switches become important bottlenecks. The DAFS protocol departs from traditional network file system practices to enhance performance. Distributed fil systems use client-side caching to improve performance by reducing network traffic, disk traffic, and server load. The DAFS client omits any caching. This thesis presents a user-space cache for DAFS called cacheDAFS with a careful design that avoids most bottlenecks in network file system protocols and user-level networking environments. CacheDAFS maintains perfect consistency among DAFS clients using NFSv4-like open delegations. Changes to the DAFS API in order to add caching are minimal and results show that DAFS applications can use cacheDAFS to reap all the standard benefits of caching.Engineering and Applied Science

    Similar works