Title: Providing Controlled Quality Assurance in Video Streaming across the Internet
1Providing Controlled Quality Assurance in Video
Streaming across the Internet
- Yingfei Dong, Zhi-Li Zhang and Rohit Rakesh
- Computer Networking and Multimedia Research Group
- Dept. of Computer Science and Engineering
- University of Minnesota
2Motivations
- The Internet Service-Oriented Network
- Service Requirement End-to-End QoS
- Service Delivery System Content Distribution
Networks - On-Demand Large Stored Video Streaming
- --- High Bandwidth requirements
- Wide-Area Stored Video Delivery System
- Common Approach --- Proxy Server System
3Proxy Content Delivery Architecture
Proxy Server VPN
4Virtual Private Network(VPN)
- Network- Layer VPN
not Leased-Lines, but Service Level Agreements, - Coarse-grain average
- T3 VPN, 99.9 available, 120 ms average RTT
monthly average - No rate guarantee for individual flows
- No packet loss/delay guarantee
- Application-level Traffic Management is needed.
5System Constraints and Challenge
- Constraints
- Limited Buffer Space v.s. Huge Video Volume
- Streaming from central servers is required.
- Aggregate B/W v.s. Individual Flow Requirement
- Bandwidth management must be present.
- Stringent Timing v.s. No Delay/Loss Guarantee
- Reliably prefetching is necessary.
- Challenge
- Quality Assurance across Best-Effort Networks
6 Outline
- Motivations and Background
- Staggered Two-Flow Streaming
- Control Bandwidth Sharing
- Conclusion and Current Work
-
7Objective and Approaches
- Controlled Quality Assurance in streaming on the
best-effort Internet by exploiting - Application Information, such as the priority
structure in videos (frame-dependency), and flow
rate - Coarse-grain bandwidth assurance of VPN
- Storage / processing capacity of proxy servers
8Priority Structure in Videos
- Two flows in a video session
- A Reliable Flow for essential data (e.g., I
frames) - An Unreliable Flow for enhanced data (e.g., P/B)
9Segment and Staggered Delivery
- The Reliable Flow is one segment ahead
10Staggered Two-Flow Streaming
- Reliable Flow I-frame segments,
prefetched and cached at proxy. - Unreliable Flow P/B-frames segments,
real-time delivery subject to adaptation when
congestion in the soft VPN pipe. - Merging both flows at Proxy Server, then send to
clients
11Illustration
Competition!!
Prefetching Cache
Proxy Server
Central Server
best-effort VPN
12 Interesting Issues
- Data Plane Issues
- Bandwidth Competition
- Unreliable-Flow Rate Adaptation
- Control Plane Issues
- Application-aware Resource Management
- e.g., Admission Control, VPN management,
Video placement and migration - Implementation Issues
13Application-Aware Controlled Bandwidth Sharing
- Stable and Predictable transport protocols
- Controlled TCP (cTCP)
- Application-aware throughput control
A variant of TCP Reno using a simple TCP model
to regulate the injection rate. - Rate-Controlled UDP(rUDP)
- Generating Piece-wise CBR traffic Extending UDP
on FreeBSD with a periodical injection mechanism
limited by a leaky-bucket - Both are implemented in FreeBSD kernel.
14TCP reliable but not fit to our setting
- Sliding Window (W) Injection Control
- W packets per RTT
- AIMD
- Fluctuation Greedily Increase,
back off to half when loss - Fairness regardless of flow
requirements
Packet losses even when sufficient B/W
15cTCP a variant of TCP Reno
- Flow Target Rate TcTCP
- Target Window Size Wtarget
- using a simple TCP bandwidth model to limit the
injection to the flow requirement - If packet loss
- else
No slow-start. No packet losses when given
sufficient B/W.
16Two cTCP Flows v.s. Two TCP Flows
On a 64KBps link, the 1st flow with a target rate
13KBps starts 12 seconds earlier than the 2nd
flow with a target rate 27KBps
17Experimental Environment
- Controlled Testbed on FreeBSD4.1
- 3 PCs on a dedicated Gbps Ethernet switch
- A central server and a proxy server
- A bandwidth-and-delay control unit emulates a
VPN pipe in between, running IP Dummynet - Testing Video a 60-minute MPEG-2 video clip
- Target Rate of I frames, 52 KBps
- Target Rate of P/B frames, 200 KBps
18Multiple Sessions cTCP/rUDP v.s. TCP/rUDP
A video session of two flows (cTCP/rUDP or
TCP/rUDP)
19Multiple Sessions (Arrival / Departure)
cTCP/rUDP v.s. TCP/rUDP
- C 5 1.1 Max_Rate
- Starting with 4 sessions
- Then, add one more
- Later, terminate two.
- Compare the variations of packet RXs and losses
20Summary of Controlled BW Sharing
- Practical quality assurance of the essential data
over best-effort networks - None / Low Packet Losses
- Stable, Predictable System Performance
- Providing chances for applying simple
application-aware traffic management - TCP-firendly do not grab BW from others
- Patent Pending
21Current and Future Work
- Quality Assurance issues in Service-Oriented
Networks - Scalability in data plane
- Aggregation at the levels of video, session, and
flow. - Network parameters sharing among sessions.
- Service-Oriented B/W Management in control plane
- Application-ware admission control
- Proxy Placement utilizing the topology info.
- Proxy Caching and Video Placement / Migration.
- High-Quality VOD on Cable Broadband Networks.