scispace - formally typeset
Search or ask a question
Proceedings ArticleDOI

The effect of client caching on file server workloads

03 Jan 1996-Vol. 1, pp 150-159
TL;DR: The results demonstrate that client caches alter workload characteristics in a way that leaves a profound impact on server cache performance, and suggest worthwhile directions for the future development of server caching strategies.
Abstract: A distributed file system provides a file service from one or more shared file servers to a community of client workstations over a network. While the client-server paradigm has many advantages, it also presents new challenges to system designers concerning performance and reliability. As both client workstations and file servers become increasingly well-resourced, a number of system design decision need to be re-examined. This research concerns the caching of disk-blocks in a distributed client-server environment. Some recent research has suggested that various strategies for cache management may not be equally suited to the circumstances at both the client and the server. Since any caching strategy is based on assumptions concerning the characteristics of the demand, the performance of the strategy is only as good as the accuracy of this assumption. The performance of a caching strategy at a file server is strongly influenced by the presence of client caches since these caches alter the characteristics of the stream of requests that reaches the server. This paper presents the results of an investigation of the effect of client caching on the nature of the server workload as a step towards understanding the performance of caching strategies at the server. The results demonstrate that client caches alter workload characteristics in a way that leaves a profound impact on server cache performance, and suggest worthwhile directions for the future development of server caching strategies.
Citations
More filters
Journal ArticleDOI
15 May 1996
TL;DR: This paper concludes with a discussion of caching and performance issues, using the invariants to suggest performance enhancements that seem most promising for Internet Web servers.
Abstract: The phenomenal growth in popularity of the World Wide Web (WWW, or the Web) has made WWW traffic the largest contributor to packet and byte traffic on the NSFNET backbone. This growth has triggered recent research aimed at reducing the volume of network traffic produced by Web clients and servers, by using caching, and reducing the latency for WWW users, by using improved protocols for Web interaction.Fundamental to the goal of improving WWW performance is an understanding of WWW workloads. This paper presents a workload characterization study for Internet Web servers. Six different data sets are used in this study: three from academic (i.e., university) environments, two from scientific research organizations, and one from a commercial Internet provider. These data sets represent three different orders of magnitude in server activity, and two different orders of magnitude in time duration, ranging from one week of activity to one year of activity.Throughout the study, emphasis is placed on finding workload invariants: observations that apply across all the data sets studied. Ten invariants are identified. These invariants are deemed important since they (potentially) represent universal truths for all Internet Web servers. The paper concludes with a discussion of caching and performance issues, using the invariants to suggest performance enhancements that seem most promising for Internet Web servers.

858 citations

Journal ArticleDOI
TL;DR: The paper concludes with a discussion of caching and performance issues, using the observed workload characteristics to suggest performance enhancements that seem promising for Internet Web servers.
Abstract: This paper presents a workload characterization study for Internet Web servers. Six different data sets are used in the study: three from academic environments, two from scientific research organizations, and one from a commercial Internet provider. These data sets represent three different orders of magnitude in server activity, and two different orders of magnitude in time duration, ranging from one week of activity to one year. The workload characterization focuses on the document type distribution, the document size distribution, the document referencing behavior, and the geographic distribution of server requests. Throughout the study, emphasis is placed on finding workload characteristics that are common to all the data sets studied. Ten such characteristics are identified. The paper concludes with a discussion of caching and performance issues, using the observed workload characteristics to suggest performance enhancements that seem promising for Internet Web servers.

771 citations

ReportDOI
10 Jun 2002
TL;DR: In this article, the authors explore the benefits of a simple scheme to achieve exclusive caching, in which a data block is cached at either a client or the disk array, but not both.
Abstract: Modern high-end disk arrays often have several gigabytes of cache RAM. Unfortunately, most array caches use management policies which duplicate the same data blocks at both the client and array levels of the cache hierarchy: they are inclusive. Thus, the aggregate cache behaves as if it was only as big as the larger of the client and array caches, instead of as large as the sum of the two. Inclusiveness is wasteful: cache RAM is expensive. We explore the benefits of a simple scheme to achieve exclusive caching, in which a data block is cached at either a client or the disk array, but not both. Exclusiveness helps to create the effect of a single, large unified cache. We introduce a DEMOTE operation to transfer data ejected from the client to the array, and explore its effectiveness with simulation studies. We quantify the benefits and overheads of demotions across both synthetic and real-life workloads. The results show that we can obtain useful—sometimes substantial—speedups. During our investigation, we also developed some new cache-insertion algorithms that show promise for multiclient systems, and report on some of their properties.

285 citations

Book
01 Mar 2015
TL;DR: Using this book, readers will be able to analyze collected workload data and clean it if necessary, derive statistical models that include skewed marginal distributions and correlations, and consider the need for generative models and feedback from the system.
Abstract: Reliable performance evaluations require the use of representative workloads. This is no easy task since modern computer systems and their workloads are complex, with many interrelated attributes and complicated structures. Experts often use sophisticated mathematics to analyze and describe workload models, making these models difficult for practitioners to grasp. This book aims to close this gap by emphasizing the intuition and the reasoning behind the definitions and derivations related to the workload models. It provides numerous examples from real production systems, with hundreds of graphs. Using this book, readers will be able to analyze collected workload data and clean it if necessary, derive statistical models that include skewed marginal distributions and correlations, and consider the need for generative models and feedback from the system. The descriptive statistics techniques covered are also useful for other domains.

247 citations


Cites background from "The effect of client caching on fil..."

  • ...A case in point is the difference in locality observed by clie nt and server caches in a distributed file system [270]....

    [...]

  • ...In addition, cachi ng by proxies modifies the stream of requests en route [270, 265]....

    [...]

  • ...The most popular way to quantify temporal locality is by usin g a simulation of an LRU (least recently used) stack [474, 648, 647, 38, 270, 23]....

    [...]

  • ...Fo r example, locality is reduced near the servers because repetitions are filtered out by cach es, whereas the merging of different request streams causes interference [270]....

    [...]

Journal ArticleDOI
01 Jan 1997
TL;DR: Simulation results show that frequency-based caching strategies, using a variation of the Least Frequently Used (LFU) replacement policy, perform the best for the Web sewer workload traces considered, and thresholds and cache partitioning policies do not appear to be effective.
Abstract: Given the continued growth of the World-Wide Web, performance of Web sewers is becoming increasingly important. File caching can be used to reduce the time that it takes a Web server to respond to client requests, by storing the most popular files in the main memory of the Web sewer, and by reducing the volume of data that must be transferred between secondary storage and the Web server. In this paper, we use trace-driven simulation to evaluate the effects of various replacement, threshold, and partitioning policies on the performance of a Web sewer. The workload traces for the simulations come from Web server access logs, from six different Internet Web sewers. The traces represent three different orders of magnitude in sewer activity and two different orders of magnitude in time duration. The results from our simulation study show that frequency-based caching strategies, using a variation of the Least Frequently Used (LFU) replacement policy, perform the best for the Web sewer workload traces considered...

78 citations

References
More filters
Journal ArticleDOI
TL;DR: One of the basic limitations of a digital computer is the size of its available memory; an approach that permits the programmer to use a sufficiently large address range can accomplish this objective, assuming that means are provided for automatic execution of the memory-overlay functions.
Abstract: One of the basic limitations of a digital computer is the size of its available memory. 1 In most cases, it is neither feasible nor economical for a user to insist that every problem program fit into memory. The number of words of information in a program often exceeds the number of cells (i.e., word locations) in memory. The only way to solve this problem is to assign more than one program word to a cell. Since a cell can hold only one word at a time, extra words assigned to the cell must be held in external storage. Conventionally, overlay techniques are employed to exchange memory words and external-storage words whenever needed; this, of course, places an additional planning and coding burden on the programmer. For several reasons, it would be advantageous to rid the programmer of this function by providing him with a “virtual” memory larger than his program. An approach that permits him to use a sufficiently large address range can accomplish this objective, assuming that means are provided for automatic execution of the memory-overlay functions.

1,708 citations

Journal ArticleDOI
TL;DR: Observations of a prototype implementation are presented, changes in the areas of cache validation, server process structure, name translation, and low-level storage representation are motivated, and Andrews ability to scale gracefully is quantitatively demonstrated.
Abstract: The Andrew File System is a location-transparent distributed tile system that will eventually span more than 5000 workstations at Carnegie Mellon University. Large scale affects performance and complicates system operation. In this paper we present observations of a prototype implementation, motivate changes in the areas of cache validation, server process structure, name translation, and low-level storage representation, and quantitatively demonstrate Andrews ability to scale gracefully. We establish the importance of whole-file transfer and caching in Andrew by comparing its performance with that of Sun Microsystems NFS tile system. We also show how the aggregation of files into volumes improves the operability of the system.

1,604 citations

Journal ArticleDOI
TL;DR: The design and implementation of Coda, a file system for a large-scale distributed computing environment composed of Unix workstations, is described, which provides resiliency to server and network failures through the use of two distinct but complementary mechanisms.
Abstract: The design and implementation of Coda, a file system for a large-scale distributed computing environment composed of Unix workstations, is described. It provides resiliency to server and network failures through the use of two distinct but complementary mechanisms. One mechanism, server replication, stores copies of a file at multiple servers. The other mechanism, disconnected operation, is a mode of execution in which a caching site temporarily assumes the role of a replication site. The design of Coda optimizes for availability and performance and strives to provide the highest degree of consistency attainable in the light of these objectives. Measurements from a prototype show that the performance cost of providing high availability in Coda is reasonable. >

1,083 citations

Book
Maurice J. Bach1
01 Jan 1986
TL;DR: This document discusses the representation of processes in the distributed UNIX system, and some of the mechanisms used to achieve this representation are described.
Abstract: 1. General Review of the System. 2. Introduction to the Kernel. 3. The Buffer Cache. 4. Internal Representation of Files. 5. System Calls for the File System. 6. The System Representation of Processes. 7. Process Control. 8. Process Scheduling and Time. 9. Memory Management Policies. 10. Interprocess Communication. 11. Multiprocessor Systems. 12. Distributed UNIX System.

809 citations

Journal ArticleDOI
TL;DR: The Sprite network operating system as mentioned in this paper uses large main memory disk block caches to achieve high performance in its file system and provides non-write-through file caching on both client and server machines.
Abstract: The Sprite network operating system uses large main-memory disk block caches to achieve high performance in its file system. It provides non-write-through file caching on both client and server machines. A simple cache consistency mechanism permits files to be shared by multiple clients without danger of stale data. In order to allow the file cache to occupy as much memory as possible, the file system of each machine negotiates with the virtual memory system over physical memory usage and changes the size of the file cache dynamically. Benchmark programs indicate that client caches allow diskless Sprite workstations to perform within O-12 percent of workstations with disks. In addition, client caching reduces server loading by 50 percent and network traffic by 90 percent.

553 citations

Trending Questions (2)
How do I clear my Exchange server cache?

Some recent research has suggested that various strategies for cache management may not be equally suited to the circumstances at both the client and the server.

Do Windows Server CALS expire?

The results demonstrate that client caches alter workload characteristics in a way that leaves a profound impact on server cache performance, and suggest worthwhile directions for the future development of server caching strategies.