Constructing a Stable Virtual Peer from Multiple Unstable Peers for Fault-tolerant P2P Systems

Masanori Shikano, Kota Abe, Tatsuya Ueda, Hayato Ishibashi, Toshio Matsuura: Constructing a Stable Virtual Peer from Multiple Unstable Peers for Fault-tolerant P2P Systems, International Journal On Advances in Networks and Services, Vol. 3, No. 1 and 2, pp.199–208, IARIA, (2010), http://www.iariajournals.org/networks_and_services/

Abstract

P2P systems must handle unexpected peer failure and leaving, and thus it is more difficult to implement than server-client systems. In this paper, we propose a novel approach to implement P2P systems by using virtual peers. A virtual peer consists of multiple unstable peers. A virtual peer is a stable entity; application programs run on a virtual peer are not compromised unless a majority of the peers fail within a short time duration. If a peer in a virtual peer fails, the failed peer is replaced by another (non-failed) one to restore the number of working peers. The primary contribution of this paper is to propose a method to form a stable virtual peer over multiple unstable peers. The major challenges are to maintain consistency between multiple peers, to replace a failed peer with another one, and to communicate with a virtual peer, whose member peers are dynamically changed. For the first issue, the Paxos consensus algorithm is used. For the second issue, the process migration technique is used to replicate and transfer a running process to a remote peer. For the last issue, communication protocols based on application level multicast are introduced. Furthermore, the relation between the reliability of a virtual peer and the number of peers assigned to a virtual peer is evaluated. The proposed method is implemented in our musasabi P2P platform. An overview of musasabi and its implementation is also given.

Keywords

Keywords: Peer-to-peer systems; fault tolerance; Paxos consensus algorithm; process migration; strong mobility

Download

  1. http://www.iariajournals.org/networks_and_services/tocv3n12.html
  2. http://www.thinkmind.org/index.php?view=instance&instance=NetSer+v3+n12+2010