Understanding consistency maintenance in service discovery architectures during communication failure

  • Authors:
  • Christopher Dabrowski;Kevin Mills;Jesse Elder

  • Affiliations:
  • NIST, Gaithersburg, Maryland;NIST, Gaithersburg, Maryland;NIST, Gaithersburg, Maryland

  • Venue:
  • WOSP '02 Proceedings of the 3rd international workshop on Software and performance
  • Year:
  • 2002

Quantified Score

Hi-index 0.00

Visualization

Abstract

Current trends suggest future software systems will comprise collections of components that combine and recombine dynamically in reaction to changing conditions. Service-discovery protocols, which enable software components to locate available software services and to adapt to changing system topology, provide one foundation for such dynamic behavior. Emerging discovery protocols specify alternative architectures and behaviors, which motivate a rigorous investigation of the properties underlying their designs. Here, we assess the ability of selected designs for service-discovery protocols to maintain consistency in a distributed system during catastrophic communication failure. We use an architecture description language, called Rapide, to model two different architectures (two-party and three-party) and two different consistency-maintenance mechanisms (polling and notification). We use our models to investigate performance differences among combinations of architecture and consistency-maintenance mechanism as interface-failure rate increases. We measure system performance along three dimensions: (1) update responsiveness (How much latency is required to propagate changes?), (2) update effectiveness (What is the probability that a node receives a change?), and (3) update efficiency (How many messages must be sent to propagate a change throughout the topology?). We use Rapide to understand how failure-recovery strategies contribute to differences in performance. We also recommend improvements to architecture description languages.