(NOTE:
All chapters conclude with a Summary.)
Preface. Intended Audience.
Organization of the Book.
Acknowledgments. Introduction. The Basics of Web Caching.
The Basics of Web Replication.
Beyond Performance.
I. BACKGROUND.
1. Network Layers and Protocols. The ISO/OSI Reference Model.
Network Components at Different Layers.
Overview of Internet Protocols.
2. The Internet Protocol and Routing. Addressing.
IP Datagram Header.
Routing.
Routing within ASs.
Routing between ASs.
Multicast.
3. Transmission Control Protocol. Segment Header.
Opening a Connection.
Closing a Connection.
Flow Control.
Congestion Control.
Retransmission.
4. Application Protocols for the Web. Uniform Resource Locators.
The Domain Name System.
Name Hierarchy.
The DNS Protocol.
The HyperText Transfer Protocol.
The HTTP Request.
The HTTP Response.
The HTTP Message Exchange.
Hyperlinks and Embedded Objects.
5. HTTP Support for Caching and Replication. Conditional Requests.
Conditional Headers Used for Caching.
Conditional Headers Used for Replication.
Age and Expiration of Cached Objects.
Request Redirection.
Range Requests.
The Cache-Control Header.
Cache-Control Header Directives in Requests.
Cache-Control Header Directives in Responses.
Example of the Cache-Control Header.
Storing State for a Stateless Server: Cookies.
Support for Server Sharing.
Expanded Object Identifiers.
Learning the Proxy Chain.
Cacheability of Web Content.
6. Web Behavior Rules of Thumb. Evaluation Methods.
Live Measurements.
Trace-Based Methods.
Benchmarking.
Object Size.
Object Types and Cacheability.
Object Popularity.
Locality of Reference.
Temporal Locality.
Spatial Locality.
Rate of Object Modifications.
Other Observations.
II. WEB CACHING.
7. Proxy Caching: Realistic Expectations. Do Proxy Caches Deserve a Hearing?
Latency Reduction.
An Optimistic Bound on Latency Reduction.
A Pessimistic View of Latency Reduction.
TCP Connection Caching.
Connection Caching versus Data Caching.
TCP Connection Splitting.
Environment-Specific TCP Optimizations.
Bandwidth Savings.
Proxies and Streaming Media.
8. Proxy Deployment. Overview of Internet Connectivity Architectures.
Nontransparent Proxy Deployment.
Explicit Client Configuration.
Browser Autoconfiguration.
Proxy Auto-Discovery.
Transparent Proxy Deployment.
Multipath Problem.
Interception Mechanisms.
Layer 4 Switch as an Intercepter.
Router as an Intercepter.
Layer 7 Switch as an Intercepter.
Intercepting Link.
Performance Pitfalls.
Security and Access Control Issues.
Proxies and Web Server Access Control.
Proxies and Security.
9. Cooperative Proxy Caching. Shared Cache: How Big Is Big Enough?
Issues in Cooperative Proxy Caching.
Location Management.
Broadcast Queries.
Hierarchical Caching.
URL Hashing.
Directory-Based Cooperation.
Directory Structures.
Caching on a Global Scale: Proxy Pruning.
System Model.
Cache Routing.
Vicinity Caching.
An Overview of Existing Platforms.
Cache Hierarchies.
Caching as a Service of a Network Access Point.
Satellite Broadcast Cache Service.
10. Cache Consistency. Cache Validation.
The Basic Validation Scenario.
Implicit Time to Live.
Fine-Tuning Validation.
Asynchronous and Piggyback Cache Validation.
Cache Invalidation.
Leases.
Subscriptions.
Delayed versus Immediate Updates.
Volumes.
Volume Lease Protocols.
Piggyback and Delayed Invalidation.
Invalidation in Cache Routing.
Issues in Cooperative Cache Consistency.
Validation with Cooperative Proxies.
Non-Monotonic Delivery Problem.
11. Replacement Policy. Replacement Policy Metrics.
Replacement Policy Algorithms.
The Value of Replacement Policy.
12. Prefetching. Performance Metrics.
Performance Bounds of Prefetching.
Taxonomy.
Nondata Prefetching.
Nontransparent Prefetching.
User Nontransparency.
Server Nontransparency.
Server Push versus Client Pull.
Information Used in Prefetching Algorithms.
User-Specific Information.
Group Information.
Multiuser Information.
Prediction Algorithms.
Popularity-Based Predictions.
Markov Modeling.
Examples of Algorithms using First-order Markov Modeling.
Exploiting Longer Request Sequences.
Structure Algorithms.
13. Caching the Uncacheable. A Note on Implementation.
Modified Content and Stale Delivery Avoidance.
Cache-Friendly Approaches to Stale Delivery Avoidance.
Utilizing Cached Stale Content.
Cookied Content.
Cache-Friendly Usage of Cookies.
Caching Cookied Content.
The Semantic Transparency Issue.
Expressly Uncacheable Content and Hit Metering.
Cache-Friendly Approaches to Hit Metering.
Caching Expressly Uncacheable Content.
Dynamic Content.
Cache-Friendly Design of Dynamic Content.
Base Instance Caching.
Template Caching.
Base-Instance Caching versus Template Caching.
Active Proxies.
III. WEB REPLICATION.
14. Basic Mechanisms for Request Distribution. Content-Blind Request Distribution with Full Replication.
Client Redirection.
Redirection by a Balancing Switch.
Redirection by a Web Site's DNS.
Anycast.
Content-Blind Request Distribution with Partial Replication.
Using Surrogates as Server Replicas.
Back-End Distributed File Systems.
Content-Aware Request Distribution.
Client Redirection by a Java Applet.
HTTP Redirection.
Redirection by an L7 Switch.
Fine-Granularity Domain Names.
15. Content Delivery Networks. Types of CDNs.
Delivering Requests to a CDN.
Finding Origin Servers.
Request Distribution in CDNs.
DNS/Balancing Switch Redirection.
Two-Level DNS Redirection.
Anycast/DNS Redirection.
Pitfalls of DNS-Based Request Distribution.
Fine-Tuning DNS Request Distribution.
Post-DSN Request Distribution by Triangular Communication.
Post-DNS Request Distribution with HTTP Redirection and HTML Rewriting.
Data Consistency in CDNs.
Streaming Content Delivery.
Using Multicast for Streaming Content Delivery.
Using Application-Level Multicast for Streaming Content Delivery.
Constructing a Distribution Tree.
Supporting Secure Content Access.
SSL Overview.
Performance Impact of Supporting SSL in a CDN.
Key Management.
Content Retrieval from the Origin Server.
16. Server Selection. Metrics.
Proximity Metrics.
Server Load Metrics.
Aggregate Metrics.
Internet Mapping Services.
Aging of Metrics.
Algorithms.
Obtaining Passive Measurements.
Avoiding Oscillations.
Supporting Client Stickiness.
Respecting the Affinity of Server Caches.
Server Selection with Multiple Metrics.
DNS-Based Server Selection.
A Typical DNS Server Selection Scheme.
Estimating Hidden Load Factors.
Why Choose a Server When You Can Have Them All?
IV. FURTHER DIRECTIONS.
17. Adding Value at the Edge. Content Filtering.
Content Transcoding.
Watermarking.
Custom Usage Reporting.
Implementing New Services with an Edge Server API.
The ICAP Protocol.
Distributed Web Applications.
How to Replicate Applications.
Where to Replicate Applications.
18. Content Distribution Internetworking. Pros and Cons of CDI.
Request Distribution.
Content Distribution.
Accounting.
Glossary. Bibliography. Index. 0201615703T12172001