Mechanically Verifying the Fundamental Liveness Property of the Chord Protocol - Archive ouverte HAL Accéder directement au contenu
Communication Dans Un Congrès Année : 2019

Mechanically Verifying the Fundamental Liveness Property of the Chord Protocol

Résumé

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).
Fichier principal
Vignette du fichier
final-fixed2.pdf (505.61 Ko) Télécharger le fichier
Origine : Fichiers produits par l'(les) auteur(s)
Loading...

Dates et versions

hal-02332531 , version 1 (24-10-2019)

Identifiants

Citer

Jean-Paul Bodeveix, Julien Brunel, David Chemouil, M Filali. Mechanically Verifying the Fundamental Liveness Property of the Chord Protocol. 23rd International Symposium on Formal Methods (FM 2019), FME: Formal Methods Europe, Oct 2019, Porto, Portugal. pp.45-63, ⟨10.1007/978-3-030-30942-8_5⟩. ⟨hal-02332531⟩
164 Consultations
275 Téléchargements

Altmetric

Partager

Gmail Facebook X LinkedIn More