DeepAI AI Chat
Log In Sign Up

Reconfigurable Lattice Agreement and Applications

by   Petr Kuznetsov, et al.

Reconfiguration is one of the central mechanisms in distributed systems. Due to failures and connectivity disruptions, the very set of service replicas (or servers) and their roles in the computation may have to be reconfigured over time. To provide the desired level of consistency and availability to applications running on top of these servers, the clients of the service should be able to reach some form of agreement on the system configuration. We observe that this agreement is naturally captured via a lattice partial order on the system states. We propose an asynchronous implementation of reconfigurable lattice agreement that implies elegant reconfigurable versions of a large class of lattice abstract data types, such as max-registers and conflict detectors, as well as popular distributed programming abstractions, such as atomic snapshot and commit-adopt.


page 1

page 2

page 3

page 4


Accountability and Reconfiguration: Self-Healing Lattice Agreement

An accountable distributed system provides means to detect deviations of...

Asynchronous Reconfiguration with Byzantine Failures

Replicated services are inherently vulnerable to failures and security b...

Linearizable Replicated State Machines with Lattice Agreement

This paper studies the lattice agreement problem in asynchronous systems...

ARES: Adaptive, Reconfigurable, Erasure coded, atomic Storage

Atomicity or strong consistency is one of the fundamental, most intuitiv...

Amortized Constant Round Atomic Snapshot in Message-Passing Systems

We study the lattice agreement (LA) and atomic snapshot problems in asyn...

How Hard is Asynchronous Weight Reassignment? (Extended Version)

The performance of distributed storage systems deployed on wide-area net...

Store-Collect in the Presence of Continuous Churn with Application to Snapshots and Lattice Agreement

We present an algorithm for implementing a store-collect object in an as...