Download presentation
Presentation is loading. Please wait.
Published byMerryl Collins Modified over 9 years ago
1
Replication and Group Communication
2
Management of Replicated Data FE Requests and replies C Replica C Service Clients Front ends managers RM FE RM Instructor’s Guide for Coulouris, Dollimore, Kindberg and Blair, Distributed Systems: Concepts and Design Edn. 5 © Pearson Education 2012
3
Replica Manager Manages a single copy of the data Interacts with other RMs Behave as state machines – Operations are atomic – Deterministic – Ensures behaviour can be reproduced at replicas May be dynamic or static
4
Sequence of Events Client Front End Request RM Request, idCoordination Execution AgreementResponse, id Response
5
Coordination Phase Reach agreement on – Whether to execute or not – Ordering FIFO Causal Total
6
Group Communication Messages send to all members of a group – Reliable – Either all receive message or none do – Ordered Group membership – Static – Fixed number of processes – Dynamic – Processes can leave and join Implementation – Network support (IP Multicast) – Sending multiple messages
7
Group Types Process vs Object groups Closed vs Open groups Overlapping vs Non-overlapping Synchronous vs Asynchronous
8
Reliability of Multicasts Integrity – Message received same as message send – No message is delivered twice Validity – Message send is eventually delivered Agreement – If delivered to one, it is delivered to all
9
Managing Group Membership Allow processes to be added and removed Detect failed/unreachable components Notify members of group changes Perform group address expansion – Processes may be part of multiple groups – Send message to group using group id
10
System Model Client Front End Request RM Request, id Response, id Response GM GC GM GC GM GC RM – Replication Manager GM – Group Manager GC – Group Communicator
11
Group Communicator Assumptions – Reliable one-to-one channels – Processes only fail by crashing To send a message: – RM calls multicast(g,m) in GC – GC may communicate with GM to get group members To receive a message: – GC receives message over network – Processes message – Calls deliver(m) in RM
12
Basic Multicast B-multicast(g,m): – For each p ∊ g, send (p,m) On receive(m) at p: – B-deliver(m) at p
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.