25
Iterative Byzantine Vector Consensus in Incomplete Graphs Nitin Vaidya University of Illinois at Urbana- Champaign ICDCN presentation by Srikanth Sastry Google

Iterative Byzantine Vector Consensus in Incomplete Graphs Nitin Vaidya University of Illinois at Urbana-Champaign ICDCN presentation by Srikanth Sastry

Embed Size (px)

Citation preview

Page 1: Iterative Byzantine Vector Consensus in Incomplete Graphs Nitin Vaidya University of Illinois at Urbana-Champaign ICDCN presentation by Srikanth Sastry

Iterative Byzantine Vector Consensus in

Incomplete Graphs

Nitin Vaidya

University of Illinois at Urbana-Champaign

ICDCN presentation by

Srikanth Sastry

Google

Page 2: Iterative Byzantine Vector Consensus in Incomplete Graphs Nitin Vaidya University of Illinois at Urbana-Champaign ICDCN presentation by Srikanth Sastry

Byzantine Fault Model

g Faulty nodes may misbehave arbitrarily,

including sending inconsistent messages to neighbors

2

Page 3: Iterative Byzantine Vector Consensus in Incomplete Graphs Nitin Vaidya University of Illinois at Urbana-Champaign ICDCN presentation by Srikanth Sastry

This Paper

3

g Which directed graphs can solve

iterative Byzantine vector consensus?

Page 4: Iterative Byzantine Vector Consensus in Incomplete Graphs Nitin Vaidya University of Illinois at Urbana-Champaign ICDCN presentation by Srikanth Sastry

Vector Consensus

g Input: d-dimensional vector of reals

g Output:

Vector in convex hull of inputs atfault-free nodes

4

Page 5: Iterative Byzantine Vector Consensus in Incomplete Graphs Nitin Vaidya University of Illinois at Urbana-Champaign ICDCN presentation by Srikanth Sastry

Exact Vector Consensusin Complete Graphs

Necessary and sufficient condition for a complete graph of N nodes tolerating f faults

g Synchronous: N ≥ max(3f, (d+1)f+1)

g Asynchronous: N ≥ (d+2)f+1

[STOC13: Mendes-Herlihy PODC13: Vaidya-Garg]

5

Page 6: Iterative Byzantine Vector Consensus in Incomplete Graphs Nitin Vaidya University of Illinois at Urbana-Champaign ICDCN presentation by Srikanth Sastry

This Paper

g Incomplete directed graphs

g Iterative approximate consensus

g Synchronous system

… similar results can be obtained for asynchronous

6

Page 7: Iterative Byzantine Vector Consensus in Incomplete Graphs Nitin Vaidya University of Illinois at Urbana-Champaign ICDCN presentation by Srikanth Sastry

Iterative Structure

g Each node maintains a state: initial state = input vector

g Each iteration

… communicate with neighbors

… update state

g Output = state at termination

Page 8: Iterative Byzantine Vector Consensus in Incomplete Graphs Nitin Vaidya University of Illinois at Urbana-Champaign ICDCN presentation by Srikanth Sastry

Correctness Conditions

g Termination after finite number of iterations

g Validity: State of a fault-free node always in convex hull of input at fault-free nodes

(“Minimal state”)

g ε-Agreement: Corresponding elements of output vectors at fault-free nodes within ε at termination

8

Page 9: Iterative Byzantine Vector Consensus in Incomplete Graphs Nitin Vaidya University of Illinois at Urbana-Champaign ICDCN presentation by Srikanth Sastry

Necessary Condition on Network Graph

9

Page 10: Iterative Byzantine Vector Consensus in Incomplete Graphs Nitin Vaidya University of Illinois at Urbana-Champaign ICDCN presentation by Srikanth Sastry

Notation

A B if there exists a node in B with c+1 incoming edges from A

10

c

Page 11: Iterative Byzantine Vector Consensus in Incomplete Graphs Nitin Vaidya University of Illinois at Urbana-Champaign ICDCN presentation by Srikanth Sastry

A Necessary Condition

11

Page 12: Iterative Byzantine Vector Consensus in Incomplete Graphs Nitin Vaidya University of Illinois at Urbana-Champaign ICDCN presentation by Srikanth Sastry

A Necessary Condition

g Proof by contradiction … omitted

g Do not know if this condition is tight

12

Page 13: Iterative Byzantine Vector Consensus in Incomplete Graphs Nitin Vaidya University of Illinois at Urbana-Champaign ICDCN presentation by Srikanth Sastry

A Sufficient Condition

13

Page 14: Iterative Byzantine Vector Consensus in Incomplete Graphs Nitin Vaidya University of Illinois at Urbana-Champaign ICDCN presentation by Srikanth Sastry

A Sufficient Condition

14

Partitionnodes into

4 sets

F L C R ≥ df+1

≥ df+1

i

j

Page 15: Iterative Byzantine Vector Consensus in Incomplete Graphs Nitin Vaidya University of Illinois at Urbana-Champaign ICDCN presentation by Srikanth Sastry

A Sufficient Condition

potentialfault set

≥ df+1

≥ df+1

i

j

L, R non-empty

Page 16: Iterative Byzantine Vector Consensus in Incomplete Graphs Nitin Vaidya University of Illinois at Urbana-Champaign ICDCN presentation by Srikanth Sastry

A Sufficient Condition

16

≥ df+1

≥ df+1

i

j

i or j

exists

Page 17: Iterative Byzantine Vector Consensus in Incomplete Graphs Nitin Vaidya University of Illinois at Urbana-Champaign ICDCN presentation by Srikanth Sastry

Sufficiency Proof

g Algorithm &

its correctness under the sufficient condition

17

Page 18: Iterative Byzantine Vector Consensus in Incomplete Graphs Nitin Vaidya University of Illinois at Urbana-Champaign ICDCN presentation by Srikanth Sastry

Iterative Algorithm

g Obtain current state of all neighbors

g Find Tverberg point for each subset of(d+1)f+1 states (own & neighbors)

g New state = average of all Tverberg points

Terminate after number of rounds that depends on εand the input domain

18

Page 19: Iterative Byzantine Vector Consensus in Incomplete Graphs Nitin Vaidya University of Illinois at Urbana-Champaign ICDCN presentation by Srikanth Sastry

Tverberg Point for a Multiset S

g Partition S into f+1 non-empty subsets such that the intersection of their convex hull is non-empty

g Any point in the intersection is a Tverberg point

g Intersection is non-empty if |S| ≥ (d+1)f+1

[Tverberg Theorem]

19

Page 20: Iterative Byzantine Vector Consensus in Incomplete Graphs Nitin Vaidya University of Illinois at Urbana-Champaign ICDCN presentation by Srikanth Sastry

Proof of Correctness

g Vi [t] = state of fault-free node i at the end of iteration t

g Think of the vector state as a point in Euclidean space

g V[t] = Vector of states of fault-free nodes

20

Page 21: Iterative Byzantine Vector Consensus in Incomplete Graphs Nitin Vaidya University of Illinois at Urbana-Champaign ICDCN presentation by Srikanth Sastry

Proof of Correctness

g For a given execution, always possible to find arow stochastic matrix M[t] such that

V[t] = M[t] V[t-1]

g Row stochastic: All elements non-negative Each row adds to 1

21

Page 22: Iterative Byzantine Vector Consensus in Incomplete Graphs Nitin Vaidya University of Illinois at Urbana-Champaign ICDCN presentation by Srikanth Sastry

Proof of Correctness

g Rest follows from the previous matrix equation

… proof structure used in our prior work too

… borrowed from work on non-fault-tolerant

consensus (decentralized consensus [Tsitsiklis])

g Our main contribution is to prove that the matrix form holds with Byzantine faults

… proof omitted

22

Page 23: Iterative Byzantine Vector Consensus in Incomplete Graphs Nitin Vaidya University of Illinois at Urbana-Champaign ICDCN presentation by Srikanth Sastry

Summary

g Vector consensus

g Using simple iterative structure

g Minimal state

g Sufficient condition ≠ Necessary condition

23

Page 24: Iterative Byzantine Vector Consensus in Incomplete Graphs Nitin Vaidya University of Illinois at Urbana-Champaign ICDCN presentation by Srikanth Sastry

Open Problem

g Finding conditions such that

Sufficient condition = Necessary condition

24

Page 25: Iterative Byzantine Vector Consensus in Incomplete Graphs Nitin Vaidya University of Illinois at Urbana-Champaign ICDCN presentation by Srikanth Sastry

Thanks !

25