10
Divya Gupta * , Lucas Perronne * , Sara Bouchenak + * Univ. Grenoble Alpes, LIG Grenoble, France, + Univ. Lyon, INSA Lyon, LIRIS, Lyon, France [email protected], [email protected], [email protected] BFT-Bench: A Framework to Evaluate BFT Protocols Lucas Perronne 7 th ACM/SPEC International Conference on Performance Engineering – 14/03/2016

BFT-Bench: A Framework to Evaluate BFT Protocols · DivyaGupta *, Lucas Perronne , Sara Bouchenak + *Univ. Grenoble Alpes, LIG Grenoble, France, +Univ. Lyon, INSA Lyon, LIRIS, Lyon,

  • Upload
    others

  • View
    10

  • Download
    0

Embed Size (px)

Citation preview

Page 1: BFT-Bench: A Framework to Evaluate BFT Protocols · DivyaGupta *, Lucas Perronne , Sara Bouchenak + *Univ. Grenoble Alpes, LIG Grenoble, France, +Univ. Lyon, INSA Lyon, LIRIS, Lyon,

Divya Gupta*, Lucas Perronne*, Sara Bouchenak+

*Univ. Grenoble Alpes, LIG Grenoble, France, +Univ. Lyon, INSA Lyon, LIRIS, Lyon, France

[email protected], [email protected], [email protected]

BFT-Bench: A Framework to Evaluate BFT ProtocolsLucas Perronne

7th ACM/SPEC International Conference on Performance Engineering – 14/03/2016

Page 2: BFT-Bench: A Framework to Evaluate BFT Protocols · DivyaGupta *, Lucas Perronne , Sara Bouchenak + *Univ. Grenoble Alpes, LIG Grenoble, France, +Univ. Lyon, INSA Lyon, LIRIS, Lyon,

Cloud Computing Outages

2 BFT-Bench: A Framework to Evaluate BFT Protocols

Page 3: BFT-Bench: A Framework to Evaluate BFT Protocols · DivyaGupta *, Lucas Perronne , Sara Bouchenak + *Univ. Grenoble Alpes, LIG Grenoble, France, +Univ. Lyon, INSA Lyon, LIRIS, Lyon,

Fault Tolerance through State Machine Replication

request

reply

� The same state must be shared by correct replicas� Safety

� Correct requests must be eventually executed� Liveness

3 BFT-Bench: A Framework to Evaluate BFT Protocols

Page 4: BFT-Bench: A Framework to Evaluate BFT Protocols · DivyaGupta *, Lucas Perronne , Sara Bouchenak + *Univ. Grenoble Alpes, LIG Grenoble, France, +Univ. Lyon, INSA Lyon, LIRIS, Lyon,

Byzantine Fault Tolerance

Malicious behaviors

4

Network failureNode crash

� Providing Byzantine Fault Tolerance is the ability to ensure Liveness and Safety in presence of any byzantine components.

BFT-Bench: A Framework to Evaluate BFT Protocols

Page 5: BFT-Bench: A Framework to Evaluate BFT Protocols · DivyaGupta *, Lucas Perronne , Sara Bouchenak + *Univ. Grenoble Alpes, LIG Grenoble, France, +Univ. Lyon, INSA Lyon, LIRIS, Lyon,

Problem Statement

� Byzantine Fault Tolerance - Related works� BFT From Theory to Practice

� PBFT

� Performance Improvement in Fault-Free Conditions� Zyzzyva, Aliph, …

� Performance Improvement in Presence of Faults� Aardvark, RBFT, …

� Evaluating BFT protocols� Usage of micro-benchmarks

� Ad-hoc settings for evaluations

� No benchmarking environment dedicated to BFT

5 BFT-Bench: A Framework to Evaluate BFT Protocols

Page 6: BFT-Bench: A Framework to Evaluate BFT Protocols · DivyaGupta *, Lucas Perronne , Sara Bouchenak + *Univ. Grenoble Alpes, LIG Grenoble, France, +Univ. Lyon, INSA Lyon, LIRIS, Lyon,

BFT-Bench

1. Several protocols implementations

2. Various fault scenarios

6

3. Configurable workload

4. Statistics monitoring

BFT-Bench: A Framework to Evaluate BFT Protocols

Page 7: BFT-Bench: A Framework to Evaluate BFT Protocols · DivyaGupta *, Lucas Perronne , Sara Bouchenak + *Univ. Grenoble Alpes, LIG Grenoble, France, +Univ. Lyon, INSA Lyon, LIRIS, Lyon,

Network flooding

WorkloadNumber of clients: 10Request size: 4KbComputational time: 30 ms

FaultloadType of fault: Network FloodingFault trigger time: 300sFaulty node: Non-primary replicaMessage size: 4Kb

7 BFT-Bench: A Framework to Evaluate BFT Protocols

Page 8: BFT-Bench: A Framework to Evaluate BFT Protocols · DivyaGupta *, Lucas Perronne , Sara Bouchenak + *Univ. Grenoble Alpes, LIG Grenoble, France, +Univ. Lyon, INSA Lyon, LIRIS, Lyon,

Replica Crash

WorkloadNumber of clients: 5Request size: 4KbComputational time: 10 ms

FaultloadType of fault: Replica CrashFault trigger time: 300sFaulty node: Primary replica

8 BFT-Bench: A Framework to Evaluate BFT Protocols

Page 9: BFT-Bench: A Framework to Evaluate BFT Protocols · DivyaGupta *, Lucas Perronne , Sara Bouchenak + *Univ. Grenoble Alpes, LIG Grenoble, France, +Univ. Lyon, INSA Lyon, LIRIS, Lyon,

Message delay

WorkloadNumber of clients: 2Request size: 4KbComputational time: 100 μs

FaultloadType of fault: Message delayFault trigger time: 300sFaulty node: Primary replicaDelay time: 100 ms

9 BFT-Bench: A Framework to Evaluate BFT Protocols

Page 10: BFT-Bench: A Framework to Evaluate BFT Protocols · DivyaGupta *, Lucas Perronne , Sara Bouchenak + *Univ. Grenoble Alpes, LIG Grenoble, France, +Univ. Lyon, INSA Lyon, LIRIS, Lyon,

Conclusion & Perspectives

� BFT-bench includes several state-of-the-art BFT protocols

� It implements many faulty behaviors on different workloads

Perspectives

• Additional Protocols

10

Additional Protocols

• More faulty scenarios

• https://bftbench.gforge.liris.cnrs.fr/

BFT-Bench: A Framework to Evaluate BFT Protocols