Loading in 2 Seconds...
Loading in 2 Seconds...
Providing 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
Motivations • The Internet: Service-Oriented Network • Service Requirement: End-to-End QoS • Service Delivery System: Content Distribution Networks • On-Demand Large StoredVideo Streaming --- High Bandwidth requirements • Wide-Area Stored Video Delivery System Common Approach --- Proxy Server System
Proxy Content Delivery Architecture Proxy Server + VPN
Virtual Private Network(VPN) • Network- Layer VPNnot Leased-Lines, but Service Level Agreements, • Coarse-grain average : T3 VPN, 99.9% available, 120 ms average RTTmonthly average • No rate guarantee for individual flows • No packet loss/delay guarantee Application-level Traffic Management is needed.
System 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
Outline • Motivations and Background • Staggered Two-Flow Streaming • Control Bandwidth Sharing • Conclusion and Current Work
Objective and Approaches Controlled Quality Assurancein streaming on the best-effortInternet 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
Priority Structure in Videos Two flows in a video session: • AReliableFlow for essential data (e.g., I frames) • AnUnreliableFlow for enhanced data (e.g., P/B)
Segment and Staggered Delivery The Reliable Flow is one segment ahead
Staggered 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
Merging k k k k k Unreliable Delivery To user Reliable Prefetching k+1 k+1 Illustration Competition!! Prefetching Cache Central Server Proxy Server best-effort VPN
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
Application-Aware Controlled Bandwidth Sharing Stableand 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.
TCP: 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
cTCP: 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.
Two 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
Experimental 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
RXs in TCP or cTCP rUDP Losses Multiple Sessions: cTCP/rUDP v.s. TCP/rUDP A video session of two flows (cTCP/rUDP or TCP/rUDP)
Multiple 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
Summary 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
Current 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.