Spring 2009 L 21 Multicast L 15 103102 Srinivasan Seshan 2002 2 Overview WhatWhy Multicast IP Multicast Service Basics Multicast Routing Basics DVMRP Overlay Multicast Reliability ID: 388175
Download Presentation The PPT/PDF document "15-446 Distributed Systems" is the property of its rightful owner. Permission is granted to download and print the materials on this web site for personal, non-commercial use only, and to display it on your personal computer provided you do not modify the materials and that you retain all copyright notices contained in the materials. By downloading content from our website, you accept the terms of this agreement.
Slide1
15-446 Distributed SystemsSpring 2009
L-21 MulticastSlide2
L -15; 10-31-02
© Srinivasan Seshan, 2002
2
OverviewWhat/Why MulticastIP Multicast Service Basics
Multicast Routing BasicsDVMRPOverlay MulticastReliabilitySlide3
L -15; 10-31-02
© Srinivasan Seshan, 2002
3
R1
Implosion
S
R3
R4
R2
2
1
R1
S
R3
R4
R2Packet 1 is lostAll 4 receivers request a resend
Resend requestSlide4
L -15; 10-31-02
© Srinivasan Seshan, 2002
4
RetransmissionRe-transmitter
Options: sender, other receiversHow to retransmitUnicast, multicast, scoped multicast, retransmission group, …Problem: ExposureSlide5
L -15; 10-31-02
© Srinivasan Seshan, 2002
5
R1
Exposure
S
R3
R4
R2
2
1
R1
S
R3
R4R2
Packet 1 does not reach R1;Receiver 1 requests a resendPacket 1 resent to all 4 receivers1
1
Resend request
Resent packetSlide6
L -15; 10-31-02
© Srinivasan Seshan, 2002
6
Ideal Recovery Model
S
R3
R4
R2
2
1
S
R3
R4
R2
Packet 1 reaches R1 but is lost before reaching other Receivers
Only one receiver sends NACK to the nearest S or R with packet
Resend request
11
Resent packetRepair sent only to those that need packetR1R1Slide7
L -16; 11-5-02
© Srinivasan Seshan, 2002
7
OverviewScalable Reliable Multicast
Congestion ControlSlide8
L -16; 11-5-02
© Srinivasan Seshan, 2002
8
SRMOriginally designed for wb
Receiver-reliableNACK-basedEvery member may multicast NACK or retransmissionSlide9
L -16; 11-5-02
© Srinivasan Seshan, 2002
9
R1
SRM Request Suppression
S
R3
R2
2
1
R1
S
R3
R2
Packet 1 is lost; R1 requests resend to Source and ReceiversPacket 1 is resent; R2 and R3 no longer have to request a resend1
X
X
Delay varies by distance
X
Resend request
Resent packetSlide10
L -16; 11-5-02
© Srinivasan Seshan, 2002
10
Deterministic Suppression
d
d
d
d
3d
Time
data
nack
repair
d
4d
d
2d
3d
= Sender
= Repairer= RequestorDelay = C1dS,R Slide11
L -16; 11-5-02
© Srinivasan Seshan, 2002
11
SRM Star Topology
S
R2
2
1
R3
Packet 1 is lost; All Receivers request resends
Packet 1 is resent to all Receivers
X
R4
Delay is same length
S
R2
1
R3
R4
Resend requestResent packetSlide12
L -16; 11-5-02
© Srinivasan Seshan, 2002
12
SRM: Stochastic Suppression
data
d
d
d
d
Time
NACK
repair
2d
session msg
0
1
2
3
Delay = U[0,D2] dS,R= Sender
= Repairer= RequestorSlide13
L -16; 11-5-02
© Srinivasan Seshan, 2002
13
SRM (Summary)NACK/Retransmission suppression
Delay before sendingDelay based on RTT estimationDeterministic + Stochastic componentsPeriodic session messagesFull reliabilityEstimation of distance matrix among membersSlide14
L -16; 11-5-02
© Srinivasan Seshan, 2002
14
What’s Missing?
Losses at link (A,C) causes retransmission to the whole groupOnly retransmit to those members who lost the packet[Only request from the nearest responder]
Sender
Receiver
A
B
E
F
S
C
D0.990000
0Slide15
L -16; 11-5-02
© Srinivasan Seshan, 2002
15
Local RecoveryDifferent techniques in various systems
Application-level hierarchyFixed v.s. dynamicTTL scoped multicastRouter supportedSlide16
L -16; 11-5-02
© Srinivasan Seshan, 2002
16
OverviewScalable Reliable Multicast
Congestion ControlSlide17
L -16; 11-5-02
© Srinivasan Seshan, 2002
17
Multicast Congestion Control
What if receivers have very different bandwidths?Send at max?Send at min?Send at avg?
R
R
R
S
???Mb/s
100Mb/s
100Mb/s
1Mb/s
1Mb/s
56Kb/s
RSlide18
L -16; 11-5-02
© Srinivasan Seshan, 2002
18
Video Adaptation: RLMReceiver-driven Layered Multicast
Layered video encodingEach layer uses its own mcast groupOn spare capacity, receivers add a layerOn congestion, receivers drop a layerJoin experiments used for shared learningSlide19
L -16; 11-5-02
© Srinivasan Seshan, 2002
19
Layered Media Streams
S
R
R1
R2
R3R
10Mbps
10Mbps
512Kbps
128Kbps
10MbpsR3 joins layer 1, fails at layer 2R2 join layer 1,join layer 2
fails at layer 3R1 joins layer 1,joins layer 2 joins layer 3Slide20
L -16; 11-5-02
© Srinivasan Seshan, 2002
20
Drop Policies for Layered Multicast
PriorityPackets for low bandwidth layers are kept, drop queued packets for higher layersRequires router support Uniform (e.g., drop tail, RED)Packets arriving at congested router are dropped regardless of their layerWhich is better?Intuition vs. reality!Slide21
L -16; 11-5-02
© Srinivasan Seshan, 2002
21
RLM IntuitionSlide22
L -16; 11-5-02
© Srinivasan Seshan, 2002
22
RLM IntuitionUniform
Better incentives to well-behaved usersIf oversend, performance rapidly degradesClearer congestion signalAllows shared learningPriorityCan waste upstream resourcesHard to deploy
RLM approaches optimal operating pointUniform is already deployedAssume no special router supportSlide23
L -16; 11-5-02
© Srinivasan Seshan, 2002
23
RLM Join Experiment
Receivers periodically try subscribing to higher layerIf enough capacity, no congestion, no drops Keep layer (& try next layer)If not enough capacity, congestion, drops Drop layer (& increase time to next retry)What about impact on other receivers?Slide24
L -16; 11-5-02
© Srinivasan Seshan, 2002
24
Join Experiments
1
2
3
4
Time
LayerSlide25
L -16; 11-5-02
© Srinivasan Seshan, 2002
25
RLM Scalability?What happens with more receivers?
Increased frequency of experiments?More likely to conflict (false signals)Network spends more time congestedReduce # of experiments per host?Takes longer to convergeReceivers coordinate to improve behavior