reliable multicast group

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

Upload: ismael

Post on 15-Jan-2016

32 views

Category:

Documents


0 download

DESCRIPTION

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. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Reliable Multicast Group

Dec 4, 2007

Reliable Multicast Group

Neelofer T.

CMSC 621

Page 2: Reliable Multicast Group

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

Page 3: Reliable Multicast Group

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

Page 4: Reliable Multicast Group
Page 5: Reliable Multicast Group

Large Scale Group

• Issues with simple ACK based, point to point approach:– Feedback implosion

– Receivers spread over WANs

– Congestion due to repair messages

Page 6: Reliable Multicast Group

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)

Page 7: Reliable Multicast Group

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

Page 8: Reliable Multicast Group

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

Page 9: Reliable Multicast Group

• Weaknesses:– Synchronizing feedback of multiple receivers requires

scheduling or timers across the WAN

– Multicast feedback affects processes which have received the message

Page 10: Reliable Multicast Group

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

Page 11: Reliable Multicast Group

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

Page 12: Reliable Multicast Group
Page 13: Reliable Multicast Group

• 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

Page 14: Reliable Multicast Group

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

Page 15: Reliable Multicast Group

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

Page 16: Reliable Multicast Group

• 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

Page 17: Reliable Multicast Group

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

Page 18: Reliable Multicast Group

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

Page 19: Reliable Multicast Group

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

Page 20: Reliable Multicast Group
Page 21: Reliable Multicast Group

Message Ordering• Unordered multicasts

– Messages can be delivered in any order

Page 22: Reliable Multicast Group

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

order

Page 23: Reliable Multicast Group

• 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

Page 24: Reliable Multicast Group

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

Page 25: Reliable Multicast Group

References• Tanenbaum and Steen, “Distributed Systems Principles and

Paradigms”• Internet Research Task Force, Reliable Multicast Research

Grouphttp://www.irtf.org/charter?gtype=old-rg&group=rmrg

• 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. 165-168, 1999

Page 26: Reliable Multicast Group

• 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”

• http://rmt.motlabs.com/• 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”

Page 27: Reliable Multicast Group

???