Of Choices, Failures and Asynchrony: The Many Faces of Set Agreement
Set agreement is a fundamental problem in distributed computing in which processes collectively choose a small subset of values from a larger set of proposals. The impossibility of fault-tolerant set agreement in asynchronous networks is one of the seminal results in distributed computing. The complexity of set agreement in synchronous networks has also been a significant research challenge. Real systems, however, are neither purely synchronous nor purely asynchronous. Rather, they tend to alternate between periods of synchrony and periods of asynchrony.
In this paper, we analyze the complexity of set agreement in a “partially synchronous” setting, presenting the first (asymptotically) tight bound on the complexity of set agreement in such systems. We introduce a novel technique for simulating, in fault-prone asynchronous shared memory, executions of an asynchronous and failure-prone messagepassing system in which some fragments appear synchronous to some processes. We use this technique to derive a lower bound on the round complexity of set agreement in a partially synchronous system by a reduction from asynchronous wait-free set agreement. We also present an asymptotically matching algorithm that relies on a distributed asynchrony detection mechanism to decide as soon as possible during periods of synchrony.
By relating environments with differing degrees of synchrony, our simulation technique is of independent interest. In particular, it allows us to obtain a new lower bound on the complexity of early deciding k-set agreement complementary to that of , and to re-derive the combinatorial topology lower bound of  in an algorithmic way.
Unable to display preview. Download preview PDF.
- 2.Alistarh, D., Gilbert, S., Guerraoui, R., Travers, C.: Of choices, failures and asynchrony: The many faces of set agreement. Technical report, http://lpd.epfl.ch/alistarh/kset-ps/kset-TR-full.pdf
- 5.Borowsky, E., Gafni, E.: Generalized FLP impossibility result for t-resilient asynchronous computations. In: STOC, pp. 91–100 (1993)Google Scholar
- 7.Chaudhuri, S., Herlihy, M., Lynch, N.A., Tuttle, M.R.: A tight lower bound for k-set agreement. In: FOCS, pp. 206–215. IEEE, Los Alamitos (1993)Google Scholar
- 10.Gafni, E.: Round-by-round fault detectors: Unifying synchrony and asynchrony (extended abstract). In: PODC, pp. 143–152 (1998)Google Scholar
- 11.Gafni, E.: The Extended BG simulation and the characterization of t-resiliency. In: STOC (2009)Google Scholar
- 12.Gafni, E., Guerraoui, R., Pochon, B.: From a static impossibility to an adaptive lower bound: the complexity of early deciding set agreement. In: STOC, pp. 714–722 (2005)Google Scholar
- 15.Keidar, I., Shraer, A.: Timeliness, failure-detectors, and consensus performance. In: PODC, pp. 169–178 (2006)Google Scholar
- 18.Yang, J., Neiger, G., Gafni, E.: Structured derivations of consensus algorithms for failure detectors. In: PODC, pp. 297–308 (1998)Google Scholar