Consistent load balancing via spread minimization

  • Authors:
  • Robert Kleinberg;Tom Leighton

  • Affiliations:
  • MIT, Cambridge, MA;Akamai Technologies, Cambridge, MA and MIT, Cambridge, MA

  • Venue:
  • Proceedings of the thirty-fifth annual ACM symposium on Theory of computing
  • Year:
  • 2003

Quantified Score

Hi-index 0.00

Visualization

Abstract

Motivated by applications to web caching and other distributed server architectures, we analyze load balancing algorithms from the standpoint of spread, which measures the number of different assignments an item receives across multiple iterations of the algorithm on varying load distributions. Minimizing spread while balancing load is important in order to make efficient use of server resources such as memory and in order to minimize service latency. In the paper, we consider both on-line and off-line versions of the problem. Most importantly, we describe on-line load balancing algorithms with very low spread, which means that the assignments made for most items do not change even when the loads associated with the items do change. This means that load balancing is an example of a problem for which it is possible to find highly stable (or, consistent) on-line algorithms --- i.e. algorithms for which the output changes only slightly (with high probability) even if the inputs change dramatically.This paper is dedicated to the memory of Danny Lewin, who pioneered the notion of consistent hashing and its applications to load balancing and content distribution on the Internet. Danny's ideas furnished many of the underpinnings for the problem and algorithms studied herein.