Bandwidth

Note that with the configurations discussed so far, we haven’t talked about sending specific requests to specific caches. We also haven’t talked about using an intercache protocol to search for cache hits. A simple load sharing configuration results in wasted disk space and bandwidth. Space is wasted because the same response can be stored in multiple caches. Bandwidth is wasted because we don’t always need to forward a cache miss if we know one of the other members has a particular response saved.

There are two ways to improve the disk and bandwidth utilization of a cache cluster. One is to partition requests before they enter the cluster. That is, some device or algorithm makes sure that the same request always goes to the same member. The second way is to create sibling relationships between the caches and use an intercache protocol to locate previously cached responses. In this case, we don’t really care which cache initially receives a particular request.

Recall from Chapter 8 that ICP and HTCP are UDP-based, per-query object location protocols. They work well for a small cluster with five or fewer members. ICP uses smaller packets than HTCP at the expense of being less accurate. Both ICP and HTCP add some latency to cache misses while querying the neighbors. However, this should not be a significant problem for a highly localized cluster with plenty of local-area bandwidth.

Cache digests are an alternative to ICP and HTCP. They eliminate per-request delays but require ...

Get Web Caching now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.