Exploiting Mobile Edge Computing to Improve Efficiency of 360◦ Video Streaming
MetadataShow full item record
The upsurge in the use of mobile devices to watch video necessitates efficient and scalable strategies for content providers and cellular service providers to produce and stream high quality video to end users. Serving high-resolution video to end users places unprecedented burden on cellular networks due to high-throughput and low-delay characteristics of video data traffic. In addition to video traffic, Virtual Reality (VR) and Augmented Reality (AR) application traffic over mobile networks is growing rapidly. VR headsets are projected to increase to 100 million by 2021, and about half of them are expected to be mobile VR headsets (Networking, 2016). This necessitates practical and speedy solution to satisfy end user Quality of Experience (QoE) while minimizing bandwidth requirement. Size of VR/AR content is much larger than legacy video content (i.e. 4-5 times), in addition to having stringent latency requirements. Therefore, proposing efficient and low cost solution for streaming VR/AR content in the context of low-bandwidth mobile networks as the last hop in a network path is very challenging. Omnidirectional or 360◦ video is one of the most important VR applications. 360◦ videos allow users to explore the 360◦ view of scenes while watching the video. 360◦ videos can be used in many different use cases such as education, gaming, medical rehabilitation and sports. Due to high bandwidth and low latency requirements of streaming 360◦ video, Dynamic Adaptive Streaming over HTTP (DASH) has emerged as the de facto solution for streaming such videos. DASH supports multiple bitrates (corresponding to different video resolutions) to adapt to changing network conditions. Also, viewers of 360◦ videos view only a fraction of each video segment, i.e., the part that corresponds to their Field of View (FoV). To facilitate 360◦ video streaming, a segment can be divided into multiple tiles with the FoV corresponding to a subset of tiles. Streaming each segment in its entirety from the video server to a client can incur high communication overheads both in terms of bandwidth and latency. Therefor, bandwidth consumption can be reduced by sending only the tiles in user’s FoV at high resolution. Tiles outside the FoV could either not be sent at all, or sent at low resolution. Although FoV-adaptive 360◦ video streaming has been helpful in reducing bandwidth requirements, streaming 360◦ video from distant content servers is still challenging due to network latency. Caching popular content close to the end users not only decreases network latency, but also alleviates network bandwidth demands by reducing the number of future requests that have to be sent all the way to remote content servers. Hence, we propose a novel caching policy based on users’ FoV, called FoV-aware caching policy. In FoV-aware caching policy, we learn a probabilistic model of common-FoV for each 360◦ video based on previous users’ viewing histories to improve caching performance. Through experiments with real users’ head movement dataset, we show that our proposed approach improves cache hit ratio compared to Least Frequently Used (LFU) and Least Recently Used (LRU) caching policies by at least 40% and 17%, respectively. Caching at the network edge can reduce network load. However, as edge cache capacity is limited, only a subset of tiles encoded at a subset of supported resolutions may be stored in the cache. A viewer, depending on its FoV, may experience cache hit and low download latency for some segments, and a cache miss resulting in high download latency from video server for other segments. This can result in the DASH client unnecessarily triggering quality switches for the following reason: low (high) latency download from edge cache (server, respectively) may be misinterpreted as high (low, respectively) network throughput estimate. To address this problem we first quantify bitrate oscillations as a function of network latency. Then, we propose CooPEC (COOperative Prefetching and Edge Caching), a prefetching and complementary caching solution which uses viewers’ FoV entropy to: (i) enable a bitrate oscillation-free video streaming, (ii) reduce core network bandwidth consumption, and (iii) enhance QoE for users. FoV-adaptive 360◦ video streaming can benefit individual users and network providers to have better viewing experience and bandwidth consumption, respectively. However, the rate adaptation in FoV-adaptive 360◦ video streaming is not designed for multicast scenario where group of users are interested in watching the same 360◦ video at the same time. If users in a multicast group are in physical proximity, they share the same spectrum resource and receive the same video rate. There is no room for individual users to have their own bitrate based on their network condition. Motivated by this challenge, we propose the framework of a solution that will use multicast transmission schemes for 360◦ videos to improve the efficiency of streaming 360◦ video to group of users and enhancing the quality of their viewing experience and bandwith consumption. We use hierarchical clustering that creates hypothetical groups, one for each tile and quality combination, and then apply hierarchical clustering to merge them together based on users’ common requests.