Avoiding zigzag quality switching in real content adaptive video

Avoiding zigzag quality switching in real content adaptive video streaming. Wassim Ramadan, Eugen Dedu and Julien Bourgeois. Laboratoire d'Informatique de ...
487KB taille 5 téléchargements 276 vues
Avoiding zigzag quality switching in real content adaptive video streaming Wassim Ramadan, Eugen Dedu and Julien Bourgeois Laboratoire d’Informatique de l’Universit´ e de Franche-Comt´ e Montb´ eliard, France

DICTAP 21–23 June 2011

Wassim Ramadan, Eugen Dedu and Julien Bourgeois

Avoiding zigzag quality switching

1 / 15

Introduction

Zigzag avoidance

Experiments

Conclusions and perspectives

Goals of zigzag avoiding

Improve user video experience by minimizing unnecessary quality switching Optimise network resource usage by minimizing packet loss rate

Wassim Ramadan, Eugen Dedu and Julien Bourgeois

Avoiding zigzag quality switching

2 / 15

Introduction

Zigzag avoidance

Experiments

Conclusions and perspectives

Video adaptation and zigzag quality switching Dynamic bandwidth vs static bitrates

Ideal bitrate

3.5 3

If bitratebw: lost packets

0.5 0

0

20

40

60

80

100

120

140

160

180

Ideal: bitrate=bw

Time (s) available bandwidth Q0

Q1 Q2

Q3

many zigzags occur Bitrate of transmitted video (Mb/s)

120 3 100

2.5

80

2

Zigzag problem Adaptation leads to:

60

1.5 1

40

0.5

20 adapted video bitrate

0 0

20

40

60

80

100

120

140

160

many zigzags poor quality

0 180

Time (s)

Wassim Ramadan, Eugen Dedu and Julien Bourgeois

Avoiding zigzag quality switching

3 / 15

Introduction

Zigzag avoidance

Experiments

Conclusions and perspectives

Video adaptation and zigzag quality switching Dynamic bandwidth vs static bitrates

Ideal bitrate

3.5 3

If bitratebw: lost packets

0.5 0

0

20

40

60

80

100

120

140

160

180

Ideal: bitrate=bw

Time (s) available bandwidth Q0

Q1 Q2

Q3

many zigzags occur Bitrate of transmitted video (Mb/s)

120 3 100

2.5

80

2

Zigzag problem Adaptation leads to:

60

1.5 1

40

0.5

20 adapted video bitrate

0 0

20

40

60

80

100

120

140

160

many zigzags poor quality

0 180

Time (s)

Wassim Ramadan, Eugen Dedu and Julien Bourgeois

Avoiding zigzag quality switching

3 / 15

Introduction

Zigzag avoidance

Experiments

Conclusions and perspectives

Outline

1

Zigzag avoidance

2

Experiments

3

Conclusions and perspectives

Wassim Ramadan, Eugen Dedu and Julien Bourgeois

Avoiding zigzag quality switching

4 / 15

Introduction

Zigzag avoidance

Experiments

Conclusions and perspectives

Outline

1

Zigzag avoidance ZAAL (Zigzag Avoidance ALgorithm)

Wassim Ramadan, Eugen Dedu and Julien Bourgeois

Avoiding zigzag quality switching

5 / 15

Introduction

Zigzag avoidance

Experiments

Conclusions and perspectives

Overview of ZAAL

ZAAL Zigzag Avoidance ALgorithm ZAAL maintains a successfulness value for each bitrate which: is an arithmetic real value between 0 and 1 indicates the successfulness of the bitrate if used uses a historic of the application last attempts to use the bitrate is calculated at the end of an adaptation period is obtained by applying an EWMAa algorithm on the bitrate successfulness historic a

EWMA: Exponential Weighted Moving Average

Wassim Ramadan, Eugen Dedu and Julien Bourgeois

Avoiding zigzag quality switching

6 / 15

Introduction

Zigzag avoidance

Experiments

Conclusions and perspectives

Details of ZAAL ZAAL works as follows at the beginning of a video transmission, all successfulness values Si a are set to 1 the application switches to a higher quality i + 1 only if Si > β b ZAAL uses the following general formula: Si = (1 − α/d)Si + s(α/d) c de a

i: bitrate index β = 0.7 switching threshold c if the bitrate succeeds s = 1 else s = 0 d α = 0.3 degree of EWMA weighting increase/decrease e and d = 1, 2 or 4 division factor b

Wassim Ramadan, Eugen Dedu and Julien Bourgeois

Avoiding zigzag quality switching

7 / 15

Introduction

Zigzag avoidance

Experiments

Conclusions and perspectives

Formula of ZAAL Successfulness value can change in three cases

Application increases the bitrate

Application decreases the bitrate

s=1 d=1

s=0 d=1

S j : ji =1−α  S jα

S i =1−α  S i

Application maintains the bitrate s=1 d=1

s=1 d=4

S j : ji =1−α  S jα

s=1 d=2

S i 1=1−α / 4 S jα / 4

S i =1−α / 2  S i α / 2 Wassim Ramadan, Eugen Dedu and Julien Bourgeois (a)

Avoiding zigzag quality switching (b)

8 / 15

Introduction

Zigzag avoidance

Experiments

Conclusions and perspectives

Outline

2

Experiments Network topology Zigzag avoidance checking

Wassim Ramadan, Eugen Dedu and Julien Bourgeois

Avoiding zigzag quality switching

9 / 15

Introduction

Zigzag avoidance

Experiments

Conclusions and perspectives

Network used in experiments

Network parameters Parameter name Experiments place Packet size PC1 (sender): Wired card, 100Mb/s PC2 (shaper machine): Wireless card, 802.11b/g 54Mb/s PC2 (shaper machine): Wired card, 100Mb/s PC3 (receiver): Wired card, 100Mb/s PC1,2&3 OS PC1,2&3 OS kernel DCCP Distance (AP ↔ PC2)

Wassim Ramadan, Eugen Dedu and Julien Bourgeois

Parameter value In building 1024 bytes

Linux (Ubuntu 64bits) 2.6.35 generic Included in the kernel 50cm

Avoiding zigzag quality switching

10 / 15

Introduction

Zigzag avoidance

Experiments

Conclusions and perspectives

Zigzag avoidance, ex. of one flow in (case of) traffic shaping

Bitrate of transmitted video (Mb/s)

120 3 100

2.5

80

2

60

1.5

40

1

20

0.5 adapted video bitrate

0 0

20

40

60

80

100

120

140

160

0 180

Time (s)

(c) without ZAAL: many zigzags occur Bitrate of transmitted video (Mb/s)

120 3 100

2.5

80

2

60

1.5

40

1

20

0.5 adapted video bitrate

0 0

20

40

60

80

100

120

140

160

0 180

Time (s)

(d) with ZAAL: few zigzag occur Wassim Ramadan, Eugen Dedu and Julien Bourgeois

Avoiding zigzag quality switching

11 / 15

Introduction

Zigzag avoidance

Experiments

Conclusions and perspectives

Performance comparison Two experiments: one flow and ten concurrent flows

Method Without ZAAL With ZAAL

Sent pkts 47795 43548

Traffic shaping Received pkts 42043 39865

Lost pkts 5752 (12%) 3683 ( 8%)

Sent pkts 41191 36713

10 concurrent flows Received pkts Lost pkts 32307 8884 (21%) 32477 4236 (11%)

Number of sent and received packets (average of all flows) with and without ZAAL

in the first experiment, ZAAL has less sent and received packets than without ZAAL, but using ZAAL is more useful because it avoids the zigzag and leads to 30% fewer packet losses in the second experiment, ZAAL is better in terms of sent and received packets, avoiding the zigzag in the same time

Wassim Ramadan, Eugen Dedu and Julien Bourgeois

Avoiding zigzag quality switching

12 / 15

Introduction

Zigzag avoidance

Experiments

Conclusions and perspectives

Outline

3

Conclusions and perspectives

Wassim Ramadan, Eugen Dedu and Julien Bourgeois

Avoiding zigzag quality switching

13 / 15

Introduction

Zigzag avoidance

Experiments

Conclusions and perspectives

Conclusions ZAAL is a general solution, since it can be integrated to any adaptation method ZAAL avoids the undesirable constant switching in quality (the zigzag problem) Perspectives working on a hybrid solution, which uses a bandwidth estimation method together with ZAAL

Wassim Ramadan, Eugen Dedu and Julien Bourgeois

Avoiding zigzag quality switching

14 / 15

Introduction

Zigzag avoidance

Experiments

Conclusions and perspectives

Conclusions ZAAL is a general solution, since it can be integrated to any adaptation method ZAAL avoids the undesirable constant switching in quality (the zigzag problem) Perspectives working on a hybrid solution, which uses a bandwidth estimation method together with ZAAL

Wassim Ramadan, Eugen Dedu and Julien Bourgeois

Avoiding zigzag quality switching

14 / 15

Introduction

Zigzag avoidance

Experiments

Conclusions and perspectives

Questions?

Wassim Ramadan, Eugen Dedu and Julien Bourgeois

Avoiding zigzag quality switching

15 / 15