PSync: a partially synchronous language for fault-tolerant distributed algorithms
Fault-tolerant distributed algorithms play an important role in many critical/high-availability applications. These algorithms are notoriously difficult to implement correctly, due to asynchronous communication and the occurrence of faults, such as the network dropping messages or computers crashing. We introduce PSync, a domain specific language based on the Heard-Of model, which views asynchronous faulty systems as synchronous ones with an adversarial environment that simulates asynchrony and faults by dropping messages. We define a runtime system for PSync that efficiently executes on asynchronous networks. We formalise the relation between the runtime system and PSync in terms of observational refinement. This high-level synchronous abstraction introduced by PSync simplifies the design and implementation of fault-tolerant distributed algorithms and enables automated formal verification. We have implemented an embedding of PSync in the Scala programming language with a runtime system for partially synchronous networks. We show the applicability of PSync by implementing several important fault-tolerant distributed algorithms and we compare the implementation of consensus algorithms in PSync against implementations in other languages in terms of code size, runtime efficiency, and verification.
PSync poster (psync_poster.pdf) | 436KiB |
Thu 21 JanDisplayed time zone: Guadalajara, Mexico City, Monterrey change
10:30 - 12:10 | Track 1: Foundations of distributed systemsResearch Papers at Grand Bay North Chair(s): Mooly Sagiv Tel Aviv University | ||
10:30 25mTalk | Certified Causally Consistent Distributed Key-Value Stores Research Papers Media Attached | ||
10:55 25mTalk | 'Cause I'm Strong Enough: Reasoning about Consistency Choices in Distributed Systems Research Papers Alexey Gotsman IMDEA, Hongseok Yang University of Oxford, UK, Carla Ferreira Universidade Nova Lisboa, Mahsa Najafzadeh UPMC & INRIA, Marc Shapiro Inria & LIP6 Media Attached | ||
11:20 25mTalk | A Program Logic for Concurrent Objects under Fair Scheduling Research Papers Hongjin Liang University of Science and Technology of China, Xinyu Feng University of Science and Technology of China Media Attached | ||
11:45 25mTalk | PSync: a partially synchronous language for fault-tolerant distributed algorithms Research Papers Link to publication DOI Pre-print Media Attached File Attached |