7
Measurement of the Congestion Responsiveness of RealPlayer Streaming Video Over UDP Jae Chung, Mark Claypool, Yali Zhu (Technical Report WPI-CS-TR-02-17) Proceedings of the Packet Video Workshop Nantes, France April 2003 http://www.cs.wpi.edu/~claypool/papers/h2h/ The Hungry Wolf - Bandwidth Requirements for Video Streaming media growing 350,000 hours of online video broadcast ’01 Voice is 32-64 Kbps, but video has range of data rates Videoconference 0.1 Mbps (H.261, MPEG-4) VCR 1.2 Mbps (MPEG-1) Broadcast quality 2-4 Mbps (MPEG-2) HDTV quality 25-34 Mbps (MPEG-2) Thus, potential for more than network capacity The Wolf on the Prowl – Transport Protocols for Video Streaming video doesn’t like TCP Wants rate-based not window-based Can tolerate some loss AIMD causes rate fluctuations So, use UDP where application controls But UDP has no congestion control Unfair, unfriendly, and even collapse! Approaches to have router catch Model video as CBR “firehose” (is it?) The Wolf Pack – Commercial Video Commercial products have major impact Have been studies characterizing commercial traffic Bandwidth use, frame rate, user use… But no work measuring responsiveness, or lack of it, of commercial video products 0 0.2 0.4 0.6 0.8 1 0 10 20 30 Frame Rate (fps) Cummulative Density TCP UDP Specific Motivation TCP UDP Outline Introduction Background Experiments Results Analysis Conclusions

The Hungry Wolf - Bandwidth Measurement of the Congestion

  • Upload
    others

  • View
    3

  • Download
    0

Embed Size (px)

Citation preview

Page 1: The Hungry Wolf - Bandwidth Measurement of the Congestion

1

Measurement of the Congestion Responsiveness of RealPlayer Streaming Video Over UDP

Jae Chung, Mark Claypool, Yali Zhu

(Technical Report WPI-CS-TR-02-17)Proceedings of the Packet Video Workshop

Nantes, France April 2003

http://www.cs.wpi.edu/~claypool/papers/h2h/

The Hungry Wolf - Bandwidth Requirements for Video

• Streaming media growing– 350,000 hours of online video broadcast ’01

• Voice is 32-64 Kbps, but video has range of data rates– Videoconference 0.1 Mbps (H.261, MPEG-4)– VCR 1.2 Mbps (MPEG-1)– Broadcast quality 2-4 Mbps (MPEG-2)– HDTV quality 25-34 Mbps (MPEG-2)

Thus, potential for more than network capacity

The Wolf on the Prowl – Transport Protocols for Video

• Streaming video doesn’t like TCP– Wants rate-based not window-based– Can tolerate some loss– AIMD causes rate fluctuations

So, use UDP where application controls• But UDP has no congestion control

– Unfair, unfriendly, and even collapse!• Approaches to have router catch

– Model video as CBR “firehose” (is it?)

The Wolf Pack – Commercial Video

• Commercial products have major impact

• Have been studies characterizing commercial traffic– Bandwidth use, frame rate, user use…

• But no work measuring responsiveness, or lack of it, of commercial video products

0

0.2

0.4

0.6

0.8

1

0 10 20 30

Frame Rate (fps)

Cum

mul

ativ

e De

nsity

TCP

UDP

Specific Motivation

TCP

UDP

Outline

• Introduction √• Background ←• Experiments

• Results• Analysis

• Conclusions

Page 2: The Hungry Wolf - Bandwidth Measurement of the Congestion

2

RealVideo Network Characteristics

• SureStream– Allows bandwidth scaling

• Buffering– Remove jitter

Server

RTSP

Data: TCP or UDP-Choice, unclear

-We’ll force

Outline

• Introduction √• Background √• Experiments ←• Results• Analysis

• Conclusions

Methodology

• Select Real Video Clips• Construct environment for measuring

congestion response• Construct environment to measure ability

to scale (SureStream)• Iteratively plan clips varying network

RealVideo Clip Playlist• If put in controlled environment, may not

be representative of clips “in the wild”• Select large number through search

engines (Yahoo, Google …)• Randomly choose 100 (79 analyzed)• Geography results:

– 76 US, 9 Canada, 8 UK, 6 Italy, 1 Germany– North American dominance likely reflected

in typical user locality of reference• Length results:

– Median 3 minutes, min 20 seconds, max 30 minutes

Responsiveness Measurement Environment

• PIII 700 Mhz, 128 MB RAM, Linux 2.4• RealPlayer version 8.0.3• Sniffing via tcpdump• Loss and round-trip time via ping• TBF to limit bandwidth• 2 Measurements for each clip• (Note, RealTracer for MediaScaling)

Internet

Client

Hub

Router

10Mbps

DSL

700KbpsClient

Token Bucket Filter

UDP

TCPServer

Outline

• Introduction √• Background √• Experiments √• Results ←• Analysis

• Conclusions

Page 3: The Hungry Wolf - Bandwidth Measurement of the Congestion

3

Distribution of Loss

0

0.2

0.4

0.6

0.8

1

0 0.05 0.1 0.15 0.2

Cum

ulat

ive

Den

sity

Loss (fraction)

075 Kbps150 Kbps300 Kbps600 Kbps

Distribution of Latency

0

0.2

0.4

0.6

0.8

1

0 100 200 300 400 500 600 700 800 900

Cum

ulat

ive

Den

sity

RTT (milliseconds)

075 Kbps150 Kbps300 Kbps600 Kbps

Distribution of Packet Sizes

0

0.2

0.4

0.6

0.8

1

0 200 400 600 800 1000 1200 1400 1600

Cum

ulat

ive

Den

sity

Packet Size (Kbytes)

TCPUDP

Outline• Introduction √• Background √• Experiments √• Results √• Analysis

– Head to Head ←– Bandwidth– Scaling– Buffering– Smooth

• Conclusions

RealPlayer = FairPlayer?

0

50

100

150

200

250

300

350

400

0 50 100 150 200 250

Thro

ughp

ut (K

bps)

Playout + Buffering Time (Seconds)

Clip-19 TCP (DSL: BW = 600Kbps, Q = 10Kbytes)Clip-19 UDP (DSL: BW = 600Kbps, Q = 10Kbytes)

RealPlayer = FoulPlayer?

0

100

200

300

400

500

600

0 50 100 150 200 250

Thro

ughp

ut (K

bps)

Playout + Buffering Time (Seconds)

Clip-31 TCP (DSL: BW = 600Kbps, Q = 10Kbytes)Clip-31 UDP (DSL: BW = 600Kbps, Q = 10Kbytes)

Page 4: The Hungry Wolf - Bandwidth Measurement of the Congestion

4

Bandwidth Distribution

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

0 10 20 30 40 50 60 70

Cum

ulat

ive

Den

sity

Average Bandwidth for 75 Kbps (Kbps)

Average Bandwidth for TCPAverage Bandwidth for UDP

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

0 20 40 60 80 100 120 140

Cum

ulat

ive

Den

sity

Average Bandwidth for 150 Kbps (Kbps)

Average Bandwidth for TCPAverage Bandwidth for UDP

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

0 50 100 150 200 250 300C

umul

ativ

e D

ensi

tyAverage Bandwidth for 300 Kbps (Kbps)

Average Bandwidth for TCPAverage Bandwidth for UDP

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

0 100 200 300 400 500 600

Cum

ulat

ive

Den

sity

Average Bandwidth for 600 Kbps (Kbps)

Average Bandwidth for TCPAverage Bandwidth for UDP

600 Kbps300 Kbps

150 Kbps 75 Kbps

Head-to-Head Bandwidth

0

50

100

150

200

250

300

350

400

0 50 100 150 200 250 300 350 400

Aver

age

Ban

dwid

th fo

r UD

P (K

bps)

Average Bandwidth for TCP (Kbps)

75 Kbps150 Kbps300 Kbps600 Kbps

Bandwidth Difference Distribution

0

0.2

0.4

0.6

0.8

1

-1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8

Cum

ulat

ive

Den

sity

Normalized Average Bandwidth Difference (TCP-UDP)

75 Kbps150 Kbps300 Kbps600 Kbps

Mostly TCP-Friendy!• Remove low bandwidth (36%)• Then remove unscalable (14%)

Outline• Introduction √• Background √• Experiments √• Results √• Analysis

– Head to Head √– Bandwidth √– Scaling ←– Buffering– Smooth

• Conclusions

Media Scaling Distribution

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

1 2 3 4 5 6 7 8 9

Cum

ulat

ive

Den

sity

Number of Scales (Coded-Bandwidth)

Page 5: The Hungry Wolf - Bandwidth Measurement of the Congestion

5

Media Scales Media Scaling Dynamics (1)

0

50000

100000

150000

200000

250000

0 50 100 150 200 250 300 350

Cod

ed-B

andw

idth

(bps

)

Playout + Buffereing Time (sec)

local bw limit (35 kbps)Scale (Coded-BW) Movement for Clip-65 TCPScale (Coded-BW) Movement for Clip-65 UDP

Media Scaling Dynamics (2)

0

50000

100000

150000

200000

250000

300000

0 20 40 60 80 100 120 140

Cod

ed-B

andw

idth

(bps

)

Playout + Buffereing Time (sec)

local bw limit (35 kbps)Scale (Coded-BW) Movement for Clip-78 TCPScale (Coded-BW) Movement for Clip-78 UDP

Media Scaling Distributions

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

0 2 4 6 8 10

Cum

ulat

ive

Den

sity

Number of Scale (Coded-Bandwidth) Changes

Number of Scale Changes Seen for TCPNumber of Scale Changes Seen for UDP

Media Scaling Adaptation Speed

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

0 10 20 30 40 50 60 70 80

Cum

ulat

ive

Den

sity

Elaps Time in Seconds: 0 to time(Coded-BW < 35kbps)

Scale Adaptation Speed for TCPScale Adaptation Speed for UDP

Outline• Introduction √• Background √• Experiments √• Results √• Analysis

– Head to Head √– Bandwidth √– Scaling √– Buffering ←– Smooth

• Conclusions

Page 6: The Hungry Wolf - Bandwidth Measurement of the Congestion

6

Buffering Rate to Playout Rate

0

1

2

3

4

5

6

7

0 50 100 150 200 250 300 350 400

Aver

age

Buf

ferin

g R

ate

/ Ave

rage

Ste

ady

Pla

yout

Rat

e

Average Steady Playout Rate (Kbps)

TCP (All DSL-TBF Runs)UDP (All DSL-TBF Runs)

Buffering Rate to Playout Rate Distribution

0

0.2

0.4

0.6

0.8

1

0 1 2 3 4 5 6 7

Cum

ulat

ive

Den

sity

Average Buffering Rate / Average Steady Playout Rate

TCP (All LAN Runs)UDP (All LAN Runs)

Smoothness

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

1/2 1 2

Cum

ulat

ive

Den

sity

Throughput Ratio

TCPUDP

Smoothness at each Bottleneck

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

1/2 1 2

Cum

ulat

ive

Den

sity

Throughput Ratio for 75 Kbps

TCPUDP

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

1/2 1 2

Cum

ulat

ive

Den

sity

Throughput Ratio for 150 Kbps

TCPUDP

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

1/2 1 2

Cum

ulat

ive

Den

sity

Throughput Ratio for 600 Kbps

TCPUDP

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

1/2 1 2

Cum

ulat

ive

Den

sity

Throughput Ratio for 300 Kbps

TCPUDP

Discussion of Results• No concrete incentives to respond to

congestion– In fact, may be “rewarded” for not

• However, clearly responds– often TCP-Friendly

• Content providers need to provide chance for scalability

• But buffering at higher rate is bad for network

• TCP can be as smooth as UDP• So why not TCP? API is limiting

Conclusions

• Response to congestion important to Internet

• Measured responsiveness of RealVideo• RealVideo over UDP is largely responsive

– receives typically same bandwidth as TCP– often TCP friendly

Page 7: The Hungry Wolf - Bandwidth Measurement of the Congestion

7

Future Work? Future Work

• Other commercial Players– Microsoft Media Player

• Live clips (versus pre-recorded clips)• Perceptual quality of video over TCP versus

UDP• Characterization of clips on Internet

– So can examine “typical” clips