880 research outputs found
Self-stabilizing Byzantine Multivalued Consensus
Consensus, abstracting a myriad of problems in which processes have to agree
on a single value, is one of the most celebrated problems of fault-tolerant
distributed computing. Consensus applications include fundamental services for
the environments of the Cloud and Blockchain, and in such challenging
environments, malicious behaviors are often modeled as adversarial Byzantine
faults.
At OPODIS 2010, Mostefaoui and Raynal (in short MR) presented a
Byzantine-tolerant solution to consensus in which the decided value cannot be a
value proposed only by Byzantine processes. MR has optimal resilience coping
with up to t < n/3 Byzantine nodes over n processes. MR provides this
multivalued consensus object (which accepts proposals taken from a finite set
of values) assuming the availability of a single Binary consensus object (which
accepts proposals taken from the set {0,1}).
This work, which focuses on multivalued consensus, aims at the design of an
even more robust solution than MR. Our proposal expands MR's fault-model with
self-stabilization, a vigorous notion of fault-tolerance. In addition to
tolerating Byzantine, self-stabilizing systems can automatically recover after
the occurrence of arbitrary transient-faults. These faults represent any
violation of the assumptions according to which the system was designed to
operate (provided that the algorithm code remains intact).
To the best of our knowledge, we propose the first self-stabilizing solution
for intrusion-tolerant multivalued consensus for asynchronous message-passing
systems prone to Byzantine failures. Our solution has a O(t) stabilization time
from arbitrary transient faults.Comment: arXiv admin note: text overlap with arXiv:2110.0859
Distributed Consensus in Networks
Distributed algorithms have gained a lot of attention during recent years. Their
application in industry, particularly in wireless sensor networks has motivated researchers
to try to design them in order to be less resource-consuming (e.g. memory
and power), faster, and more reliable. There have been numerous distributed algorithms
for different types of problems in the context of distributed algorithms. We
are interested in a fundamental coordination problem namely the majority consensus problem. In the majority consensus problem nodes try to find the opinion of
the majority in a network of interest. As our first contribution and motivated by
the distributed binary consensus problem in [1] we propose a distributed algorithm
for multivalued consensus in complete graphs. As our second contribution we propose
an algorithm for the optimization of the binary interval consensus algorithm
pioneered by Ben ezit et al in [2]. Finally we use binary interval consensus algorithm
to design a framework for error-free consensus in dynamic networks using
which nodes can leave or join the network during or after the consensus process.Open Acces
Achieving fault-tolerant consensus in ad hoc networks
Tese de mestrado em Engenharia Informática (Arquitectura, Sistemas e Redes de Computadores), apresentada à Universidade de Lisboa, através da Faculdade de Ciências, 2013Consensus plays a fundamental role in distributed systems. This operation consists in having every process in a distributed system, or a subset of processes, to agree upon a value that was proposed by any of the processes. Consensus is used to solve several problems in distributed systems computation, such as: state machine replication, leader election and atomic broadcast, allowing the coordination of the network. Its applicability becomes more important and difficult to implement in wireless ad hoc networks that are vulnerable to intrusions. When dealing with a wireless ad hoc network, specially one composed by mobile devices that are constantly moving, there are several obstacles that have to be overcome such as the unreliability in the communication, the hardware limitations of the devices, the limited communication range and the exposure to malicious users. The project consists in the design, implementation, test and analysis of Byzantine fault-tolerant consensus protocols for wireless ad hoc networks. It is assumed that the number of participants is unknown and the consensus protocols execute in a group of processes called sink. The protocols are byzantine fault-tolerant and circumvent both FLP and Santoro-Widmayer impossibility results. Three forms of consensus protocols were considered: binary, multivalued and vector. The protocols were organized in a stack, where lower level protocols were used to build higher ones. The stack was implemented as a library and was tested in a simulation environment. Some preliminary tests were also performed with Android devices. The evaluation of the protocols shows that they exhibit good performance in several scenarios and even under attack.O consenso tem um papel fundamental em sistemas distribuídos. Esta operação consiste em ter todos os processos num sistema distribuído, ou um subconjunto de processos, a acordar num valor que foi proposto por algum dos processos. O consenso é usado para resolver vários problemas na computação de um sistema distribuído, como por exemplo: máquina de estados replicada, eleição de líder e difusão atómica, permitindo a coordenação da rede. A sua utilidade torna-se mais importante e difícil de implementar em redes ad hoc móveis sem fios que estão vulneráveis a intrusões. Quando se está a lidar com uma rede ad hoc sem fios, especialmente uma composta por dispositivos móveis que apresentam uma mobilidade constante, existe um conjunto de obstáculos relacionados com a falta de fiabilidade na comunicação, as limitações dos equipamentos, o seu reduzido alcance de comunicação e a exposição¸ ao a utilizadores mal intencionados. O projecto consiste no desenho, implementação, teste e análise de protocolos de consenso tolerantes a faltas bizantinas para redes ad hoc sem fios. ´E assumido que o número de participantes é desconhecido e os protocolos de consenso são executados num grupo de processos denominado poço. Os protocolos são tolerantes a faltas bizantinas e contornam os resultados de impossibilidade de FLP e de Santoro-Widmayer. Foram considerados três tipos de protocolos de consenso: binário, multi-valor e vector. Os protocolos estão organizados numa pilha, onde protocolos de baixo nível foram usados para construir os protocolos de níveis superiores. A pilha foi implementada como uma biblioteca e foi testada em ambiente de simulação. Alguns testes preliminares foram também efectuados
com dispositivos Android. A avaliação dos protocolos revela que estes exibem um bom desempenho em vários cenários e mesmo sobre ataque
The Weakest Failure Detector for Eventual Consistency
In its classical form, a consistent replicated service requires all replicas
to witness the same evolution of the service state. Assuming a message-passing
environment with a majority of correct processes, the necessary and sufficient
information about failures for implementing a general state machine replication
scheme ensuring consistency is captured by the {\Omega} failure detector. This
paper shows that in such a message-passing environment, {\Omega} is also the
weakest failure detector to implement an eventually consistent replicated
service, where replicas are expected to agree on the evolution of the service
state only after some (a priori unknown) time. In fact, we show that {\Omega}
is the weakest to implement eventual consistency in any message-passing
environment, i.e., under any assumption on when and where failures might occur.
Ensuring (strong) consistency in any environment requires, in addition to
{\Omega}, the quorum failure detector {\Sigma}. Our paper thus captures, for
the first time, an exact computational difference be- tween building a
replicated state machine that ensures consistency and one that only ensures
eventual consistency
Simple Dynamics for Plurality Consensus
We study a \emph{Plurality-Consensus} process in which each of anonymous
agents of a communication network initially supports an opinion (a color chosen
from a finite set ). Then, in every (synchronous) round, each agent can
revise his color according to the opinions currently held by a random sample of
his neighbors. It is assumed that the initial color configuration exhibits a
sufficiently large \emph{bias} towards a fixed plurality color, that is,
the number of nodes supporting the plurality color exceeds the number of nodes
supporting any other color by additional nodes. The goal is having the
process to converge to the \emph{stable} configuration in which all nodes
support the initial plurality. We consider a basic model in which the network
is a clique and the update rule (called here the \emph{3-majority dynamics}) of
the process is the following: each agent looks at the colors of three random
neighbors and then applies the majority rule (breaking ties uniformly).
We prove that the process converges in time with high probability, provided that .
We then prove that our upper bound above is tight as long as . This fact implies an exponential time-gap between the
plurality-consensus process and the \emph{median} process studied by Doerr et
al. in [ACM SPAA'11].
A natural question is whether looking at more (than three) random neighbors
can significantly speed up the process. We provide a negative answer to this
question: In particular, we show that samples of polylogarithmic size can speed
up the process by a polylogarithmic factor only.Comment: Preprint of journal versio
- …