Skip to main content
QUICK REVIEW

[논문 리뷰] Making Byzantine Consensus Live

Manuel Bravo, Gregory Chockler|arXiv (Cornell University)|2020. 01. 01.
Distributed systems and fault tolerance참고 문헌 34인용 수 3
한 줄 요약

이 논문은 부분적 동기성 하에서 비잔티노스 합의 프로토콜의 라이브니스를 보장하기 위해 형식적이고 경계된 공간을 갖춘 뷰 동기화 추상화를 제안한다. 이는 정상적인 프로세스들이 최종적으로 정상적인 리더를 가진 뷰에 수렴하도록 보장한다. 이 동기화기가 HotStuff, Tendermint, PBFT, SBFT의 단일 스포트 버전이 전역 안정화 시간(GST) 이후 4δ에서 8δ 사이에 결정을 내릴 수 있도록 보장함으로써 최적의 지연 시간을 확보함을 증명한다. 이는 프로토콜의 변종과 가정 조건에 따라 달라진다.

ABSTRACT

Partially synchronous Byzantine consensus protocols typically structure their execution into a sequence of views, each with a designated leader process. The key to guaranteeing liveness in these protocols is to ensure that all correct processes eventually overlap in a view with a correct leader for long enough to reach a decision. We propose a simple view synchronizer abstraction that encapsulates the corresponding functionality for Byzantine consensus protocols, thus simplifying their design. We present a formal specification of a view synchronizer and its implementation under partial synchrony, which runs in bounded space despite tolerating message loss during asynchronous periods. We show that our synchronizer specification is strong enough to guarantee liveness for single-shot versions of several well-known Byzantine consensus protocols, including HotStuff, Tendermint, PBFT and SBFT. We furthermore give precise latency bounds for these protocols when using our synchronizer. By factoring out the functionality of view synchronization we are able to specify and analyze the protocols in a uniform framework, which allows comparing them and highlights trade-offs.

연구 동기 및 목표

  • 부분적 동기성 하에서 비잔티노스 합의에 대해 형식적이고 모듈화되며 효율적인 뷰 동기화 메커니즘이 부족한 문제를 해결하기 위해.
  • 뷰 동기화를 재사용 가능한 추상화로 분리함으로써 비잔티노스 합의 프로토콜의 설계와 검증을 단순화하기 위해.
  • 제안된 동기화기를 사용할 경우 잘 알려진 프로토콜들에 대해 정확한 지연 시간 범위를 제공하기 위해.
  • 비동기 기간 동안 메시지 손실과 시계 오차가 발생하더라도 정상성과 경계된 공간 사용을 보장하기 위해.
  • 여러 개발된 비잔티노스 합의 프로토콜들에 대해 라이브니스를 보장하기에 충분한 동기화기가 되는지 보여주기 위해.

제안 방법

  • GST 이후 모든 정상 프로세스가 정상적인 리더를 가진 뷰에 최종적으로 합의할 수 있도록 보장하는 뷰 동기화기의 형식적 사양을 제안한다.
  • 메시지 손실과 시계 오차를 견디며 부분적 동기성 하에서 경계된 공간을 사용해 동기화기를 구현한다.
  • 쿼럼 기반 메시지 교환과 뷰 기반 논리적 처리를 통해 프로세스 간의 뷰 불일치를 탐지하고 해결한다.
  • HotStuff, Tendermint, PBFT, SBFT의 단일 스포트 변형과 동기화기를 통합하여 라이브니스와 지연 시간 보장을 검증한다.
  • 형식적 검증 기법을 적용하여 동기화기가 부분적 동기성 하에서 정상적인 결정을 내릴 수 있음을 증명한다.
  • 뷰 지속 시간, 메시지 지연(δ), 프로토콜 고유의 시간 매개변수(예: F(v), Ff(v))를 바탕으로 정확한 지연 시간 범위를 유도한다.

실험 결과

연구 질문

  • RQ1부분적 동기성 하에서 단일 스포트 비잔티노스 합의 프로토콜의 라이브니스를 보장하기 위해 필요한 최소한의 뷰 동기화기 사양은 무엇인가?
  • RQ2비동기 기간 동안 메시지 손실과 시계 오차를 견디며 경계된 공간에서 뷰 동기화기를 구현할 수 있는가?
  • RQ3제안된 동기화기를 사용할 경우 HotStuff, PBFT, SBFT, Tendermint의 정확한 지연 시간 범위는 무엇인가?
  • RQ4동기화기는 비잔티노스 합의 프로토콜의 모듈화된 설계와 검증을 어떻게 가능하게 하는가?
  • RQ5다양한 합의 프로토콜과 함께 동기화기를 사용할 경우 메시지 복잡도, 지연 시간, 장애 내성 간의 상충 관계는 어떻게 드러나는가?

주요 결과

  • 제안된 뷰 동기화기는 부분적 동기성 하에서 HotStuff, Tendermint, PBFT, SBFT의 단일 스포트 버전에 대해 라이브니스를 보장한다.
  • 모든 정상 프로세스는 전역 안정화 시간(GST) 이후 4δ에서 8δ 사이에 결정을 내린다. 이는 프로토콜과 가정 조건에 따라 달라진다.
  • 선형 HotStuff 프로토콜에서는 F(1) > 9δ 이고 리더가 정상일 경우 Slast + 8δ에 결정이 이루어진다.
  • 선형 SBFT의 경우 모든 프로세스가 정상이고 F(1) > 5δ이며 리더가 정상일 경우 Slast + 4δ에 결정이 이루어진다.
  • 선형 SBFT의 최선의 경우, 빠른 경로 타이머 없이도 동기화기는 4δ의 지연 시간 범위를 보장한다.
  • 동기화기의 구현은 경계된 공간을 사용하며 메시지 손실과 시계 오차를 처리하므로 실세계 구현에 실용적이다.

더 나은 연구,지금 바로 시작하세요

연구 설계부터 논문 작성까지, 연구 시간을 획기적으로 줄여보세요.

카드 등록 없음 · 무료 플랜 제공

이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.