High-Speed NFS
Ivo Sele
Diploma Thesis Winter 1998/99
Supervisors: F. Rauch, Prof. T. Stricker
Institute for Computer Systems, ETH Zürich
Objectives
Due to the constantly increasing performance of standard PCs, we can observe a growing interest in
Clusters of PCs (CoPs). The distributed file system, which provides access to most of the data is
an important part of a CoPs. Often the Network File System (NFS) is used for this purpose. With
the NFS implementation in Linux modern PCs are far from being able to fully take advantage of
modern high-speed networks like Gigabit Ethernet. The main reason is that the improvement in local
area network bandwidth achieved in recent years is far greater than the increase in memory bandwidth
of computers.
In this thesis we analyze the performance of NFS for CoPs running the Linux operating system to show
improvement possibilities. Because the implementation of the underlying network software strongly
affects the speed of data transfers via NFS, critical functions within the Linux kernel were
instrumented. This allows the processing time for various operations performed during data transfers
to be measured. The gathered information is used to locate weak points and bottlenecks. Additionally
the effect of different hardware and software configurations on throughput and latency of NFS data
transfers was examined.
Results
The measurements of operation times revealed that both the NFS client and server are idle for a large
proportion of the time needed for NFS transfers. We came to the conclusion that the flow control
algorithm employed by the Linux client for asynchronous requests is one of the main reasons for the
relatively low CPU utilization. This should definitely be researched further because finding and
eliminating the causes for the large idle times could potentially result in vast performance
improvements. We also noticed large fluctuations in the time needed for certain network and file
system layer operations and especially in total time for file transfers.
The author can be reached at isele@gmx.net
[ CS-Department
| Up ]
ETH Zürich: Department of Computer Science
Comments to Felix Rauch <rauch@inf.ethz.ch>
March 1, 1999