Eden : a Consensus Based Group Communication System Fr ed eric - - PowerPoint PPT Presentation

eden a consensus based group communication system
SMART_READER_LITE
LIVE PREVIEW

Eden : a Consensus Based Group Communication System Fr ed eric - - PowerPoint PPT Presentation

Eden : a Consensus Based Group Communication System Fr ed eric Tronel ftronel@irisa.fr IRISA - INRIA Rennes Campus de Beaulieu Rennes, France Eden : a Consensus Based Group Communication System p.1/ ?? Eden Overview Eden : a


slide-1
SLIDE 1

Eden : a Consensus Based Group Communication System

Fr´ ed´ eric Tronel

ftronel@irisa.fr

IRISA - INRIA Rennes Campus de Beaulieu Rennes, France

Eden : a Consensus Based Group Communication System – p.1/??

slide-2
SLIDE 2

Eden Overview

Eden : a Consensus Based Group Communication System – p.2/??

slide-3
SLIDE 3

Eden Overview

Eden is a Group Communication Services (GCS)

Eden : a Consensus Based Group Communication System – p.2/??

slide-4
SLIDE 4

Eden Overview

Eden is a Group Communication Services (GCS) It has been developed with fault-tolerance in mind, and to be integrated/coupled with a commercial ORB.

Eden : a Consensus Based Group Communication System – p.2/??

slide-5
SLIDE 5

Eden Overview

Eden is a Group Communication Services (GCS) It has been developed with fault-tolerance in mind, and to be integrated/coupled with a commercial ORB. It has been developed using Java 1.2, and is divided into two main packages :

Eden : a Consensus Based Group Communication System – p.2/??

slide-6
SLIDE 6

Eden Overview

Eden is a Group Communication Services (GCS) It has been developed with fault-tolerance in mind, and to be integrated/coupled with a commercial ORB. It has been developed using Java 1.2, and is divided into two main packages : Eva : an event based architecture for building high level protocols

Eden : a Consensus Based Group Communication System – p.2/??

slide-7
SLIDE 7

Eden Overview

Eden is a Group Communication Services (GCS) It has been developed with fault-tolerance in mind, and to be integrated/coupled with a commercial ORB. It has been developed using Java 1.2, and is divided into two main packages : Eva : an event based architecture for building high level protocols Adam : the GCS package itself that relies on an Generic Agreement Framework (GAF)

Eden : a Consensus Based Group Communication System – p.2/??

slide-8
SLIDE 8

Eva an Event Based Architecture for Building High Level Protocol

Eden : a Consensus Based Group Communication System – p.3/??

slide-9
SLIDE 9

Motivations

Eden : a Consensus Based Group Communication System – p.4/??

slide-10
SLIDE 10

Motivations

Building distributed algorithms is a difficult task.

Eden : a Consensus Based Group Communication System – p.4/??

slide-11
SLIDE 11

Motivations

Task 1 send (PROPOSITION

  • ) to all;

upon receipt of PROPOSITION

✁ ✁ ✁

) Task 2 wait (50 ms);

Building distributed algorithms is a difficult task. Most of the protocols described in the literature, are written with a reactive model in mind.

Eden : a Consensus Based Group Communication System – p.4/??

slide-12
SLIDE 12

Motivations

Task 1 send (PROPOSITION

  • ) to all;

upon receipt of PROPOSITION

✁ ✁ ✁

) Task 2 wait (50 ms);

Building distributed algorithms is a difficult task. Most of the protocols described in the literature, are written with a reactive model in mind. The algorithm is decomposed into autonomous tasks

Eden : a Consensus Based Group Communication System – p.4/??

slide-13
SLIDE 13

Motivations

Task 1 send (PROPOSITION

  • ) to all;

upon receipt of PROPOSITION

✁ ✁ ✁

) Task 2 wait (50 ms);

Building distributed algorithms is a difficult task. Most of the protocols described in the literature, are written with a reactive model in mind. The algorithm is decomposed into autonomous tasks Each task can send messages

Eden : a Consensus Based Group Communication System – p.4/??

slide-14
SLIDE 14

Motivations

Task 1 send (PROPOSITION

  • ) to all;

upon receipt of PROPOSITION

✁ ✁ ✁

) Task 2 wait (50 ms);

Building distributed algorithms is a difficult task. Most of the protocols described in the literature, are written with a reactive model in mind. The algorithm is decomposed into autonomous tasks Each task can send messages, react to the receipt of a message

Eden : a Consensus Based Group Communication System – p.4/??

slide-15
SLIDE 15

Motivations

Task 1 send (PROPOSITION

  • ) to all;

upon receipt of PROPOSITION

✁ ✁ ✁

) Task 2 wait (50 ms);

Building distributed algorithms is a difficult task. Most of the protocols described in the literature, are written with a reactive model in mind. The algorithm is decomposed into autonomous tasks Each task can send messages, react to the receipt of a message, the expiry of a timeout.

Eden : a Consensus Based Group Communication System – p.4/??

slide-16
SLIDE 16

Eva Main Features Overview

Eden : a Consensus Based Group Communication System – p.5/??

slide-17
SLIDE 17

Eva Main Features Overview

Event Based Architecture

Eden : a Consensus Based Group Communication System – p.5/??

slide-18
SLIDE 18

Eva Main Features Overview

Event Based Architecture This mimics the way protocol are written

Eden : a Consensus Based Group Communication System – p.5/??

slide-19
SLIDE 19

Eva Main Features Overview

Event Based Architecture This mimics the way protocol are written Efficiency obtained by the following technologies :

Eden : a Consensus Based Group Communication System – p.5/??

slide-20
SLIDE 20

Eva Main Features Overview

Event Based Architecture This mimics the way protocol are written Efficiency obtained by the following technologies : Events are managed through the use of factories.

Eden : a Consensus Based Group Communication System – p.5/??

slide-21
SLIDE 21

Eva Main Features Overview

Event Based Architecture This mimics the way protocol are written Efficiency obtained by the following technologies : Events are managed through the use of factories. Serialization/deserialization of events is tightly coupled with factories.

Eden : a Consensus Based Group Communication System – p.5/??

slide-22
SLIDE 22

Eva Main Features Overview

Event Based Architecture This mimics the way protocol are written Efficiency obtained by the following technologies : Events are managed through the use of factories. Serialization/deserialization of events is tightly coupled with factories. Eva supports the partial deserialization of events in order to test their freshness. Network delayed events are quickly garbaged.

Eden : a Consensus Based Group Communication System – p.5/??

slide-23
SLIDE 23

Event Bus Paradigm

Eden : a Consensus Based Group Communication System – p.6/??

slide-24
SLIDE 24

Event Bus Paradigm

The system

Consumer Producer Producer +Consumer

Eden : a Consensus Based Group Communication System – p.6/??

slide-25
SLIDE 25

Event Bus Paradigm

Production of an event

Consumer Producer Producer +Consumer

Eden : a Consensus Based Group Communication System – p.6/??

slide-26
SLIDE 26

Event Bus Paradigm

Production of another event (1)

Consumer Producer Producer +Consumer

Eden : a Consensus Based Group Communication System – p.6/??

slide-27
SLIDE 27

Event Bus Paradigm

Production of another event (2)

Consumer Producer Producer +Consumer

Eden : a Consensus Based Group Communication System – p.6/??

slide-28
SLIDE 28

Event Bus Paradigm

Consumption and treatment of the first event

Consumer Producer Producer +Consumer

Eden : a Consensus Based Group Communication System – p.6/??

slide-29
SLIDE 29

Event Bus Paradigm

This fires the production of an event

Consumer Producer Producer +Consumer

Eden : a Consensus Based Group Communication System – p.6/??

slide-30
SLIDE 30

Event Factories

Eden : a Consensus Based Group Communication System – p.7/??

slide-31
SLIDE 31

Event Factories

Most of the time, events have short lifetime.

Eden : a Consensus Based Group Communication System – p.7/??

slide-32
SLIDE 32

Event Factories

Most of the time, events have short lifetime. We do not master the behavior of the internal GC

  • f the JVM.

Eden : a Consensus Based Group Communication System – p.7/??

slide-33
SLIDE 33

Event Factories

Most of the time, events have short lifetime. We do not master the behavior of the internal GC

  • f the JVM.

It is better to rely on our own memory management system.

Eden : a Consensus Based Group Communication System – p.7/??

slide-34
SLIDE 34

Event Factories

Most of the time, events have short lifetime. We do not master the behavior of the internal GC

  • f the JVM.

It is better to rely on our own memory management system.

Eden : a Consensus Based Group Communication System – p.7/??

slide-35
SLIDE 35

Event Factories

Most of the time, events have short lifetime. We do not master the behavior of the internal GC

  • f the JVM.

It is better to rely on our own memory management system.

Eden : a Consensus Based Group Communication System – p.7/??

slide-36
SLIDE 36

Event Factories

Most of the time, events have short lifetime. We do not master the behavior of the internal GC

  • f the JVM.

It is better to rely on our own memory management system.

Eden : a Consensus Based Group Communication System – p.7/??

slide-37
SLIDE 37

Event Factories

Most of the time, events have short lifetime. We do not master the behavior of the internal GC

  • f the JVM.

It is better to rely on our own memory management system.

Eden : a Consensus Based Group Communication System – p.7/??

slide-38
SLIDE 38

Event Factories

Most of the time, events have short lifetime. We do not master the behavior of the internal GC

  • f the JVM.

It is better to rely on our own memory management system.

Eden : a Consensus Based Group Communication System – p.7/??

slide-39
SLIDE 39

Event Factories

Most of the time, events have short lifetime. We do not master the behavior of the internal GC

  • f the JVM.

It is better to rely on our own memory management system.

Eden : a Consensus Based Group Communication System – p.7/??

slide-40
SLIDE 40

Event Factories

Most of the time, events have short lifetime. We do not master the behavior of the internal GC

  • f the JVM.

It is better to rely on our own memory management system.

Eden : a Consensus Based Group Communication System – p.7/??

slide-41
SLIDE 41

Event Factories

Most of the time, events have short lifetime. We do not master the behavior of the internal GC

  • f the JVM.

It is better to rely on our own memory management system.

Eden : a Consensus Based Group Communication System – p.7/??

slide-42
SLIDE 42

Event Factories

Most of the time, events have short lifetime. We do not master the behavior of the internal GC

  • f the JVM.

It is better to rely on our own memory management system.

Eden : a Consensus Based Group Communication System – p.7/??

slide-43
SLIDE 43

Event Factories

Most of the time, events have short lifetime. We do not master the behavior of the internal GC

  • f the JVM.

It is better to rely on our own memory management system.

Eden : a Consensus Based Group Communication System – p.7/??

slide-44
SLIDE 44

Network Integration

Eden : a Consensus Based Group Communication System – p.8/??

slide-45
SLIDE 45

Network Integration

The bus event architecture is basically local.

Eden : a Consensus Based Group Communication System – p.8/??

slide-46
SLIDE 46

Network Integration

The bus event architecture is basically local. However, it needs to be extended by some mean to the network

Eden : a Consensus Based Group Communication System – p.8/??

slide-47
SLIDE 47

Network Integration

The bus event architecture is basically local. However, it needs to be extended by some mean to the network To leave the programmer the choice of its network protocol, we have chosen to integrate the network by the mean of two specials consumer/producer :

Eden : a Consensus Based Group Communication System – p.8/??

slide-48
SLIDE 48

Network Integration

The bus event architecture is basically local. However, it needs to be extended by some mean to the network To leave the programmer the choice of its network protocol, we have chosen to integrate the network by the mean of two specials consumer/producer : A generic consumer of events that are to be sent over the network, called notifier.

Eden : a Consensus Based Group Communication System – p.8/??

slide-49
SLIDE 49

Network Integration

The bus event architecture is basically local. However, it needs to be extended by some mean to the network To leave the programmer the choice of its network protocol, we have chosen to integrate the network by the mean of two specials consumer/producer : A generic consumer of events that are to be sent over the network, called notifier. A generic producer of events that are to be received from the network, called listener.

Eden : a Consensus Based Group Communication System – p.8/??

slide-50
SLIDE 50

Network Integration

Eden : a Consensus Based Group Communication System – p.9/??

slide-51
SLIDE 51

Network Integration

There exits multiple instantiations of notifiers and their associated listeners :

Eden : a Consensus Based Group Communication System – p.9/??

slide-52
SLIDE 52

Network Integration

There exits multiple instantiations of notifiers and their associated listeners : UDP

Eden : a Consensus Based Group Communication System – p.9/??

slide-53
SLIDE 53

Network Integration

There exits multiple instantiations of notifiers and their associated listeners : UDP UDP multicast

Eden : a Consensus Based Group Communication System – p.9/??

slide-54
SLIDE 54

Network Integration

There exits multiple instantiations of notifiers and their associated listeners : UDP UDP multicast TCP

Eden : a Consensus Based Group Communication System – p.9/??

slide-55
SLIDE 55

Network Integration

There exits multiple instantiations of notifiers and their associated listeners : UDP UDP multicast TCP The combination of factories and serialization/deserialization of events is problematic (because of Java)

Eden : a Consensus Based Group Communication System – p.9/??

slide-56
SLIDE 56

Network Integration

Factory Factory Network medium Producer Consumer Notifier Listener

Java demarshalling

Eden : a Consensus Based Group Communication System – p.10/??

slide-57
SLIDE 57

Network Integration

Factory Factory Network medium Producer Consumer Notifier Listener

Java demarshalling

Eden : a Consensus Based Group Communication System – p.10/??

slide-58
SLIDE 58

Network Integration

Factory Factory Network medium Producer Consumer Notifier Listener

Java demarshalling

Eden : a Consensus Based Group Communication System – p.10/??

slide-59
SLIDE 59

Network Integration

Factory Factory Network medium Producer Consumer Notifier Listener

Java demarshalling

Eden : a Consensus Based Group Communication System – p.10/??

slide-60
SLIDE 60

Network Integration

Factory Factory Network medium Producer Consumer Notifier Listener

[01 01] Java demarshalling

Eden : a Consensus Based Group Communication System – p.10/??

slide-61
SLIDE 61

Network Integration

Factory Factory Network medium Producer Consumer Notifier Listener

[01 01] Java demarshalling

Eden : a Consensus Based Group Communication System – p.10/??

slide-62
SLIDE 62

Network Integration

Factory Factory Network medium Producer Consumer Notifier Listener

[01 01] Java demarshalling

Eden : a Consensus Based Group Communication System – p.10/??

slide-63
SLIDE 63

Network Integration

Factory Factory Network medium Producer Consumer Notifier Listener

[01 01] Java demarshalling

Eden : a Consensus Based Group Communication System – p.10/??

slide-64
SLIDE 64

Network Integration

Factory Factory Network medium Producer Consumer Notifier Listener

[01 01] Java demarshalling

Eden : a Consensus Based Group Communication System – p.10/??

slide-65
SLIDE 65

Network Integration

Factory Factory Network medium Producer Consumer Notifier Listener

[01 01] Java demarshalling

Eden : a Consensus Based Group Communication System – p.10/??

slide-66
SLIDE 66

Network Integration

Factory Factory Network medium Producer Consumer Notifier Listener

[01 01] Java demarshalling

Eden : a Consensus Based Group Communication System – p.10/??

slide-67
SLIDE 67

Network Integration

Factory Factory Network medium Producer Consumer Notifier Listener

Java demarshalling

Eden : a Consensus Based Group Communication System – p.10/??

slide-68
SLIDE 68

Network Integration

Factory Factory Network medium Producer Consumer Notifier Listener

Java demarshalling

Eden : a Consensus Based Group Communication System – p.10/??

slide-69
SLIDE 69

Network Integration

Factory Factory Network medium Producer Consumer Notifier Listener

Java demarshalling

Eden : a Consensus Based Group Communication System – p.10/??

slide-70
SLIDE 70

Network Integration

Factory Factory Network medium Producer Consumer Notifier Listener

Java demarshalling

Eden : a Consensus Based Group Communication System – p.10/??

slide-71
SLIDE 71

Network Integration

Factory Factory Network medium Producer Consumer Notifier Listener

Java demarshalling

Eden : a Consensus Based Group Communication System – p.10/??

slide-72
SLIDE 72

Hierarchical Marshalling

Eden : a Consensus Based Group Communication System – p.11/??

slide-73
SLIDE 73

Hierarchical Marshalling

Even tough Eva is structuring the protocols as graphs, the traditional protocol stack often reappears.

Eden : a Consensus Based Group Communication System – p.11/??

slide-74
SLIDE 74

Hierarchical Marshalling

Even tough Eva is structuring the protocols as graphs, the traditional protocol stack often reappears. Indeed, it is very current that some events goes through a chain of producers/consumers being further interpreted at each level :

Eden : a Consensus Based Group Communication System – p.11/??

slide-75
SLIDE 75

Hierarchical Marshalling

Even tough Eva is structuring the protocols as graphs, the traditional protocol stack often reappears. Indeed, it is very current that some events goes through a chain of producers/consumers being further interpreted at each level : It is then possible for the event to be discarded at any stage of the process, since it is too old.

Eden : a Consensus Based Group Communication System – p.11/??

slide-76
SLIDE 76

Hierarchical Marshalling

Even tough Eva is structuring the protocols as graphs, the traditional protocol stack often reappears. Indeed, it is very current that some events goes through a chain of producers/consumers being further interpreted at each level : It is then possible for the event to be discarded at any stage of the process, since it is too old. Or for a part of the event to be stored, while waiting for missing informations.

Eden : a Consensus Based Group Communication System – p.11/??

slide-77
SLIDE 77

Hierarchical Marshalling

Even tough Eva is structuring the protocols as graphs, the traditional protocol stack often reappears. Indeed, it is very current that some events goes through a chain of producers/consumers being further interpreted at each level : It is then possible for the event to be discarded at any stage of the process, since it is too old. Or for a part of the event to be stored, while waiting for missing informations. This pleads in favor of a hierarchical structure for events.

Eden : a Consensus Based Group Communication System – p.11/??

slide-78
SLIDE 78

Hierarchical Marshalling

Marshalled Objects Unmarshalled Objects Marshalled Objects Unmarshalled Objects Descriptor Object Fields Tree

Eden : a Consensus Based Group Communication System – p.12/??

slide-79
SLIDE 79

Hierarchical Marshalling

Marshalled Objects Unmarshalled Objects Marshalled Objects Unmarshalled Objects Descriptor Object Fields Tree

Eden : a Consensus Based Group Communication System – p.12/??

slide-80
SLIDE 80

Hierarchical Marshalling

Marshalled Objects Unmarshalled Objects Marshalled Objects Unmarshalled Objects Descriptor Object Fields Tree

Eden : a Consensus Based Group Communication System – p.12/??

slide-81
SLIDE 81

Hierarchical Marshalling

Eden : a Consensus Based Group Communication System – p.13/??

slide-82
SLIDE 82

Hierarchical Marshalling

Events that can be sent over the network are provided with an interface to manage :

Eden : a Consensus Based Group Communication System – p.13/??

slide-83
SLIDE 83

Hierarchical Marshalling

Events that can be sent over the network are provided with an interface to manage :

Eden : a Consensus Based Group Communication System – p.13/??

slide-84
SLIDE 84

Hierarchical Marshalling

Events that can be sent over the network are provided with an interface to manage : The tree structure of associated events

Eden : a Consensus Based Group Communication System – p.13/??

slide-85
SLIDE 85

Hierarchical Marshalling

Events that can be sent over the network are provided with an interface to manage : The tree structure of associated events The serialisation/deserialisation of a topmost event (root of a tree)

Eden : a Consensus Based Group Communication System – p.13/??

slide-86
SLIDE 86

Conclusion about Eva

Eden : a Consensus Based Group Communication System – p.14/??

slide-87
SLIDE 87

Conclusion about Eva

Eva is an event based architecture for building high level protocols

Eden : a Consensus Based Group Communication System – p.14/??

slide-88
SLIDE 88

Conclusion about Eva

Eva is an event based architecture for building high level protocols It is efficient, while at the same time maintaining ease of use.

Eden : a Consensus Based Group Communication System – p.14/??

slide-89
SLIDE 89

Conclusion about Eva

Eva is an event based architecture for building high level protocols It is efficient, while at the same time maintaining ease of use. It has been successfully used and intensively debugged during the coding of Adam.

Eden : a Consensus Based Group Communication System – p.14/??

slide-90
SLIDE 90

Adam an Agreement Framework for Building GCS

Eden : a Consensus Based Group Communication System – p.15/??

slide-91
SLIDE 91

Group Communication Services

Eden : a Consensus Based Group Communication System – p.16/??

slide-92
SLIDE 92

Group Communication Services

Group Communication Services (GCS) have been developed to simplify the creation of distributed applications

Eden : a Consensus Based Group Communication System – p.16/??

slide-93
SLIDE 93

Group Communication Services

Group Communication Services (GCS) have been developed to simplify the creation of distributed applications They provide strong semantics primitives :

Eden : a Consensus Based Group Communication System – p.16/??

slide-94
SLIDE 94

Group Communication Services

Group Communication Services (GCS) have been developed to simplify the creation of distributed applications They provide strong semantics primitives : Atomic Broadcast to provide a total order on the set of messages broadcast within the group

Eden : a Consensus Based Group Communication System – p.16/??

slide-95
SLIDE 95

Group Communication Services

Group Communication Services (GCS) have been developed to simplify the creation of distributed applications They provide strong semantics primitives : Atomic Broadcast to provide a total order on the set of messages broadcast within the group Membership to track the change of membership within the group

Eden : a Consensus Based Group Communication System – p.16/??

slide-96
SLIDE 96

Group Communication Services

Group Communication Services (GCS) have been developed to simplify the creation of distributed applications They provide strong semantics primitives : Atomic Broadcast to provide a total order on the set of messages broadcast within the group Membership to track the change of membership within the group View Synchrony (VS) that aims at synchronizing the two previous services, by determining the set of messages to be ordered before a view change can take place

Eden : a Consensus Based Group Communication System – p.16/??

slide-97
SLIDE 97

Overview of Adam

Eden : a Consensus Based Group Communication System – p.17/??

slide-98
SLIDE 98

Overview of Adam

Consensus

AcknowledgmentEvent PropositionEvent DecisionEvent EstimationEvent

Eden : a Consensus Based Group Communication System – p.17/??

slide-99
SLIDE 99

Overview of Adam

Consensus ReliableDecision

DecisionDemandEvent FifoDecisionEvent DecisionEvent AcknowledgmentEvent PropositionEvent DecisionEvent EstimationEvent DecisionStabilityStateEvent

Eden : a Consensus Based Group Communication System – p.17/??

slide-100
SLIDE 100

Overview of Adam

Consensus ReliableDecision

DecisionDemandEvent FifoDecisionEvent DecisionEvent AcknowledgmentEvent PropositionEvent DecisionEvent StartAgreementEvent RequestDecisionEvent RequestLocalEvent ReadyDecisionEvent EstimationEvent DecisionStabilityStateEvent

AtomicBroadcast

Eden : a Consensus Based Group Communication System – p.17/??

slide-101
SLIDE 101

Overview of Adam

Consensus ReliableDecision

DecisionDemandEvent FifoDecisionEvent DecisionEvent AcknowledgmentEvent PropositionEvent DecisionEvent StartAgreementEvent RequestDecisionEvent RequestLocalEvent ReadyDecisionEvent RequestStabilityStateEvent RequestEvent RequestReplyEvent RequestLocalEvent ConfirmedDecisionEvent ReadyDecisionEvent RequestDecisionEvent EstimationEvent DecisionStabilityStateEvent RequestDemandEvent

AtomicBroadcast ReliableBroadcast

Eden : a Consensus Based Group Communication System – p.17/??

slide-102
SLIDE 102

Overview of Adam

GroupMembership Consensus ReliableDecision

DecisionDemandEvent FifoDecisionEvent DecisionEvent AcknowledgmentEvent PropositionEvent DecisionEvent StartAgreementEvent RequestDecisionEvent RequestLocalEvent ReadyDecisionEvent RequestStabilityStateEvent RequestEvent RequestReplyEvent RequestLocalEvent ConfirmedDecisionEvent ReadyDecisionEvent RequestDecisionEvent EstimationEvent DecisionStabilityStateEvent AcceptJoinEvent UpdateGroupPropertiesEvent ConfirmedDecisionEvent StartAgreementEvent LeaveEvent SuspicionEvent ReadyDecisionEvent ReliableDecisionEvent JoinEvent RequestDemandEvent

AtomicBroadcast ReliableBroadcast

Eden : a Consensus Based Group Communication System – p.17/??

slide-103
SLIDE 103

Overview of Adam

GroupMembership FailureDetector Consensus ReliableDecision

DecisionDemandEvent FifoDecisionEvent DecisionEvent AcknowledgmentEvent PropositionEvent DecisionEvent StartAgreementEvent RequestDecisionEvent RequestLocalEvent ReadyDecisionEvent RequestStabilityStateEvent RequestEvent RequestReplyEvent RequestLocalEvent ConfirmedDecisionEvent ReadyDecisionEvent RequestDecisionEvent EstimationEvent DecisionStabilityStateEvent IamAliveEvent DecisionEvent RequestStabilityStateEvent DecisionStabilityStateEvent DecisionReliabilityStateEvent SuspicionEvent AcceptJoinEvent UpdateGroupPropertiesEvent ConfirmedDecisionEvent StartAgreementEvent LeaveEvent SuspicionEvent ReadyDecisionEvent ReliableDecisionEvent JoinEvent RequestDemandEvent

AtomicBroadcast ReliableBroadcast

Eden : a Consensus Based Group Communication System – p.17/??

slide-104
SLIDE 104

Overview of Adam

ViewSynchrony GroupMembership FailureDetector Consensus ReliableDecision

DecisionDemandEvent FifoDecisionEvent DecisionEvent AcknowledgmentEvent PropositionEvent DecisionEvent StartAgreementEvent RequestDecisionEvent RequestLocalEvent ReadyDecisionEvent RequestStabilityStateEvent RequestEvent RequestReplyEvent RequestLocalEvent ConfirmedDecisionEvent ReadyDecisionEvent RequestDecisionEvent EstimationEvent DecisionStabilityStateEvent IamAliveEvent DecisionEvent RequestStabilityStateEvent DecisionStabilityStateEvent DecisionReliabilityStateEvent SuspicionEvent ReliableDecisionEvent ConfirmedDecisionEvent ReadyDecisionEvent DecisionReliabilityStateEvent AcceptJoinEvent UpdateGroupPropertiesEvent ConfirmedDecisionEvent StartAgreementEvent LeaveEvent SuspicionEvent ReadyDecisionEvent ReliableDecisionEvent JoinEvent RequestDemandEvent

AtomicBroadcast ReliableBroadcast

Eden : a Consensus Based Group Communication System – p.17/??

slide-105
SLIDE 105

Overview of Adam

ViewSynchrony GroupMembership Mediator FailureDetector

StartAgreementEvent ReadyDecisionEvent FifoDecisionEvent

Consensus ReliableDecision

DecisionDemandEvent FifoDecisionEvent DecisionEvent AcknowledgmentEvent PropositionEvent DecisionEvent StartAgreementEvent RequestDecisionEvent RequestLocalEvent ReadyDecisionEvent RequestStabilityStateEvent RequestEvent RequestReplyEvent RequestLocalEvent ConfirmedDecisionEvent ReadyDecisionEvent RequestDecisionEvent EstimationEvent DecisionStabilityStateEvent IamAliveEvent DecisionEvent RequestStabilityStateEvent DecisionStabilityStateEvent DecisionReliabilityStateEvent SuspicionEvent ReliableDecisionEvent ConfirmedDecisionEvent ReadyDecisionEvent DecisionReliabilityStateEvent AcceptJoinEvent UpdateGroupPropertiesEvent ConfirmedDecisionEvent StartAgreementEvent LeaveEvent SuspicionEvent ReadyDecisionEvent ReliableDecisionEvent JoinEvent RequestDemandEvent

AtomicBroadcast ReliableBroadcast

Eden : a Consensus Based Group Communication System – p.17/??

slide-106
SLIDE 106

The GAF Framework

Eden : a Consensus Based Group Communication System – p.18/??

slide-107
SLIDE 107

The GAF Framework

GAF framework is the synthesis of about four years of research in the field of agreement problems applied to fault-tolerance.

Eden : a Consensus Based Group Communication System – p.18/??

slide-108
SLIDE 108

The GAF Framework

GAF framework is the synthesis of about four years of research in the field of agreement problems applied to fault-tolerance. It is basically derived from the original Chandra- Toueg algorithm for solving consensus using failure detectors.

Eden : a Consensus Based Group Communication System – p.18/??

slide-109
SLIDE 109

The GAF Framework

GAF framework is the synthesis of about four years of research in the field of agreement problems applied to fault-tolerance. It is basically derived from the original Chandra- Toueg algorithm for solving consensus using failure detectors. However, it has been improved to take into account a large spectrum of practical requirements :

Eden : a Consensus Based Group Communication System – p.18/??

slide-110
SLIDE 110

The GAF Framework

GAF framework is the synthesis of about four years of research in the field of agreement problems applied to fault-tolerance. It is basically derived from the original Chandra- Toueg algorithm for solving consensus using failure detectors. However, it has been improved to take into account a large spectrum of practical requirements : Versatility

Eden : a Consensus Based Group Communication System – p.18/??

slide-111
SLIDE 111

The GAF Framework

GAF framework is the synthesis of about four years of research in the field of agreement problems applied to fault-tolerance. It is basically derived from the original Chandra- Toueg algorithm for solving consensus using failure detectors. However, it has been improved to take into account a large spectrum of practical requirements : Versatility Efficiency

Eden : a Consensus Based Group Communication System – p.18/??

slide-112
SLIDE 112

The GAF Framework

GAF framework is the synthesis of about four years of research in the field of agreement problems applied to fault-tolerance. It is basically derived from the original Chandra- Toueg algorithm for solving consensus using failure detectors. However, it has been improved to take into account a large spectrum of practical requirements : Versatility Efficiency Dynamical Adaptation to the Network Conditions

Eden : a Consensus Based Group Communication System – p.18/??

slide-113
SLIDE 113

The GAF Framework

Eden : a Consensus Based Group Communication System – p.19/??

slide-114
SLIDE 114

The GAF Framework

GAF uses the rotating coordinator paradigm like in CT algorithm.

Eden : a Consensus Based Group Communication System – p.19/??

slide-115
SLIDE 115

The GAF Framework

GAF uses the rotating coordinator paradigm like in CT algorithm. The algorithm progresses by round.

Eden : a Consensus Based Group Communication System – p.19/??

slide-116
SLIDE 116

The GAF Framework

GAF uses the rotating coordinator paradigm like in CT algorithm. The algorithm progresses by round. Each round is coordinated by a unique coordinator determined by the round number.

Eden : a Consensus Based Group Communication System – p.19/??

slide-117
SLIDE 117

The GAF Framework

GAF uses the rotating coordinator paradigm like in CT algorithm. The algorithm progresses by round. Each round is coordinated by a unique coordinator determined by the round number. The coordinator tries to collect a majority of estimations values of the final decision during the round.

Eden : a Consensus Based Group Communication System – p.19/??

slide-118
SLIDE 118

The GAF Framework

GAF uses the rotating coordinator paradigm like in CT algorithm. The algorithm progresses by round. Each round is coordinated by a unique coordinator determined by the round number. The coordinator tries to collect a majority of estimations values of the final decision during the round. In a second phase, if it has been able to collect such a majority, it computes and broadcast a proposition.

Eden : a Consensus Based Group Communication System – p.19/??

slide-119
SLIDE 119

The GAF Framework

The algorithm progresses by round. Each round is coordinated by a unique coordinator determined by the round number. The coordinator tries to collect a majority of estimations values of the final decision during the round. In a second phase, if it has been able to collect such a majority, it computes and broadcast a proposition. To become the final decision, this proposition must be received and acknowledged by a majority of processes.

Eden : a Consensus Based Group Communication System – p.19/??

slide-120
SLIDE 120

The GAF Framework

Each round is coordinated by a unique coordinator determined by the round number. The coordinator tries to collect a majority of estimations values of the final decision during the round. In a second phase, if it has been able to collect such a majority, it computes and broadcast a proposition. To become the final decision, this proposition must be received and acknowledged by a majority of processes. A process that receives the proposition from the coordinator, retains it for its new estimation.

Eden : a Consensus Based Group Communication System – p.19/??

slide-121
SLIDE 121

The GAF Framework

The coordinator tries to collect a majority of estimations values of the final decision during the round. In a second phase, if it has been able to collect such a majority, it computes and broadcast a proposition. To become the final decision, this proposition must be received and acknowledged by a majority of processes. A process that receives the proposition from the coordinator, retains it for its new estimation. To avoid concurrent and different decisions, each estimation is tagged with the round during which it was retained.

Eden : a Consensus Based Group Communication System – p.19/??

slide-122
SLIDE 122

The GAF Framework

In a second phase, if it has been able to collect such a majority, it computes and broadcast a proposition. To become the final decision, this proposition must be received and acknowledged by a majority of processes. A process that receives the proposition from the coordinator, retains it for its new estimation. To avoid concurrent and different decisions, each estimation is tagged with the round during which it was retained. Initially, estimations are tagged with .

Eden : a Consensus Based Group Communication System – p.19/??

slide-123
SLIDE 123

The GAF Framework

To become the final decision, this proposition must be received and acknowledged by a majority of processes. A process that receives the proposition from the coordinator, retains it for its new estimation. To avoid concurrent and different decisions, each estimation is tagged with the round during which it was retained. Initially, estimations are tagged with . We have improved the original CT algorithm by :

Eden : a Consensus Based Group Communication System – p.19/??

slide-124
SLIDE 124

The GAF Framework

A process that receives the proposition from the coordinator, retains it for its new estimation. To avoid concurrent and different decisions, each estimation is tagged with the round during which it was retained. Initially, estimations are tagged with . We have improved the original CT algorithm by : We do not use failure detectors, instead we are using fixed duration rounds.

Eden : a Consensus Based Group Communication System – p.19/??

slide-125
SLIDE 125

The GAF Framework

To avoid concurrent and different decisions, each estimation is tagged with the round during which it was retained. Initially, estimations are tagged with . We have improved the original CT algorithm by : We do not use failure detectors, instead we are using fixed duration rounds. This removes the necessity of reliable channels,

Eden : a Consensus Based Group Communication System – p.19/??

slide-126
SLIDE 126

The GAF Framework

To avoid concurrent and different decisions, each estimation is tagged with the round during which it was retained. Initially, estimations are tagged with . We have improved the original CT algorithm by : We do not use failure detectors, instead we are using fixed duration rounds. This removes the necessity of reliable channels, while at the same time requiring a good synchronization between clocks.

Eden : a Consensus Based Group Communication System – p.19/??

slide-127
SLIDE 127

The GAF Framework

We have improved the original CT algorithm by : We do not use failure detectors, instead we are using fixed duration rounds. This removes the necessity of reliable channels, while at the same time requiring a good synchronization between clocks. To relax this assumption, we are using a window mechanism.

Eden : a Consensus Based Group Communication System – p.19/??

slide-128
SLIDE 128

The GAF Framework

We have improved the original CT algorithm by : We do not use failure detectors, instead we are using fixed duration rounds. This removes the necessity of reliable channels, while at the same time requiring a good synchronization between clocks. To relax this assumption, we are using a window mechanism. This enables the coordinator of a round to take into account messages coming from both the future and the past.

Eden : a Consensus Based Group Communication System – p.19/??

slide-129
SLIDE 129

The GAF Framework

We have improved the original CT algorithm by : We take advantage of the fact that the coordinator collects a majority of estimations.

Eden : a Consensus Based Group Communication System – p.19/??

slide-130
SLIDE 130

The GAF Framework

We have improved the original CT algorithm by : We take advantage of the fact that the coordinator collects a majority of estimations. It can compute a more significant proposition by mixing all the estimations when they are all tagged with .

Eden : a Consensus Based Group Communication System – p.19/??

slide-131
SLIDE 131

The GAF Framework

We have improved the original CT algorithm by : We take advantage of the fact that the coordinator collects a majority of estimations. It can compute a more significant proposition by mixing all the estimations when they are all tagged with . Processes are allowed to propose empty values.

Eden : a Consensus Based Group Communication System – p.19/??

slide-132
SLIDE 132

The GAF Framework

We have improved the original CT algorithm by : We take advantage of the fact that the coordinator collects a majority of estimations. It can compute a more significant proposition by mixing all the estimations when they are all tagged with . Processes are allowed to propose empty values. As long as, no non empty proposition from the coordinator has been made, they can improve their estimations.

Eden : a Consensus Based Group Communication System – p.19/??

slide-133
SLIDE 133

The GAF Framework

We have improved the original CT algorithm by : We take advantage of the fact that the coordinator collects a majority of estimations. It can compute a more significant proposition by mixing all the estimations when they are all tagged with . Processes are allowed to propose empty values. As long as, no non empty proposition from the coordinator has been made, they can improve their estimations. This has proven to be very efficient to improve the throughputness of atomic broadcast.

Eden : a Consensus Based Group Communication System – p.19/??

slide-134
SLIDE 134

The GAF Framework

We have improved the original CT algorithm by : We allows the programmer to solve multiple agreement problems at the same time.

Eden : a Consensus Based Group Communication System – p.19/??

slide-135
SLIDE 135

The GAF Framework

We have improved the original CT algorithm by : We allows the programmer to solve multiple agreement problems at the same time. To do this, each decision taken by GAF is a vector of subdecisions. One entry by agreement problems to solve.

Eden : a Consensus Based Group Communication System – p.19/??

slide-136
SLIDE 136

The GAF Framework

We have improved the original CT algorithm by : We allows the programmer to solve multiple agreement problems at the same time. To do this, each decision taken by GAF is a vector of subdecisions. One entry by agreement problems to solve. Some of the decisions, may be empty decisions.

Eden : a Consensus Based Group Communication System – p.19/??

slide-137
SLIDE 137

The GAF Framework

We have improved the original CT algorithm by : We allows the programmer to solve multiple agreement problems at the same time. To do this, each decision taken by GAF is a vector of subdecisions. One entry by agreement problems to solve. Some of the decisions, may be empty decisions. This is made possible by the previous improvement about multiple initial propositions and empty propositions.

Eden : a Consensus Based Group Communication System – p.19/??