31,304 research outputs found
Compositional competitiveness for distributed algorithms
We define a measure of competitive performance for distributed algorithms
based on throughput, the number of tasks that an algorithm can carry out in a
fixed amount of work. This new measure complements the latency measure of Ajtai
et al., which measures how quickly an algorithm can finish tasks that start at
specified times. The novel feature of the throughput measure, which
distinguishes it from the latency measure, is that it is compositional: it
supports a notion of algorithms that are competitive relative to a class of
subroutines, with the property that an algorithm that is k-competitive relative
to a class of subroutines, combined with an l-competitive member of that class,
gives a combined algorithm that is kl-competitive.
In particular, we prove the throughput-competitiveness of a class of
algorithms for collect operations, in which each of a group of n processes
obtains all values stored in an array of n registers. Collects are a
fundamental building block of a wide variety of shared-memory distributed
algorithms, and we show that several such algorithms are competitive relative
to collects. Inserting a competitive collect in these algorithms gives the
first examples of competitive distributed algorithms obtained by composition
using a general construction.Comment: 33 pages, 2 figures; full version of STOC 96 paper titled "Modular
competitiveness for distributed algorithms.
On the Mailbox Problem
The Mailbox Problem was described and solved by Aguilera, Gafni, and Lamport
in their 2010 DC paper with an algorithm that uses two flag registers that
carry 14 values each. An interesting problem that they ask is whether there is
a mailbox algorithm with smaller flag values. We give a positive answer by
describing a mailbox algorithm with 6 and 4 values in the two flag registers
Tight Mobile Byzantine Tolerant Atomic Storage
This paper proposes the first implementation of an atomic storage tolerant to
mobile Byzantine agents. Our implementation is designed for the round-based
synchronous model where the set of Byzantine nodes changes from round to round.
In this model we explore the feasibility of multi-writer multi-reader atomic
register prone to various mobile Byzantine behaviors. We prove upper and lower
bounds for solving the atomic storage in all the explored models. Our results,
significantly different from the static case, advocate for a deeper study of
the main building blocks of distributed computing while the system is prone to
mobile Byzantine failures
Anonymous Obstruction-free -Set Agreement with Atomic Read/Write Registers
The -set agreement problem is a generalization of the consensus problem.
Namely, assuming each process proposes a value, each non-faulty process has to
decide a value such that each decided value was proposed, and no more than
different values are decided. This is a hard problem in the sense that it
cannot be solved in asynchronous systems as soon as or more processes may
crash. One way to circumvent this impossibility consists in weakening its
termination property, requiring that a process terminates (decides) only if it
executes alone during a long enough period. This is the well-known
obstruction-freedom progress condition. Considering a system of {\it
anonymous asynchronous} processes, which communicate through atomic {\it
read/write registers only}, and where {\it any number of processes may crash},
this paper addresses and solves the challenging open problem of designing an
obstruction-free -set agreement algorithm with atomic registers
only. From a shared memory cost point of view, this algorithm is the best
algorithm known so far, thereby establishing a new upper bound on the number of
registers needed to solve the problem (its gain is with respect to the
previous upper bound). The algorithm is then extended to address the repeated
version of -set agreement. As it is optimal in the number of atomic
read/write registers, this algorithm closes the gap on previously established
lower/upper bounds for both the anonymous and non-anonymous versions of the
repeated -set agreement problem. Finally, for 1 \leq x\leq k
\textless{} n, a generalization suited to -obstruction-freedom is also
described, which requires atomic registers only
Stabilizing Server-Based Storage in Byzantine Asynchronous Message-Passing Systems
A stabilizing Byzantine single-writer single-reader (SWSR) regular register,
which stabilizes after the first invoked write operation, is first presented.
Then, new/old ordering inversions are eliminated by the use of a (bounded)
sequence number for writes, obtaining a practically stabilizing SWSR atomic
register. A practically stabilizing Byzantine single-writer multi-reader (SWMR)
atomic register is then obtained by using several copies of SWSR atomic
registers. Finally, bounded time-stamps, with a time-stamp per writer, together
with SWMR atomic registers, are used to construct a practically stabilizing
Byzantine multi-writer multi-reader (MWMR) atomic register. In a system of
servers implementing an atomic register, and in addition to transient failures,
the constructions tolerate t<n/8 Byzantine servers if communication is
asynchronous, and t<n/3 Byzantine servers if it is synchronous. The noteworthy
feature of the proposed algorithms is that (to our knowledge) these are the
first that build an atomic read/write storage on top of asynchronous servers
prone to transient failures, and where up to t of them can be Byzantine
- …