Dec 4, 2007 Reliable Multicast Group Neelofer T. CMSC 621.

Slides:



Advertisements
Similar presentations
Fault Tolerance CSCI 4780/6780. Reliable Group Communication Reliable multicasting is important for several applications Transport layer protocols rarely.
Advertisements

Push Technology Humie Leung Annabelle Huo. Introduction Push technology is a set of technologies used to send information to a client without the client.
1 CS 194: Distributed Systems Process resilience, Reliable Group Communication Scott Shenker and Ion Stoica Computer Science Division Department of Electrical.
Umut Girit  One of the core members of the Internet Protocol Suite, the set of network protocols used for the Internet. With UDP, computer.
Chi-Cheng Lin, Winona State University CS 313 Introduction to Computer Networking & Telecommunication Chapter 6 Transport Layer.
Reliable Group Communication Quanzeng You & Haoliang Wang.
Ranveer Chandra , Kenneth P. Birman Department of Computer Science
Reliability on Web Services Presented by Pat Chan 17/10/2005.
EEC-484/584 Computer Networks Lecture 12 Wenbing Zhao (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer.
EEC-484/584 Computer Networks Lecture 12 Wenbing Zhao (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer.
EEC-484/584 Computer Networks Lecture 14 Wenbing Zhao (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer.
EEC-484/584 Computer Networks Lecture 12 Wenbing Zhao (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer.
EEC-484/584 Computer Networks Lecture 14 Wenbing Zhao (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer.
Network Multicast Prakash Linga. Last Class COReL: Algorithm for totally-ordered multicast in an asynchronous environment, in face of network partitions.
William Stallings Data and Computer Communications 7 th Edition (Selected slides used for lectures at Bina Nusantara University) Transport Layer.
Anonymous Gossip: Improving Multicast Reliability in Mobile Ad-Hoc Networks Ranveer Chandra (joint work with Venugopalan Ramasubramanian and Ken Birman)
Department of Electronic Engineering City University of Hong Kong EE3900 Computer Networks Transport Protocols Slide 1 Transport Protocols.
CS335 Networking & Network Administration Tuesday, April 20, 2010.
Multicast Networking 2 References Multicast Networking and Applications Miller, C. Kenneth Addison-Wesley, 1999 Computer Networking:
WXES2106 Network Technology Semester /2005 Chapter 8 Intermediate TCP CCNA2: Module 10.
Error Checking continued. Network Layers in Action Each layer in the OSI Model will add header information that pertains to that specific protocol. On.
Multicast Transport Protocols: A Survey and Taxonomy Author: Katia Obraczka University of Southern California Presenter: Venkatesh Prabhakar.
1.  A protocol is a set of rules that governs the communications between computers on a network.  Functions of protocols:  Addressing  Data Packet.
Process-to-Process Delivery:
1 Transport Layer Computer Networks. 2 Where are we?
CIS 725 Wireless networks. Low bandwidth High error rates.
Ming-Yu Jiang and Wanjiun Liao,IEEE ICC 2002 Family ACK Tree (FAT): A New Reliable Multicast Protocol for Mobile Ad Hoc Networks. Speaker : Wilson Lai.
A Randomized Error Recovery Algorithm for Reliable Multicast Zhen Xiao Ken Birman AT&T Labs – Research Cornell University.
6.1. Transport Control Protocol (TCP) It is the most widely used transport protocol in the world. Provides reliable end to end connection between two hosts.
1 Distributed Systems : Inter-Process Communication (Multicast communication) Dr. Sunny Jeong. With Thanks to Prof.
TCP Lecture 13 November 13, TCP Background Transmission Control Protocol (TCP) TCP provides much of the functionality that IP lacks: reliable service.
26-TCP Dr. John P. Abraham Professor UTPA. TCP  Transmission control protocol, another transport layer protocol.  Reliable delivery  Tcp must compensate.
University of the Western Cape Chapter 12: The Transport Layer.
Group Communication A group is a collection of users sharing some common interest.Group-based activities are steadily increasing. There are many types.
Copyright 2002, S.D. Personick. All Rights Reserved.1 Telecommunications Networking II Topic 20 Transmission Control Protocol (TCP) Ref: Tanenbaum pp:
TCP1 Transmission Control Protocol (TCP). TCP2 Outline Transmission Control Protocol.
Transport Layer Moving Segments. Transport Layer Protocols Provide a logical communication link between processes running on different hosts as if directly.
7/26/ Design and Implementation of a Simple Totally-Ordered Reliable Multicast Protocol in Java.
COP 4930 Computer Network Projects Summer C 2004 Prof. Roy B. Levow Lecture 3.
Chapter 5 Peer-to-Peer Protocols and Data Link Layer PART I: Peer-to-Peer Protocols ARQ Protocols and Reliable Data Transfer Flow Control.
Group Communication Group oriented activities are steadily increasing. There are many types of groups:  Open and Closed groups  Peer-to-peer and hierarchical.
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:
Chapter 24 Transport Control Protocol (TCP) Layer 4 protocol Responsible for reliable end-to-end transmission Provides illusion of reliable network to.
CS603 Fault Tolerance - Communication April 17, 2002.
Push Technology Humie Leung Annabelle Huo. Introduction Push technology is a set of technologies used to send information to a client without the client.
The Totem Single-Ring Ordering and Membership Protocol Y. Amir, L. E. Moser, P. M Melliar-Smith, D. A. Agarwal, P. Ciarfella.
Reliable Communication Smita Hiremath CSC Reliable Client-Server Communication Point-to-Point communication Established by TCP Masks omission failure,
Review of key networking techniques: –Reliable communication over unreliable channels –Error detection and correction –Medium access control –routing –Congestion.
EE689 Lecture 13 Review of Last Lecture Reliable Multicast.
Fault Tolerance (2). Topics r Reliable Group Communication.
TCP/IP1 Address Resolution Protocol Internet uses IP address to recognize a computer. But IP address needs to be translated to physical address (NIC).
Transmission Control Protocol (TCP) TCP Flow Control and Congestion Control CS 60008: Internet Architecture and Protocols Department of CSE, IIT Kharagpur.
Group Communication A group is a collection of users sharing some common interest.Group-based activities are steadily increasing. There are many types.
Reliable multicast Tolerates process crashes. The additional requirements are: Only correct processes will receive multicasts from all correct processes.
CMPE 252A: Computer Networks
The Transport Layer Implementation Services Functions Protocols
UNIT-V Transport Layer protocols for Ad Hoc Wireless Networks
Reliable group communication
Reliable Multicast Group
Chapter 5 Peer-to-Peer Protocols and Data Link Layer
Advanced Operating System
EEC 688/788 Secure and Dependable Computing
Computer Networks Topic :User datagram protocol Transmission Control Protocol -Hemashree S( )
EEC 688/788 Secure and Dependable Computing
EEC 688/788 Secure and Dependable Computing
Chapter 5 Peer-to-Peer Protocols and Data Link Layer
Lecture 4 Peer-to-Peer Protocols and Data Link Layer
Process-to-Process Delivery: UDP, TCP
Computer Networks Protocols
Error Checking continued
Presentation transcript:

Dec 4, 2007 Reliable Multicast Group Neelofer T. CMSC 621

What is Reliable Multicasting? Reliability could mean messages are delivered: –To each process –In same order –In timely manner –No duplicates Ensure reliability when –Processes enter/leave the group –Processes fail while communicating

Small Scale Group For small scale group: –Reliable, connection oriented, point-to-point connections are feasible –Messages have sequence numbers –Messages received in order –Receivers acknowledge messages –Request retransmission of missing messages –Sender keeps message in buffer till acknowledgement received

Large Scale Group Issues with simple ACK based, point to point approach: –Feedback implosion –Receivers spread over WANs –Congestion due to repair messages

Reliable Multicasting Challenges Reliable multicasting can cause more network congestion: –Than unicast group, because large amounts of data are transmitted to recipients distribute over WAN –Than unreliable multicast group, because of additional control messages ensuring reliability Protocol –TCP is point-to-point –Multicast is not connection oriented –UDP does not provide reliability –Applications have to offer reliability (over UDP)

NACK based approach Receiver sends feedback only for missing message Issues: –No guarantee of removal of feedback implosion –Sender is not aware of message having been delivered to entire group –Sender forced to keep transmitted messages in buffer “forever” to resolve retransmission requests

Non-Hierarchical Feedback control Approach: –Message loss detected by wide area application –Receivers only report missing messages –Feedback is multicast to group –Any other message will then suppress its feedback for the same message –Retransmission request is thus sent after random delay Strengths: –Controls feedback implosion, thus scaling well

Weaknesses: –Synchronizing feedback of multiple receivers requires scheduling or timers across the WAN –Multicast feedback affects processes which have received the message

SRM (Scalable Reliable Multicast) Improves scalability of Non hierarchical feedback control Receivers help each other Receiver multicasts retransmission request after a specific time period Closest neighbor with requested data will multicast the message Distant neighbors timeout later than the closest ones If data is not retransmitted by any other node when a node timesout, then a node multicasts the data All nodes are required to cache data

Hierarchical Feedback Control RMTP (reliable multicast transport protocol) Receivers partitioned into sub groups Group has only one sender Sub groups are subsequently organized as a tree Sender’s sub group forms the tree node Designated receivers act as coordinators for sub-groups Any reliable multicast protocol used for each sub group with the DR being a virtual sender DR maintains local buffer DR sends retransmission request for missing message to parent node’s DR DRs retransmit data to sub-group DR deletes message from buffer when all receivers in sub groups and all children acknowledge it

Advantages: –Scales well –Hierarchy of DRs reduces load on original sender Issues: –Tree construction –Trees also need to be modified dynamically –Implementing an approach to use any existing underlying network tree is not easy

PGM (Pragmatic General Multicast) Routers act as Designated receivers Hence easy to scale Simple NACK based protocol NACKs are unicast from receiver to nearsest router to routers along the way to the sender Sliding window of cached data at sender discarded after a time duration Ensures that all receivers can get reliable, ordered, duplicate data or can detect message loss Suited for applications where messages can join and leave group at any time

MFTP (Multicast FTP) Approach: –Provides reliable multicast of bulk data transfer without time constraint –Similar to RMTP –Also includes group setup protocol –Packet size is as large as possible with each packet having multiple data packets –Receivers collect all NACKs together and send to sender –Sender resends only the packets that were NACKed by all receivers, in second pass –Process continues till all receivers have all packets

Advantages: –Minimum control message flow –Data is sent at the rate of the network capacity –Scales well –Supports one hop networks like satellite networks too with high scalability Weakness –Cannot be used for applications like high timing constraints

ALC with FEC Receiver applications belong to various layers based on their data transfer rates Sender creates and sends packets based on the receiver’s data rate Receiver initiates communication and reconstructs objects from the packets Receivers join channels to receive data Parity packets generated which are used for repairs only On an average provides 2:1 load reduction due to congestion control

Atomic Multicast Reliability in presence of process failures: –Messages sent to all processes or none –All messages sent in same order to all processes When a process crashes while processing a message, all the remaining processes: –Either process the message –OR Discard it When the crashed process comes up: –No more processes are multicast till that process is completes registration with the group –Newly registered process is easily updated with the group state

Virtual Synchrony A message is associated with the group view of the sender Group view is the list of processes the sender had when multicasting the message All processes in the group have the same view View changes when a process enters or leaves the group No multicast can pass across a view change All messages in transit when a view change takes place are either completed before the change takes effect or disacrded

Message Ordering Unordered multicasts –Messages can be delivered in any order

FIFO-ordered multicasts –Messages from same process delivered in same order

Causally-ordered multicasts –Message causality is maintained –Can be implemented using vector timestamps Totally-ordered multicasts –Messages to all group members delivered in same order –Ordering of messages from a sender can be in any one of the above three ways

Conclusion Scalable reliable multicast with congestion control is an active research area for the Reliable Multicast Research Group (RMRG) in the Internet Research Task Force (IRTF) One of the reliability constraints is usually sacrificed Protocols used based on application needs Sender initiated protocols –Do not scale well –Have lower throughput –End to end latency worsens –Has to maintain state for receivers

References Tanenbaum and Steen, “Distributed Systems Principles and Paradigms” Internet Research Task Force, Reliable Multicast Research Group Adamson et al, “NACK-Oriented Reliable Multicast Protocol (NORM)”, RFC 3940 Adamson et al, “NACK-Oriented Reliable Multicast Protocol (NORM)”, Internet draft draft-ietf-rmt-pi-norm-00.txt Speakman et al,“PGM Reliable Transport Protocol Specification”, RFC 3208 Luby et al, “Asynchronous Layered Coding (ALC) Protocol Instantiation”, Internet draft draft-ietf-rmt-pi-alc-revised-05.txt Appala, Austen, “AN EVALUATION OF RELIABLE MULTICAST PROTOCOLS”, Proc. IEEE Southeastcon, pp , 1999

Adamson, Roca, “Security and Reliable Multicast Transport Protocols: Discussions and Guidelines”, Internet draft draft-ietf-rmt-sec-discussion-00.txt Paul, S., Sabnani, K. K., Lin, J. C., and Bhattacharyya, S. “Reliable Multicast Transport Protocol (RMTP)” IEEE Journal on Selected Areas in Communications, April 1997 Peled and Vardi, “Formal Techniques for Networked and Distributed Systems” C. Kenneth Miller, “Reliable Multicast Protocols and Applications”, The Internet Protocol Journal - Volume 1, No. 2 Gemmel et al, “The PGM Reliable Multicast Protocol” Wu, “Verification analysis of Reliable Multicast protocol”

???