CDNs are confronted with a sharp increase in traffic related to live video (channel) streaming. Previous theoretical models that deal with streaming
capacity problems do not capture the emerging reality faced by today’s CDNs, in particular rate-adaptive streaming. In this presentation, we identify a new, discretized streaming model for live video delivery in CDNs. For this model we formulate a general optimization problem. Then we study a practical scenario that occurs in real CDNs. We present a fast, easy to implement, and near-optimal algorithm with performance approximation ratios that are negligible for large network.
More details in:
http://enstb.org/~gsimon/Resources/algotel13.pdf
http://enstb.org/~gsimon/Resources/icccn13.pdf
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Fast Near-Optimal Delivery of Live Streams in CDN
1. Fast Near-Optimal Algorithm
for Delivering Multiple Live
Video Channels in CDNs
Jiayi Liu and Gwendal Simon
Telecom Bretagne
28/05/2013
2. Context : live stream delivery in CDN
Content Provider
encoders
ingest
server
CDN provider
origin
server
edge
servers
Clients
Content provider : content generation
CDN provider : content delivery
Clients : content consumption
2 / 25 Jiayi Liu DASH live streaming algorithm
3. Context : live stream delivery in CDN
3-tier CDN topology (Akamai CDN delivery network)
sources
reflectors
edge servers
3 / 25 Jiayi Liu DASH live streaming algorithm
4. Context : live stream delivery in CDN
3-tier CDN topology (Akamai CDN delivery network)
sources
reflectors
edge servers
Phase 1 : Sources transcode streams
Phase 2 : Reflectors deliver streams
Phase 3 : Edge servers offer streams to end users
3 / 25 Jiayi Liu DASH live streaming algorithm
5. Current trend
Diverse user devices
video service
ADSL/FTTH 3G
WiFi
4 / 25 Jiayi Liu DASH live streaming algorithm
6. Current trend
Rate adaptive streaming (DASH standard)
video
representation 1
representation 2
...
representation n
5 / 25 Jiayi Liu DASH live streaming algorithm
7. Current trend
Rate adaptive streaming (DASH standard)
video
representation 1
representation 2
...
representation n
bitrate
150 kbps
240 kbps
...
4540 kbps
5 / 25 Jiayi Liu DASH live streaming algorithm
8. Current trend
Rate adaptive streaming (DASH standard)
video
representation 1
representation 2
...
representation n
bitrate
150 kbps
240 kbps
...
4540 kbps
quality
low
high
5 / 25 Jiayi Liu DASH live streaming algorithm
9. Current trend
Rate adaptive streaming (DASH standard)
video service
ADSL/FTTH 3G
WiFi
6 / 25 Jiayi Liu DASH live streaming algorithm
10. Current trend
Rate adaptive streaming (DASH standard)
video service
ADSL/FTTH 3G
WiFi
Req_repHD Req_replow
Req_repmedium
6 / 25 Jiayi Liu DASH live streaming algorithm
12. Challenges
DASH high aggregated video bit-rate
Netflix has 14 representations with 15 Mbps/video
7 / 25 Jiayi Liu DASH live streaming algorithm
13. Challenges
DASH high aggregated video bit-rate
Netflix has 14 representations with 15 Mbps/video
Heavy transmission burden on CDN
CDN can be underprovisioned
7 / 25 Jiayi Liu DASH live streaming algorithm
14. Challenges
DASH high aggregated video bit-rate
Netflix has 14 representations with 15 Mbps/video
Heavy transmission burden on CDN
CDN can be underprovisioned
→ Challenges :
live DASH streaming in under-provisioned CDN
7 / 25 Jiayi Liu DASH live streaming algorithm
15. Outline
1. Discretized streaming capacity problem
2. A practical scenario and an algorithm
3. Evaluation
4. Conclusion
8 / 25 Jiayi Liu DASH live streaming algorithm
16. Avancement
1 Discretized streaming capacity problem
2 A practical scenario and an algorithm
3 Evaluation
4 Conclusion
9 / 25 Jiayi Liu DASH live streaming algorithm
17. Discretized streaming capacity problem
Goal : maximize the throughput of CDN
10 / 25 Jiayi Liu DASH live streaming algorithm
18. Discretized streaming capacity problem
Goal : maximize the throughput of CDN
previous work : streaming capacity problem
10 / 25 Jiayi Liu DASH live streaming algorithm
19. Discretized streaming capacity problem
Goal : maximize the throughput of CDN
previous work : streaming capacity problem
maximizing deliverable bit-rate in P2P network
elastic video bit-rate based
10 / 25 Jiayi Liu DASH live streaming algorithm
20. Discretized streaming capacity problem
Goal : maximize the throughput of CDN
previous work : streaming capacity problem
maximizing deliverable bit-rate in P2P network
elastic video bit-rate based
our work : discretized streaming capacity problem
10 / 25 Jiayi Liu DASH live streaming algorithm
21. Discretized streaming capacity problem
Goal : maximize the throughput of CDN
previous work : streaming capacity problem
maximizing deliverable bit-rate in P2P network
elastic video bit-rate based
our work : discretized streaming capacity problem
DASH : stream bit-rate predefined
throughput : the number delivered streams
stream utility : gain of edge server for stream
maximizing the utility of delivered streams
10 / 25 Jiayi Liu DASH live streaming algorithm
22. Problem formulation
Objective : max i,j,e αi,j
e · xi,j
e
di,j : i-th representation of the j-th channel
xi,j
e : indicates if edge server e receives di,j
αi,j
e : utility of edge server e on di,j
11 / 25 Jiayi Liu DASH live streaming algorithm
23. Problem formulation
Objective : max i,j,e αi,j
e · xi,j
e
di,j : i-th representation of the j-th channel
xi,j
e : indicates if edge server e receives di,j
αi,j
e : utility of edge server e on di,j
Problem definition
Delivery trees : Tij
Problem : Given the topology and capacity
constraints of a CDN, find delivery tree sets, {Tij},
such that i,j,e αi,j
e · xi,j
e is maximized.
ILP formulation and NP-complete complexity 1
1. Jiayi Liu and Gwendal Simon, Fast Near-Optimal Algorithm for Delive-
ring Multiple Live Video Channels in CDNs, ICCCN, 2013.
11 / 25 Jiayi Liu DASH live streaming algorithm
24. Avancement
1 Discretized streaming capacity problem
2 A practical scenario and an algorithm
3 Evaluation
4 Conclusion
12 / 25 Jiayi Liu DASH live streaming algorithm
27. A practical scenario
CDN full connectivity
Homogeneous CDN equipments capacity C
13 / 25 Jiayi Liu DASH live streaming algorithm
28. Bottom-up tree construction
One tree per stream ; one tree per reflector
border
reflectors
edge servers
intermediate
reflectors
source
14 / 25 Jiayi Liu DASH live streaming algorithm
29. Bottom-up tree construction
One tree per stream ; one tree per reflector
border
reflectors
edge servers
intermediate
reflectors
source
To deliver di (with bit rate λi) to gi edge servers :
Number of streams a node can forward : δi = C/λi
Number of border reflectors : mi = gi /δi
Number of intermediate reflectors : mi −1
δi −1
14 / 25 Jiayi Liu DASH live streaming algorithm
31. Greedy Algorithm
utility score per rate unit (uspru) : αi
e
λi
Iterate on uspru in decreasing order
15 / 25 Jiayi Liu DASH live streaming algorithm
32. Greedy Algorithm
utility score per rate unit (uspru) : αi
e
λi
Iterate on uspru in decreasing order
In each iteration :
A uspru with a certain edge server and stream
Estimate the number of reflectors needed
If the CDN can afford, continue ; else end.
15 / 25 Jiayi Liu DASH live streaming algorithm
33. Greedy Algorithm
utility score per rate unit (uspru) : αi
e
λi
Iterate on uspru in decreasing order
In each iteration :
A uspru with a certain edge server and stream
Estimate the number of reflectors needed
If the CDN can afford, continue ; else end.
Results : A set of edge servers, and number of
reflectors used in each tree
15 / 25 Jiayi Liu DASH live streaming algorithm
34. Analysis : approximate ratio
Wasted bandwidth for each tree :
border
reflectors
edge servers
intermediate
reflectors
source
Unused border reflector
capacity
Intermediate reflector
capacity
16 / 25 Jiayi Liu DASH live streaming algorithm
35. Analysis : approximate ratio
Unused border reflectors bandwidth =
total bandwidth (mi C) - used bandwidth
border
reflectors
edge servers
intermediate
reflectors
source
Used bandwidth ≥ (mi − 1)δi λi
C ≤ (δi + 1)λi
Unused border reflector bandwidth ≤ mi λi + C
17 / 25 Jiayi Liu DASH live streaming algorithm
36. Analysis : approximate ratio
Capacity of intermediate reflectors :
border
reflectors
edge servers
intermediate
reflectors
source
18 / 25 Jiayi Liu DASH live streaming algorithm
37. Analysis : approximate ratio
Capacity of intermediate reflectors :
border
reflectors
edge servers
intermediate
reflectors
source
• Connect to borders re-
flectors : mi λi
18 / 25 Jiayi Liu DASH live streaming algorithm
38. Analysis : approximate ratio
Capacity of intermediate reflectors :
border
reflectors
edge servers
intermediate
reflectors
source
• Connect to borders re-
flectors : mi λi
• Inter-intermediate reflec-
tors connection : ≤ mi λi
18 / 25 Jiayi Liu DASH live streaming algorithm
39. Analysis : approximate ratio
Capacity of intermediate reflectors :
border
reflectors
edge servers
intermediate
reflectors
source
• Connect to borders re-
flectors : mi λi
• Inter-intermediate reflec-
tors connection : ≤ mi λi
• Unused : ≤ C
18 / 25 Jiayi Liu DASH live streaming algorithm
40. Analysis : approximate ratio
Capacity of intermediate reflectors :
border
reflectors
edge servers
intermediate
reflectors
source
• Connect to borders re-
flectors : mi λi
• Inter-intermediate reflec-
tors connection : ≤ mi λi
• Unused : ≤ C
• Finally, ≤ 2mi λi + C
18 / 25 Jiayi Liu DASH live streaming algorithm
41. Analysis : approximate ratio
Wasted bandwidth for each tree ≤ 3miλi + 2C
19 / 25 Jiayi Liu DASH live streaming algorithm
42. Analysis : approximate ratio
Wasted bandwidth for each tree ≤ 3miλi + 2C
Wasted bandwidth for all trees ≤ 3Nr λ∗
+ 2NchNrpC
19 / 25 Jiayi Liu DASH live streaming algorithm
43. Analysis : approximate ratio
Wasted bandwidth for each tree ≤ 3miλi + 2C
Wasted bandwidth for all trees ≤ 3Nr λ∗
+ 2NchNrpC
Finally, S ≥ wasted
Nr C S∗
≥ Nr C−3Nr λ∗1
−2NchNrpC
Nr C S∗
= 1 − 3λ∗
C − 2NchNrp
Nr
S∗
1. λ∗
= maxi λi
19 / 25 Jiayi Liu DASH live streaming algorithm
44. Avancement
1 Discretized streaming capacity problem
2 A practical scenario and an algorithm
3 Evaluation
4 Conclusion
20 / 25 Jiayi Liu DASH live streaming algorithm
45. Setting
3 sources
20 to 100,000 reflectors
CDN network provisioning 70%
3 channels with 5 representations each
C = 200 Mbps
21 / 25 Jiayi Liu DASH live streaming algorithm
46. Evaluation
S∗
calculated based on a theoretical upper bound
Running time : less than 30 seconds
Approximate ratio : 0.978 for 200 reflectors ; 0.993 for 1000
reflectors
22 / 25 Jiayi Liu DASH live streaming algorithm
47. Avancement
1 Discretized streaming capacity problem
2 A practical scenario and an algorithm
3 Evaluation
4 Conclusion
23 / 25 Jiayi Liu DASH live streaming algorithm
48. Conclusion
Discretized streaming model for live DASH
streaming
ILP formulation and NP-Completeness
A fast and near-optimum algorithm
Future work
Define specific utility
Distributed algorithm
Live DASH streaming CDN system
24 / 25 Jiayi Liu DASH live streaming algorithm
49. 25 / 25 Jiayi Liu DASH live streaming algorithm