it is not beauty i demand – george darley

Post on 06-Jan-2016

36 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

DESCRIPTION

It is not Beauty I Demand – George Darley. Video on Demand. One video server Many video data Many clients Client want to watch at any time. Assumptions. Constant bitrate stream Perfect network transport. Unicast Solution. One channel per client No start-up latency No client buffer - PowerPoint PPT Presentation

TRANSCRIPT

1

It is not Beauty I Demand – George Darley

NUS.SOC.CS5248OOI WEI TSANG

2

Video on Demand

One video serverMany video dataMany clientsClient want to watch at any time

NUS.SOC.CS5248OOI WEI TSANG

3

Assumptions

Constant bitrate streamPerfect network transport

NUS.SOC.CS5248OOI WEI TSANG

4

Unicast Solution

One channel per clientNo start-up latencyNo client bufferLow client bandwidthLarge server bandwidth Not scalable

NUS.SOC.CS5248OOI WEI TSANG

5

Multicast Solution

Batching aggregate client requests serve using multicast clients have to wait No client buffer Low client bandwidth

“Scheduling Policies for an On-Demand Video Server with

Batching”

Dan, Sitaram, Shahabuddin, IBM

NUS.SOC.CS5248OOI WEI TSANG

6

Multicast Solution

User-centered approachScheduling data based on user

requests

Data-centered approachDon’t care about userJust broadcast popular video

NUS.SOC.CS5248OOI WEI TSANG

7

Multicast Solution

BatchingStaggered Broadcast

NUS.SOC.CS5248OOI WEI TSANG

8

Staggered Broadcast

Video

C0

C1

C2

:

NUS.SOC.CS5248OOI WEI TSANG

9

Staggered Broadcast

2 hour video5 minutes waiting timeNumber of channels =

2 x 60 / 5 = 24

Required bandwidth =

1.5Mbps x 24 = 36Mbps

NUS.SOC.CS5248OOI WEI TSANG

10

Multicast Solution

BatchingStaggered Broadcast

clients have to waitNo client bufferLow client bandwidthHuge server bandwidth

NUS.SOC.CS5248OOI WEI TSANG

11

Multicast Solution

BatchingStaggered BroadcastPeriodic Broadcast

NUS.SOC.CS5248OOI WEI TSANG

12

Periodic Broadcast

Video

C0

C1

C2

:

NUS.SOC.CS5248OOI WEI TSANG

13

Pyramid Broadcast

Video

C0

C1

C2

:

NUS.SOC.CS5248OOI WEI TSANG

14

Pyramid Broadcast

Video 2

C0

C1

C2

:

Video 1

NUS.SOC.CS5248OOI WEI TSANG

15

Pyramid Broadcast

Video

C0

C1

C2

:

NUS.SOC.CS5248OOI WEI TSANG

16

Analysis of Pyramid Broadcast

Notations B : Total available bandwidth Bv : Bandwidth of video

Tv : Total length of each video K : Number of segments per video Ti : Length of segment i : Factor in geometric series

NUS.SOC.CS5248OOI WEI TSANG

17

Channel Bandwidth

i

i+1 i+1

playback time = Ti

download time = Ti+1Bv/Bi

Download time for Ti+1 needs to be smaller than Ti for segment i+1 to arrive in time.

D’oh!Just miss it!

NUS.SOC.CS5248OOI WEI TSANG

18

Channel Bandwidth

since

1

11

1

1

vi

iivi

i

vii

KBKBB

TTBB

B

BTT

NUS.SOC.CS5248OOI WEI TSANG

19

= 2

NUS.SOC.CS5248OOI WEI TSANG

20

Start-up Latency

Worst case waiting time = T1

1

)1(

1

)1( 11

vB

B

K

v

TTT

NUS.SOC.CS5248OOI WEI TSANG

21

Optimal

2.5

T1

NUS.SOC.CS5248OOI WEI TSANG

22

Storage Requirements

~ (TK + TK-1)Bv

NUS.SOC.CS5248OOI WEI TSANG

23

Pyramid Broadcast

Large client bandwidth (KBv)

Huge client buffer (70–80% Tv)

NUS.SOC.CS5248OOI WEI TSANG

24

Permutation-based Pyramid Broadcast

C0

C1

C2

NUS.SOC.CS5248OOI WEI TSANG

25

Channel Bandwidth

i

i+1 i+1

playback time = Ti

download time = Ti+1Bv/Bi

X needs to be smaller than Ti for segment i+1 to arrive in time.

D’oh!Just miss it!

i+1 i+1

X

NUS.SOC.CS5248OOI WEI TSANG

26

Channel Bandwidth

)(

, and since

11

1

1

1

v

iii

i

vi

i

vii

KBpB

KBpBTT

pB

BT

B

BTT

p : number of sub-channels per segments

NUS.SOC.CS5248OOI WEI TSANG

27

Client Latency

Just T1/p

NUS.SOC.CS5248OOI WEI TSANG

28

Storage Requirement

One channel at a timeCan pause and wait

NUS.SOC.CS5248OOI WEI TSANG

29

Storage Requirement

k-1

k

k

k-1

pause

resume

X

Within time X, betternot consume all data in buffer.

NUS.SOC.CS5248OOI WEI TSANG

30

Storage Requirement

Let buffer content be of size MTime to consume the buffer = M/Bv

)BT(T M

p

p)B(α B

B

M

B

BT

B

BT

p

vK-K

vi

vi

vi

i

vi

1

1

know we

1

NUS.SOC.CS5248OOI WEI TSANG

31

Comparisons

Scheme Storage Server’sBW

Client’sBW

Pyramid 70% KBv 4-5 Bv

Pyramid++ 20% (+p)KBv 2-3 Bv

Carter, Long and Paris “Video on Demand Broadcasting Protocols”

NUS.SOC.CS5248OOI WEI TSANG

32

Pyramid Broadcasting

NUS.SOC.CS5248OOI WEI TSANG

33

Skyscraper BroadcastingObservations:

storage requirement is affected by size of the largest chunk

So, let’s limit the size of the largest chunk!

NUS.SOC.CS5248OOI WEI TSANG

34

Pyramid Skyscraper

NUS.SOC.CS5248OOI WEI TSANG

35

Skyscraper BroadcastingUses series

1 2 2 5 5 12 12 25 25 52 52 … W W W

NUS.SOC.CS5248OOI WEI TSANG

36

Skyscraper Example

NUS.SOC.CS5248OOI WEI TSANG

37

Skyscraper Example

NUS.SOC.CS5248OOI WEI TSANG

38

Comparisons

Scheme Storage Server’sBW

Client’sBW

Pyramid 70% KBv 4-5 Bv

Pyramid++ 20% (+p)KBv 2-3 Bv

Skyscraper 10% KBv 1-2 Bv

Carter, Long and Paris “Video on Demand Broadcasting Protocols”

NUS.SOC.CS5248OOI WEI TSANG

39

Other schemes

Pagoda Broadcasting 1 3 5 15 25 75 125 …

Harmonic BroadcastingEqual segment size, varies bandwidth instead!

NUS.SOC.CS5248OOI WEI TSANG

40

Multicast Solution

BatchingStaggered BroadcastPeriodic Broadcast

Sending rate ≥ playback rateMay need multiple channelsNeed additional client bufferNeed to wait

NUS.SOC.CS5248OOI WEI TSANG

41

Multicast Solution

BatchingStaggered BroadcastPeriodic BroadcastPatching

NUS.SOC.CS5248OOI WEI TSANG

42

Patching

Time

Client Request

mcast

unicast

NUS.SOC.CS5248OOI WEI TSANG

43

Patching

Time

Client Request

Patching Window: W

mcast

mcast

NUS.SOC.CS5248OOI WEI TSANG

44

Grace Patching

if W < Bclient buffer video[W .. end]unicast video[0 .. W]

elsemcast video[0 .. end]

NUS.SOC.CS5248OOI WEI TSANG

45

Example

30 minutes video 15 minutes buffer One request per minute

465.271.225

NUS.SOC.CS5248OOI WEI TSANG

46

Example

What if patching window = 5 min?

NUS.SOC.CS5248OOI WEI TSANG

47

Supporting VCR OperationsPauseFast ForwardRewindForward SearchBackward SearchSlow Mo

NUS.SOC.CS5248OOI WEI TSANG

48

Two Types of OperationsContinuous (all)Discrete Time (pause,ff,rwd)

NUS.SOC.CS5248OOI WEI TSANG

49

Discrete Time

Easier to implementSimple in staggered broadcasting

NUS.SOC.CS5248OOI WEI TSANG

50

Continuous Time

Requires buffering of future frames and previous frames

Abram-Profeta and K.G. Shin, "Providing Unrestricted VCR Functions in Multicast Video-on-Demand Servers,"

NUS.SOC.CS5248OOI WEI TSANG

51

Normal Playback

Before

After

Buffer

Playout Point

Oldest Frame Newest Frame

Channel U

Channel U

NUS.SOC.CS5248OOI WEI TSANG

52

Pause

Before

AfterChannel U

Channel U

NUS.SOC.CS5248OOI WEI TSANG

53

Pause Too Long!

Before

AfterChannel U

Channel U

NUS.SOC.CS5248OOI WEI TSANG

54

Channel I

Before

AfterChannel I

Channel U

NUS.SOC.CS5248OOI WEI TSANG

55

FF

Before

AfterChannel U

Channel U

NUS.SOC.CS5248OOI WEI TSANG

56

FF Too Far!

Before

AfterChannel I

Channel U

NUS.SOC.CS5248OOI WEI TSANG

57

RWD

Before

AfterChannel U

Channel U

NUS.SOC.CS5248OOI WEI TSANG

58

RWD Too Much!

Before

AfterChannel I

Channel U

NUS.SOC.CS5248OOI WEI TSANG

59

Forward Search

Before

AfterChannel U

Channel U

NUS.SOC.CS5248OOI WEI TSANG

60

Forward Search Too Far!Before

AfterChannel I

Channel U

NUS.SOC.CS5248OOI WEI TSANG

61

Backward Search

Before

AfterChannel U

Channel U

NUS.SOC.CS5248OOI WEI TSANG

62

Backward Search

Before

AfterChannel I

Channel U

Prefetched at Reverse Order, at Faster Rate

NUS.SOC.CS5248OOI WEI TSANG

63

Slow Motion

Before

AfterChannel U

Channel U

NUS.SOC.CS5248OOI WEI TSANG

64

Slow Motion

Before

AfterChannel I

Channel U

NUS.SOC.CS5248OOI WEI TSANG

65

The Aftermath

When playback resumes, what to do with Channel I?

Answer: Merge back with Channel U

NUS.SOC.CS5248OOI WEI TSANG

66

Merging Operation

Find a target channel whose play point is ”not too far” ahead

NUS.SOC.CS5248OOI WEI TSANG

67

Merging: Case 1

Before

Channel U

Channel I

NUS.SOC.CS5248OOI WEI TSANG

68

Merging: Case 1

During

Channel U

NUS.SOC.CS5248OOI WEI TSANG

69

Merging: Case 1

After

Channel U

NUS.SOC.CS5248OOI WEI TSANG

70

Merging: Case 2

Before

Channel U

Channel I

NUS.SOC.CS5248OOI WEI TSANG

71

Merging: Case 2

Before

Channel U

Channel I

NUS.SOC.CS5248OOI WEI TSANG

72

Merging: Case 2

During

Channel U

Channel I

NUS.SOC.CS5248OOI WEI TSANG

73

Merging: Case 2

During

Channel U

Channel I

NUS.SOC.CS5248OOI WEI TSANG

74

Merging: Case 2

After

Channel U

NUS.SOC.CS5248OOI WEI TSANG

75

Summary

VoD broadcast protocolsbatchingperiodic broadcastpatching

Supporting VCR functionalities

top related