A Caching NFS Client for Linux
Greg J. Badros, Jan Sanislo · 1999
The Linux NFS client su#ers from poor performance. As Linux has become more popular, its primitive NFS client implementation has outgrown its usefulness. We describe numerous enhancements to the Linux NFS client that improve performance. Specifically, we discuss better lookup and attribute caching, asynchronous writing of data, and local disk caching of data file reads. We describe our implementation, and benchmark its performance against both the existing stable Linux NFS client and the local-disk filesystem, ext2fs. Our implementation outperforms the 2.0.x kernel's NFS client in all but one benchmark, and improves on the basic client by up to a factor of 14 when reading from files that are cached locally. 1 Introduction Unlike more advanced Network File System (NFS) client implementations, such as those by Sun Microsystems for SunOS and Solaris, the Linux 2.0.x NFS client has few performance features. Only asynchronous read-ahead bu#ering and some rudimentary lookup attribut...