Slicing Distributed Systems

  • Authors:
  • Vincent Gramoli;Ymir Vigfusson;Ken Birman;Anne-Marie Kermarrec;Robbert van Renesse

  • Affiliations:
  • EPFL and University of Neuchâtel, Switzerland;Cornell University, New York;Cornell University, New York;INRIA, Rennes Bretagne Atlantique;Cornell University, New York

  • Venue:
  • IEEE Transactions on Computers
  • Year:
  • 2009

Quantified Score

Hi-index 14.98

Visualization

Abstract

Peer-to-peer (P2P) architectures are popular for tasks such as collaborative download, VoIP telephony, and backup. To maximize performance in the face of widely variable storage capacities and bandwidths, such systems typically need to shift work from poor nodes to richer ones. Similar requirements are seen in today's large data centers, where machines may have widely variable configurations, loads, and performance. In this paper, we consider the slicing problem, which involves partitioning the participating nodes into k subsets using a one-dimensional attribute, and updating the partition as the set of nodes and their associated attributes change. The mechanism thus facilitates the development of adaptive systems. We begin by motivating this problem statement and reviewing prior work. Existing algorithms are shown to have problems with convergence, manifesting as inaccurate slice assignments, and to adapt slowly as conditions change. Our protocol, Sliver, has provably rapid convergence, is robust under stress and is simple to implement. We present both theoretical and experimental evaluations of the protocol.