Efficient Hierarchical Quorums in Unstructured Peer-to-Peer Networks

  • Authors:
  • Kevin Henry;Colleen Swanson;Qi Xie;Khuzaima Daudjee

  • Affiliations:
  • David R. Cheriton School of Computer Science, University of Waterloo, Waterloo, Canada;David R. Cheriton School of Computer Science, University of Waterloo, Waterloo, Canada;David R. Cheriton School of Computer Science, University of Waterloo, Waterloo, Canada;David R. Cheriton School of Computer Science, University of Waterloo, Waterloo, Canada

  • Venue:
  • OTM '09 Proceedings of the Confederated International Conferences, CoopIS, DOA, IS, and ODBASE 2009 on On the Move to Meaningful Internet Systems: Part I
  • Year:
  • 2009

Quantified Score

Hi-index 0.00

Visualization

Abstract

Managing updates in a peer-to-peer (P2P) network can be a challenging task, especially in the unstructured setting. If one peer reads or updates a data item, then it is desirable to read the most recent version or to have the update visible to all other peers. In practice, this should be accomplished by coordinating and writing to only a small number of peers. We propose two approaches, inspired by hierarchical quorums, to solve this problem in unstructured P2P networks. Our first proposal provides uniform load balancing, while the second sacrifices full load balancing for larger average quorum intersection, and hence greater tolerance to network churn. We demonstrate that applying a random logical tree structure to peers on a per-data item basis allows us to achieve near optimal quorum size, thus minimizing the number of peers that must be coordinated to perform a read or write operation. Unlike previous approaches, our random hierarchical quorums are always guaranteed to overlap at at least one peer when all peers are reachable and, as demonstrated through performance studies, prove to be more resilient to changing network conditions to maximize quorum intersection than previous approaches with a similar quorum size. Furthermore, our two quorum approaches are interchangeable within the same network, providing adaptivity by allowing one to be swapped for the other as network conditions change.