  We consider a system, containing a library of multiple files and a general
memoryless communication network through which a server is connected to
multiple users, each equipped with a local isolated cache of certain size that
can be used to store part of the library. Each user will ask for one of the
files in the library, which needs to be delivered by the server through the
intermediate communication network. The objective is to design the cache
placement (without prior knowledge of users' future requests) and the delivery
phase in order to minimize the (normalized) delivery delay. We assume that the
delivery phase consists of two steps: (1) generation of a set of multicast
messages at the server, one for each subset of users, and (2) delivery of the
multicast messages to the users.
  In this setting, we show that there exists a universal scheme for cache
placement and multicast message generation, which is independent of the
underlying communication network between the server and the users, and achieves
the optimal delivery delay to within a constant factor for all memoryless
networks. We prove this result, even though the capacity region of the
underlying communication network is not known, even approximately. This result
demonstrates that in the aforementioned setting, a separation between caching
and multicast message generation on one hand, and delivering the multicast
messages to the users on the other hand is approximately optimal. This result
has the important practical implication that the prefetching can be done
independent of network structure in the upcoming delivery phase.
