Title: FineGrained Layered Multicast
1Fine-Grained Layered Multicast
- John Byers
- Dept. of Computer Science, Boston University
- www.cs.bu.edu/byers
- Digital Fountain, Inc.
- www.digitalfountain.com
- Joint work with Michael Luby and Michael
Mitzenmacher
2Multicast for Content Delivery
Sender
Receivers
- Pro one copy of packet per link -- saves
bandwidth - Cons challenges of reliability and congestion
control, especially as session size scales
3Congestion Control Goals
- End-to-end No special router support
- Multi-rate Heterogeneous reception rates
supported. - Non-adaptive sender Sender behaves no
differently whether one or a million receivers. - Same outgoing packets independent of number of
hosts - Receiver-driven Each receiver autonomously
adjusts reception rate - Friendly to the network (bursts, buffer
overflows) and fair to other flows (e.g. TCP)
4Base Solution Layered Multicast (initiated by
McCanne, Jacobson, Vetterli, SIGCOMM 1997)
- Basic Ideas
- Set of multicast groups for each session with
geometrically increasing rates (1, 1, 2, 4, 8,
16, ..). - Receivers adjust reception rate by joining and
leaving multicast groups in cumulative order. - Challenges
- how to ensure TCP-friendliness?
- how to coordinate receivers behind a bottleneck?
- only works when content encoding tolerates
rate-adaptation (layered video coding, FEC codes).
5One Instantiation RLC (Vicisano, Rizzo,
Crowcroft - Infocom 1998)
6RLC Protocol Basics
- Sender places increase signals in packets.
- Cumulative increase signals signal j applies to
all layers up through j. - Frequency of increase signals inversely
proportional to layer rate. - Receiver measures loss, observes increase
signals, and adjusts reception rate accordingly - Leave highest layer if loss.
- Join the next highest layer at an increase signal
if no loss.
7Experience with RLC
- Coarse-grained approximation to additive
increase. - TCP-like in simulation.
- Early analysis/notions of TCP-friendliness.
- Adverse network impacts in practice
- Doubling causes abrupt rate increases.
- Large buffer overflows bursts of dropped
packets. - Also, IGMP leave latency can be substantial (not
specific to the RLC scheme). - Addressed in NGC 2000 companion paper.
8Fine-Grained Layered Multicast
- Receiver-driven, AIMD, multirate multicast
congestion control
9What is Fine-Grained?
- So far...
- Cumulative subscription levels.
- Rate increases are multiplicative.
- Desired behavior more like TCP.
- Additive increase, multiplicative decrease.
- We give efficient non-cumulative layering scheme.
- What are the tradeoffs?
- We provide a framework in which to find out.
- Caveat Only applications which can take
advantage of non-cumulative layering stand to
benefit.
10Digital Fountain Approach (Byers, Luby,
Mitzenmacher, Rege SIGCOMM 98)
n
Source
Encoding Stream
Transmission
Received
n
Can recover file from any set of n encoding
packets.
Message
n
11Cumulative vs. Non-cumulative
- Standard cumulative layering
- Powers of two achievable.
- Example non-cumulative layering
- Any integral rate achievable by binary counting.
- But undesirable across other metrics
1, 1, 2, 4, 8, ...
1, 2, 4, 8, ...
12Four Metrics of a Layering Scheme
- Density
- Reception granularity
- Dilation
- Join/leave complexity
13Density
- Definition number of layers to support rates in
normalized interval 1, R. - Measures scalability of multicast group
utilization. - Example 1, 1, 2, 4, 8, scheme has logarithmic
density in R. - Schemes with polynomial density require use of an
unscalable number of multicast groups.
14Reception Granularity
- Definition worst case ratio between receivers
desired rate k and maximum achievable rate j lt k. - Measures fine-grainedness.
- Example 1, 1, 2, 4, 8, scheme with cumulative
layering has reception granularity of approx 2.
A receiver who desires 15 can receive only 8. - Example a 1, 2, 4, 8, scheme with
non-cumulative layers has (optimal) reception
granularity 1.
15Dilation (of a link)
- Definition ratio of total bandwidth demanded by
all downstream receivers over maximum rate
demanded by one downstream receiver. - Measure of wasted bandwidth.
Cumulative Dilation 1
Non-Cumulative Dilation 16/9
16Join/Leave Complexity
- Definition worst-case number of join/leave
operations to perform additive increase/multiplica
tive decrease. - Measures signalling overhead.
- Example Additive increase in non-cumulative
1, 2, 4, 8, ... scheme can require
joining/leaving log R layers.
17Comparison of Schemes
Density Granularity
Dilation AIMD Cumulative
log R 2 1
N/A
Non-Cum log R 1
near 2 log R
Fibonacci O(log R) 1
near 1.62 O(1)
18Fibonacci Layering Sequences
- B0 1, B1 2,
- Bj Bj-1 Bj-2 1 for j gt 1.
- Sequence Fib1 1, 2, 4, 7, 12, 20, 34,
- Increase by 1 Find smallest unsubscribed layer
j. Join layer j, leave layers j-1 and j-2.
19Fibonacci Layering Sequences
- Multiplicative decrease Drop top layer.
- Approximate factor of two decrease
- What is approximate?
- Key fact Subscription sequences (as a bit
string) do not have runs of zeroes longer than 2. - Informal intuition Resulting density of
subscription sequences bounds decrease factor. - Decreases drop rate by a factor between 0.39 and
0.62. - Better precision can be obtained with more
joins/leaves
20Improved Non-cumulative Fine-Grained Schemes
- Fibonacci scheme
- Wide range of variations possible
Density Granularity Dilation
Complexity O(log R) 1
near 1.62 O(1)
Exponential growth for Fibonacci numbers
Golden ratio
21Fibonacci Congestion Control Analysis
- Need average-case analysis over range of drop
rates for TCP-fairness. - Our scheme should behave fairly with TCP.
- One measure long term average rate.
- Use general TCP(a,b) analysis.
- Additive increase a, multiplicative decrease b.
- Derive equation for average throughput as
function of a, b, and random loss rate p. - See e.g., Yang Lam, ICNP 00 or Floyd,
Handley, Padhye 00 manuscript.
22Fibonacci Congestion Control Analysis
- Multicast has no specific round time
- Choose aggressive parameter Q corresponding to
target TCP round trip time. - Increase by 1 every Q seconds.
- Use TCP(a,b) analysis to set parameters which are
fair to an equally aggressive TCP.
23Equations The Bottom Line
- For a target TCP RTT R, base layer bandwidth B0
and golden ratio g set - to achieve TCP-friendly throughput, using
24Fibonacci vs. RLC
- Fibonacci layering has smoother behavior.
Fibonacci
RLC
25Fibonacci and TCP
- Similar sawtooth behavior
26Conclusions
- Fine-grained provides AIMD multirate congestion
control using non-cumulative layers. - Framework and metrics for layering schemes.
- Only applications which can take advantage of
non-cumulative layering stand to benefit - FEC-encoded content (Digital Fountain style) is
one. - Are there others?
27For more informationwww.cs.bu.edu/byerswww.di
gitalfountain.comThank you.