Skip to main content
QUICK REVIEW

[论文解读] Lattice Agreement in Message Passing Systems.

Xiong Zheng, Changyong Hu|arXiv (Cornell University)|Jan 1, 2018
Distributed systems and fault tolerance被引用 9
一句话总结

本文提出了在分布式消息传递系统中实现格一致性和广义格一致性的高效算法,在同步和异步环境下均实现了更低的轮次和消息延迟复杂度。在同步系统中,时间复杂度降低至 $\min \{O(\log^2 h(L)), O(\log^2 f)\}$ 轮;在异步系统中,消息延迟复杂度降低至 $2 \cdot \min \{h(L), f + 1\}$,优于以往工作。

ABSTRACT

This paper studies the lattice agreement problem and the generalized lattice agreement problem in distributed message passing systems. In the lattice agreement problem, given input values from a lattice, processes have to non-trivially decide output values that lie on a chain. We consider the lattice agreement problem in both synchronous and asynchronous systems. For synchronous lattice agreement, we present two algorithms which run in $\log f$ and $\min \{O(\log^2 h(L)), O(\log^2 f)\}$ rounds, respectively, where $h(L)$ denotes the height of the {\em input sublattice} $L$, $f < n$ is the number of crash failures the system can tolerate, and $n$ is the number of processes in the system. These algorithms have significant better round complexity than previously known algorithms. The algorithm by Attiya et al. \cite{attiya1995atomic} takes $\log n$ synchronous rounds, and the algorithm by Mavronicolasa \cite{mavronicolasabound} takes $\min \{O(h(L)), O(\sqrt{f})\}$ rounds. For asynchronous lattice agreement, we propose an algorithm which has time complexity of $2 \cdot \min \{h(L), f + 1\}$ message delays which improves on the previously known time complexity of $O(n)$ message delays. The generalized lattice agreement problem defined by Faleiro et al in \cite{faleiro2012generalized} is a generalization of the lattice agreement problem where it is applied for the replicated state machine. We propose an algorithm which guarantees liveness when a majority of the processes are correct in asynchronous systems. Our algorithm requires $\min \{O(h(L)), O(f)\}$ units of time in the worst case which is better than $O(n)$ units of time required by the algorithm of Faleiro et al. \cite{faleiro2012generalized}.

研究动机与目标

  • 解决在崩溃故障环境下分布式消息传递系统中的格一致性问题。
  • 相较于以往方案,降低同步系统中格一致性的轮次复杂度。
  • 提升异步系统中格一致性的消息延迟复杂度。
  • 将格一致性扩展至复制状态机中的广义格一致性问题。
  • 确保在异步系统中当多数进程正确时仍具备活性。

提出的方法

  • 设计两种同步格一致性算法,轮次复杂度分别为 $\log f$ 和 $\min \{O(\log^2 h(L)), O(\log^2 f)\}$,分别利用输入子格的高度和容错能力进行优化。
  • 提出一种异步格一致性算法,时间复杂度为 $2 \cdot \min \{h(L), f + 1\}$ 条消息延迟,优于先前的 $O(n)$ 上界。
  • 提出一种广义格一致性算法,在异步系统中当多数进程正确时可保证活性。
  • 利用输入子格 $L$ 及其高度 $h(L)$ 的结构特性以优化算法性能。
  • 应用来自共识与一致性问题的技术,在故障容错环境中保持正确性与效率。
  • 通过利用格的部分序结构和容错特性,优化时间复杂度。

实验结果

研究问题

  • RQ1在同步消息传递系统中,是否可以实现比现有算法更低的轮次复杂度?
  • RQ2异步格一致性的最优消息延迟复杂度是多少?能否将其优化至 $O(n)$ 以下?
  • RQ3如何设计广义格一致性算法,以确保在异步系统中多数进程正确时仍具备活性?
  • RQ4广义格一致性的时间复杂度能否从 $O(n)$ 降低为 $h(L)$ 和 $f$ 的函数?
  • RQ5输入子格的高度 $h(L)$ 在优化一致性算法性能方面起到什么作用?

主要发现

  • 所提出的同步格一致性算法仅需 $\log f$ 轮,显著优于 Attiya 等人的 $\log n$ 轮,以及 Mavronicolas 的 $\min \{O(h(L)), O(\sqrt{f})\}$。
  • 第二种同步算法将轮次复杂度降低至 $\min \{O(\log^2 h(L)), O(\log^2 f)\}$,当 $h(L)$ 或 $f$ 较小时性能更优。
  • 异步格一致性算法实现 $2 \cdot \min \{h(L), f + 1\}$ 条消息延迟,优于先前的 $O(n)$ 延迟上界。
  • 广义格一致性算法在异步系统中当多数进程正确时可保证活性,这是实际复制机制的关键需求。
  • 广义格一致性算法的最坏情况时间复杂度为 $\min \{O(h(L)), O(f)\}$,优于 Faleiro 等人方案的 $O(n)$ 复杂度。
  • 结果表明,通过利用输入子格的结构特性和容错参数,可显著提升格一致性算法的性能。

更好的研究,从现在开始

从论文设计到论文写作,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。