Specification and Verification of the Zab Protocol with TLA+

Jia Qi Yin, Hui Biao Zhu, Yuan Fei

Research output: Contribution to journalArticlepeer-review

9 Scopus citations

Abstract

ZooKeeper Atomic Broadcast (Zab) is an atomic broadcast protocol specially designed for ZooKeeper, which supports additional crash recovery. This protocol actually has been widely adopted by famous Internet companies, but there are few studies on the correctness and credibility of the Zab protocol, and thus we utilize formal methods to study the correctness. In this paper, Zab, Paxos and Raft are all analyzed and compared to help better understand the Zab protocol. Then we model the Zab protocol with TLA+ and verify three properties abstracted from the specification by the model checker TLC, including two liveness properties and one safety property. The final experimental results can prove that the design of the protocol conforms to the original requirements. This paper makes up for the analysis of formal methods in the Zab protocol.

Original languageEnglish
Pages (from-to)1312-1323
Number of pages12
JournalJournal of Computer Science and Technology
Volume35
Issue number6
DOIs
StatePublished - Nov 2020
Externally publishedYes

Keywords

  • specification
  • TLA+
  • verification
  • Zab protocol

Fingerprint

Dive into the research topics of 'Specification and Verification of the Zab Protocol with TLA+'. Together they form a unique fingerprint.

Cite this