Group Communication as a Base for a Load-Balancing Replicated Data Service.

Authors: Roger Khazan.

Master's Thesis, Department of Electrical Engineering and Computer Science,
Massachusetts Institute of Technology, Cambridge, MA 02139. May 1998.

Abstract:

Replication and load-balancing are two fundamental techniques for improving availability and performance of distributed systems. However, correct and efficient realization of these techniques is intricate when the distributed environment may partition and merge because of processor and communication failures.

In this thesis, we show how a view-synchronous group communication service recently specified by Fekete, Lynch, and Shvartsman can be used to support a sequentially consistent replicated data service that load balances queries and tolerates partitioning and merging of the underlying network.

Our work is done in the framework of the I/O automaton model of Lynch and Tuttle.

First, we present an I/O automaton specification that defines the allowed behavior of a sequentially consistent replicated service. Then, we successfully refine this specification to arrive at an I/O automaton that models a distributed implementation of this service. In this implementation, update requests are processed in the same order at all servers of the system, thus guaranteeing mutual consistency of all replicas; query requests are processed at single servers determined by a load-balancing strategy which equalizes the number of queries assigned to each member of the same group. Third, we give a rigorous hierarchical proof that the implementation automaton implements the specification automaton in the sense of trace inclusion. This proof establishes partial correctness of the implementation. Finally, we prove a liveness-related claim that servers are always able to process the queries assigned to them; that is, the servers are never blocked by missing update information.

Download M.Sc. Thesis: ps 1.36M,  ps.gz, pdf.

See a short version (DISC 1998): ps 500K,  ps.gz, pdf, abstract.


r_o_g_e_r_AT_l_c_s_._m_i_t_._e_d_u