Implementing a Regular Register in an Eventually Synchronous Distributed System Prone to Continuous Churn
Issue No. 01 - January (2012 vol. 23)
DOI Bookmark: http://doi.ieeecomputersociety.org/10.1109/TPDS.2011.97
Roberto Baldoni , Universitá degli Studi di Roma, "La Sapienza", Roma
Silvia Bonomi , Universitá degli Studi di Roma, "La Sapienza", Roma
Michel Raynal , IRISA - Université de Rennes 1, Rennes
Due to their capability to hide the complexity generated by the messages exchanged between processes, shared objects are one of the main abstractions provided to developers of distributed applications. Implementations of such objects, in modern distributed systems, have to take into account the fact that almost all services, implemented on top of distributed infrastructures, are no longer fully managed due to either their size or their maintenance cost. Therefore, these infrastructures exhibit several autonomic behaviors in order to, for example, tolerate failures and continuous arrival and departure of nodes (churn phenomenon). Among all the shared objects, the register object is a fundamental one. Several protocols have been proposed to build fault resilient registers on top of message-passing system, but, unfortunately, failures are not the only challenge in modern distributed systems and new issues arise in the presence of churn. This paper addresses the construction of a multiwriter/multireader regular register in an eventually synchronous distributed system affected by the continuous arrival/departure of participants. In particular, a general protocol implementing a regular register is proposed and feasibility conditions associated with the arrival and departure of the processes are given. The protocol is proved correct under the assumption that a constraint on the churn is satisfied.
Regular register, dynamic distributed systems, churn, distributed algorithms.
R. Baldoni, M. Raynal and S. Bonomi, "Implementing a Regular Register in an Eventually Synchronous Distributed System Prone to Continuous Churn," in IEEE Transactions on Parallel & Distributed Systems, vol. 23, no. , pp. 102-109, 2011.