Streaming Video over the Interneteeweb.poly.edu/~yao/EL6123_s16/videoTransport_DapengWu.pdf · •...

Preview:

Citation preview

Streaming Video over the Internet

Dr. Dapeng WuUniversity of Florida

Department of Electrical and Computer Engineering

2

What is Streaming Video?

AccessAccess

SWSW

Data path

AccessAccess

SWSW

Domain A

Domain B

Domain C

Internet

AccessAccess

SWSW

SourceReceiver 2

Receiver 1•Download mode: no delay bound

•Streaming mode: delay bound

cnn.com RealPlayer

3

Outline

• Challenges for quality video transport

• An architecture for video streaming

– Video compression

– Application-layer QoS control

– Continuous media distribution services

– Streaming server

– Media synchronization mechanisms

– Protocols for streaming media

• Summary

4

Time-varying Available Bandwidth

Data path

AccessAccess

SWSW

Domain A

Domain B

AccessAccess

SWSW

Source

Receiver

56 kb/s

R>=56 kb/s

R<56 kb/s

cnn.com

RealPlayer

No bandwidth reservation

5

Time-varying Delay

Data path

AccessAccess

SWSW

Domain A

Domain B

AccessAccess

SWSW

Source

Receiver

56 kb/s

cnn.com

RealPlayer

Delayed packets regarded as lost

6

Effect of Packet Loss

Data path

AccessAccess

SWSW

Domain A

Domain B

AccessAccess

SWSW

Source

ReceiverNo packet loss

Loss of packets

No retransmission

7

Unicast vs. Multicast

Unicast Multicast

Pros and cons?

8

Heterogeneity For Multicast

Domain A

Domain B

Domain C

Internet

Source Receiver 1

Receiver 2

AccessAccess

SWSW

AccessAccess

SWSW

GatewayGateway

EthernetTelephone

networks

Receiver 364 kb/s

1 Mb/s

256 kb/s

•Network heterogeneity

•Receiver heterogeneityWhat Quality?

What

Quality?

9

Outline

• Challenges for quality video transport

• An architecture for video streaming

– Video compression

– Application-layer QoS control

– Continuous media distribution services

– Streaming server

– Media synchronization mechanisms

– Protocols for streaming media

• Summary

10

Architecture for Video Streaming

11

Video Compression

Lay

ered

Coder D

D

D

+

+

Layer 0

Layer 1

Layer 2 1 Mb/s

256 kb/s

64 kb/s

Layered video encoding/decoding.

D denotes the decoder.

12

Application of Layered Video

Domain A

Domain B

Domain C

Internet

Source Receiver 1

Receiver 2

AccessAccess

SWSW

AccessAccess

SWSW

GatewayGateway

EthernetTelephone

networks

Receiver 364 kb/s

1 Mb/s

256 kb/s

IP multicast

13

Application-layer QoS Control

• Congestion control (using rate control):– Source-based, requires

• rate-adaptive compression or

• rate shaping

– Receiver-based

– Hybrid

• Error control:– Forward error correction (FEC)

– Retransmission

– Error resilient compression

– Error concealment

14

Congestion Control• Window-based vs. rate control (pros and cons?)

Window-based control Rate control

15

Source-based Rate Control

16

Video Multicast

• How to extend source-based rate control to multicast?

• Limitation of source-based rate control in multicast

• Trade-off between bandwidth efficiency and service flexibility

17

Receiver-based Rate Control

Domain A

Domain B

Domain C

Internet

Source Receiver 1

Receiver 2

AccessAccess

SWSW

AccessAccess

SWSW

GatewayGateway

EthernetTelephone

networks

Receiver 364 kb/s

1 Mb/s

256 kb/sIP multicast for layered video

18

Error Control

• FEC

– Channel coding

– Source coding-based FEC

– Joint source/channel coding

• Delay-constrained retransmission

• Error resilient compression

• Error concealment

19

Channel Coding

20

Delay-constrained Retransmission

21

Outline

• Challenges for quality video transport

• An architecture for video streaming

– Video compression

– Application-layer QoS control

– Continuous media distribution services

– Streaming server

– Media synchronization mechanisms

– Protocols for streaming media

• Summary

22

23

Continuous Media Distribution Services

• Content replication (caching & mirroring)

• Network filtering/shaping/thinning

• Application-level multicast (overlay networks)

24

Caching

• What is caching?

• Why using caching? WWW means World Wide Wait?

• Pros and cons?

25

Outline

• Challenges for quality video transport

• An architecture for video streaming

– Video compression

– Application-layer QoS control

– Continuous media distribution services

– Streaming server

– Media synchronization mechanisms

– Protocols for streaming media

• Summary

26

Streaming Server

• Different from a web server

– Timing constraints

– Video-cassette-recorder (VCR) functions (e.g., fast forward/backward, random access, and pause/resume).

• Design of streaming servers

– Real-time operating system

– Special disk scheduling schemes

27

Media Synchronization

• Why media synchronization?

• Example: lip-synchronization (video/audio)

28

Protocols for Streaming Video

• Network-layer protocol: Internet Protocol (IP)

• Transport protocol:

– Lower layer: UDP & TCP

– Upper layer: Real-time Transport Protocol (RTP) & Real-Time Control Protocol (RTCP)

• Session control protocol:

– Real-Time Streaming Protocol (RTSP): RealPlayer

– Session Initiation Protocol (SIP): Microsoft Windows MediaPlayer; Internet telephony

29

Protocol Stacks

30

Summary

• Challenges for quality video transport

– Time-varying available bandwidth

– Time-varying delay

– Packet loss

• An architecture for video streaming

– Video compression

– Application-layer QoS control

– Continuous media distribution services

– Streaming server

– Media synchronization mechanisms

– Protocols for streaming media

31

Homework

• Reading assignment: Chap. 15