An NFS Trace Player for File System Evaluation

File system traces have been used in simulation of specific design techniques such as disk scheduling, in workload characterization and modeling, and in identifying interesting file access patterns for performance optimization. Surprisingly they are rarely used to test the correctness and to evaluate the performance of an actual file system or server. The main reason is that up until now there does not exist a flexible and easy-to-use trace player that, given an input trace, can properly initialize the test file system and feed the trace to the test file system in such a way that respects the dependency constraint among file access requests in the trace. This paper describes the design, implementation, and evaluation of an NFS trace play-back tool called FEUT (File system Evaluation Using Traces), which can automatically derive the initial file system image from a trace, can speed up or slow down a trace play-back using temporal or spatial scaling, and features a highly efficient implementation that minimizes the CPU and disk I/O overhead during trace play-back. Experiments using a large NFS trace set show that trace-driven file system evaluation can indeed produce substantially different throughput and latency measurements than synthetic benchmarks such as SPECsfs, and FEUT’s trace player is actually more efficient that SPECsfs’s workload generator despite the fact that the former requires more CPU computation and disk I/O accesses.

[1]  Mendel Rosenblum,et al.  The design and implementation of a log-structured file system , 1991, SOSP '91.

[2]  Mahadev Satyanarayanan,et al.  Scale and performance in a distributed file system , 1988, TOCS.

[3]  Jeffrey Katcher,et al.  PostMark: A New File System Benchmark , 1997 .

[4]  GhemawatSanjay,et al.  The Google file system , 2003 .

[5]  James Lau,et al.  File System Design for an NFS File Server Appliance , 1994, USENIX Winter.

[6]  Margo I. Seltzer,et al.  Journaling Versus Soft Updates: Asynchronous Meta-data Protection in File Systems , 2000, USENIX Annual Technical Conference, General Track.

[7]  Margo I. Seltzer,et al.  New NFS Tracing Tools and Techniques for System Analysis , 2003, LISA.

[8]  Margo I. Seltzer,et al.  Passive NFS Tracing of Email and Research Workloads , 2003, FAST.

[9]  Thomas E. Anderson,et al.  A Comparison of File System Workloads , 2000, USENIX Annual Technical Conference, General Track.

[10]  Bryan Parno,et al.  An Analysis of Database-Driven Mail Servers , 2003, LISA.

[11]  R. S. Fabry,et al.  A fast file system for UNIX , 1984, TOCS.

[12]  Margo Seltzer,et al.  The Utility of File Names , 2003 .

[13]  Margo I. Seltzer,et al.  File system aging—increasing the relevance of file system benchmarks , 1997, SIGMETRICS '97.

[14]  Michael Dahlin,et al.  A quantitative analysis of cache policies for scalable network file systems , 1994, SIGMETRICS.

[15]  John A. Kunze,et al.  A trace-driven analysis of the UNIX 4.2 BSD file system , 1985, SOSP '85.

[16]  Andrew W. Moore,et al.  Operating system and file system monitoring: A comparison of passive network monitoring with full ke , 1995 .

[17]  Jeffrey C. Mogul,et al.  Brittle metrics in operating systems research , 1999, Proceedings of the Seventh Workshop on Hot Topics in Operating Systems.

[18]  Tzi-cker Chiueh,et al.  Design, implementation, and evaluation of repairable file service , 2003, 2003 International Conference on Dependable Systems and Networks, 2003. Proceedings..

[19]  Eric Anderson,et al.  Proceedings of the Third Usenix Conference on File and Storage Technologies Buttress: a Toolkit for Flexible and High Fidelity I/o Benchmarking , 2022 .

[20]  Mary Baker,et al.  Measurements of a distributed file system , 1991, SOSP '91.

[21]  W. Vogels File system usage in Windows NT 4.0 , 2000, OPSR.

[22]  Jim Zelenka,et al.  File server scaling with network-attached secure disks , 1997, SIGMETRICS '97.

[23]  Matt Blaze NFS Tracing By Passive Network Monitoring , 1992 .

[24]  Darrell C. Anderson Fstress: A Flexible Network File Service Benchmark , 2002 .

[25]  Margo I. Seltzer,et al.  Operating system benchmarking in the wake of lmbench: a case study of the performance of NetBSD on the Intel x86 architecture , 1997, SIGMETRICS '97.