An ef cient topology-adaptive membership protocol for large-scale network services

A highly available large-scale service cluster often requires the system to discover new nodes and identify failed nodes quickly in order to handle a high volume of traffic. Determining node membership efficiently in such an environment is critical to location-transparent service invocation, load balancing and failure shielding. In this paper, we present a topology-aware hierarchical membership service which divides the entire cluster into membership groups based on the network topology among nodes so that the liveness of a node within each group is published to others in a highly efficient manner. Our design also supports the deployment of service clusters in multiple data centers through membership proxies which update membership information incrementally so that membership communication across data centers is minimized as much as possible. We compare our approach with other two alternatives: an all-to-all multicasting approach and a gossip based approach. Our evaluation shows that the proposed topology-aware approach is scalable and effective in terms of high membership accuracy, short view convergence time, and low communication cost.

[1]  Jon M. Kleinberg,et al.  Spatial gossip and resource location protocols , 2001, JACM.

[2]  Tao Yang,et al.  Cluster load balancing for fine-grain network services , 2002, Proceedings 16th International Parallel and Distributed Processing Symposium.

[3]  Anne-Marie Kermarrec,et al.  Peer-to-Peer Membership Management for Gossip-Based Protocols , 2003, IEEE Trans. Computers.

[4]  Bobby Bhattacharjee,et al.  Scalable application layer multicast , 2002, SIGCOMM '02.

[5]  Archana Ganapathi,et al.  Why Do Internet Services Fail, and What Can Be Done About It? , 2002, USENIX Symposium on Internet Technologies and Systems.

[6]  Warren Smith,et al.  A directory service for configuring high-performance distributed computations , 1997, Proceedings. The Sixth IEEE International Symposium on High Performance Distributed Computing (Cat. No.97TB100183).

[7]  Frank B. Schmuck,et al.  Agreeing on Processor Group Membership in Timed Asynchronous Distributed Systems , 1995 .

[8]  Richard Wolski,et al.  The network weather service: a distributed resource performance forecasting service for metacomputing , 1999, Future Gener. Comput. Syst..

[9]  Flaviu Cristian,et al.  A Highly Available Local Leader Election Service , 1999, IEEE Trans. Software Eng..

[10]  Robbert van Renesse,et al.  A Gossip-Style Failure Detection Service , 2009 .

[11]  Gil Neiger A new look at membership services (extended abstract) , 1996, PODC '96.

[12]  David E. Culler,et al.  Wide area cluster monitoring with Ganglia , 2003, 2003 Proceedings IEEE International Conference on Cluster Computing.

[13]  Peter van der Stok,et al.  A Hierarchical Membership Protocol for Synchronous Distributed Systems , 1994, EDCC.

[14]  Bernadette Charron-Bost,et al.  On the impossibility of group membership , 1996, PODC '96.

[15]  Steven McCanne,et al.  A model, analysis, and protocol framework for soft state-based communication , 1999, SIGCOMM '99.

[16]  Idit Keidar,et al.  Moshe: A group membership service for WANs , 2002, TOCS.

[17]  Tao Yang,et al.  Neptune: Scalable Replication Management and Programming Support for Cluster-based Network Services , 2001, USITS.

[18]  Eric A. Brewer,et al.  Lessons from Giant-Scale Services , 2001, IEEE Internet Comput..

[19]  GhemawatSanjay,et al.  The Google file system , 2003 .

[20]  Christof Fetzer,et al.  Enforcing perfect failure detection , 2001, Proceedings 21st International Conference on Distributed Computing Systems.