Presentation is loading. Please wait.

Presentation is loading. Please wait.

Fine-Grained Layered Multicast John Byers Dept. of Computer Science, Boston University www.cs.bu.edu/~byers Digital Fountain, Inc. www.digitalfountain.com.

Similar presentations


Presentation on theme: "Fine-Grained Layered Multicast John Byers Dept. of Computer Science, Boston University www.cs.bu.edu/~byers Digital Fountain, Inc. www.digitalfountain.com."— Presentation transcript:

1 Fine-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

2 Multicast for Content Delivery Pro: one copy of packet per link -- saves bandwidth Cons: challenges of reliability and congestion control, especially as session size scales Sender Receivers

3 Congestion 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)

4 Base 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).

5 One Instantiation: RLC (Vicisano, Rizzo, Crowcroft - Infocom 1998) 0 Time 1234 Aggregate rate 0 1 56 2 3 4 5 6 Base layer Layer 1 Layer 2 Increase signal = 1 Increase signal = 2

6 RLC 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.

7 Experience 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.

8 Fine-Grained Layered Multicast Receiver-driven, AIMD, multirate multicast congestion control

9 What 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.

10 Digital Fountain Approach (Byers, Luby, Mitzenmacher, Rege: SIGCOMM ’98) Encoding Stream Received Message Source n n n Can recover file from any set of n encoding packets. Transmission

11 Cumulative 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,...

12 Four Metrics of a Layering Scheme Density Reception granularity Dilation Join/leave complexity

13 Density 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.

14 Reception Granularity Definition: worst case ratio between receiver’s desired rate k and maximum achievable rate j < 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.

15 Dilation (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. 1,1 1 1,1,2,4 1,1,2 1,1,2,4 1,8 1,4 1,1,2,4 2,4 1,1,2,4,8 Cumulative: Dilation = 1Non-Cumulative: Dilation = 16/9

16 Join/Leave Complexity Definition: worst-case number of join/leave operations to perform additive increase/multiplicative decrease. Measures signalling overhead. Example: Additive increase in non- cumulative 1, 2, 4, 8,... scheme can require joining/leaving log R layers.

17 Comparison of Schemes Density Granularity Dilation AIMD Cumulative log R 2 1 N/A Fibonacci O(log R) 1 near 1.62 O(1) Non-Cum log R 1 near 2 log R

18 Fibonacci Layering Sequences B 0 = 1, B 1 = 2, B j = B j-1 + B j-2 + 1 for j > 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.

19 Fibonacci 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

20 Improved 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) Golden ratio Exponential growth for Fibonacci numbers

21 Fibonacci 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].

22 Fibonacci 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.

23 Equations: The Bottom Line For a target TCP RTT R, base layer bandwidth B 0 and golden ratio g set: to achieve TCP-friendly throughput, using

24 Fibonacci vs. RLC Fibonacci layering has smoother behavior. Fibonacci RLC

25 Fibonacci and TCP Similar sawtooth behavior

26 Conclusions 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?

27 For more information: www.cs.bu.edu/~byers www.digitalfountain.com Thank you.


Download ppt "Fine-Grained Layered Multicast John Byers Dept. of Computer Science, Boston University www.cs.bu.edu/~byers Digital Fountain, Inc. www.digitalfountain.com."

Similar presentations


Ads by Google