fine-grained layered multicast john byers dept. of computer science, boston university byers digital...

26
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

Post on 21-Dec-2015

226 views

Category:

Documents


2 download

TRANSCRIPT

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

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

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)

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

One Instantiation: RLC (Vicisano, Rizzo, Crowcroft - Infocom 1998)

0

Time

1 2 3 4

Aggregaterate

0

1

5 6

2

3

4

5

6

Base layer

Layer 1

Layer 2

Increasesignal = 1

Increasesignal = 2

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.

Fine-Grained Layered Multicast

Receiver-driven, AIMD, multirate multicast congestion control

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.

Digital Fountain Approach (Byers, Luby, Mitzenmacher, Rege: SIGCOMM ’98)

Encoding Stream

Received

Message

Sourcen

n

n Can recover filefrom any set of n encoding packets.

Transmission

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

Four Metrics of a Layering Scheme

• Density

• Reception granularity

• Dilation

• Join/leave complexity

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.

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.

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,41,8

1,4

1,1,2,4

2,4

1,1,2,4,8

Cumulative: Dilation = 1 Non-Cumulative: Dilation = 16/9

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.

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

Fibonacci Layering Sequences

• B0 = 1, B1 = 2, • Bj = Bj-1 + Bj-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.

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

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 ratioExponential growthfor Fibonacci numbers

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

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.

Equations: The Bottom Line

• For a target TCP RTT R, base layer bandwidth B0 and golden ratio g set:

to achieve TCP-friendly throughput, using

)1(3

)1( 02

g

BgRQ

bpR

abbaTCP

2

2),(

Fibonacci vs. RLC

• Fibonacci layering has smoother behavior.

Fibonacci RLC

Fibonacci and TCP

• Similar sawtooth behavior

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?

For more information:

www.cs.bu.edu/~byerswww.digitalfountain.com

Thank you.