3,155 research outputs found
Byzantine Vector Consensus in Complete Graphs
Consider a network of n processes each of which has a d-dimensional vector of
reals as its input. Each process can communicate directly with all the
processes in the system; thus the communication network is a complete graph.
All the communication channels are reliable and FIFO (first-in-first-out). The
problem of Byzantine vector consensus (BVC) requires agreement on a
d-dimensional vector that is in the convex hull of the d-dimensional input
vectors at the non-faulty processes. We obtain the following results for
Byzantine vector consensus in complete graphs while tolerating up to f
Byzantine failures:
* We prove that in a synchronous system, n >= max(3f+1, (d+1)f+1) is
necessary and sufficient for achieving Byzantine vector consensus.
* In an asynchronous system, it is known that exact consensus is impossible
in presence of faulty processes. For an asynchronous system, we prove that n >=
(d+2)f+1 is necessary and sufficient to achieve approximate Byzantine vector
consensus.
Our sufficiency proofs are constructive. We show sufficiency by providing
explicit algorithms that solve exact BVC in synchronous systems, and
approximate BVC in asynchronous systems.
We also obtain tight bounds on the number of processes for achieving BVC
using algorithms that are restricted to a simpler communication pattern
Relaxed Byzantine Vector Consensus
Exact Byzantine consensus problem requires that non-faulty processes reach
agreement on a decision (or output) that is in the convex hull of the inputs at
the non-faulty processes. It is well-known that exact consensus is impossible
in an asynchronous system in presence of faults, and in a synchronous system,
n>=3f+1 is tight on the number of processes to achieve exact Byzantine
consensus with scalar inputs, in presence of up to f Byzantine faulty
processes. Recent work has shown that when the inputs are d-dimensional vectors
of reals, n>=max(3f+1,(d+1)f+1) is tight to achieve exact Byzantine consensus
in synchronous systems, and n>= (d+2)f+1 for approximate Byzantine consensus in
asynchronous systems.
Due to the dependence of the lower bound on vector dimension d, the number of
processes necessary becomes large when the vector dimension is large. With the
hope of reducing the lower bound on n, we consider two relaxed versions of
Byzantine vector consensus: k-Relaxed Byzantine vector consensus and
(delta,p)-Relaxed Byzantine vector consensus. In k-relaxed consensus, the
validity condition requires that the output must be in the convex hull of
projection of the inputs onto any subset of k-dimensions of the vectors. For
(delta,p)-consensus the validity condition requires that the output must be
within distance delta of the convex hull of the inputs of the non-faulty
processes, where L_p norm is used as the distance metric. For
(delta,p)-consensus, we consider two versions: in one version, delta is a
constant, and in the second version, delta is a function of the inputs
themselves.
We show that for k-relaxed consensus and (delta,p)-consensus with constant
delta>=0, the bound on n is identical to the bound stated above for the
original vector consensus problem. On the other hand, when delta depends on the
inputs, we show that the bound on n is smaller when d>=3
Byzantine Convex Consensus: An Optimal Algorithm
Much of the past work on asynchronous approximate Byzantine consensus has
assumed scalar inputs at the nodes [4, 8]. Recent work has yielded approximate
Byzantine consensus algorithms for the case when the input at each node is a
d-dimensional vector, and the nodes must reach consensus on a vector in the
convex hull of the input vectors at the fault-free nodes [9, 13]. The
d-dimensional vectors can be equivalently viewed as points in the d-dimensional
Euclidean space. Thus, the algorithms in [9, 13] require the fault-free nodes
to decide on a point in the d-dimensional space.
In our recent work [arXiv:/1307.1051], we proposed a generalization of the
consensus problem, namely Byzantine convex consensus (BCC), which allows the
decision to be a convex polytope in the d-dimensional space, such that the
decided polytope is within the convex hull of the input vectors at the
fault-free nodes. We also presented an asynchronous approximate BCC algorithm.
In this paper, we propose a new BCC algorithm with optimal fault-tolerance
that also agrees on a convex polytope that is as large as possible under
adversarial conditions. Our prior work [arXiv:/1307.1051] does not guarantee
the optimality of the output polytope.Comment: arXiv admin note: substantial text overlap with arXiv:1307.105
Consensus in Byzantine asynchronous systems
AbstractThis paper presents a consensus protocol resilient to Byzantine failures. It uses signed and certified messages and is based on two underlying failure detection modules. The first is a muteness failure detection module of the class ♢M. The second is a reliable Byzantine behaviour detection module. More precisely, the first module detects processes that stop sending messages, while processes experiencing other non-correct behaviours (i.e., Byzantine) are detected by the second module. The protocol is resilient to F faulty processes, F⩽min(⌊(n−1)/2⌋,C) (where C is the maximum number of faulty processes that can be tolerated by the underlying certification service).The approach used to design the protocol is new. While usual Byzantine consensus protocols are based on failure detectors to detect processes that stop communicating, none of them use a module to detect their Byzantine behaviour (this detection is not isolated from the protocol and makes it difficult to understand and prove correct). In addition to this modular approach and to a consensus protocol for Byzantine systems, the paper presents a finite state automaton-based implementation of the Byzantine behaviour detection module. Finally, the modular approach followed in this paper can be used to solve other problems in asynchronous systems experiencing Byzantine failures
- …