38
Large-Scale and Cost- Effective Video Services CS587x Lecture Department of Computer Science Iowa State University

Large-Scale and Cost-Effective Video Services

Embed Size (px)

DESCRIPTION

Large-Scale and Cost-Effective Video Services. CS587x Lecture Department of Computer Science Iowa State University. Contents. On-demand Multicast Periodic Broadcast Application-Layer Multicast Peer-to-Peer Video Services. What to Cover Today. On-demand Multicast Patching - PowerPoint PPT Presentation

Citation preview

Large-Scale and Cost-Effective Video Services

CS587x LectureDepartment of Computer Science

Iowa State University

• On-demand Multicast

• Periodic Broadcast

• Application-Layer Multicast

• Peer-to-Peer Video Services

Contents

• On-demand Multicast

– Patching

– Double Patching

• Periodic Broadcast

– Client Centric Approach

What to Cover Today

Server Channels

• Videos are delivered to clients as a continuous stream.

• Server bandwidth determines the number of video streams can be supported simultaneously.

• Server bandwidth can be organized and managed as a collection of logical channels.

• These channels can be scheduled to deliver various videos.

Using Dedicated Channel

Video Server

Client

Too Expensive !

Client

Client

Client

Dedicated stream

Batching

• Make requests wait and then serve together

Video Server

Client

Client

Client

Client

Multicast stream

• Drawbacks: – If the waiting is too long, many requests

may renege

– If the waiting is too short, each multicast can serve only one request

Adaptive Piggybacking

• Video streams are merged by adjusting their playback rates

new arrivals

departures

+5% -5%C B A

• Drawbacks: – The adjustment of playback rate must be small

– Adjusting playback rate needs specialized hardware

Research Challenge

• Each request should be served immediately

• Each multicast should serve a large number

of requests

Motivation Example

video

A

multicast

Motivation Example

video player buffer

B

videot

skew point

A

multicast

Motivation Example

videot

patching stream

skew point

regular stream

video player buffer

BA

multicast

Motivation Example

video2t

regular stream

video player buffer

B

A

multicast

Proposed: Patching

A

r

B

p

C

p

D

p

E

r

F

p

G

p

patching window patching window

Multicast group Multicast group

time

Optimal Patching Window

• Server Bandwidth Requirement =

• Candidates of optimal patching window :

D

W

Limitation of Patching Performance

• Patching cost increases as the time gap enlarges

regular streamA t+1t t+20

t0

t0 t+1

patching stream

patching stream

B

C

• Serving B and C takes 2t+1 time units of data

Motivation Example

• Serving B and C takes only t+3 time units of data• About 50% improvement when t is large!

regular streamt+1t t+20

t0

0

long patching stream

short patching stream

t+1 t+2

t+3A

B

C

Observation

• A patching stream is shareable in the next time units if it delivers extra T time units of data

T

regular stream

long patching stream

short patching streamshort patching stream

A

B

C

D

T

2

T / 2

Proposed: Double Patching

r sp sp sp lp sp sp r sp

multicast window

time

patching window patching window

A B C D E F G H I

Multi…

Patch…

• The data delivered during one multicast window– by the regular stream:

– by the long patching streams:

– by the short patching streams:

Performance Optimization

10

20

30

40

50

60

70

5 10 15 20 25 30 35 40 45 50 55 60 65 70 75 80 85 90 95

Mea

n Se

rver

Ban

dwid

th R

equi

rem

ent (

Mbi

t/s)

Mean inter-arrival time (seconds)

Standard Patching

Double Patching

Effect of Inter-Arrival Time

Periodic Strategy

• Conventional Periodic Broadcasting [Dan94, Dan96]

– Broadcast period is reduced to

• Research Challenge

– Reduce the broadcast period to ?

Motivation Example

D1 D2 D3 D4

video length

• Design Parameters : ( K = 4, C = 2 )

• Video Segmentation : [ 1, 2, 2, 4 ]

Group 1: D1 D2

Group 2: D3 D4

Motivation Example (con’t)

• Broadcast schedule

Channel 1

Channel 2

Channel 3

Channel 4

D1 D1 D1 D1 D1 D1 D1 D1

D2 D2 D2 D2

D3 D3 D3 D3

D4 D4

Group 1

Group 2

Motivation Example (con’t)

• Clients download segments group by group

Channel 1

Channel 2

Channel 3

Channel 4

a

D1

D2

D3

D4

Group 1

Group 2

Motivation Example (con’t)

• Clients download segments group by group

Channel 1

Channel 2

Channel 3

Channel 4

a

D1

D2

D3

D4

Group 1

Group 2

b

• Continuity within group

• Continuity across group boundary

D2Group 1

D1 D1

D3

Channel 2D2

Channel 3

Motivation Example (con’t)

D2

Download Bandwidth vs. Access Latency

# Channels

1

2

3

4*

Segmentation

[ 1, 1, 1, 1 ]

[ 1, 2, 2, 4 ]

[ 1, 2, 4, 4 ]

[ 1, 2, 4, 8 ]

Latency

Proposed: Client-Centric Approach

• Design Parameters

– K broadcast channels and C download channels

Group

Video Segmentation1 2 .. C

1

2

:K

Cg =

Significance and Impact of CCA

• CCA is the first generalized technique to leverage

receiving bandwidth for more efficient broadcast

• CCA can be modified to support receivers with

different downloading bandwidth [Hua02, Hua03]

What is the limit? • The first segment determines the broadcast period

• How to make this segment as small as possible under

the condition that playback continuity is guaranteed

1. Continuity within group

2. Continuity across group boundary

D2Group 1

D1 D1

D3

Channel 2D2

Channel 3

D2

Question

• What is the maximum size of Si+c?

• Depend on which loader is used to download

L1

Lj

Li+c-1

Segmentation Rule

If Lj is used to download, Si+c can be any size as long as

1) It is a multiple of Sj

2) It is no larger than Sj+Sj+1+Si+c-1

L1

Lj

Li+c-1

There are only three possible alignments

There are only three possible alignments

There are only three possible alignments

Download Schedules (C=2)

S1, 1

S1, 2

S2, 1

S2, 2

Schedule 1

Group 1 Group 2

S2, 1

S2, 2

Group 3

L1

L2

S1, 1

S1, 2

S2, 1

S2, 2

Group 1 Group 2

S2, 1

S2, 2

Group 3

L1

L2

Schedule 2

Broadcast series: 1, 2, 3, 4, 6, 8, 16 ….

Broadcast series: 1, 2, 2, 5, 5, 12, 12, 25, 25 …

Client-Centric Broadcast (CCB)

1. Assuming C-channel receiving capability, we have C! different download schedules

2. For each download schedule, we have one broadcast series

3. Among C! broadcast series, choose the fastest one

Segmentation Implementation

Si in Group g is download by loader L[i]