Hybrid binary consensus in anonymous asynchronous systems using coins and failure detectors

被引:0
作者
Ernesto Jiménez
José Luis López-Presa
Javier Martín-Rueda
机构
[1] Universidad Politécnica de Madrid,
来源
The Journal of Supercomputing | 2019年 / 75卷
关键词
Fault-tolerant distributed systems; Binary consensus; Common coin; Hybrid consensus; Anonymous asynchronous systems;
D O I
暂无
中图分类号
学科分类号
摘要
Fault tolerance and agreement are essential capabilities of current distributed systems. In this context, Binary Consensus is a key problem. It is well-known that consensus cannot be solved in a pure asynchronous system when at least one process can crash. To overcome this impossibility result, the asynchronous system is usually augmented with randomization, failure detectors or some kind of synchronization. Random binary consensus in classic asynchronous systems is usually solved using a common coin to achieve a constant expected number of rounds. However, to our knowledge, the literature lacks the existence of common coin algorithms for anonymous asynchronous systems. In this paper, an implementation of a common coin that runs on anonymous asynchronous systems is proposed and it is proved that the probability that this common coin gives the same outcome to all processes is bigger than 0.75 with small bias. This result allows to solve random consensus, in anonymous asynchronous systems, in four expected rounds, independently of the number of processes in the system. The main result of this paper is a hybrid (deterministic/random) binary consensus algorithm which solves consensus in anonymous asynchronous systems enriched with a common coin and a failure detector of class AΩ′\documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}$$A{\varOmega}'$$\end{document}, where less than half of the processes may fail, which is an optimal bound on the number of failures. To our knowledge, this is the first such algorithm. It only needs a quadratic number of interchanged messages per round, and the size of these messages is minimal (O(1) bytes). Consensus is achieved in one round by our hybrid algorithm if the failure detector does not make any errors or all processes propose the same value, and in four expected rounds if the adversary does not control the common coin. Additionally, we conducted an experimental evaluation whose results agree with the expected ones and slightly improve them. In particular, above 95% of the times, all processes get the same outcome from the coin, and random consensus is achieved in less than two rounds on average with very small standard deviation. This makes our algorithms good candidates for deployment in practical distributed systems.
引用
收藏
页码:8262 / 8292
页数:30
相关论文
共 74 条
[1]  
Aguilera MK(1998)Failure detection and randomization: a hybrid approach to solve consensus SIAM J Comput 28 890-903
[2]  
Toueg S(2002)Wireless sensor networks: a survey Comput Netw 38 393-422
[3]  
Akyildiz IF(2006)Computation in networks of passively mobile finite-state sensors Distrib Comput 18 235-253
[4]  
Weilian S(2003)Randomized protocols for asynchronous consensus Distrib Comput 16 165-175
[5]  
Sankarasubramaniam Y(1988)Computing on an anonymous ring J ACM 35 845-875
[6]  
Cayirci E(2014)Privacy preserving social networking Int J Comput Sci Eng 9 165-176
[7]  
Angluin D(2011)The price of anonymity: optimal consensus despite asynchrony, crash, and anonymity TAAS 6 23:1-23:28
[8]  
Aspnes J(2013)Anonymous asynchronous systems: the case of failure detectors Distrib Comput 26 141-158
[9]  
Diamadi Z(1987)Asynchronous Byzantine agreement protocols Inf Comput 75 130-143
[10]  
Fischer MJ(2005)Random oracles in constantinople: practical asynchronous Byzantine agreement using cryptography J Cryptol 18 219-246