arXivDaily arXiv每日学术速递 周一至周五更新
arXiv 2001.04787cs.DC
收藏

什么是Live?理解分布式共识

What's Live? Understanding Distributed Consensus

Saksham Chand, Yanhong A Liu

摘要:

诸如Paxos的分布式共识算法已经被广泛研究。它们都使用相同的安全定义。尽管有众所周知的理论不可能的结果,但活性在实践中尤其重要。然而,许多不同的活性属性和假设已经陈述,并且没有系统的比较以更好地理解这些属性。本文系统地研究和比较了30多个著名的共识算法及其变体的不同活性特性。我们引入一个精确的高级语言,并正式指定这些属性的语言。然后,我们创建一个层次结构的活性属性结合两个层次结构的假设和层次结构的断言,并比较的优势和劣势的算法,确保这些属性。我们的正式规范和系统的比较,导致发现了一系列的问题,在各种规定的活性属性,从太弱的假设,没有活性断言可以举行,太强的假设,使其微不足道的实现断言。我们还开发了这些活性属性的TLA+规范,并使用执行步骤的模型检验来说明Paxos的活性模式。

英文摘要:

Distributed consensus algorithms such as Paxos have been studied extensively. They all use the same definition of safety. Liveness is especially important in practice despite well-known theoretical impossibility results. However, many different liveness properties and assumptions have been stated, and there are no systematic comparisons for better understanding of these properties. This paper systematically studies and compares different liveness properties stated for over 30 prominent consensus algorithms and variants. We introduce a precise high-level language and formally specify these properties in the language. We then create a hierarchy of liveness properties combining two hierarchies of the assumptions used and a hierarchy of the assertions made, and compare the strengths and weaknesses of algorithms that ensure these properties. Our formal specifications and systematic comparisons led to the discovery of a range of problems in various stated liveness properties, from too weak assumptions for which no liveness assertions can hold, to too strong assumptions making it trivial to achieve the assertions. We also developed TLA+ specifications of these liveness properties, and we use model checking of execution steps to illustrate liveness patterns for Paxos.

机构、总结、中文摘要均由AI分析而来,可能存在错误,请以论文正文为准。

↑