  Modern content delivery networks consist of one or more back-end servers
which store the entire content catalog, assisted by multiple front-end servers
with limited storage and service capacities located near the end-users.
Appropriate replication of content on the front-end servers is key to maximize
the fraction of requests served by the front-end servers. Motivated by this, a
multiple cache variant of the classical single cache paging problem is studied,
which is referred to as the Multiple Cache Paging (MCP) problem. In each
time-slot, a batch of content requests arrive that have to be served by a bank
of caches, and each cache can serve exactly one request. If a content is not
found in the bank, it is fetched from the back-end server, and one currently
stored content is ejected, and counted as fault. As in the classical paging
problem, the goal is to minimize the total number of faults. The competitive
ratio of any online algorithm for the MCP problem is shown to be unbounded for
arbitrary input, thus concluding that the MCP problem is fundamentally
different from the classical paging problem. Consequently, stochastic arrivals
setting is considered, where requests arrive according to a known/unknown
stochastic process. It is shown that near optimal performance can be achieved
with simple policies that require no co-ordination across the caches.

Data Structures and Algorithms