Renewed interest in caching techniques stems from their application to improving the performance of the World Wide Web, where storing popular documents in proxy caches closer to end-users can significantly reduce the document download latency and overall network congestion. Rules used to update the collection of frequently accessed documents inside a cache are referred to as cache replacement algorithms. Due to many different factors that influence the Web performance, the most desirable attributes of a cache replacement scheme are low complexity and high adaptability to variability in Web access patterns. These properties are primarily the reason why most of the practical Web caching algorithms are based on the easily implemented Least-Recently-Used (LRU) cache replacement heuristic. In our recent paperJelenkovic and Radovanovic (2004c), we introduce a new algorithm, termed Persistent Access Caching (PAC), that, in addition to desirable low complexity and adaptability, somewhat surprisingly achieves nearly optimal performance for the independent reference model and generalized Zipf's law request probabilities. Two drawbacks of the PAC algorithm are its dependence on the request arrival times and variable storage requirements. In this paper, we resolve these problems by introducing a discrete version of the PAC policy (DPAC) that, after a cache miss, places the requested document in the cache only if it is requested at least $k$ times among the last $m$, $m \geq k$, requests. However, from a mathematical perspective, due to the inherent coupling of the replacement decisions for different documents, the DPAC algorithm is considerably harder to analyze than the original PAC policy. In this regard, we develop a new analytical technique for estimating the performance of the DPAC rule. Using our analysis, we show that this algorithm is close to optimal even for small values of $k$ and $m$, and, therefore, adds negligible additional storage and processing complexity in comparison to the ordinary LRU policy.
[1]
S. M. Ross,et al.
Optimal list order under partial memory constraints
,
1980,
Journal of Applied Probability.
[2]
Gaston H. Gonnet,et al.
Exegesis of Self-Organizing Linear Search
,
1981,
SIAM J. Comput..
[3]
Philippe Flajolet,et al.
Birthday Paradox, Coupon Collectors, Caching Algorithms and Self-Organizing Search
,
1992,
Discret. Appl. Math..
[4]
James Allen Fill,et al.
On the distribution of search cost for the move-to-front rule
,
1996,
Random Struct. Algorithms.
[5]
James Allen Fill,et al.
Limits and Rates of Convergence for the Distribution of Search Cost Under the Move-to-Front Rule
,
1996,
Theor. Comput. Sci..
[6]
James Allen Fill,et al.
On the distribution of search cost for the move-to-front rule
,
1996
.
[7]
Gerhard Weikum,et al.
An optimality proof of the LRU-K page replacement algorithm
,
1999,
JACM.
[8]
P. Jelenkovic.
Asymptotic approximation of the move-to-front search cost distribution and least-recently used caching fault probabilities
,
1999
.
[9]
Predrag Jelenković,et al.
Least Recently Used Caching with Zipf ’ s Law Requests
,
2001
.
[10]
Armand M. Makowski,et al.
Optimal replacement policies for nonuniform cache objects with optional eviction
,
2003,
IEEE INFOCOM 2003. Twenty-second Annual Joint Conference of the IEEE Computer and Communications Societies (IEEE Cat. No.03CH37428).
[11]
Predrag R. Jelenkovic,et al.
Least-recently-used caching with dependent requests
,
2004,
Theor. Comput. Sci..