Sie sind auf Seite 1von 14

Quality of Service of

Video Streaming

Mrio Serafim Nunes


Instituto Superior Tcnico

QoS in Video Streaming


1 Theoretical concepts
QoS in Video Streaming
Heterogeneity in Video Streaming
Taxonomy of Congestion Control in Video Streaming
QoS mechanisms for Video Streaming
QoS metrics for Video streaming

2 R&D results
OLYMPIC project architecture
Video QoS techniques developed in the project.
Evaluation of developed solutions.
2

QoS inVideo Streaming


 Bitrate:
There is a need of a minimum bitrate to
achieve an acceptable video quality
 Delay:
Real-time Video streaming requires bounded
delay and delay variation.
 Losses:
Packet Loss Ratio (PLR) should be kept below
a strict threshold to get an acceptable visual
quality.
3

Heterogeneity
in Multicast Video Streaming
 Network Heterogeneity
Networks have different resources (bitrate,
buffer capacity, management policies).
 Receiver Heterogeneity
Receivers have different visual quality
requirements (screen dimensions /spatial
resolution, colours) and different processing
capabilities.
Consequently, different users could experience different
video quality reception.
4

QoS Metrics for Video streaming


Network perspective: Network/Transport layers
Parameters: Packet delay, PLR (Packet Loss Ratio)

User perspective: Application (perceived quality)


Parameters: Video frame/VOP delay;
PSNR (Peak Signal-to-Noise Ratio)

255
PSNR = 20 log10

MSE

f ( i, j ) F ( i, j )
MSE =

N2

Taxonomy of Congestion Control in


Multicast Video Streaming


Network based (N)





IntServ
DiffServ

Terminal based (A, T)




Transport layer perspective (T, T/A)




Rate control
Window-based control (TCP, DCCPCCID2)
Rate-based control
- Source-based rate control (RTCP,
DCCP-CCID3)
- Receiver-based rate control
- Hybrid rate control
Rate shaping
Video frame Selective discard
Dynamic rate shaping

Selective Discard of
Video frames
Compression perspective

RTCP, UDP,
TCP,

Application
(A)

Transport
(T)

DCCP

IntServ,
DiffServ

Network
(N)

Video Compression perspectiv (A)





Rate shaping
Rate Adaptive encoding

2 Research results
OLYMPIC project architecture
Transmission of multimedia sport events (Audio/
Video) over IP in large scale, with large
heterogeneity of access network and terminals

Core
Network
Media Encoder/
Media Server

Core
SAS

Unicast/
Multicast

Access
Network
Peripheral
SAS

Unicast/
Multicast

Clients
7

Video Streaming QoS Techniques


developed in OLYMPIC project
A) Selective Discard of Packets based on
DiffServ AF PHB (L3)
B) Selective Discard of Video Frames/VOP
based on RTCP reports (L4)
C) Selective Discard of Video Frames/VOP
based on TCP (L4)
D) Selective Discard of Video Frames/VOP
based on DCCP reports (L4)
8

Video Streaming QoS Techniques


developed
A

Network
(IP)

Application

Application

Transport

UDP

UDP

TCP

DCCP

Discard
point

Router DS

Server

Server

Server

Discard
based on

DSCP/AF

RTCP

Sender
buffer

Sender
buffer

Discard layer
Transport
Protocol






A) Selective discard of Video Frames based on DiffServ


B) Selective discard of Video Frames based on RTCP
C) Selective discard of Video Frames based on TCP
D) Selective discard of Video Frames based on DCCP

Solution A): Selective Discard of


video frames based in DiffServ
Application
layer

Packet Marking QoS

Transport
layer

UDP

Network
layer

(MPEG4  DSCP)

Selective Discard of packets


(IP DiffServ)
10

Architecture of solution A
Selective Discard based on DiffServ

no drop
Access
Network

Core
Network
Encoder/
Media Server

QoS
Marker

Unicast/
Multicast

SAS
(QoS Marker)

drop B

Unicast/
Multicast
drop B+P

Tipo de Trama/
VOP MPEG4

Clientes

Classe AF

AF11 (low priority of discard)

AF12 (medium priority of discard)

AF13 (high priority of discard)


11

PSNR Results of solution A


(Selective Discard based on DiffServ)
Best effort

Diffserv AF

30,0

PSNR [dB]

25,0
20,0
15,0
10,0
5,0
0,0
0,0

5,0

10,0

15,0

20,0

PLR [%]

PSNR Peak Signal-to-Noise Ratio


AF PHB Assured Forward Per Hop Behaviour
12

Conclusions of Solution A

(Selective Discard based on DiffServ)




Selective discard of Video frames/ MPEG4 VOP based


on PHB AF DiffServ presents good performance, it is
scalable and simple;
Mapping of MPEG4 video frames (I, B , P) in AF is not
an optimal solution, due to the dependency chain of
different MPEG4 frames (P depends on I; B depends
on I and P);
DiffServ only used in managed IP networks.

13

Solution B): Selective Discard


of video frames based in RTCP
MPEG4 QoS Classifier
Application
layer

(MPEG4  QOS-type)

Selective Dropping
RTCP RR

Buffer

Transport
layer

Network
layer

UDP

IP
(Best Effort)

Congestion detected by reception of RTCP RR


14

Block Diagram of solution B


(Selective Discard based on RTCP)
Application layer
Incoming Stream

Selective Discard Algorithm

Sent frames

RTCP feedback
from clients

Transport Layer

Discarded
frames

Outgoing Stream

GOV

Index i

I2

Pn

Pn-1

Pi

Pi-1

Discarded VOPs

P3

P2

P1

I1

first

Sent VOPs

15

PSNR Results of solution B


(Selective Discard based on RTCP)
Random discard

Selective discard

30,0

PSNR [dB]

25,0
20,0
15,0
10,0
5,0
0,0
0,0

5,0

10,0

15,0

20,0

25,0

PLR [%]

16

Random Discard vs Selective


discard with congestion of 35%

Random discard

Selective discard
17

Conclusions of solution B
(Selective Discard based on RTCP)
Selective Discard based on RTCP presents high PSNR
gain in comparison with random discard
Allow dynamic adjust of discard level, optimizing the
available bandwidth;
The delay of RTCP loss reports (typical 5s) can be a
problem in case the network presents frequent variations of
congestion level.

18

Solution C: Selective Discard of video


frames based in TCP
MPEG4 QoS Classifier

Application

(MPEG4  QOS-type)

layer

Buffer

Selective Dropping

Transport

TCP

layer

Network

Buffer

IP
(Best Effort)

layer

Congestion detected by the filling level of TCP Buffer


19

Block Diagram of solution C


(Selective Discard based on TCP)
Application layer

Incoming
Stream

Transport Layer

Selective Discard
Algorithm
+
Application Buffer

Outgoing
Stream

TCP
buffer

Frames sent
Frames discarded

I9

Pn

P3

P2

P1

I8

Pn

P2

P1

Pn

P3

P2

P1

Discard

Application Buffer at sender


20

10

PSNR Results of solution C


(Selective Discard based on TCP)
Random discard

Sel. Discard TCP

30,0

PSNR [dB]

25,0
20,0
15,0
10,0
5,0
0,0
0,0

5,0

10,0

15,0

20,0

25,0

PLR [%]

Movie average bitrate = 256 Kbps


TCP Buffer = 64 Kbyte -> 2 s
21

Conclusions of Solution C
(Selective Discard based on TCP)
Selective Discard based on TCP presents
significant PSNR gains in comparison with
random discard;
This solution can be useful when reliability is a
requirement (p. ex. Transcoder)
As this solution is TCP based, it can have high
delay in case of congestion.
The bitrate could increase due to TCP packet
retransmission.
22

11

Solution D): Selective Discard of


video frames based in DCCP
Theoretical model (simulated)
Application

MPEG4 QoS Classifier

layer

(MPEG4  QoS-type)

Transport

Selective Dropping
DCCP

layer

Model Implemented
MPEG4 QoS Classifier
(MPEG4  QoS-type)

Selective Dropping
DCCP

Buffer

Buffer

UDP
Network

IP
(Best Effort)

layer

IP
(Best Effort)

DCCP: single buffer


23

Algorithms developed for Solution D:


(Selective Discard based on DCCP)
 Selective Discard
 Block based
 Frame/VOP based
 Algorithms activated by threshold:
 Number of packets in DCCP queue
 Time of existence of packet in DCCP queue

I
9

P
n

P
n

P
2

P
n

P
i
+
1

P
i

DCCP
buffer

Discard

24

12

PSNR Results for solution D


41
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24

PSNR [dB]

PSNR [dB]

(Selective Discard based on DCCP)

10

15

20

25

30

35

26
25
24
23
22
21
20
19
18
17
16
15
14
13

40

10

Congestion Rate [%]

15

20

25

30

35

40

Congestion Rate [%]

DCCP, Queue Size=30pkts

DCCP, Queue Size=30pkts

DCCP+Block Discard, Level Threshold=30pkts

DCCP+Block Discard Level Threshold=30pkts

DCCP+Block Discard, Delay Threshold=1s

DCCP+Block Discard, Delay Threshold=1s

DCCP+VOP Discard, Level Threshold=30pkts

DCCP+VOP Discard, Level Threshold=30pkts

DCCP+VOP Discard, Delay Threshold=1s

DCCP+VOP Discard, Delay Threshold=1s

Stefan

Akyio

25

1.8

1.6

1.8
1.6

Average VOP Delay [s]

Average VOP Delay [s]

Results of Delay in Solution D


(Selective discard based on DCCP)
1.4
1.2
1
0.8
0.6
0.4
0.2

1.4
1.2
1
0.8
0.6
0.4
0.2
0

0
0

10

15

20

25

30

35

40

Congestion Rate [%]

10

15

20

25

30

35

DCCP, Queue Size=30pkts

DCCP, Queue Size=30pkts

DCCP+Block Discard, Level Threshold=30pkts

DCCP+Block Discard Level Threshold=30pkts

DCCP+Block Discard, Delay Threshold=1s

DCCP+Block Discard, Delay Threshold=1s

DCCP+VOP Discard, Level Threshold=30pkts

DCCP+VOP Discard, Level Threshold=30pkts

DCCP+VOP Discard, Delay Threshold=1s

DCCP+VOP Discard, Delay Threshold=1s

Akyio

40

Congestion Rate [%]

Stefan
26

13

Conclusions of Solution D
(Selective Discard based on DCCP)
Selective Discard based on DCCP presents high
PSNR gain in comparison with random discard;
This solution presents the lowest delay, due to the
single buffer at sender (at transport layer)
Presents higher discard flexibility since it allow
frame discard at transport layer.
DCCP not deployed yet at large scale

27

Comparison of the different solutions


of Video Streaming QoS
A) Video Frame Selective Discard based on DiffServ


Simple, satisfactory results, but requires DiffServ.

B) Video Frame Selective Discard based on RTCP




Good results, problems with delay and report periodicity.

C) Video Frame Selective Discard based on TCP




Good results, works better with big buffers, but presents high end-toend delay.

D) Video Frame Selective Discard based on DCCP




Solution that present best results due to optimization allowed by


DCCP (best PSNR, lowest delay), but DCCP is not widely deployed.
28

14

Das könnte Ihnen auch gefallen