Lecture 18: Video Streaming

Similar documents
Neural Adaptive Video Streaming with Pensieve

Oboe: Auto-tuning Video ABR Algorithms to Network Conditions

Neural Adaptive Content-aware Internet Video Delivery. Hyunho Yeo, Youngmok Jung, Jaehong Kim, Jinwoo Shin, Dongsu Han

Self Programming Networks

Data Driven Networks

A Comparative Case Study of HTTP Adaptive Streaming Algorithms in Mobile Networks

Data Driven Networks. Sachin Katti

Layer-Assisted Adaptive Video Streaming

Neural Adaptive Content-aware Internet Video Delivery

Content-Aware Personalised Rate Adaptation for Adaptive Streaming via Deep Video Analysis

Using Bandwidth Aggregation to Improve the Performance of Video Quality- Adaptive Streaming Over Multiple Wireless Access Networks

360 Degree Video Streaming

ADAPTIVE STREAMING. Improve Retention for Live Content. Copyright (415)

Dynamic Adaptive Streaming over HTTP (DASH) Application Protocol : Modeling and Analysis

Qoe-aware adaptive bitrate video streaming over mobile networks with caching proxy

Queueing Theoretic Approach to Playout Buffer Model for HTTP Adaptive Streaming

QoE-driven Dynamic Adaptive Video Streaming Strategy with Future Information

GroupCast: Preference-Aware Cooperative Video Streaming with Scalable Video Coding

arxiv: v1 [cs.mm] 29 Aug 2016

QoE-aware Traffic Shaping for HTTP Adaptive Streaming

Using Reinforcement Learning to Optimize Storage Decisions Ravi Khadiwala Cleversafe

SARA: Segment Aware Rate Adaptation for DASH Video Services

A Control Theoretic Approach to ABR Video Streaming: A Fresh Look at PID-based Rate Adaptation

Adaptive Video Acceleration. White Paper. 1 P a g e

An Experimental Evaluation of Rate Adaptation Algorithms in Adaptive Streaming over HTTP

arxiv: v1 [cs.ni] 27 Sep 2018

Streamloading: Low cost high quality video streaming. Shivendra S. Panwar (joint work with Amir Hosseini and Fraida Fund)

Confused, Timid, and Unstable: Picking a Video Streaming Rate is Hard

QoE-Driven Video Streaming and Video Content Caching

arxiv: v1 [cs.ni] 5 Jan 2017

A Case Study on Cloud Based Hybrid Adaptive Mobile Streaming: Performance Evaluation

A Rate Adaptation Algorithm for Tile-based 360-degree Video Streaming

Downton Abbey Without the Hiccups: Buffer-Based Rate Adaptation for HTTP Video Streaming

QoE-Driven Resource Allocation for DASH over OFDMA Networks

CS2P: Improving Video Bitrate Selection and Adaptation with Data-Driven Throughput Prediction

Dynamic Adaptive Streaming over HTTP (DASH) using feedback linearization: a comparison with a leading Italian TV operator

Reduction of Periodic Broadcast Resource Requirements with Proxy Caching

Video Through a Crystal Ball: Effect of Bandwidth Prediction Quality on Adaptive Streaming in Mobile Environments

TCP Protocol Optimization for HTTP Adaptive Streaming

Deploying IPTV and OTT

Lecture 5: Flow Control. CSE 123: Computer Networks Alex C. Snoeren

Stakeholders Forum on Quality of Service and Consumer Experience (Nairobi, Kenya, November 2015)

Performance Characterization of a Commercial Video Streaming Service. Mojgan Ghasemi, Akamai Technologies - Princeton University

A Linear Regression Framework For Assessing Time-Varying Subjective Quality in HTTP Streaming. Nagabhushan Eswara IIT Hyderabad November 14, 2017

Should I stay or should I go: Analysis of the impact of application QoS on user engagement in YouTube

On User-centric QoE Prediction for VoIP & Video Streaming based on Machine-Learning

Video AI Alerts An Artificial Intelligence-Based Approach to Anomaly Detection and Root Cause Analysis for OTT Video Publishers

Page 1. Outline / Computer Networking : 1 st Generation Commercial PC/Packet Video Technologies

Designing the ideal video streaming QoE analysis tool

IMPROVING LIVE PERFORMANCE IN HTTP ADAPTIVE STREAMING SYSTEMS

Slides credited from Dr. David Silver & Hung-Yi Lee

Optimal Design of Encoding Profiles for ABR Streaming

An efficient playout smoothing mechanism for layered streaming in P2P networks

Markov Decision Processes for Bitrate Harmony in Adaptive Video Streaming

Performance Characterization of a Commercial Video Streaming Service

Rewind to Track: Parallelized Apprenticeship Learning with Backward Tracklets

QDASH: A QoE-aware DASH system

Automated Performance Evaluation of Adaptive HTML5 Player Deployments

Confused, Timid, and Unstable: Picking a Video Streaming Rate is Hard

Predicting the Performance of Virtual Reality Video Streaming in Mobile Networks

ABR Streaming of VBR-encoded Videos: Characterization, Challenges, and Solutions

Cellular Network Traffic Scheduling using Deep Reinforcement Learning

Experience. A New Modular E-Learning Platform Integrating an Enhanced Multimedia. Doctoral Program in Computer and Control Engineering (XXX Cycle)

Lecture 7: Sliding Windows. CSE 123: Computer Networks Geoff Voelker (guest lecture)

AutoTune: Game-based Adaptive Bitrate Streaming in P2P-Assisted Cloud-Based VoD Systems

arxiv: v1 [cs.ni] 31 Dec 2018

A QoE Friendly Rate Adaptation Method for DASH

Variable Bitrate Stream in Set top Box device

Lecture 2 September 3

On the Efficacy of the Dynamic Adaptive Streaming Over HTTP (DASH) Protocol

LBP: Robust Rate Adaptation Algorithm for SVC Video Streaming

Optimal Design of Encoding Profiles for ABR Streaming

WHAT DOES GOOD LOOK LIKE?

Cache Management for TelcoCDNs. Daphné Tuncer Department of Electronic & Electrical Engineering University College London (UK)

When Network Embedding meets Reinforcement Learning?

Applications of Reinforcement Learning. Ist künstliche Intelligenz gefährlich?

Project Details. Jiasi Chen CS 179i: Project in Computer Science (Networks) Lectures: Monday 3:10-4pm in Spieth 1307

Router Virtualization as an Enabler for Future Internet Multimedia Applications

Interactive Branched Video Streaming and Cloud Assisted Content Delivery

SamKnows test methodology

QoE-Aware Dynamic Video Rate Adaptation

IEEE TRANSACTIONS ON BROADCASTING 1. A Quality-of-Experience Database for Adaptive Video Streaming

Attend to details of the value iteration and policy iteration algorithms Reflect on Markov decision process behavior Reinforce C programming skills

The Guide to Best Practices in PREMIUM ONLINE VIDEO STREAMING

CS 260: Seminar in Computer Science: Multimedia Networking

arxiv: v1 [cs.cv] 2 Sep 2018

University of Padova Academic year (793 rd ) Department of Information Engineering (DEI) Master s thesis in Telecommunications Engineering

Knowledge Transfer for Deep Reinforcement Learning with Hierarchical Experience Replay

Predicting QoE Factors with Machine Learning

MOOC-DASH: A DASH System for Delivering High-Quality MOOCs Videos

How YouTube Performance is Improved in the T-Mobile Network. Jie Hui, Kevin Lau, Ankur Jain, Andreas Terzis, Jeff Smith T Mobile, Google

Wowza Streaming Engine

DDSS: Dynamic Dedicated Servers Scheduling for Multi Priority Level Classes in Cloud Computing

A Personalized HTTP Adaptive Streaming WebTV

The Guide to Best Practices in PREMIUM ONLINE VIDEO STREAMING

Video Quality for Live Adaptive Bit-Rate Streaming: Achieving Consistency and Efficiency

Residual Advantage Learning Applied to a Differential Game

Notes on Multilayer, Feedforward Neural Networks

Characterizing Netflix Bandwidth Consumption

HIKVISION H.265+ Encoding Technology. Halve Your Bandwidth and Storage Enjoy the Ultra HD and Fluency

Transcription:

MIT 6.829: Computer Networks Fall 2017 Lecture 18: Video Streaming Scribe: Zhihong Luo, Francesco Tonolini 1 Overview This lecture is on a specific networking application: video streaming. In particular, we discussed Pensieve, a reinforcement learning based video streaming technology [1]. 2 Dynamic Adaptive Streaming over HTTP (DASH) Because video is stored in chunks (few seconds each) at different discretized bitrates (240p, 360p, 720p) at the server, and Dynamic Adaptive Streaming over HTTP (DASH) is responsible for getting the next chunk at an appropriate bitrate according to the network throughput. If the chosen bitrate is larger than the network throughput, the playback buffer will be drained and cause rebuffering in the future. If the chosen bitrate is too small, extra bandwidth will be wasted, and users can not enjoy a better video quality. Therefore, client-side video players employ adaptive bitrate (ABR) algorithms to optimize user quality of experience (QoE). Figure 1 is a illustration of what ABR algorithms try to achieve. User-perceived quality-of-experience (QoE) is critical in Internet video applications as it impacts revenues for content providers and delivery systems. The ultimate goal of bitrate adaptation is to improve the QoE of users in order to achieve higher long-term user engagement. The widely-adapted QoE formulation is as follow: QoE = K K 1 q(r k ) λ q(r k+1 ) q(r k ) µ K ( d k(r k ) B k ) µ s T s We model a video as a set of consecutive video segments or chunks, each of which contains L seconds of video. Each chunk is encoded at different bitrates. Let R be the set of all available bitrate levels. The video player can choose to download chunk k at bitrate R k R. Let d k (R k ) be the size of chunk k encoded at bitrate R k. The higher bitrate is selected, the higher video quality is perceived by the user. Let q() : R R be a non-decreasing function which maps selected bitrate R k to video quality perceived by user q(r k ). T s represents the startup delay Figure 2 helps illustrate the conceptual operation of the video player. At time t k, the video player starts to download chunk k. The download time for this chunk will be d k (R k )/ ; i.e., it depends on the size of selected chunk with bitrate R k, as well as average download speed experienced during this download process. 1

Figure 1: Adaptive Bitrate (ABR) Algorithms Different terms in this QoE formulation represent different goals that need to be achieved. Here λ, µ, µ s are non-negative weighting parameters corresponding to video quality variations, rebuffering time and startup delay, respectively. Average Video Quality: The average per-chunk quality over all chunks: Rebuffer: For each chunk k rebuffering occurs if the download time d k(r k ) 1 K K q(r k) is higher than the playback buffer level when the chunk download started (i.e., B k ). Thus, the total rebuffer time is: K (d k(r k ) B k ) Minimize startup delay: Assume T s B max Average Quality Variations: This tracks the magnitude of the changes in the quality from one 1 chunk to another: K 1 K 1 q(r k+1) q(r k ) There are four types of bitrate adaptation algorithms: rate-based algorithms, buffer-based algorithms, hybrid algorithms and learning-based algorithms. Rate-based algorithms use a throughput predictor to predict throughput in the future. The benefits of doing this is to be able to deliver high play-back rate if the predictor is right. However, if the predictor fails to predict accurately, these algorithms will fail to pick up the optimal bitrate. A previous state of art ABR algorithm belongs to this category[2], which repeatedly solve the optimization function to select the best bit rate according to the predicted throughput. However, MPCs performance relies on an accurate 2

Figure 2: Illustration of Buffer Dynamics model of the system dynamicsparticularly, a forecast of future network throughput. This makes MPC sensitive to throughput prediction errors. Buffer-based algorithms pick bitrate based on buffer occupancy and try to keep buffer at a constant level, which is good for preventing rebuffering events. But these algorithms usually make conservative decisions, and sacrifice user experience as a result. Hybrid algorithms use both throughput prediction and buffer occupancy to make decisions. According to Pensieve, rate-based, buffer-based and hybrid methods all require significant tuning and do not generalize to different network conditions and QoE objectives[1]. Therefore, Pensieve uses a novel learning based method, which picks appropriate bit rates by learning from previous experience. 3 Pensieve From a high-level point of view, Pensieve trains a reinforcement learning neural network model that selects bitrates for future video chunks based on observations collected by client video players. Pensieve does not rely on pre-programmed models or assumptions about the environment. Instead, it learns to make ABR decisions solely through observations of the resulting performance of past decisions. As a result, Pensieve automatically learns ABR algorithms that adapt to a wide range of environments and QoE metrics. 3.1 Reinforcement Learning As shown in Figure 3, RL considers a general setting in which an agent interacts with an environment. At each time step t, the agent observes some state s t, and chooses an action a t. After applying the action, the state of the environment transitions to s t+1 and the agent receives a reward 3

r t. The goal of learning is to maximize the expected cumulative discounted reward: E[ t=0 γt r t ], where γ (0, 1] is a factor discounting future rewards. Figure 3: Reinforcement Learning Agent 3.2 RL Agent of Pensieve As shown in Figure 4, the decision policy guiding the ABR algorithm is not handcrafted. Instead, it is derived from training a neural network. The ABR agent observes a set of metrics including the client playback buffer occupancy, past bitrate decisions, and several raw network signals (e.g., throughput measurements) and feeds these values to the neural network, which outputs the action, i.e., the bitrate to use for the next chunk. The resulting QoE is then observed and passed back to the ABR agent as a reward. The agent uses the reward information to train and improve its neural network model. 3.3 Training Methodology of Pensieve To accelerate the video download and update process, Pensieve trains the agent in a simple simulation environment that models the dynamics of video streaming with real applications. Policy gradient descent is used to make sure that the agent adapts to a better policy in training. Multiagent parallel training enables training on different processors or different machines, which greatly accelerates the training process. References [1] Mao, H., Netravali, R. and Alizadeh, M., 2017. Neural Adaptive Video Streaming with Pensieve. Proceedings of the 2017 ACM SIGCOMM Conference 4

Figure 4: Applying reinforcement learning to bitrate adaptation [2] Yin, X., Jindal, A., Sekar, V. and Sinopoli, B., 2015. A control-theoretic approach for dynamic adaptive video streaming over http. ACM SIGCOMM Computer Communication Review, 45(4), pp.325-338. 5