30
Streaming Video over the Internet Dr. Dapeng Wu University of Florida Department of Electrical and Computer Engineering

Streaming Video over the Interneteeweb.poly.edu/~yao/EL6123_s16/VideoStreaming_DapengWu.pdfProtocols for Streaming Video • Network-layer protocol: Internet Protocol (IP) • Transport

  • Upload
    others

  • View
    6

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Streaming Video over the Interneteeweb.poly.edu/~yao/EL6123_s16/VideoStreaming_DapengWu.pdfProtocols for Streaming Video • Network-layer protocol: Internet Protocol (IP) • Transport

Streaming Video over the Internet

Dr. Dapeng WuUniversity of Florida

Department of Electrical and Computer Engineering

Page 2: Streaming Video over the Interneteeweb.poly.edu/~yao/EL6123_s16/VideoStreaming_DapengWu.pdfProtocols for Streaming Video • Network-layer protocol: Internet Protocol (IP) • Transport

What is Streaming Video?

2

AccessAccessSWSW

Data path

AccessAccessSWSW

Domain A

Domain B

Domain C

Internet

AccessAccessSWSW

Receiver 1•Download mode: no delay bound •Streaming mode: delay bound

SourceReceiver 2RealPlayercnn.com

Page 3: Streaming Video over the Interneteeweb.poly.edu/~yao/EL6123_s16/VideoStreaming_DapengWu.pdfProtocols for Streaming Video • Network-layer protocol: Internet Protocol (IP) • Transport

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

• Summary3

Page 4: Streaming Video over the Interneteeweb.poly.edu/~yao/EL6123_s16/VideoStreaming_DapengWu.pdfProtocols for Streaming Video • Network-layer protocol: Internet Protocol (IP) • Transport

Time-varying Available Bandwidth

Data path

AccessAccessSWSW

Domain A

Domain B

AccessAccessSWSW

Receiver

56 kb/s

4

Source

R>=56 kb/s

R<56 kb/s

No bandwidth reservation

RealPlayer

cnn.com

Page 5: Streaming Video over the Interneteeweb.poly.edu/~yao/EL6123_s16/VideoStreaming_DapengWu.pdfProtocols for Streaming Video • Network-layer protocol: Internet Protocol (IP) • Transport

Time-varying Delay

Data path

AccessAccessSWSW

Domain A

Domain B

AccessAccessSWSW

Receiver

56 kb/s

RealPlayer

Delayed packets regarded as lost

Source

cnn.com5

Page 6: Streaming Video over the Interneteeweb.poly.edu/~yao/EL6123_s16/VideoStreaming_DapengWu.pdfProtocols for Streaming Video • Network-layer protocol: Internet Protocol (IP) • Transport

Effect of Packet Loss

Data path

AccessAccessSWSW

Domain A

Domain B

AccessAccessSWSW

Source

ReceiverNo packet loss

Loss of packetsNo retransmission

6

Page 7: Streaming Video over the Interneteeweb.poly.edu/~yao/EL6123_s16/VideoStreaming_DapengWu.pdfProtocols for Streaming Video • Network-layer protocol: Internet Protocol (IP) • Transport

Unicast vs. Multicast

MulticastUnicast

Pros and cons?7

Page 8: Streaming Video over the Interneteeweb.poly.edu/~yao/EL6123_s16/VideoStreaming_DapengWu.pdfProtocols for Streaming Video • Network-layer protocol: Internet Protocol (IP) • Transport

Heterogeneity For Multicast

Domain A

Domain B

Domain C

Internet

Source

8

Receiver 1

Receiver 2

AccessAccessSWSW

AccessAccessSWSW

GatewayGateway

EthernetTelephonenetworks

Receiver 364 kb/s

1 Mb/s

256 kb/s

•Network heterogeneity

•Receiver heterogeneityWhat Quality?

What Quality?

Page 9: Streaming Video over the Interneteeweb.poly.edu/~yao/EL6123_s16/VideoStreaming_DapengWu.pdfProtocols for Streaming Video • Network-layer protocol: Internet Protocol (IP) • Transport

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

• Summary9

Page 10: Streaming Video over the Interneteeweb.poly.edu/~yao/EL6123_s16/VideoStreaming_DapengWu.pdfProtocols for Streaming Video • Network-layer protocol: Internet Protocol (IP) • Transport

Architecture for Video Streaming

10

Page 11: Streaming Video over the Interneteeweb.poly.edu/~yao/EL6123_s16/VideoStreaming_DapengWu.pdfProtocols for Streaming Video • Network-layer protocol: Internet Protocol (IP) • Transport

Video Compression

Laye

red

Cod

er 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.

11

Page 12: Streaming Video over the Interneteeweb.poly.edu/~yao/EL6123_s16/VideoStreaming_DapengWu.pdfProtocols for Streaming Video • Network-layer protocol: Internet Protocol (IP) • Transport

12

Application of Layered Video

Domain A

Domain B

Domain C

Internet

Source Receiver 1

Receiver 2

AccessAccessSWSW

AccessAccessSWSW

GatewayGateway

EthernetTelephonenetworks

Receiver 364 kb/s

1 Mb/s

256 kb/s

IP multicast

Page 13: Streaming Video over the Interneteeweb.poly.edu/~yao/EL6123_s16/VideoStreaming_DapengWu.pdfProtocols for Streaming Video • Network-layer protocol: Internet Protocol (IP) • Transport

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

13

Page 14: Streaming Video over the Interneteeweb.poly.edu/~yao/EL6123_s16/VideoStreaming_DapengWu.pdfProtocols for Streaming Video • Network-layer protocol: Internet Protocol (IP) • Transport

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

Window-based control Rate control14

Page 15: Streaming Video over the Interneteeweb.poly.edu/~yao/EL6123_s16/VideoStreaming_DapengWu.pdfProtocols for Streaming Video • Network-layer protocol: Internet Protocol (IP) • Transport

Source-based Rate Control

15

Page 16: Streaming Video over the Interneteeweb.poly.edu/~yao/EL6123_s16/VideoStreaming_DapengWu.pdfProtocols for Streaming Video • Network-layer protocol: Internet Protocol (IP) • Transport

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

Page 17: Streaming Video over the Interneteeweb.poly.edu/~yao/EL6123_s16/VideoStreaming_DapengWu.pdfProtocols for Streaming Video • Network-layer protocol: Internet Protocol (IP) • Transport

Receiver-based Rate Control

Domain A

Domain B

Domain C

Internet

Source Receiver 1

Receiver 2

AccessAccessSWSW

AccessAccessSWSW

GatewayGateway

EthernetTelephonenetworks

Receiver 364 kb/s

1 Mb/s

256 kb/sIP multicast for layered video

17

Page 18: Streaming Video over the Interneteeweb.poly.edu/~yao/EL6123_s16/VideoStreaming_DapengWu.pdfProtocols for Streaming Video • Network-layer protocol: Internet Protocol (IP) • Transport

Error Control• FEC

– Channel coding– Source coding-based FEC– Joint source/channel coding

• Delay-constrained retransmission• Error resilient compression• Error concealment

18

Page 19: Streaming Video over the Interneteeweb.poly.edu/~yao/EL6123_s16/VideoStreaming_DapengWu.pdfProtocols for Streaming Video • Network-layer protocol: Internet Protocol (IP) • Transport

Channel Coding

19

Page 20: Streaming Video over the Interneteeweb.poly.edu/~yao/EL6123_s16/VideoStreaming_DapengWu.pdfProtocols for Streaming Video • Network-layer protocol: Internet Protocol (IP) • Transport

Delay-constrained Retransmission

20

Page 21: Streaming Video over the Interneteeweb.poly.edu/~yao/EL6123_s16/VideoStreaming_DapengWu.pdfProtocols for Streaming Video • Network-layer protocol: Internet Protocol (IP) • Transport

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

• Summary21

Page 22: Streaming Video over the Interneteeweb.poly.edu/~yao/EL6123_s16/VideoStreaming_DapengWu.pdfProtocols for Streaming Video • Network-layer protocol: Internet Protocol (IP) • Transport

Continuous Media Distribution Services

• Content replication (caching & mirroring)• Network filtering/shaping/thinning• Application-level multicast (overlay networks)

22

Page 23: Streaming Video over the Interneteeweb.poly.edu/~yao/EL6123_s16/VideoStreaming_DapengWu.pdfProtocols for Streaming Video • Network-layer protocol: Internet Protocol (IP) • Transport

23

Caching• What is caching? • Why using caching? WWW means World Wide Wait?• Pros and cons?

Page 24: Streaming Video over the Interneteeweb.poly.edu/~yao/EL6123_s16/VideoStreaming_DapengWu.pdfProtocols for Streaming Video • Network-layer protocol: Internet Protocol (IP) • Transport

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

• Summary24

Page 25: Streaming Video over the Interneteeweb.poly.edu/~yao/EL6123_s16/VideoStreaming_DapengWu.pdfProtocols for Streaming Video • Network-layer protocol: Internet Protocol (IP) • Transport

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

25

Page 26: Streaming Video over the Interneteeweb.poly.edu/~yao/EL6123_s16/VideoStreaming_DapengWu.pdfProtocols for Streaming Video • Network-layer protocol: Internet Protocol (IP) • Transport

Media Synchronization• Why media synchronization?• Example: lip-synchronization (video/audio)

26

Page 27: Streaming Video over the Interneteeweb.poly.edu/~yao/EL6123_s16/VideoStreaming_DapengWu.pdfProtocols for Streaming Video • Network-layer protocol: Internet Protocol (IP) • Transport

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

27

Page 28: Streaming Video over the Interneteeweb.poly.edu/~yao/EL6123_s16/VideoStreaming_DapengWu.pdfProtocols for Streaming Video • Network-layer protocol: Internet Protocol (IP) • Transport

Protocol Stacks

28

Page 29: Streaming Video over the Interneteeweb.poly.edu/~yao/EL6123_s16/VideoStreaming_DapengWu.pdfProtocols for Streaming Video • Network-layer protocol: Internet Protocol (IP) • Transport

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

29

Page 30: Streaming Video over the Interneteeweb.poly.edu/~yao/EL6123_s16/VideoStreaming_DapengWu.pdfProtocols for Streaming Video • Network-layer protocol: Internet Protocol (IP) • Transport

Homework

• Reading assignment: Chap. 15

30