Provisioning Content Distribution Networks for Streaming Media Jussara M. Almeida Derek L. Eager...
-
date post
22-Dec-2015 -
Category
Documents
-
view
215 -
download
2
Transcript of Provisioning Content Distribution Networks for Streaming Media Jussara M. Almeida Derek L. Eager...
Provisioning Content Distribution Networks
for Streaming Media
Jussara M. Almeida
Derek L. Eager Michael Ferris Mary K.
Vernon
University of Wisconsin-MadisonUniversity of Saskatchewan
Outline
• Problem statement and motivation
• CDN delivery protocols and cost models
• Key results:– unconstrained proxy servers
– Cost-effectiveness of proxy servers
– proxy servers with limited space and bandwidth
• Conclusions and on-going work
Problem: Media CDN Design
Clients
Internet
Proxy Server
Clients
Proxy Server
Origin Server
Scalable streaming protocol: Bandwidth Skimming [EaVZ00]
Each proxy can store a media prefix of size f, 0 f 1
MulticastMulticast
Multicast or Unicast
Goal: insight into value of f that minimizes delivery cost
Motivating Example #1
048
121620
1 10 100 1000 10000Client Request Rate (N )
Requ
ired
Serv
er
Band
wid
th (
B)
BandwidthSkimming(b=2)
Example: 10 proxy servers, client request rate per proxy = 100
(total client request rate = 1000)
cost tradeoff: 10770 proxy streams vs. 12 origin streams
bandwidth needed to serve each client immediately:
Scalable Delivery Protocols
• BWSkim(b):– Proxy and origin use simple Bandwidth Skimming– b: client bandwidth (e.g., b=2 or b=1.2)
• BWSkim/U(b):– Proxy uses Bandwidth Skimming
– Origin uses unicast to the proxy.
• BWSkim+Batch(b):
– If 0 f 1: clients use one unit of bandwidth to batch together for a suffix stream from the origin
BWSkim(b):
BWSkim(2): Streams Requested by Proxy A Clients
Bproxy(f,N,P,b) = ln (1 + f Nproxy/)
Borigin(f,N,P,b) = ln(1+Norigin/)
where: Nproxy = N/P and
PfN
NfNorigin /
)1(
00.10.20.30.40.50.60.70.80.9
1
Time
Pos
itio
n in
Med
ia F
ile Proxy B client stream
f
Prefix merges
Suffix merges
BWSkim/U(b):
BWSkim/U(2): Streams Requested by Proxy A Clients
Bproxy(f,N,P,b) = ln (1 + f Nproxy/)
Borigin(f,N,P,b) = P ln(1+ Norigin/)
where: Nproxy = N/P and
proxy
proxyorigin fN
NfN
)1(
Proxy B client stream
f
Prefix merges
Suffix merges
0
0.2
0.4
0.6
0.8
1
Time
Posi
tion
in M
edia
File
Delivery Cost ModelEach object i: delivery costi = Borigin,i+ P Bproxy,iP: number of proxy servers
: average cost of a proxy stream / average cost of one origin stream
Borigin,i and Bproxy,i depend on:
• fi = fraction of media object i stored at the proxy
• N = total request rate (avg. # of client arrivals per playback duration)
• b = client bandwidth
Delivery Cost ModelEach object i: delivery costi = Borigin,i+ P Bproxy,iP: number of proxy servers
: average cost of a proxy stream / average cost of one origin stream
Borigin,i and Bproxy,i depend on:
• fi = fraction of media object i stored at the proxy
• N = total request rate (avg. # of client arrivals per playback duration)
• b = client bandwidth
Unconstrained proxy server: find fi that minimizes delivery costi
Delivery Cost ModelEach object i: delivery costi = Borigin,i+ P Bproxy,iP: number of proxy servers
: average cost of a proxy stream / average cost of one origin stream
Borigin,i and Bproxy,i depend on:
• fi = fraction of media object i stored at the proxy
• N = total request rate (avg. # of client arrivals per playback duration)
• b = client bandwidth
Unconstrained proxy server: find fi that minimizes delivery costi
Constrained proxy server: min delivery costi (n objects)
subject to: fi proxy disk space, Bproxy,i max. proxy bandwidth
• Mixed Integer Programming, solved using GAMS library
{fi
}ni
ni
ni
Cost Model Applications• Configuring the CDN:
– protocol delivery cost comparisons• Batching vs. non-batching,• Multicast origin vs. unicast origin• Client bandwidth, b 2 vs b = 1.2.
– proxy content (f) that minimizes delivery cost
– Cost-effectiveness of proxy servers
• Analysis over a wide region of the design space
Proxy Servers with Unlimited Bandwidth and Storage
Unicast Origin Multicast Origin
Protocol Cost Comparison (unconstrained proxies)
P=1 P=10 (Unicast Origin: P 1)
Multicast Origin
0 0.1 0.3
0.50.8
110
100
1000
1000
0
01020
30
40
50
Cos
t In
crea
se
(%)
N/P
0
0.3
0.8
110
100
1000
1000
0
010
20
30
40
50
N/P
0
0.3
0.8
110
100
1000
1000
0
0
10
20
30
40
50
N/P
P=100
• BWSkim (2) is preferred unless P is large and N/P is very small
BWSkim(2) vs BWSkim+Batch(3), each with optimal f: (large system design space)
Optimal f: BWSkim(b) (unconstrained proxies)
f=1 or f=0 is optimal
Proxy servers are cost-effective (i.e., f=1) only if: • Origin uses unicast or P=1 or
• proxy stream is free or costs a very small fraction of cost of an origin stream.
0 0.1 0.3 0.5 0.8
110
100
1000
1000
0
0
0.2
0.4
0.6
0.8
1
Fra
ctio
n St
ored
N/P0
0.3
0.8
1
100
1000
0
00.20.40.60.8
1
Fra
ctio
n S
tore
d
N/P
0
0.3
0.8
110
100
1000
1000
0
00.20.40.60.8
1
Fra
ctio
n S
tore
d
N/P
Multicast Origin, P=1
Unicast Origin, P 1
P=10
Multicast Origin
P=100
Cache Content: BWSkim+Batch(b)(unconstrained proxies)
0
0.3
0.8
1
100
1000
0
0
0.2
0.4
0.6
0.8
1
Fra
ctio
n S
tore
d
N/P
Multicast Origin: P=100
• BWSkim+Batch[/U](3) outperforms BWSkim[/U](2) and the optimal content is prefix caching only if:
– Multicast origin,– Large P (P 10),
– Low N/P (N/P 1),– Intermediate values of ( =
0.1).
Protocol Cost Comparison (unconstrained proxies)
• b=1.2 increases CDN cost by a factor of 1.5 – 3
BWSkim(1.2) compared to best policy with b2: (P=10)
00.
1
0.3
0.5
0.8 1 10 10
010
0010
000
0
50
100
150
200C
ost
In
crea
se
(%)
N/P
Cost-Effectiveness of Proxy Servers
Proxy servers cost-effective if
• the origin server uses unicast
• the file request rate is low
• cost of proxy stream is small fraction of cost of an origin stream
Question: how small?Multicast origin,N 10:
Answer:
~1/P (or less)0
1
2
3
4
5
6
7
8
0 20 40 60 80 100P
Del
iver
y C
ost = 0.1
= 1/P
= 5/P
Proxy Servers with Limited Disk Storage
and Bandwidth
~ 1/P (or less)or Unicast origin
Constrained Proxies: Key Parameters
M: total client arrival rate, in arrivals per T (all files)
Ps: proxy storage capacity, as a fraction of all files
Pb: proxy bandwidth, as a fraction of bandwidth needed if proxy stores all files
– Ps and Pb computed for modern disks, MPEG-2 streams (4 Mb/s)
– Each disk: 44 hours of content and 42 concurrent streams
– Vary M, number & length of files, file popularity skew, # disks:
0.08 Ps 0.68 , Pb 0.02
– Distribute files across the disks to balance the load
Proxy Disk Space & Bandwidth
• Scenario:– 1000 two-hour MPEG-2 (4 Mb/s) movies– 1000 requests / hour at each proxy: M/P = 2000– Zipf distribution of file popularities
Average bandwidth needed for all files = 332 streams
• If proxy has 5 disks:
– Ps = = 0.11 Pb = = 0.63
2000
445332
425
0
0.2
0.4
0.6
0.8
11 22 43 64 85 106
127
File
Fra
ctio
n St
ored
0
0.2
0.4
0.6
0.8
1
1 23 45 67 89 111
File
Fra
ctio
n S
tore
d
True Optimal
(Pb =0.32 (bw)
Near Optimal
(Pb =0.32 )(bw)
(b =2, Ps=34%, M/P =1000, n =128, T =2h)
• Near Optimal Cache Content (contiguous set of full files) yields delivery cost within 0.05% of true optimal for all CDNs studied.
• Optimal Caching Policy for BWSkim/U(b) is full-file caching.
Optimal vs. Near Optimal BWSkim(b) Proxy Content
(unicast origin, constrained proxies)
Optimal Content for BWSkim (b)
(unicast origin, constrained proxies)
00.20.40.60.8
1
1 26 51 76 101
126
File
Frac
tion
Stor
ed
00.20.40.60.8
1
1 25 49 73 97 121
File
Fra
ctio
n St
ored
00.20.40.60.8
1
1 27 53 79 105
File
Fra
ctio
n St
ored
00.20.40.60.8
1
1 27 53 79 105
File
Fra
ctio
n St
ored
Pb 1
P=10, =0.1,(cap), M/P=100
Pb 1
P=10, =0.3,(cap), M/P=100
Pb 1 ,
P=100, =0.1,(cap), M/P=100
Ps = 34%, n=128, T=2h
Pb=0.32
P=10, =0.1, (both),
M/P=1000
• Full file caching is the most cost-effective
• Less popular files are cached as either Pb decreases or or P increases.
• BWSkim/U(b) is more cost effective than BWSkim+Batch/U(b+1)
• BWSkim+Batch/U(b+1): prefix caching, cost improves up to 8%
(BWSkim/U(2), Pb1, Ps=34%, n =128, T =2h)
0
0.2
0.4
0.6
0.8
1
1 21 41 61 81 101
121
File
Fra
ctio
n S
tore
d
M/P = 1000
(unrealistic Pb )
0
0.2
0.4
0.6
0.8
1
FileF
ract
ion
Sto
red
M/P = 100
(realistic Pb )
• Arbitrarily setting values for proxy bandwidth leads to unrealistic and non-optimal results
Unrealistic Proxy Bandwidth Assumption
(unicast origin, constrained proxies)
• BWSkim/U(1.2) increases the delivery cost by up to a factor of three
(same for unconstrained proxies)
Cost Increase of BWSkim/U(1.2) (unicast origin, constrained proxies)
0.08
5
0.34
1010
010
00
1000
0
0
0.2
0.4
0.6
0.8
1
Cos
t R
atio
PsM/P
Ratio of delivery cost for BWSkim/U(2) to cost of BWSkim/U(1.2)
Cost Increase of BWSkim(2) vs. BWSkim+Batch(3):
• BWSkim+Batch(3) and prefix caching is preferred only if:• large P, moderately small Pb
• a large number of the popular files have N/P 1 and• cost of proxy stream is very small or zero
• In all other scenarios: BWSkim(b) + full file caching is optimal
0.131
0.321Pb=
10
100
1000
1000
0 1 10 100
0%
20%
40%
60%
80%
100%
Co
st
Inc
rea
se
(%
)
M/P P
BWSkim(2) vs. BWSkim+Batch(3)(multicast origin, constrained proxies)
= 0, Ps=34%
Optimal Content for BWSkim+Batch(3)
(multicast origin, constrained proxies)
0
0.2
0.4
0.6
0.8
1
1 18 35 52 69 86 103
120
File
Frac
tion
Stor
ed
0
0.2
0.4
0.6
0.8
1
1 19 37 55 73 91 109
127
File
Frac
tion
Stor
ed
Pb 1
P=10, (cap) Pb =0.32
P=10, (bw)
0
0.2
0.4
0.6
0.8
1
File
Frac
tion
Stor
ed
Pb 1
P=100, (cap)
Ps=34%, = 0
• BWSkim+Batch(b) caches primarily prefix files.
• Less popular data is cached as either Pb decreases or or P
increases.
Protocol Cost Comparison (constrained proxies)
Cost Ratio for Origin Unicast vs. Origin Multicast:
( = 0)
• Multicast origin significantly reduces delivery cost unless
- Total request rate per proxy, M/P, is small or P 1
10100
100010000 1
10100
123456789
10
Cos
t F
acto
r
M/P P
60 64
Conclusions• Scalable multicast delivery involves new cost trade-offs
• Simple delivery cost models can yield significant insight
• Insights:
• BWSkim(b) is preferred over BWSkim+Batch(b) unless
- P is large and N/P is very small
• BWSkim+Batch(3) system: prefix caching is optimal
• BWSkim(b): f=0 or f=1; f=1 only if • the origin server uses unicast
• the file request rate is low (N 1)
• cost of proxy stream is small, i.e., ~1/P (or less)
• Multicast origin greatly decreases CDN cost if M/P 10