Skip to Main content Skip to Navigation
Conference papers

Mechanically Verifying the Fundamental Liveness Property of the Chord Protocol

Abstract : Chord is a protocol providing a scalable distributed hash table over an underlying peer-to-peer network. It is very popular due to its simplicity, performance and claimed correctness. However, the original version of the Chord maintenance protocol, presented with an informal proof of correctness, was since then shown to be in fact incorrect. It is actually tricky to come up with a provably-correct version as the protocol combines data structures, asynchronous communication, concurrency, and fault tolerance. Additionally, the correctness property amounts to a form of stabilization, a particular kind of liveness property. Previous work only addressed automated proofs of safety; and pen-and-paper, or automated but much bounded, proofs of stabilization. In this article, we report on the first mechanized proof of the liveness property for Chord. Furthermore, our proof addresses the full parameterized version of the protocol, weakens previously-devised invariants and operating assumptions, and is essentially automated (requiring limited effort when manual assistance is needed).
Document type :
Conference papers
Complete list of metadatas
Contributor : Françoise Grélaud <>
Submitted on : Wednesday, November 18, 2020 - 4:01:42 PM
Last modification on : Tuesday, January 5, 2021 - 2:22:03 PM

Links full text



Jean-Paul Bodeveix, Julien Brunel, David Chemouil, Mamoun Filali. Mechanically Verifying the Fundamental Liveness Property of the Chord Protocol. Journées du Groupe de Travail Vérification du GDR GPL 2019, Jun 2019, Nantes, France. pp.45-63, ⟨10.1007/978-3-030-30942-8_5⟩. ⟨hal-03012557⟩



Record views