World Wide Web Caching
CS457 Seminar
Yutao Zhong
11/13/2001
Problems
Network congestion Server overloading User-perceived latency
Effective solution: Web caching
Storing popular objects at locations close to the clients
client
Web serverWeb cache
Different deployments client-oriented, server-oriented, proxy
Advantages of Web caching
Reduces bandwidth usage Lightens Web server loads Lessens user-perceived latency
Proxy cache (I)
Standalone cache
client
client
client
cache
router
Web
Transparent cache Router level
cache
Web
client
client
client
router
cache
cache
Proxy cache (II)
Transparent cache Switch level
Proxy cache (III)
Web
client
client
client
L4 switch
cache
cache
cache
router
Design issues
Latency caused by cache miss (cache replacement, prefetching,…)
Stale data (cache coherence) Dynamic data (dynamic cache)
Cache replacement Traditional policies
LRU, LFU, FIFO Key-based policies
LRU-MIN, LRU-Threshold, HyperG Function-based policies
Bolot/Hoschka, LNC-R (least normalized cost-replacement)
Cache prefetching Prediction
server-based vs. user-based Scenarios
poll vs. push Target
content vs. means preresolving, preconnecting,
prewarming
Cache coherence: deals with stale data
Data validation HTTP assistance
Conditional GET (IF-Modified-Since) Date: date Last-Modified: date Expires: date Pragma: no-cache Cache-control: max-age
Client polling Server invalidation Adaptive TTL Piggyback invalidation
Cache coherence:implementing mechanisms
Dynamic data caching
Active caching cache computation CPU cost
Web server accelerator
Typical systems
CERN httpd: 1994
Harvest (Squid): 1995
Akamai
Summary Effective solution to Internet
scalability problem Issues and techniques Open problems
cache routing, dynamic data caching, security...