With the world-wide growth in the adoption of smart phones and tablets, access to Internet video and video applications from mobile devices is projected to grow very significantly. When Internet video is accessed by a mobile device, the video has to be fetched from the servers of a content delivery network (CDN). CDNs help reduce Internet bandwidth consumption and associated delay/jitter, but the video must additionally travel through the wireless carrier Core Network (CN) and Radio Access Network (RAN) before reaching the mobile device. Besides adding to video latency, bringing each requested video from the Internet CDNs can put significant strain on the carrier’s CN and RAN backhaul, leading to congestion, significant delay, and constraint on the network’s capacity to serve large number of concurrent video requests. In this project, we introduce distributed caching of videos at the base-stations of the RAN as a way to reduce the need to bring requested videos from Internet CDNs, thereby reducing backhaul transmission, improving video quality of experience - delay and video stalling - and increasing overall network capacity to support more number of simultaneous video requests. Unlike Internet CDNs that can store millions of videos in a relatively few large sized caches, our proposed caching architecture consists of a very large number of micro-caches, with each base-station micro-cache being able to store only 1000s of videos, and hence may not be able to have high cache hit ratio. To address this challenge, we propose two new caching policies based on the User Preference Profile (UPP) of users in a cell: R-UPP (Reactive UPP) and PUPP (Proactive UPP). Further, for videos that result in cache misses and need to be fetched from Internet CDNs, we develop a video scheduling approach that allocates the RAN backhaul resources to the video requests so as to reduce video latency and increase network capacity. For all videos that are downloaded either from the RAN micro-caches or scheduled successfully through the RAN backhaul, we propose a video aware wireless channel scheduler that works with any RAN scheduler as a plugin to increase the number of such videos that can be transmitted through the wireless channel to the requesting mobile devices. We develop a discrete event statistical simulation framework using MATLAB to study the performance of RAN caching and scheduling.
Further, we investigate supplementing the resulting wireless cloud with a hierarchical caching scheme, where the gateways in the CN also have video caches. The hierarchical caching approach further improves network capacity by enabling multiple cell sites to share caches at higher levels of the hierarchy, thereby improving overall cache hit ratio, without increasing the total cache size used. In addition, we exploit hierarchical caching to better accommodate mobility, so that when a user with an active video session moves from one cell to a neighboring cell, it is likely that the video currently being downloaded is already in a cache within the RAN or CN network associated with the new cell. To achieve the goal of improving capacity and supporting mobility, we extend our User Preference Profile (UPP) based caching policies to accommodate the hierarchical caching structure introduced in this paper.