AVMEM: availability-aware overlays for management operations in non-cooperative distributed systems

  • Authors:
  • Ramsés Morales;Brian Cho;Indranil Gupta

  • Affiliations:
  • Dept. of Computer Science, University of Illinois at Urbana-Champaign, Urbana, IL;Dept. of Computer Science, University of Illinois at Urbana-Champaign, Urbana, IL;Dept. of Computer Science, University of Illinois at Urbana-Champaign, Urbana, IL

  • Venue:
  • MIDDLEWARE2007 Proceedings of the 8th ACM/IFIP/USENIX international conference on Middleware
  • Year:
  • 2007

Quantified Score

Hi-index 0.00

Visualization

Abstract

Monitoring and management operations that query nodes based on their availability can be extremely useful in a variety of largescale distributed systems containing hundreds to thousands of hosts, e.g., p2p systems, Grids, and PlanetLab. This paper presents decentralized and scalable solutions to a subset of such availability-based management tasks. Specifically, we propose AVMEM, which is the first availability-aware overlay to date. AVMEM is intended for generic non-cooperative scenarios where nodes may be selfish and may wish to route messages to a large set of other nodes, especially if the selfish node has low availability. Under this setting, our concrete contributions are the following: (1) AVMEM allows arbitrary classes of application-specified predicates to create the membership relationships in the overlay. In order to avoid selfish nodes from exploiting the system, we focus on predicates that are random and consistent. In other words, whether a given node y is a neighbor of a given node x is decided based on a consistent and probabilistic predicate, dependent solely on the identifiers and availabilities of these two nodes, but without using any external inputs. (2) AVMEM protocols discover and maintain the overlay spanned by the application-specified AVMEM predicate in a scalable and fast manner. (3) We use AVMEM to execute important availability-based management operations, focusing on range-anycast, range-multicast, threshold-anycast, and threshold-multicast. AVMEM works well in the presence of selfish nodes, scales to thousands of nodes, and executes each of the targeted operations quickly and reliably. Our evaluation is driven by real-life churn traces from the Overnet p2p system, and shows that AVMEM works well in practical settings.