festive - dash

28
FESTIVE Fairness, Efficiency and Stability in DASH Yigit UNALLAR

Upload: yigit-unallar

Post on 05-Apr-2017

25 views

Category:

Engineering


0 download

TRANSCRIPT

Page 1: Festive - DASH

FESTIVEFairness, Efficiency and Stability in DASHYigit UNALLAR

Page 2: Festive - DASH

• There are 3 goals to achieve:✓ Fairness,✓ Efficiency (Highest feasible set of bitrates), ✓ Stability (Avoid frequent bitrate switches),

• Perspective:✓ Scheduling a specific video chunk to be downloaded,✓ Bitrate selection for each chunk, ✓ BW estimation,

Introduction

Page 3: Festive - DASH

• Problems:✓ False reflection of network as a feedback,✓ Periodic chunk selection, ✓ Stateless bitrate selection, ✓ Unnecessary bitrate switches,

Introduction

Page 4: Festive - DASH

• Recommendations:✓ Randomized chunk scheduling,✓ Stateful bitrate selection,✓ Delayed update approach, ✓ BW estimator via harmonic mean,

Introduction

Page 5: Festive - DASH

Compared to alternatives,

• Fairness by 40%,• Stability by 50%,• Efficiency by 10%

improved.

Page 6: Festive - DASH

• Inefficiency,

• Unfairness,

• Instability,

w(d) = k − d, linear penalty to more recent switch!

Background& Motivation

Page 7: Festive - DASH

Performances

Quite unfair, although it is the best player per the above results!

Page 8: Festive - DASH

Performances

Page 9: Festive - DASH

• Application-layer,

• Receiver driven,

• Decentralized adaptation.

Design Space

Page 10: Festive - DASH

• Chunk Scheduling:✓ Immediate Download(Ramp-up state, Steady State)

➢ Greedy download @ high bitrates increase BW costs, ➢ Greedy download @ low bitrates preclude switching to

higher rate,✓ Periodic Download,✓ Random Scheduling,

Design

Page 11: Festive - DASH

• Chunk Scheduling:✓ Immediate Download,✓ Periodic Download,

➢ Constant playback buffer to minimize rebuffering,

➢ Biased view of a network state!! ✓ Random Scheduling,

Design

Page 12: Festive - DASH

Design

Page 13: Festive - DASH

• Chunk Scheduling:✓ Immediate Download,✓ Periodic Download,✓ Random Scheduling,

➢ Randbuf at the range of (targetbuf − δ, targetbuf + δ],

Thus, each player is not biased by its start time!

Design

Page 14: Festive - DASH

• Bitrate Selection:➢ Stateless Selection ( Highest bitrate lower than the

estimated BW),❖ Is current bitrate ramping up or down?

❖ Players using a higher bitrate observe a higher bandwidth!?

❖ Converging to an equilibrium state that is inherently unfair!!

BW=2Mbps,Bitrates= 600,1200,1500kbps

Design

Page 15: Festive - DASH

• Bitrate Selection:➢ Stateful Selection,

❖ Players with lower bitrate to ramp up aggressively,❖ Players with higher bitrate to ramp down aggressively,

In our design, ➢ We keep the rate of decrease a constant function, ➢ Gradual switching strategy,

❖ Only to next highest level,❖ Lower rate of upward switches at higher bitrates,

Design

Page 16: Festive - DASH

• Delayed Update:➢ Balancing efficiency and fairness on one hand vs.

stability on the other,➢ Computing how close the efficient or stable allocation the

bcur and the reference bitrate bref are.

Design

w, estimated BW

n, the number of switches in the last k=20 secsthe more switches, the more penalty of adding a new switch!

Page 17: Festive - DASH

• The combined score is simply the weighted average:

Design

▪ Computed for both the current and reference bitrates and picked the one with lower combined score,

▪ α here provides a tunable knob to control the tradeoff,

Page 18: Festive - DASH

• Bandwidth Estimation:➢ Smoothed value rather than instantaneous throughput,➢ Be robust to outliers,

✓ Harmonic mean of the last 20 samples to minimize the impact of outliers,

Design

Page 19: Festive - DASH

The Fair, Efficient, Stable, adapTIVE Algorithm

Page 20: Festive - DASH

• Harmonic Bandwidth Estimator,➢ Harmonic mean of the last k=20 throughput estimates,

• Increase the reference bitrate at bitrate level k only after k chunks,

• Decrease(bcurrent=0.85 x bestimated) the bitrate level after every chunk if a decrease is necessary, thus bitrates eventually converge to a fair allocation,

• Delayed update calculation α = 12,• Randomized scheduler,

➢ playback buffer < target buffer, download immediately,➢ Otherwise, download with delay, thus, there is no start

time biases.

Festive

Page 21: Festive - DASH

• Implemented on OSMF by Adobe in AS,

Evaluation

Inefficiency, as the parameters are customized for chunk size and bitrate levels,

Page 22: Festive - DASH

• Comparison w/ other players,➢ In order to do a head-to-head comparison, players emulated,➢ The chunk lengths and bitrate levels vary across commercial players,

Evaluation

3 Players sharing 3Mbps of bottleneck

Page 23: Festive - DASH

• Component-wise Validation,➢ Bandwidth Estimator,

➢ Chunk Scheduling,➢ Stateful Bitrate Selection,➢ Delayed Update,

Evaluation

Using the update function bwnext = 0.9bwprev + 0.1bwcur

Page 24: Festive - DASH

• Component-wise Validation,➢ Bandwidth Estimator,➢ Chunk Scheduling,

➢ Stateful Bitrate Selection,➢ Delayed Update,

Evaluation

Periodic S. leads to large bias in the estimated bw, and unfairnessin bitrate selection!

Page 25: Festive - DASH

• Component-wise Validation,➢ Bandwidth Estimator,➢ Chunk Scheduling,➢ Stateful Bitrate Selection,

➢ Delayed Update,

Evaluation

Stateful bitrate selectionImproves fairness with Minimal impact on Efficiency!

Page 26: Festive - DASH

• Component-wise Validation,➢ Bandwidth Estimator,➢ Chunk Scheduling,➢ Stateful Bitrate Selection,➢ Delayed Update,

Evaluation

Knee pts using α = 12!Larger α provides higherEfficiency at the cost of Stability!

Page 27: Festive - DASH

Performance of Festive& Baseline Player

2-30 concurrent players sharing a 10Mbps bottleneck link

Page 28: Festive - DASH

Any Questions?