Design Tool To Express Failure Detection Protocols
Vincenzo De Florio, Chris Blondia

TL;DR
This paper introduces a formal syntax and a C library to accurately specify and reason about failure detection protocols, addressing issues of ambiguity and inconsistency in informal pseudo-code descriptions.
Contribution
It provides a formal syntax and implementation tools for failure detection protocols, enabling clearer and more testable specifications.
Findings
Formal syntax improves clarity of protocol descriptions
C library facilitates implementation and testing
Specifications become standardized and unambiguous
Abstract
Failure detection protocols---a fundamental building block for crafting fault-tolerant distributed systems---are in many cases described by their authors making use of informal pseudo-codes of their conception. Often these pseudo-codes use syntactical constructs that are not available in COTS programming languages such as C or C++. This translates into informal descriptions that call for ad hoc interpretations and implementations. Being informal, these descriptions cannot be tested by their authors, which may translate into insufficiently detailed or even faulty specifications. This paper tackles this problem introducing a formal syntax for those constructs and a C library that implements them---a tool-set to express and reason about failure detection protocols. The resulting specifications are longer but non ambiguous, and eligible for becoming a standard form.
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
