A Faster P Solution for the Byzantine Agreement Problem Michael J. - - PowerPoint PPT Presentation

a faster p solution for the byzantine agreement problem
SMART_READER_LITE
LIVE PREVIEW

A Faster P Solution for the Byzantine Agreement Problem Michael J. - - PowerPoint PPT Presentation

Introduction Byzantine agreement P modules Faster Byzantine solution Conclusions A Faster P Solution for the Byzantine Agreement Problem Michael J. Dinneen, Yun-Bum Kim, and Radu Nicolescu Department of Computer Science, University of


slide-1
SLIDE 1

Introduction Byzantine agreement P modules Faster Byzantine solution Conclusions

A Faster P Solution for the Byzantine Agreement Problem

Michael J. Dinneen, Yun-Bum Kim, and Radu Nicolescu Department of Computer Science, University of Auckland, Auckland, New Zealand CMC11, Jena, Germany 23-27 August 2010

1 / 20

slide-2
SLIDE 2

Introduction Byzantine agreement P modules Faster Byzantine solution Conclusions

1 Introduction 2 Byzantine agreement 3 P modules 4 Faster Byzantine solution 5 Conclusions

2 / 20

slide-3
SLIDE 3

Introduction Byzantine agreement P modules Faster Byzantine solution Conclusions

Quiz

  • What is the most celebrated theoretical result in distributed

computing?

  • FLP : Fischer, Lynch, and Paterson (1985)
  • Impossibility of consensus in asynchronous distributed

systems, if there is even one faulty process.

  • Proven for both message passing and shared memory

asynchronous systems.

  • Synchronous systems admit solutions iff N ≥ 3F + 1.

3 / 20

slide-4
SLIDE 4

Introduction Byzantine agreement P modules Faster Byzantine solution Conclusions

Quiz

  • What is the most celebrated theoretical result in distributed

computing?

  • FLP : Fischer, Lynch, and Paterson (1985)
  • Impossibility of consensus in asynchronous distributed

systems, if there is even one faulty process.

  • Proven for both message passing and shared memory

asynchronous systems.

  • Synchronous systems admit solutions iff N ≥ 3F + 1.

3 / 20

slide-5
SLIDE 5

Introduction Byzantine agreement P modules Faster Byzantine solution Conclusions

Quiz

  • What is the most celebrated theoretical result in distributed

computing?

  • FLP : Fischer, Lynch, and Paterson (1985)
  • Impossibility of consensus in asynchronous distributed

systems, if there is even one faulty process.

  • Proven for both message passing and shared memory

asynchronous systems.

  • Synchronous systems admit solutions iff N ≥ 3F + 1.

3 / 20

slide-6
SLIDE 6

Introduction Byzantine agreement P modules Faster Byzantine solution Conclusions

Quiz

  • What is the most celebrated theoretical result in distributed

computing?

  • FLP : Fischer, Lynch, and Paterson (1985)
  • Impossibility of consensus in asynchronous distributed

systems, if there is even one faulty process.

  • Proven for both message passing and shared memory

asynchronous systems.

  • Synchronous systems admit solutions iff N ≥ 3F + 1.

3 / 20

slide-7
SLIDE 7

Introduction Byzantine agreement P modules Faster Byzantine solution Conclusions

Quiz

  • What is the most celebrated theoretical result in distributed

computing?

  • FLP : Fischer, Lynch, and Paterson (1985)
  • Impossibility of consensus in asynchronous distributed

systems, if there is even one faulty process.

  • Proven for both message passing and shared memory

asynchronous systems.

  • Synchronous systems admit solutions iff N ≥ 3F + 1.

3 / 20

slide-8
SLIDE 8

Introduction Byzantine agreement P modules Faster Byzantine solution Conclusions

Quiz

  • What is the most celebrated theoretical result in distributed

computing?

  • FLP : Fischer, Lynch, and Paterson (1985)
  • Impossibility of consensus in asynchronous distributed

systems, if there is even one faulty process.

  • Proven for both message passing and shared memory

asynchronous systems.

  • Synchronous systems admit solutions iff N ≥ 3F + 1.

3 / 20

slide-9
SLIDE 9

Introduction Byzantine agreement P modules Faster Byzantine solution Conclusions

Motivation

  • P systems are a highly parallel and distributed computing

model.

  • Can we apply P systems to solve complex problems from

distributed computing, such as the Byzantine agreement?

  • Will the the P system solution compare favorably with the

classical solution: performance, resources, expressiveness.

  • Can we provide feedback on P systems programmability

(features required or beneficial in modeling complex systems)?

  • Can we formulate a native P systems solution?

4 / 20

slide-10
SLIDE 10

Introduction Byzantine agreement P modules Faster Byzantine solution Conclusions

Motivation

  • P systems are a highly parallel and distributed computing

model.

  • Can we apply P systems to solve complex problems from

distributed computing, such as the Byzantine agreement?

  • Will the the P system solution compare favorably with the

classical solution: performance, resources, expressiveness.

  • Can we provide feedback on P systems programmability

(features required or beneficial in modeling complex systems)?

  • Can we formulate a native P systems solution?

4 / 20

slide-11
SLIDE 11

Introduction Byzantine agreement P modules Faster Byzantine solution Conclusions

Motivation

  • P systems are a highly parallel and distributed computing

model.

  • Can we apply P systems to solve complex problems from

distributed computing, such as the Byzantine agreement?

  • Will the the P system solution compare favorably with the

classical solution: performance, resources, expressiveness.

  • Can we provide feedback on P systems programmability

(features required or beneficial in modeling complex systems)?

  • Can we formulate a native P systems solution?

4 / 20

slide-12
SLIDE 12

Introduction Byzantine agreement P modules Faster Byzantine solution Conclusions

Motivation

  • P systems are a highly parallel and distributed computing

model.

  • Can we apply P systems to solve complex problems from

distributed computing, such as the Byzantine agreement?

  • Will the the P system solution compare favorably with the

classical solution: performance, resources, expressiveness.

  • Can we provide feedback on P systems programmability

(features required or beneficial in modeling complex systems)?

  • Can we formulate a native P systems solution?

4 / 20

slide-13
SLIDE 13

Introduction Byzantine agreement P modules Faster Byzantine solution Conclusions

Motivation

  • P systems are a highly parallel and distributed computing

model.

  • Can we apply P systems to solve complex problems from

distributed computing, such as the Byzantine agreement?

  • Will the the P system solution compare favorably with the

classical solution: performance, resources, expressiveness.

  • Can we provide feedback on P systems programmability

(features required or beneficial in modeling complex systems)?

  • Can we formulate a native P systems solution?

4 / 20

slide-14
SLIDE 14

Introduction Byzantine agreement P modules Faster Byzantine solution Conclusions

Our work—Bird’s eye view

  • We have earlier [JLAP, 2010] proposed a first P solution,

based on EIG trees.

  • Here [CMC11, 2010], we propose an improved solution, which

uses less cells and runs faster.

  • The following table compares [CMC11, 2010] with [JLAP,

2010] (typically, L = ⌈N/3⌉). Criterion JLAP-2010 CMC11-2010 # P steps 9L + 6 6L + 1 # cells per process 2N + 1 + O(N!) 3N + 1 type of channels duplex and simplex duplex

  • For comparison, the standard EIG solution runs in L

messaging steps plus 1 more big evaluation step.

5 / 20

slide-15
SLIDE 15

Introduction Byzantine agreement P modules Faster Byzantine solution Conclusions

Our work—Bird’s eye view

  • We have earlier [JLAP, 2010] proposed a first P solution,

based on EIG trees.

  • Here [CMC11, 2010], we propose an improved solution, which

uses less cells and runs faster.

  • The following table compares [CMC11, 2010] with [JLAP,

2010] (typically, L = ⌈N/3⌉). Criterion JLAP-2010 CMC11-2010 # P steps 9L + 6 6L + 1 # cells per process 2N + 1 + O(N!) 3N + 1 type of channels duplex and simplex duplex

  • For comparison, the standard EIG solution runs in L

messaging steps plus 1 more big evaluation step.

5 / 20

slide-16
SLIDE 16

Introduction Byzantine agreement P modules Faster Byzantine solution Conclusions

Our work—Bird’s eye view

  • We have earlier [JLAP, 2010] proposed a first P solution,

based on EIG trees.

  • Here [CMC11, 2010], we propose an improved solution, which

uses less cells and runs faster.

  • The following table compares [CMC11, 2010] with [JLAP,

2010] (typically, L = ⌈N/3⌉). Criterion JLAP-2010 CMC11-2010 # P steps 9L + 6 6L + 1 # cells per process 2N + 1 + O(N!) 3N + 1 type of channels duplex and simplex duplex

  • For comparison, the standard EIG solution runs in L

messaging steps plus 1 more big evaluation step.

5 / 20

slide-17
SLIDE 17

Introduction Byzantine agreement P modules Faster Byzantine solution Conclusions

Our work—Bird’s eye view

  • We have earlier [JLAP, 2010] proposed a first P solution,

based on EIG trees.

  • Here [CMC11, 2010], we propose an improved solution, which

uses less cells and runs faster.

  • The following table compares [CMC11, 2010] with [JLAP,

2010] (typically, L = ⌈N/3⌉). Criterion JLAP-2010 CMC11-2010 # P steps 9L + 6 6L + 1 # cells per process 2N + 1 + O(N!) 3N + 1 type of channels duplex and simplex duplex

  • For comparison, the standard EIG solution runs in L

messaging steps plus 1 more big evaluation step.

5 / 20

slide-18
SLIDE 18

Introduction Byzantine agreement P modules Faster Byzantine solution Conclusions

Our work—Bird’s eye view

  • We have earlier [JLAP, 2010] proposed a first P solution,

based on EIG trees.

  • Here [CMC11, 2010], we propose an improved solution, which

uses less cells and runs faster.

  • The following table compares [CMC11, 2010] with [JLAP,

2010] (typically, L = ⌈N/3⌉). Criterion JLAP-2010 CMC11-2010 # P steps 9L + 6 6L + 1 # cells per process 2N + 1 + O(N!) 3N + 1 type of channels duplex and simplex duplex

  • For comparison, the standard EIG solution runs in L

messaging steps plus 1 more big evaluation step.

5 / 20

slide-19
SLIDE 19

Introduction Byzantine agreement P modules Faster Byzantine solution Conclusions

A sample Byzantine scenario, N = 4

Complete graph, synchronous model. 1 2 4 3

1 2 3 4 Faulty Round 1 messages Round 2 messages Final decision Initial choice 1 1 Yes No No No (λ, x) (λ, 0) (λ, 1) (λ, 1) (1, 0)(2, 0) (3, y)(4, 1) (1, 0)(2, 0) (3, 1)(4, 1) (1, 0)(2, 0) (3, 1)(4, 1) (1, 1)(2, 0) (3, 1)(4, 1) ? Process

6 / 20

slide-20
SLIDE 20

Introduction Byzantine agreement P modules Faster Byzantine solution Conclusions

EIG messaging phase

2 3 4 1 3 4 1 2 4 1 2 3 1 2 3 4 λ

1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

1 2 4 3

1

λ λ λ

7 / 20

slide-21
SLIDE 21

Introduction Byzantine agreement P modules Faster Byzantine solution Conclusions

EIG messaging phase

2 3 4 1 3 4 1 2 4 1 2 3 1 2 3 4 λ

1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

1 2 4 3

1

λ λ λ 1 1 1 1 1 1 1 1

7 / 20

slide-22
SLIDE 22

Introduction Byzantine agreement P modules Faster Byzantine solution Conclusions

EIG messaging phase

2 3 4 1 3 4 1 2 4 1 2 3 1 2 3 4 λ

1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

1 2 4 3

1

λ λ λ

7 / 20

slide-23
SLIDE 23

Introduction Byzantine agreement P modules Faster Byzantine solution Conclusions

EIG messaging phase

2 3 4 1 3 4 1 2 4 1 2 3 1 2 3 4 λ

1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

1 2 4 3

1

λ λ λ α α α α α α α α α α α α α α α α α = (1:0)(2:0)(3:1)(4:1)

7 / 20

slide-24
SLIDE 24

Introduction Byzantine agreement P modules Faster Byzantine solution Conclusions

EIG messaging phase

2 3 4 1 3 4 1 2 4 1 2 3 1 2 3 4 λ

1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

1 2 4 3

1

λ λ λ

7 / 20

slide-25
SLIDE 25

Introduction Byzantine agreement P modules Faster Byzantine solution Conclusions

EIG evaluation phase

2 3 4 1 3 4 1 2 4 1 2 3 1 2 3 4 λ

1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

1 2 4 3

1

λ λ λ

8 / 20

slide-26
SLIDE 26

Introduction Byzantine agreement P modules Faster Byzantine solution Conclusions

EIG evaluation phase

2 3 4 1 3 4 1 2 4 1 2 3 1 2 3 4 λ

1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

1 2 4 3

1

λ λ λ

8 / 20

slide-27
SLIDE 27

Introduction Byzantine agreement P modules Faster Byzantine solution Conclusions

EIG evaluation phase

2 3 4 1 3 4 1 2 4 1 2 3 1 2 3 4 λ

1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

1 2 4 3

1

λ λ λ

8 / 20

slide-28
SLIDE 28

Introduction Byzantine agreement P modules Faster Byzantine solution Conclusions

EIG evaluation phase

2 3 4 1 3 4 1 2 4 1 2 3 1 2 3 4 λ

1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

1 2 4 3

1

λ λ λ

8 / 20

slide-29
SLIDE 29

Introduction Byzantine agreement P modules Faster Byzantine solution Conclusions

P modules

  • To support our complex design, in [JLAP-2010] we have

proposed a new modular framework, called P modules, that supports generic objects, encapsulation, information hiding and recursive composition.

  • In [CMC11-2010], we extend our previous proposal, with

external definitions and external references, which support cleaner and safer module interconnection facilities.

9 / 20

slide-30
SLIDE 30

Introduction Byzantine agreement P modules Faster Byzantine solution Conclusions

P modules

  • To support our complex design, in [JLAP-2010] we have

proposed a new modular framework, called P modules, that supports generic objects, encapsulation, information hiding and recursive composition.

  • In [CMC11-2010], we extend our previous proposal, with

external definitions and external references, which support cleaner and safer module interconnection facilities.

9 / 20

slide-31
SLIDE 31

Introduction Byzantine agreement P modules Faster Byzantine solution Conclusions

P modules

  • To support our complex design, in [JLAP-2010] we have

proposed a new modular framework, called P modules, that supports generic objects, encapsulation, information hiding and recursive composition.

  • In [CMC11-2010], we extend our previous proposal, with

external definitions and external references, which support cleaner and safer module interconnection facilities.

9 / 20

slide-32
SLIDE 32

Introduction Byzantine agreement P modules Faster Byzantine solution Conclusions

P Module—Generic parameters: ref, def, sym

d1 d2 r1 r2 d1 ∈ D↓ (external def↓) d2 ∈ D↑ (external def↑) r1 ∈ R↓ (external ref↓) r2 ∈ R↑ (external ref↑)

  • ref↓ and ref↑ are instantiated when this module connects to

another module

  • def↓ and def↑ are instantiated when another module

connects to this module

  • (not shown here) sym are instantiated to actual objects, as

needed

10 / 20

slide-33
SLIDE 33

Introduction Byzantine agreement P modules Faster Byzantine solution Conclusions

P Module—Generic parameters: ref, def, sym

d1 d2 r1 r2 d1 ∈ D↓ (external def↓) d2 ∈ D↑ (external def↑) r1 ∈ R↓ (external ref↓) r2 ∈ R↑ (external ref↑)

  • ref↓ and ref↑ are instantiated when this module connects to

another module

  • def↓ and def↑ are instantiated when another module

connects to this module

  • (not shown here) sym are instantiated to actual objects, as

needed

10 / 20

slide-34
SLIDE 34

Introduction Byzantine agreement P modules Faster Byzantine solution Conclusions

P Module—Generic parameters: ref, def, sym

d1 d2 r1 r2 d1 ∈ D↓ (external def↓) d2 ∈ D↑ (external def↑) r1 ∈ R↓ (external ref↓) r2 ∈ R↑ (external ref↑)

  • ref↓ and ref↑ are instantiated when this module connects to

another module

  • def↓ and def↑ are instantiated when another module

connects to this module

  • (not shown here) sym are instantiated to actual objects, as

needed

10 / 20

slide-35
SLIDE 35

Introduction Byzantine agreement P modules Faster Byzantine solution Conclusions

P Module—Generic parameters: ref, def, sym

d1 d2 r1 r2 d1 ∈ D↓ (external def↓) d2 ∈ D↑ (external def↑) r1 ∈ R↓ (external ref↓) r2 ∈ R↑ (external ref↑)

  • ref↓ and ref↑ are instantiated when this module connects to

another module

  • def↓ and def↑ are instantiated when another module

connects to this module

  • (not shown here) sym are instantiated to actual objects, as

needed

10 / 20

slide-36
SLIDE 36

Introduction Byzantine agreement P modules Faster Byzantine solution Conclusions

P Module—Generic parameters: ref, def, sym

d1 d2 r1 r2 d1 ∈ D↓ (external def↓) d2 ∈ D↑ (external def↑) r1 ∈ R↓ (external ref↓) r2 ∈ R↑ (external ref↑)

  • ref↓ and ref↑ are instantiated when this module connects to

another module

  • def↓ and def↑ are instantiated when another module

connects to this module

  • (not shown here) sym are instantiated to actual objects, as

needed

10 / 20

slide-37
SLIDE 37

Introduction Byzantine agreement P modules Faster Byzantine solution Conclusions

Example—Modular composition of a GCD system

x ≥ y x ← x − y x = 0 z ← x, x ← y, y ← z N1 Y4 Π1 Π3 Π2 Π4 Π5 Π6 σ1 σ3 σ4 σ2 Z3 Z2 Y1 N4

11 / 20

slide-38
SLIDE 38

Introduction Byzantine agreement P modules Faster Byzantine solution Conclusions

Example—Modular composition of a GCD system

x ≥ y x ← x − y x = 0 z ← x, x ← y, y ← z N1 Y4 Π1 Π3 Π2 Π4 Π5 Π6 σ1 σ3 σ4 σ2 Z5 = Z3 Z2 Y1 N4

11 / 20

slide-39
SLIDE 39

Introduction Byzantine agreement P modules Faster Byzantine solution Conclusions

Example—Modular composition of a GCD system

x ≥ y x ← x − y x = 0 z ← x, x ← y, y ← z N1 Z6 = Y4 Π1 Π3 Π2 Π4 Π5 Π6 σ1 σ3 σ4 σ2 Z5 = Z3 Z2 Y1 N4

11 / 20

slide-40
SLIDE 40

Introduction Byzantine agreement P modules Faster Byzantine solution Conclusions

P module definition

Definition (P module) A P module is a system Π = (O, K, δ, S, D↑, D↓, R↑, R↓), where:

  • O is a finite non-empty alphabet of objects;
  • K is a finite set of cells;
  • δ is a subset of (K × K) ∪ (K × R↓) ∪ (R↑ × K), i.e. a set of

parent-child structural arcs, representing duplex or simplex communication channels, between two existing cells or between an existing cell and an external reference;

  • S is a finite alphabet, disjoint of O, of generic sym objects;
  • D↑ is a subset of K, representing def↑ definitions;
  • D↓ is a subset of K, representing def↓ definitions;
  • R↑ is a finite set, disjoint of K, representing ref↑ references;
  • R↓ is a finite set, disjoint of K, representing ref↓ references.

...

12 / 20

slide-41
SLIDE 41

Introduction Byzantine agreement P modules Faster Byzantine solution Conclusions

P module rules

  • Rules are applied in a weak-priority order, ensuring a kind of

preemption (which we believe essential for complex systems).

  • Typical cases, for a cell σ, in state s and containing aa:
  • s a →min s′ b (c)↑repl can be applied once
  • s a →max s′ b (c)↑repl can be applied twice
  • s a →min s′ b (c)↓σ′ (where σ′ ∈ K) can be applied once
  • s a →max s′ b (c)↓σ′ (where σ′ ∈ K) can be applied twice

13 / 20

slide-42
SLIDE 42

Introduction Byzantine agreement P modules Faster Byzantine solution Conclusions

P module rules

  • Rules are applied in a weak-priority order, ensuring a kind of

preemption (which we believe essential for complex systems).

  • Typical cases, for a cell σ, in state s and containing aa:
  • s a →min s′ b (c)↑repl can be applied once
  • s a →max s′ b (c)↑repl can be applied twice
  • s a →min s′ b (c)↓σ′ (where σ′ ∈ K) can be applied once
  • s a →max s′ b (c)↓σ′ (where σ′ ∈ K) can be applied twice

13 / 20

slide-43
SLIDE 43

Introduction Byzantine agreement P modules Faster Byzantine solution Conclusions

P module rules

  • Rules are applied in a weak-priority order, ensuring a kind of

preemption (which we believe essential for complex systems).

  • Typical cases, for a cell σ, in state s and containing aa:
  • s a →min s′ b (c)↑repl can be applied once
  • s a →max s′ b (c)↑repl can be applied twice
  • s a →min s′ b (c)↓σ′ (where σ′ ∈ K) can be applied once
  • s a →max s′ b (c)↓σ′ (where σ′ ∈ K) can be applied twice

13 / 20

slide-44
SLIDE 44

Introduction Byzantine agreement P modules Faster Byzantine solution Conclusions

Faster Byzantine solution

  • Each non-faulty process h, h ∈ [1, N], is modelled by a

“process” module, Πh, which is a combination of N + 1 modules:

  • one instance of the “main” module, Ψh, which provides the

main EIG functionality;

  • plus one instance of the “firewall” communication module,

Γhf , for each process f , f ∈ [1, N], which takes care of the communication between its “home” process h and its “friend-or-foe” process f .

  • Compared to the previous solution, this revised P solution

uses fewer cells and rules and only duplex channels.

14 / 20

slide-45
SLIDE 45

Introduction Byzantine agreement P modules Faster Byzantine solution Conclusions

Faster Byzantine solution

  • Each non-faulty process h, h ∈ [1, N], is modelled by a

“process” module, Πh, which is a combination of N + 1 modules:

  • one instance of the “main” module, Ψh, which provides the

main EIG functionality;

  • plus one instance of the “firewall” communication module,

Γhf , for each process f , f ∈ [1, N], which takes care of the communication between its “home” process h and its “friend-or-foe” process f .

  • Compared to the previous solution, this revised P solution

uses fewer cells and rules and only duplex channels.

14 / 20

slide-46
SLIDE 46

Introduction Byzantine agreement P modules Faster Byzantine solution Conclusions

Faster Byzantine solution

  • Each non-faulty process h, h ∈ [1, N], is modelled by a

“process” module, Πh, which is a combination of N + 1 modules:

  • one instance of the “main” module, Ψh, which provides the

main EIG functionality;

  • plus one instance of the “firewall” communication module,

Γhf , for each process f , f ∈ [1, N], which takes care of the communication between its “home” process h and its “friend-or-foe” process f .

  • Compared to the previous solution, this revised P solution

uses fewer cells and rules and only duplex channels.

14 / 20

slide-47
SLIDE 47

Introduction Byzantine agreement P modules Faster Byzantine solution Conclusions

Faster Byzantine solution

  • Each non-faulty process h, h ∈ [1, N], is modelled by a

“process” module, Πh, which is a combination of N + 1 modules:

  • one instance of the “main” module, Ψh, which provides the

main EIG functionality;

  • plus one instance of the “firewall” communication module,

Γhf , for each process f , f ∈ [1, N], which takes care of the communication between its “home” process h and its “friend-or-foe” process f .

  • Compared to the previous solution, this revised P solution

uses fewer cells and rules and only duplex channels.

14 / 20

slide-48
SLIDE 48

Introduction Byzantine agreement P modules Faster Byzantine solution Conclusions

Faster Byzantine solution

  • Each non-faulty process h, h ∈ [1, N], is modelled by a

“process” module, Πh, which is a combination of N + 1 modules:

  • one instance of the “main” module, Ψh, which provides the

main EIG functionality;

  • plus one instance of the “firewall” communication module,

Γhf , for each process f , f ∈ [1, N], which takes care of the communication between its “home” process h and its “friend-or-foe” process f .

  • Compared to the previous solution, this revised P solution

uses fewer cells and rules and only duplex channels.

14 / 20

slide-49
SLIDE 49

Introduction Byzantine agreement P modules Faster Byzantine solution Conclusions

Elementary P modules

Γhf

γ′

hf

γhf γ′′

hf

γ′

fh

Ψh ψh

(a) (b)

ψh

  • (a) “main” module (EIG)
  • (b) “firewall” module (communication)

15 / 20

slide-50
SLIDE 50

Introduction Byzantine agreement P modules Faster Byzantine solution Conclusions

Modular composition of the Byzantine scenario N = 4

ψ2

Γ21 Π2

Ψ2

Γ22 Γ23 Γ24

γ′

24

γ24 γ′

23

γ23 γ′

22

γ22 γ′

21

γ21 γ′′

24

γ′′

23

γ′′

22

γ′′

21

ψ3

Γ34 Π3

Ψ3

Γ33 Γ32 Γ31

γ′

31

γ31 γ′

32

γ32 γ′

33

γ33 γ′

34

γ34 γ′′

31

γ′′

32

γ′′

33

γ′′

34

γ′

12

γ′

13

γ′

22

γ′

42

γ′

23

γ′

33

γ′

43

γ′

32

16 / 20

slide-51
SLIDE 51

Introduction Byzantine agreement P modules Faster Byzantine solution Conclusions

Modular composition of the Byzantine scenario N = 4

ψ2

Γ21 Π2

Ψ2

Γ22 Γ23 Γ24

γ′

24

γ24 γ′

23

γ23 γ′

22

γ22 γ′

21

γ21 γ′′

24

γ′′

23

γ′′

22

γ′′

21

ψ3

Γ34 Π3

Ψ3

Γ33 Γ32 Γ31

γ′

31

γ31 γ′

32

γ32 γ′

33

γ33 γ′

34

γ34 γ′′

31

γ′′

32

γ′′

33

γ′′

34

γ′

12

γ′

13

γ′

22

γ′

42

γ′

23

γ′

33

γ′

43

γ′

32

16 / 20

slide-52
SLIDE 52

Introduction Byzantine agreement P modules Faster Byzantine solution Conclusions

Modular composition of the Byzantine scenario N = 4

ψ2

Γ21 Π2

Ψ2

Γ22 Γ23 Γ24

γ′

24

γ24 γ′

23

γ23 γ′

22

γ22 γ′

21

γ21 γ′′

24

γ′′

23

γ′′

22

γ′′

21

ψ3

Γ34 Π3

Ψ3

Γ33 Γ32 Γ31

γ′

31

γ31 γ′

32

γ32 γ′

33

γ33 γ′

34

γ34 γ′′

31

γ′′

32

γ′′

33

γ′′

34

γ′

12

γ′

13

γ′

22

γ′

42

γ′

23

γ′

33

γ′

43

γ′

32

16 / 20

slide-53
SLIDE 53

Introduction Byzantine agreement P modules Faster Byzantine solution Conclusions

Conclusions

  • We proposed an improved generic version of P modules, an

extensible framework for recursive composition of P systems,

  • and used it to provide a leaner and faster P solution for the

Byzantine agreement algorithm, based on EIG trees.

  • Our revised P solution uses only duplex channels and fewer

cells,

  • while improving overall running time from 9L + 6 to 6L + 1,

where L is the number of messaging rounds.

  • Solutions have been extensively verified on our own simulator.

17 / 20

slide-54
SLIDE 54

Introduction Byzantine agreement P modules Faster Byzantine solution Conclusions

Conclusions

  • We proposed an improved generic version of P modules, an

extensible framework for recursive composition of P systems,

  • and used it to provide a leaner and faster P solution for the

Byzantine agreement algorithm, based on EIG trees.

  • Our revised P solution uses only duplex channels and fewer

cells,

  • while improving overall running time from 9L + 6 to 6L + 1,

where L is the number of messaging rounds.

  • Solutions have been extensively verified on our own simulator.

17 / 20

slide-55
SLIDE 55

Introduction Byzantine agreement P modules Faster Byzantine solution Conclusions

Conclusions

  • We proposed an improved generic version of P modules, an

extensible framework for recursive composition of P systems,

  • and used it to provide a leaner and faster P solution for the

Byzantine agreement algorithm, based on EIG trees.

  • Our revised P solution uses only duplex channels and fewer

cells,

  • while improving overall running time from 9L + 6 to 6L + 1,

where L is the number of messaging rounds.

  • Solutions have been extensively verified on our own simulator.

17 / 20

slide-56
SLIDE 56

Introduction Byzantine agreement P modules Faster Byzantine solution Conclusions

Conclusions

  • We proposed an improved generic version of P modules, an

extensible framework for recursive composition of P systems,

  • and used it to provide a leaner and faster P solution for the

Byzantine agreement algorithm, based on EIG trees.

  • Our revised P solution uses only duplex channels and fewer

cells,

  • while improving overall running time from 9L + 6 to 6L + 1,

where L is the number of messaging rounds.

  • Solutions have been extensively verified on our own simulator.

17 / 20

slide-57
SLIDE 57

Introduction Byzantine agreement P modules Faster Byzantine solution Conclusions

Conclusions

  • We proposed an improved generic version of P modules, an

extensible framework for recursive composition of P systems,

  • and used it to provide a leaner and faster P solution for the

Byzantine agreement algorithm, based on EIG trees.

  • Our revised P solution uses only duplex channels and fewer

cells,

  • while improving overall running time from 9L + 6 to 6L + 1,

where L is the number of messaging rounds.

  • Solutions have been extensively verified on our own simulator.

17 / 20

slide-58
SLIDE 58

Introduction Byzantine agreement P modules Faster Byzantine solution Conclusions

Conclusions

  • We proposed an improved generic version of P modules, an

extensible framework for recursive composition of P systems,

  • and used it to provide a leaner and faster P solution for the

Byzantine agreement algorithm, based on EIG trees.

  • Our revised P solution uses only duplex channels and fewer

cells,

  • while improving overall running time from 9L + 6 to 6L + 1,

where L is the number of messaging rounds.

  • Solutions have been extensively verified on our own simulator.

17 / 20

slide-59
SLIDE 59

Introduction Byzantine agreement P modules Faster Byzantine solution Conclusions

Solved open problem

  • Since this paper was accepted, we indirectly answered one of

the mentioned open problems.

  • We can extend our P system solution to cover 2F + 1

connected graphs, but not necessarily complete.

  • Our MeCBIC paper offers efficient P system solutions to two

fundamental problems in graph theory: finding the maximum number of node- and edge-disjoint paths between a source node and target node.

18 / 20

slide-60
SLIDE 60

Introduction Byzantine agreement P modules Faster Byzantine solution Conclusions

Solved open problem

  • Since this paper was accepted, we indirectly answered one of

the mentioned open problems.

  • We can extend our P system solution to cover 2F + 1

connected graphs, but not necessarily complete.

  • Our MeCBIC paper offers efficient P system solutions to two

fundamental problems in graph theory: finding the maximum number of node- and edge-disjoint paths between a source node and target node.

18 / 20

slide-61
SLIDE 61

Introduction Byzantine agreement P modules Faster Byzantine solution Conclusions

Solved open problem

  • Since this paper was accepted, we indirectly answered one of

the mentioned open problems.

  • We can extend our P system solution to cover 2F + 1

connected graphs, but not necessarily complete.

  • Our MeCBIC paper offers efficient P system solutions to two

fundamental problems in graph theory: finding the maximum number of node- and edge-disjoint paths between a source node and target node.

18 / 20

slide-62
SLIDE 62

Introduction Byzantine agreement P modules Faster Byzantine solution Conclusions

Solved open problem

  • Since this paper was accepted, we indirectly answered one of

the mentioned open problems.

  • We can extend our P system solution to cover 2F + 1

connected graphs, but not necessarily complete.

  • Our MeCBIC paper offers efficient P system solutions to two

fundamental problems in graph theory: finding the maximum number of node- and edge-disjoint paths between a source node and target node.

18 / 20

slide-63
SLIDE 63

Introduction Byzantine agreement P modules Faster Byzantine solution Conclusions

Open problems

  • Is it possible to solve the Byzantine agreement problem using

fewer or even a fixed number of resources (objects, rules)?

  • Is it possible to offer an efficient solution with a better

message complexity (currently exponential)?

  • Is it possible to provide a “native” P system version, where

each process is modelled by just one cell (without “firewalls”)?

  • Is it possible to extend the P module framework to support

timing requirements and interactivity (possibly endless)?

  • What extensions would be required and how would they fit

into the P systems framework?

19 / 20

slide-64
SLIDE 64

Introduction Byzantine agreement P modules Faster Byzantine solution Conclusions

Open problems

  • Is it possible to solve the Byzantine agreement problem using

fewer or even a fixed number of resources (objects, rules)?

  • Is it possible to offer an efficient solution with a better

message complexity (currently exponential)?

  • Is it possible to provide a “native” P system version, where

each process is modelled by just one cell (without “firewalls”)?

  • Is it possible to extend the P module framework to support

timing requirements and interactivity (possibly endless)?

  • What extensions would be required and how would they fit

into the P systems framework?

19 / 20

slide-65
SLIDE 65

Introduction Byzantine agreement P modules Faster Byzantine solution Conclusions

Open problems

  • Is it possible to solve the Byzantine agreement problem using

fewer or even a fixed number of resources (objects, rules)?

  • Is it possible to offer an efficient solution with a better

message complexity (currently exponential)?

  • Is it possible to provide a “native” P system version, where

each process is modelled by just one cell (without “firewalls”)?

  • Is it possible to extend the P module framework to support

timing requirements and interactivity (possibly endless)?

  • What extensions would be required and how would they fit

into the P systems framework?

19 / 20

slide-66
SLIDE 66

Introduction Byzantine agreement P modules Faster Byzantine solution Conclusions

Open problems

  • Is it possible to solve the Byzantine agreement problem using

fewer or even a fixed number of resources (objects, rules)?

  • Is it possible to offer an efficient solution with a better

message complexity (currently exponential)?

  • Is it possible to provide a “native” P system version, where

each process is modelled by just one cell (without “firewalls”)?

  • Is it possible to extend the P module framework to support

timing requirements and interactivity (possibly endless)?

  • What extensions would be required and how would they fit

into the P systems framework?

19 / 20

slide-67
SLIDE 67

Introduction Byzantine agreement P modules Faster Byzantine solution Conclusions

Open problems

  • Is it possible to solve the Byzantine agreement problem using

fewer or even a fixed number of resources (objects, rules)?

  • Is it possible to offer an efficient solution with a better

message complexity (currently exponential)?

  • Is it possible to provide a “native” P system version, where

each process is modelled by just one cell (without “firewalls”)?

  • Is it possible to extend the P module framework to support

timing requirements and interactivity (possibly endless)?

  • What extensions would be required and how would they fit

into the P systems framework?

19 / 20

slide-68
SLIDE 68

Introduction Byzantine agreement P modules Faster Byzantine solution Conclusions

Open problems

  • Is it possible to solve the Byzantine agreement problem using

fewer or even a fixed number of resources (objects, rules)?

  • Is it possible to offer an efficient solution with a better

message complexity (currently exponential)?

  • Is it possible to provide a “native” P system version, where

each process is modelled by just one cell (without “firewalls”)?

  • Is it possible to extend the P module framework to support

timing requirements and interactivity (possibly endless)?

  • What extensions would be required and how would they fit

into the P systems framework?

19 / 20

slide-69
SLIDE 69

Introduction Byzantine agreement P modules Faster Byzantine solution Conclusions

Thank you

Thank you for your attention!

20 / 20