Skip to main navigation Skip to search Skip to main content

vNFS: Maximizing NFS performance with compounds and vectorized I/O

  • Ming Chen
  • , Geetika Babu Bangera
  • , Dean Hildebrand
  • , Farhaan Jalia
  • , Geoff Kuenning
  • , Henry Nelson
  • , Erez Zadok

Research output: Contribution to journalArticlepeer-review

9 Scopus citations

Abstract

Modern systems use networks extensively, accessing both services and storage across local and remote networks. Latency is a key performance challenge, and packing multiple small operations into fewer large ones is an effective way to amortize that cost, especially after years of significant improvement in bandwidth but not latency. To this end, the NFSv4 protocol supports a compounding feature to combine multiple operations. Yet compounding has been underused since its conception because the synchronous POSIX file-system API issues only one (small) request at a time. We propose vNFS, an NFSv4.1-compliant client that exposes a vectorized high-level API and leverages NFS compound procedures to maximize performance. We designed and implemented vNFS as a user-space RPC library that supports an assortment of bulk operations on multiple files and directories. We found it easy to modify several UNIX utilities, an HTTP/2 server, and Filebench to use vNFS. We evaluated vNFS under a wide range of workloads and network latency conditions, showing that vNFS improves performance even for low-latency networks. On high-latency networks, vNFS can improve performance by as much as two orders of magnitude.

Original languageEnglish
Article number21
JournalACM Transactions on Storage
Volume13
Issue number3
DOIs
StatePublished - Sep 2017

Keywords

  • Compound procedures
  • File-system API
  • NFS
  • POSIX
  • VNFS

Fingerprint

Dive into the research topics of 'vNFS: Maximizing NFS performance with compounds and vectorized I/O'. Together they form a unique fingerprint.

Cite this