Abstract
Peer-to-peer storage architecture aims to aggregate the storage of individual computers (peers) to form a universal shared storage space in which all peers undertake identical roles. The fully distributed nature of such an architecture makes it possible to support features such as scalability at a global scale, self-configuration and dynamic adaptation, permanence, fault tolerance and anonymity. Representative examples include Freenet, OceanStore, PAST (Peer-to-peer Archival Storage Tool) and CFS (Cooperative File System). In this paper, we study the memory architecture of such systems, especially the effects of caches and directories on their performance. To facilitate the study, an abstract model, called the distributed shared memory (DSM) model, is first proposed to capture the essence of the peer-to-peer storage architecture from the memory perspective. Six variations representing different points in the peer-to-peer storage design space are then identified. Three state-of-the-art peer-to-peer storage systems are cast on to these models and then examined qualitatively. The performance of these models under different memory pressures, network sizes and failure degrees is finally evaluated via simulation.