1 / 25

Group Communication Specifications

Group Communication Specifications. Philip Jameson. Outline. What is a Group Communication System Membership Service Multicast Service Message Safety/Consistency Ordering and Reliability Liveness. Group Communication System (GCS). Group Players in an online game

lalo
Download Presentation

Group Communication Specifications

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Group Communication Specifications Philip Jameson

  2. Outline What is a Group Communication System Membership Service Multicast Service Message Safety/Consistency Ordering and Reliability Liveness

  3. Group Communication System (GCS) • Group • Players in an online game • Participants in a video conference • View • Managed by Membership Service • List of all connected processes • Messages • Delivered by Multicast Service • Process • A member of the group

  4. Interaction with the CGS send(p, m) recv(p,m) safe_prefix(p,m) view_change(p,(id, members),T) crash(p) recover(p)

  5. Process/GCS Interaction

  6. Outline What is a Group Communication System Membership Service Multicast Service Message Safety/Consistency Ordering and Reliability Liveness

  7. Membership Service • Responsible for alerting members of a change in topology • Help maintain ‘Local Monotonicity’ • Each new view must have an ID greater than the last • Helps crashed/joining nodes regain consistency • Prevents processes from installing same view twice

  8. Partitionable and Primary Component Services • Primary Component • Only one set of views exist in the system • Only primary view is updated, other views are read-only • PartitionableComponent • Multiple views can exist at the same time • Example might be many concurrent sections of virtual worlds

  9. Outline What is a Group Communication System Membership Service Multicast Service Message Safety/Consistency Ordering and Reliability Liveness

  10. Multicast Service • Basic Properties • Every recv requires a send • No duplication of messages for a given process

  11. Sending View Delivery • Every message received must be sent from the same view • Useful in state transfer mesages • Requires blocking to satisfy fully • More overhead, and more messages required

  12. Same View Delivery • Every message received must be received in the same view • Doesn’t require it to be the same view in which it was sent • Useful when you don’t need to know which view message was sent from

  13. Virtual Synchrony If process ‘p’ and process ‘q’ install view V in V’, and message m is delivered to p in V’ then it is delivered to q in V’ Allows processes that ‘continue together’ to not require state transitions

  14. Outline What is a Group Communication System Membership Service Multicast Service Message Safety/Consistency Ordering and Reliability Liveness

  15. Safe Messages “All or nothing” message delivery ‘safe_prefix’ indicates a stabilized message Totally ordered delivery implies all previous messages in view were received

  16. Outline What is a Group Communication System Membership Service Multicast Service Message Safety/Consistency Ordering and Reliability Liveness

  17. Ordering Properties FIFO Causal Totally Ordered Multicast

  18. FIFO If message m is sent from process p before message m’, process q will receive m before m’ Only guarantees ordering from one source

  19. Causal Ordering Similar to FIFO Works across multiple processes

  20. Totally Ordered Multicast • Strong and Weak Total Ordering • Uses ‘timestamp’ function to guarantee ordering • Strong • Guarantees global ordering between views • Used in replication to help regain consistency • Weak • Guarantees ordering of all messages within a view

  21. Outline What is a Group Communication System Membership Service Multicast Service Message Safety/Consistency Ordering and Reliability Liveness

  22. Liveness • Attempts to make sure view matches real network status • Requires additional external communication methods in the GCS • net_send(p,m) • net_recv(p,m) • net_reachable_set(p,S) • channel_up(p,q) • channel_down(p,q)

  23. GCS With Failure Detector

  24. Liveness • Assume ‘Live network’ • If the channel is up between p and q, messages will arrive eventually • Require an ‘eventually correct’ failure detector • Simple algorithm uses increasing timeouts

  25. Papers • Group Communication Specifications: A Comprehensive Study • Chockler, Keidar, and Vitenberg • http://www.cs.ucf.edu/~dcm/Teaching/COT4810-Spring2011/Literature/GroupCommunication.pdf

More Related