Distributed Servers Architecture for Networked Video Services

26
Distributed Servers Distributed Servers Architecture for Networked Architecture for Networked Video Services Video Services S. H. Gary Chan, Member IEEE, and S. H. Gary Chan, Member IEEE, and Fouad Tobagi, Fellow IEEE Fouad Tobagi, Fellow IEEE

description

 

Transcript of Distributed Servers Architecture for Networked Video Services

Page 1: Distributed Servers Architecture for Networked Video Services

Distributed Servers Architecture for Distributed Servers Architecture for Networked Video ServicesNetworked Video Services

S. H. Gary Chan, Member IEEE, and Fouad TS. H. Gary Chan, Member IEEE, and Fouad Tobagi, Fellow IEEEobagi, Fellow IEEE

Page 2: Distributed Servers Architecture for Networked Video Services

ContentsContents

IntroductionIntroduction System ArchitectureSystem Architecture Caching schemes for video-on-demand servicesCaching schemes for video-on-demand services Analytical ModelAnalytical Model ResultsResults ConclusionConclusion

Page 3: Distributed Servers Architecture for Networked Video Services

Introduction (1)Introduction (1)

In a VoD system, the central server has limited sIn a VoD system, the central server has limited streaming capacitiestreaming capacities

Distributed servers architectureDistributed servers architecture Hierarchy of serversHierarchy of servers Local servers cache the videosLocal servers cache the videos Some servers are placed close to the user clusterSome servers are placed close to the user cluster

Determine which movie and how much video datDetermine which movie and how much video data should be stored to minimize the total cost a should be stored to minimize the total cost

Page 4: Distributed Servers Architecture for Networked Video Services

Introduction (2)Introduction (2)

Three models of distributed servers architectureThree models of distributed servers architecture Uncooperative - unicastUncooperative - unicast Uncooperative - multicastUncooperative - multicast Cooperative - communicating serversCooperative - communicating servers

This paper studied a number of caching schemes, all emThis paper studied a number of caching schemes, all employing circular buffers and partial cachingploying circular buffers and partial caching

All requests arriving during the cache window duration arAll requests arriving during the cache window duration are served from the local cachee served from the local cache

Claim that using partial caching on temporary storage caClaim that using partial caching on temporary storage can lower the system cost by an order of magnituden lower the system cost by an order of magnitude

Page 5: Distributed Servers Architecture for Networked Video Services

System Cost (1)System Cost (1)

Cost associated with storing a movie in a local Cost associated with storing a movie in a local serverserver How much and how long the storage is usedHow much and how long the storage is used

For example, 1-GB disk costing about $200For example, 1-GB disk costing about $200 Disk to be amortized one yearDisk to be amortized one year Cost = $200/(365 X 6) = 0.091/h per GBCost = $200/(365 X 6) = 0.091/h per GB Streaming rate = 5 Mb/sStreaming rate = 5 Mb/s One minute of video data (0.0375 GB) costs:One minute of video data (0.0375 GB) costs:

0.091/h X 0.0375 = $5.71 X 100.091/h X 0.0375 = $5.71 X 10-5-5 /min /min

Page 6: Distributed Servers Architecture for Networked Video Services

System Cost (2)System Cost (2)

Cost associated with streaming a movie from the Cost associated with streaming a movie from the central servercentral server Range from low (Internet) to quite high (satellite chanRange from low (Internet) to quite high (satellite chan

nels)nels)

γ = ratio of storage cost to networkγ = ratio of storage cost to network small γ -> relatively cheap storagesmall γ -> relatively cheap storage Tradeoff network cost versus storage costTradeoff network cost versus storage cost

100-min movie cost $3100-min movie cost $3

Page 7: Distributed Servers Architecture for Networked Video Services

Video popularityVideo popularity

Movies have notion of skewnessMovies have notion of skewness High demand movies should be cached locallyHigh demand movies should be cached locally Low demand serviced directlyLow demand serviced directly Intermediate class should be partially cachedIntermediate class should be partially cached

Geometric video popularityr/m mean r% requests ask for m% of the movies500 movies4000 requests/h

Page 8: Distributed Servers Architecture for Networked Video Services

Caching Scheme (1)Caching Scheme (1)

Unicast DeliveryUnicast Delivery A new arrival for a video opens a network channel of A new arrival for a video opens a network channel of

TThh minutes to stream the video from the central server minutes to stream the video from the central server

Local server caches Local server caches WW minutes of data with circular b minutes of data with circular bufferuffer

All requests within a window size (All requests within a window size (W) W) form a groupform a group Arrivals more than Arrivals more than WW minutes start a new stream minutes start a new stream

Page 9: Distributed Servers Architecture for Networked Video Services

Caching Scheme (2)Caching Scheme (2)

Multicast DeliveryMulticast Delivery Pre-storing: local server stores permanently the leading portion of Pre-storing: local server stores permanently the leading portion of

each movieeach movie

Leader size: W minutesW minutes of video data served by the local serverTh-W multicast from the central server

Page 10: Distributed Servers Architecture for Networked Video Services

Caching Scheme (3)Caching Scheme (3)

Multicast DeliveryMulticast Delivery Pre-caching: local server decides if it should cache a multicaPre-caching: local server decides if it should cache a multica

st video or notst video or not Two schemes depending on the multicast scheduleTwo schemes depending on the multicast schedule

Periodic multicasting with pre-cachingPeriodic multicasting with pre-caching Request-driven pre-cachingRequest-driven pre-caching

Page 11: Distributed Servers Architecture for Networked Video Services

Caching Scheme (4)Caching Scheme (4)

Movie is multicast at regular intervals of W minutesLocal server pre-caches W minutes’ video dataMulticast stream will be held for Th minutes or aborted at the end of W minutes

The start of multicast streams is driven by request arrivalRequest arriving within W minutes can be served by the local server

Periodic multicasting with pre-caching

Request-driven pre-cachingRequest-driven pre-caching

Page 12: Distributed Servers Architecture for Networked Video Services

Caching Scheme (5)Caching Scheme (5)

CommunicatingCommunicating Servers (“server chain”) Servers (“server chain”) Video data can be transferred from one server to another using Video data can be transferred from one server to another using

the server networkthe server network

LS1 receives data from the central server using unicast streamLS1 buffers W minutes’ video dataRequests at LS2 arriving within W are served by LS1Chain is broken when two buffer allocations are separated by more than W minutes

Page 13: Distributed Servers Architecture for Networked Video Services

Scheme AnalysisScheme Analysis

Movie length Movie length TThh min min

Streaming rate Streaming rate bb00 MB/min MB/min

Request process is PoissonRequest process is Poisson Interested inInterested in

Average number of network channels, Average number of network channels, Average buffer size,Average buffer size, Total system cost: Total system cost:

BS

SBC iˆ

Page 14: Distributed Servers Architecture for Networked Video Services

Analysis - UnicastAnalysis - Unicast

Interarrival time = Interarrival time = W + 1/λW + 1/λ By Little’s formula: By Little’s formula: Average number of buffers allocated: Average number of buffers allocated: 1/(W+1/λ))1/(W+1/λ))

TThh which yields which yields

System Cost:System Cost: To minimize , either cache or don’tTo minimize , either cache or don’t

λ<γ B = W = 0λ<γ B = W = 0 λ>γ B = Tλ>γ B = Thh

ChTBC )(ˆ

B

/1W

TS h

Page 15: Distributed Servers Architecture for Networked Video Services

Analysis - MulticastAnalysis - Multicast

Pre-storingPre-storing Buffer size depends on whether any request arrives Buffer size depends on whether any request arrives

within a multicast intervalwithin a multicast interval

))(1( WTeWB hW

ii

)(1

WTW

eS h

W

Probability of an arrival within W

Page 16: Distributed Servers Architecture for Networked Video Services

Analysis - MulticastAnalysis - Multicast

Pre-caching (Periodic multicasting with pre-Pre-caching (Periodic multicasting with pre-caching)caching)

hWW

i TeW

eB ii )1(2

W

TeeS hWW )1(

Pre-caching (Request-driven precaching)Pre-caching (Request-driven precaching)

WT

W

WB hi )1(

2/1

10

2

0

W

TS h

1

)1(0 iWie

Probability of stream not started by the server

Page 17: Distributed Servers Architecture for Networked Video Services

Analysis – Communicating ServersAnalysis – Communicating Servers

Communicating ServersCommunicating Servers If there are many local servers, a subsequent request If there are many local servers, a subsequent request

likely comes from a different serverlikely comes from a different server Average number of concurrent requests is Average number of concurrent requests is λTλThh

WTB h

s

h

T

TS

1

LTs

Average interval between successive channel allocation

1

1

Wa e

WT

WeTL Wa

Average time data is kept in the server network

Average requests’ inter-arrival time given that the successive requests are within W

Page 18: Distributed Servers Architecture for Networked Video Services

Results - UnicastResults - Unicast

For unicast, tradeoff between S and For unicast, tradeoff between S and B given λ is linear with slope (-λ)B given λ is linear with slope (-λ)Optimal caching strategy is all or notOptimal caching strategy is all or nothinghingDetermining factors for caching a mDetermining factors for caching a movieovie

•SkewnessSkewness•Cheapness of storageCheapness of storage

Page 19: Distributed Servers Architecture for Networked Video Services

Results - Multicast with Pre-storingResults - Multicast with Pre-storing

There is an optimal W to minimize costThe storage component of this curve becomes steeper as γ increases

= 5 req/min, Ns = 20, =0.002/min, Th = 90 min

Page 20: Distributed Servers Architecture for Networked Video Services

Results - MulticastResults - Multicast

Ns = 20, =0.002/min, Th = 90 min

Pre-storing Pre-caching

Page 21: Distributed Servers Architecture for Networked Video Services

Results – Communicating ServersResults – Communicating Servers

Low arrival rate, large W to form a chain The higher the request rate, the easier it is to chain

=0.002/min, Th = 90 min

Page 22: Distributed Servers Architecture for Networked Video Services

Results Results

Multicast achieves cost reduction within a certain window of arrival rateChaining shouldn’t be higher cost than other systems unless local communication costs are very high

=0.002/min, Th = 90 min

Page 23: Distributed Servers Architecture for Networked Video Services

System Using Batching and MulticastSystem Using Batching and Multicast

Requests arriving within a period of time are groRequests arriving within a period of time are grouped togetheruped together

Batching allows fewer multicast streams to be usBatching allows fewer multicast streams to be used, thus lowering the associated costed, thus lowering the associated cost

Users will tolerate some delay, Users will tolerate some delay, DDmaxmax

Page 24: Distributed Servers Architecture for Networked Video Services

Results – Request BatchingResults – Request Batching

Ns is low enough, distributed servers based on unicast delivery can achieve lower costCombined system:

< ’ => batching > ’ => local server

Dmax = 6 min, Th = 90 min’

Page 25: Distributed Servers Architecture for Networked Video Services

ResultsResults

=0.002/min, Th = 90 min

Unicast and Combined scheme require similar costMulticast can further reduce the cost but not significantChaining achieves the greatest saving in cost

Page 26: Distributed Servers Architecture for Networked Video Services

ConclusionConclusion

Distributed servers architecture to provide video-Distributed servers architecture to provide video-on-demand serviceon-demand service

Different local caching for video streamingDifferent local caching for video streaming Given certain cost function, determineGiven certain cost function, determine

which video and how much video data should be which video and how much video data should be cachedcached

More skewed the video popularity is, the more More skewed the video popularity is, the more saving a distributed servers architecture can saving a distributed servers architecture can achieveachieve