Group Communication Phuong Hoai Ha & Yi Zhang Introduction to Lab. assignments March 24 th, 2004.

Slides:



Advertisements
Similar presentations
1 Process groups and message ordering If processes belong to groups, certain algorithms can be used that depend on group properties membership create (
Advertisements

COS 461 Fall 1997 Group Communication u communicate to a group of processes rather than point-to-point u uses –replicated service –efficient dissemination.
DISTRIBUTED SYSTEMS II FAULT-TOLERANT BROADCAST Prof Philippas Tsigas Distributed Computing and Systems Research Group.
CSE 486/586, Spring 2014 CSE 486/586 Distributed Systems Reliable Multicast Steve Ko Computer Sciences and Engineering University at Buffalo.
CS542 Topics in Distributed Systems Diganta Goswami.
Failure Detection The ping-ack failure detector in a synchronous system satisfies – A: completeness – B: accuracy – C: neither – D: both.
Reliability on Web Services Presented by Pat Chan 17/10/2005.
Lab 2 Group Communication Andreas Larsson
Distributed Systems Fall 2010 Replication Fall 20105DV0203 Outline Group communication Fault-tolerant services –Passive and active replication Highly.
CS 582 / CMPE 481 Distributed Systems Fault Tolerance.
Group Communications Group communication: one source process sending a message to a group of processes: Destination is a group rather than a single process.
Transis Efficient Message Ordering in Dynamic Networks PODC 1996 talk slides Idit Keidar and Danny Dolev The Hebrew University Transis Project.
© nCode 2000 Title of Presentation goes here - go to Master Slide to edit - Slide 1 Reliable Communication for Highly Mobile Agents ECE 7995: Term Paper.
CS 582 / CMPE 481 Distributed Systems Replication.
Copyright © George Coulouris, Jean Dollimore, Tim Kindberg This material is made available for private study and for direct.
1 Principles of Reliable Distributed Systems Lecture 5: Failure Models, Fault-Tolerant Broadcasts and State-Machine Replication Spring 2005 Dr. Idit Keidar.
Group Communication using Ensemble Part II. 2 Introduction From previous tutorial: Ensemble’s application interface: Concepts of Group Membership, View,
Distributed Systems Fall 2009 Replication Fall 20095DV0203 Outline Group communication Fault-tolerant services –Passive and active replication Highly.
Aran Bergman, Principles of Reliable Distributed Systems, Technion EE, Spring Principles of Reliable Distributed Systems Recitation 5: Reliable.
Lab 1 Bulletin Board System Farnaz Moradi Based on slides by Andreas Larsson 2012.
Computer Science 425 Distributed Systems (Fall 2009) Lecture 5 Multicast Communication Reading: Section 12.4 Klara Nahrstedt.
© Janice Regan, CMPT 128, CMPT 371 Data Communications and Networking Multicast routing.
1 A Modular Approach to Fault-Tolerant Broadcasts and Related Problems Author: Vassos Hadzilacos and Sam Toueg Distributed Systems: 526 U1580 Professor:
Distributed Algorithms – 2g1513 Lecture 9 – by Ali Ghodsi Fault-Tolerance in Distributed Systems.
ARMADA Middleware and Communication Services T. ABDELZAHER, M. BJORKLUND, S. DAWSON, W.-C. FENG, F. JAHANIAN, S. JOHNSON, P. MARRON, A. MEHRA, T. MITTON,
ECE291 Computer Engineering II Lecture 23 Dr. Zbigniew Kalbarczyk University of Illinois at Urbana- Champaign.
Copyright © George Coulouris, Jean Dollimore, Tim Kindberg This material is made available for private study and for direct.
SPREAD TOOLKIT High performance messaging middleware Presented by Sayantam Dey Vipin Mehta.
Total Order Broadcast and Multicast Algorithms: Taxonomy and Survey (Paper by X. Défago, A. Schiper, and P. Urbán) ACM computing Surveys, Vol. 36,No 4,
Lab 2 Group Communication Farnaz Moradi Based on slides by Andreas Larsson 2012.
CSE 486/586, Spring 2013 CSE 486/586 Distributed Systems Replication with View Synchronous Group Communication Steve Ko Computer Sciences and Engineering.
Advanced Computer Networks Topic 2: Characterization of Distributed Systems.
Farnaz Moradi Based on slides by Andreas Larsson 2013.
Group Communication Group oriented activities are steadily increasing. There are many types of groups:  Open and Closed groups  Peer-to-peer and hierarchical.
November 2005Distributed systems: distributed algorithms 1 Distributed Systems: Distributed algorithms.
Farnaz Moradi Based on slides by Andreas Larsson 2013.
Dealing with open groups The view of a process is its current knowledge of the membership. It is important that all processes have identical views. Inconsistent.
IM NTU Distributed Information Systems 2004 Replication Management -- 1 Replication Management Yih-Kuen Tsay Dept. of Information Management National Taiwan.
Dealing with open groups The view of a process is its current knowledge of the membership. It is important that all processes have identical views. Inconsistent.
CSE 486/586, Spring 2012 CSE 486/586 Distributed Systems Replication Steve Ko Computer Sciences and Engineering University at Buffalo.
Replication (1). Topics r Why Replication? r System Model r Consistency Models – How do we reason about the consistency of the “global state”? m Data-centric.
Group Communication A group is a collection of users sharing some common interest.Group-based activities are steadily increasing. There are many types.
Hwajung Lee. A group is a collection of users sharing some common interest.Group-based activities are steadily increasing. There are many types of groups:
Copyright © George Coulouris, Jean Dollimore, Tim Kindberg This material is made available for private study and for direct.
November NC state university Group Communication Specifications Gregory V Chockler, Idit Keidar, Roman Vitenberg Presented by – Jyothish S Varma.
Totally Ordered Broadcast in the face of Network Partitions [Keidar and Dolev,2000] INF5360 Student Presentation 4/3-08 Miran Damjanovic
EEC 688/788 Secure and Dependable Computing Lecture 10 Wenbing Zhao Department of Electrical and Computer Engineering Cleveland State University
Exercises for Chapter 15: COORDINATION AND AGREEMENT From Coulouris, Dollimore and Kindberg Distributed Systems: Concepts and Design Edition 3, © Addison-Wesley.
Reliable Communication Smita Hiremath CSC Reliable Client-Server Communication Point-to-Point communication Established by TCP Masks omission failure,
Replication and Group Communication. Management of Replicated Data FE Requests and replies C Replica C Service Clients Front ends managers RM FE RM Instructor’s.
Chapter 7: Consistency & Replication IV - REPLICATION MANAGEMENT By Jyothsna Natarajan Instructor: Prof. Yanqing Zhang Course: Advanced Operating Systems.
Computer Science 425 Distributed Systems (Fall 2009) Lecture 6 Multicast/Group Communication and Mutual Exclusion Section &12.2.
Lecture 10: Coordination and Agreement (Chap 12) Haibin Zhu, PhD. Assistant Professor Department of Computer Science Nipissing University © 2002.
Lecture 13: Replication Haibin Zhu, PhD. Assistant Professor Department of Computer Science Nipissing University © 2002.
Lecture 4-1 Computer Science 425 Distributed Systems (Fall2009) Lecture 4 Chandy-Lamport Snapshot Algorithm and Multicast Communication Reading: Section.
Fault Tolerance (2). Topics r Reliable Group Communication.
Indirect Communication Indirect Communication is defined as communication between entities in DS through intermediary with no direct coupling b/w sender.
Group Communication A group is a collection of users sharing some common interest.Group-based activities are steadily increasing. There are many types.
Distributed Systems Lecture 7 Multicast 1. Previous lecture Global states – Cuts – Collecting state – Algorithms 2.
Chapter 8 Fault Tolerance. Outline Introductions –Concepts –Failure models –Redundancy Process resilience –Groups and failure masking –Distributed agreement.
Distributed Computing Systems Replication Dr. Sunny Jeong. Mr. Colin Zhang With Thanks to Prof. G. Coulouris,
Replication Chapter Katherine Dawicki. Motivations Performance enhancement Increased availability Fault Tolerance.
Reliable multicast Tolerates process crashes. The additional requirements are: Only correct processes will receive multicasts from all correct processes.
Exercises for Chapter 11: COORDINATION AND AGREEMENT
Coordination and Agreement
Replication & Fault Tolerance CONARD JAMES B. FARAON
EEC 688/788 Secure and Dependable Computing
Indirect Communication
Indirect Communication Paradigms (or Messaging Methods)
Indirect Communication Paradigms (or Messaging Methods)
Presentation transcript:

Group Communication Phuong Hoai Ha & Yi Zhang Introduction to Lab. assignments March 24 th, 2004

DSII Lab.2 Today’s schedule Introduction to group communication Desired group communication Multicast communication Group membership service

DSII Lab.3 Coordination in distributed systems Coordination is needed by distributed systems but hard to achieve: –Events happen concurrently –Communication links are not reliable –Computers can crash –New nodes can join the systems –Asynchronous environments  respect an efficient way to coordinate a group of processes

DSII Lab.4 Group communication What is a group? –A number of processes which cooperate to provide a service. –An abstract identity to name a collection of processes. Group Communication –For coordination among processes of a group.

DSII Lab.5 Who Needs Group Communication? Highly available servers (client-server) Database Replication Multimedia Conferencing Online Game Cluster management …

DSII Lab.6 Distributed Web Server High availability

DSII Lab.7 Online Game Fault-tolerance, Order

DSII Lab.8 Different Comm. Methods Unicast –Point-to-Point Communication –Multiple copies are sent. Broadcast –One-to-All Communication –Abuse of Network Bandwidth Multicast –One-to-multiple Communication

DSII Lab.9 Today’s schedule Introduction to group communication Desired group communication Multicast communication Group membership service

DSII Lab.10 Group Comm. Properties Name Abstraction Efficiency Delivery Guarantee –Ordering –Failure behavior –Reliability –… Dynamic Membership  Multicast  Group membership service

DSII Lab.11 Properties of Communication Ordering –Total order, causal order Failure behavior –Failure atomicity Reliability –Validity, integrity, agreement

DSII Lab.12 Properties of Group Name of group Addresses of group members Dynamic group membership Options: –Peer group or client-server group –Closed or Open Group

DSII Lab.13 Peer Group All the members are equal. All the members send messages to the group. All the members receive all the messages.

DSII Lab.14 Client-Server Group Replicated servers. Clients do not care which server answers.

DSII Lab.15 Desired Group Communication Name Abstraction Efficiency Delivery Guarantees Dynamic Membership  Multicast  Reliability, Ordering  Group membership service

DSII Lab.16 Today’s schedule Introduction to group communication Desired group communication Multicast communication Group membership service

DSII Lab.17 Multicast communication Send message over a distribution tree. Use network hardware support for broadcast or multicast when it is available. Minimize the time and bandwidth utilization

DSII Lab.18 Reliability Correct processes: those that never fail. Integrity A correct process delivers a message at most once. Validity A message from a correct process will be delivered by the process eventually. Agreement A message delivered by a correct process will be delivered by all other correct processes in the group.  Validity + Agreement = Liveness

DSII Lab.19 Ordering Assumptions: a process belongs to at most one group. FIFO –if m p  m’ p, all correct processes that deliver m’ p will deliver m p before m’ p. Causal –if m  m’, all correct processes that deliver m’ will deliver m before m’. Total –if a correct process delivers m before m’, all other correct processes that deliver m’ will deliver m before m’. p1p1 p2p2 p3p3 p1p1 p2p2 p3p3 p1p1 p2p2 p3p3

DSII Lab.20 Examples Assumption: –Reliable one-to-one send operation (e.g. TCP) Basic multicast –Requirement: All correct processes will eventually deliver the message from the correct multicaster. –Implementation: B-multicast( g, m):  p  g: send( p, m); On receive( m) at p: B-deliver( m) at p.  Properties: integrity, validity.

DSII Lab.21 Examples (cont.) Reliable multicast –Requirements: integrity, validity, agreement –Implementation: Received := {}; R-multicast( g, m) at process p: B-multicast( g, m); On B-deliver( m) at process q if( m  Received) Received := Received  {m}; if( q  p) B-multicast( g, m); R-deliver( m); end if  Inefficient: each message is sent |g| times to each process –Encourage to implement in more efficient ways (e.g. IP-multicast, etc.)

DSII Lab.22 Examples (cont.) FIFO-ordered multicast: –Assumption: a process belongs to at most one group. –Implementation: Local variables at p: S p = 1, R p [ |g| ]={0}; FO-multicast( g, m) at p: B-multicast( g, ); S p ++; On B-deliver( ) from q: if( S = R p [q] + 1) FO-deliver( m); R p [q] := S; else if( S > R p [q] + 1) place in the queue until S = R p [q] + 1; FO-deliver( m); R p [q] := S; end if –Encourage to implement causally ordered, totally ordered multicasts.

DSII Lab.23 Today’s schedule Introduction to group communication Desired group communication Multicast communication Group membership service

DSII Lab.24 Group membership service Four tasks: –Interface for group membership changes –Failure detector –Group address expansion –Membership change notification Group partition: –Primary-partition –Partitionable Group address expansion Multicast Communication Group membership management

DSII Lab.25 Group views Group views: –Lists of the current ordered group members –A new one is generated when processes join or leave/fail. View delivery –when the membership changes & a member is notified of it. –Requirements Order –if p delivers v(g)  v’(g), no other process delivers v’(g)  v(g). Integrity –if p delivers v(g), p  v(g). Non-triviality –if q joins a group and becomes indefinitely reachable from p, eventually q is always in the view p delivers. View-synchronous group communication –Extend the reliable multicast semantics with group views.

DSII Lab.26 Examples Ensemble: reliable group communication toolkit –Next talk

DSII Lab.27 IP-multicast Multicast: –Yes: efficiency –No: Reliability Ordering Group membership service: –Yes: Interface for group membership change Group address expansion –No: Failure detector Membership change notification

DSII Lab.28 References Distributed Systems: Concepts and Design by G. Coulouris et al., ISBN –Section 4.5 Group Communication –Section 11.4 Multicast Communication –Section Group Communication …