Data caching  in distributed file systems has been studied with regard to performance and availability [7,9,14,15]. The most common place for the cached data is the server's main memory. This type of caching is referred to as server caching, as opposed to client caching when the cached data is stored on the client (remote workstation) site. Although server caching improves performance considerably since it eliminates disk transfer time for each access, it has two drawbacks: it still suffers from a network transfer delay and is very vulnerable to server's failures. Server's failure renders the whole system virtually inoperable.
['Dorota M. Huizinga', 'Ken A. Heflinger']
Two-level client caching and disconnected operation of notebook computers in distributed systems