Skip to main content
QUICK REVIEW

[论文解读] Contention-Aware Cooperation

Timothé Albouy, Davide Frey|arXiv (Cornell University)|Nov 15, 2023
Distributed systems and fault tolerance被引用 1
一句话总结

本文提出了内容感知协作(Contention-Aware Cooperation, CAC),一种新颖的容错通信抽象,适用于异步拜占庭消息传递系统,支持 d 到 n 的协作,其中 d(提议者数量)和 ℓ(被接受的值数量)未知且动态变化。CAC 通过提供未来值接受的非完美预言机,支持乐观终止,使在低竞争环境下实现高效快速路径执行成为可能,并用于实现高性能共识算法(级联共识)以及在完全异步环境下的新型命名问题解决方案。

ABSTRACT

As shown by Reliable Broadcast and Consensus, cooperation among a set of independent computing entities (sequential processes) is a central issue in distributed computing. Considering $n$-process asynchronous message-passing systems where some processes can be Byzantine, this paper introduces a new cooperation abstraction denoted Context-Adaptive Cooperation (CAC). While Reliable Broadcast is a one-to-$n$ cooperation abstraction and Consensus is an $n$-to-$n$ cooperation abstraction, CAC is a $d$-to-$n$ cooperation abstraction where the parameter $d$ ($1\leq d\leq n$) depends on the run and remains unknown to the processes. Moreover, the correct processes accept the same set of $\ell$ pairs $\langle v,i angle$ ($v$ is the value proposed by $p_i$) from the $d$ proposer processes, where $1 \leq \ell \leq d$ and, as $d$, $\ell$ remains unknown to the processes (except in specific cases). Those $\ell$ values are accepted one at a time in different orders at each process. Furthermore, CAC provides the processes with an imperfect oracle that gives information about the values that they may accept in the future. In a very interesting way, the CAC abstraction is particularly efficient in favorable circumstances. To illustrate its practical use, the paper describes in detail two applications that benefit from the abstraction: a fast consensus implementation under low contention (named Cascading Consensus), and a novel naming problem.

研究动机与目标

  • 通过将快速路径机制隔离为可重用抽象,解决传统共识算法在低竞争场景下的低效问题。
  • 设计一种协作抽象,使其能动态适应异步拜占庭系统中未知的提议者数量和被接受值数量。
  • 利用新抽象实现在完全异步环境下支持乐观终止的共识和解决新型命名问题。
  • 为构建高性能拜占庭容错分布式系统提供模块化、可组合的基础。

提出的方法

  • 提出内容感知协作(CAC)作为 d 到 n 协作抽象,其中 d 和 ℓ 在不同运行中未知且动态变化。
  • 引入一个非完美预言机,为进程提供对未来被接受值的概率洞察,从而支持快速路径优化。
  • 设计级联共识——一种按顺序使用 CAC 实例的共识算法,当预言机预测达成一致时可提前终止。
  • 使用密码学签名确保所有 CAC 和共识协议中的真实性,防止拜占庭行为的操纵。
  • 采用分层快速路径机制:CAC1 用于初始值收集,CAC2 用于候选值传播,GC 用于最终决策,通过计时器确保活性。
  • 利用 CAC-全局终止 和 CAC-预测 性质,即使在异步环境和拜占庭行为下也能保证安全性和活性。

实验结果

研究问题

  • RQ1如何设计一种协作抽象,以支持在拜占庭异步系统中未知且动态的提议者数量和被接受值数量?
  • RQ2能否利用一个非完美预言机来预测未来值的接受情况,从而在共识协议中实现高效、乐观的终止?
  • RQ3实现一种在低竞争下能快速终止的共识算法,同时在异步环境下保持安全,其最小假设集是什么?
  • RQ4CAC 能否在不依赖同步假设的前提下,用于解决完全异步环境下的新型命名问题?
  • RQ5如何将快速路径机制模块化并组合成一种可组合、可重用且安全的分布式抽象?

主要发现

  • CAC 支持未知 d 和 ℓ 的 d 到 n 协作,所有正确进程最终就 ℓ 个值-提议者对达成一致。
  • CAC 中的非完美预言机使进程能够检测到有利于快速终止的条件,从而在不违反安全性的前提下实现乐观执行。
  • 级联共识通过使用 CAC 实现了乐观终止的共识,即使未采用快速路径,也能保证终止。
  • CAC 抽象支持在完全异步环境下解决新型命名问题,展示了其在共识之外的实用性。
  • 所有提出的协议均需使用数字签名,并在完全异步环境和拜占庭进程下被证明正确,确保了安全性和活性。
  • 本文证明 CAC 的快速路径机制具有渐进退化特性,在竞争较高或预言机不准确时仍能保持正确性。

更好的研究,从现在开始

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

无需绑定信用卡

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