Transcript videoTransport - Dapeng Oliver Wu
Streaming Video over the Internet
Dapeng Wu Electrical & Computer Engineering University of Florida
What is Streaming Video?
• Download mode: no delay bound • Streaming mode: delay bound
Access SW
Receiver 1
Domain B Access SW Domain A
Data path Internet Source cnn.com
RealPlayer
Domain C Access SW
Receiver 2 2
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 3
Time-varying Available Bandwidth Receiver No bandwidth reservation
Access SW Domain B
R>=56 kb/s
Domain A
Data path
Access SW
56 kb/s R<56 kb/s RealPlayer Source cnn.com
4
Time-varying Delay Receiver
Access SW
RealPlayer
Domain B Domain A Access SW
56 kb/s Source Data path cnn.com
Delayed packets regarded as lost 5
Effect of Packet Loss Receiver No packet loss
Access SW Domain B Access SW Domain A
Data path Source Loss of packets No retransmission 6
Unicast vs. Multicast Unicast Pros and cons?
Multicast 7
Heterogeneity For Multicast • Network heterogeneity • Receiver heterogeneity 256 kb/s
Access SW
Receiver 2 What Quality?
Domain B
Source
Domain A Access SW
Ethernet Internet
Domain C
1 Mb/s Receiver 1
Gateway
Telephone networks What Quality?
64 kb/s Receiver 3 8
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 9
Architecture for Video Streaming 10
Video Compression
Layer 0 Layer 1 + Layer 2 64 kb/s D 256 kb/s D + 1 Mb/s D Layered video encoding/decoding.
D
denotes the decoder.
11
Application of Layered Video
IP multicast 256 kb/s
Access SW
Receiver 2
Domain B
Source
Domain A Access SW
Ethernet Internet
Domain C
1 Mb/s Receiver 1
Gateway
Telephone networks 64 kb/s Receiver 3 12
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
Congestion Control
• Window-based vs. rate control (pros and cons?) Window-based control Rate control 14
Source-based Rate Control
15
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 16
Receiver-based Rate Control
IP multicast for layered video 256 kb/s
Access SW
Receiver 2
Domain B
Source
Domain A Access SW
Ethernet Internet
Domain C
1 Mb/s Receiver 1
Gateway
Telephone networks 64 kb/s Receiver 3 17
Error Control
• • • • FEC – Channel coding – Source coding-based FEC – Joint source/channel coding Delay-constrained retransmission Error resilient compression Error concealment 18
Channel Coding
19
Delay-constrained Retransmission 20
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 21
22
Continuous Media Distribution Services • • • Content replication (caching & mirroring) Network filtering/shaping/thinning Application-level multicast (overlay networks) 23
Caching
• • • What is caching? Why using caching? WWW means World Wide Wait?
Pros and cons? 24
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 25
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 26
Media Synchronization
• • Why media synchronization?
Example: lip-synchronization (video/audio) 27
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 28
Protocol Stacks 29
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 30