Hierarchical Video Caching in Wireless Cloud: Approaches and Algorithms IEEE ICC 2012 Workshop on Realizing Advanced Video Optimized Wireless Networks June 15, 2012
Sujit Dey Hastii Ahlehagh UC San Diego
[email protected] 1
Outline • • • • • •
Motivations Hierarchical Caching Algorithms Hierarchical Caching Simulation Results Video Aware Backhaul Scheduling Scheduling Simulation Results Conclusion
2
Motivation for Hierarchical Caching Previous: Video caching at the RAN to address congestion and improve delay and capacity of video delivery Issues: 1. High cache miss ratio because of small caches - Partially addressed by new UPP based caching 2. High cache miss ratio due to user mobility New Developments: Hierarchical caching to address above issues: 1. Relatively larger caches at the CN nodes to supplement RAN caches, while keeping total cache size same 2. UPP based caching policies extended to hierarchical caches 3. QoE aware Scheduling of RAN backhaul and CN resources for video fetches from CDN 4. Extended simulation framework to include video requests from multiple cells, and mobility of users between cells Effects: 1. Improved coverage (higher cache hit ratio) than RAN-only caches 2. Better address mobility, by increasing likelihood that a video currently being downloaded is also in CN/RAN cache associated with the new cell during handoff 3. Experimental results show significant improvements in cache hit ratio and capacity, in particular when considering mobility
3
What Videos do Users Watch? Video Categories
• Most Popular Videos (Zipf distribution [1]) • National video popularity may not reflect local video popularity [2], and hence mobile video preference in an individual cell site, which may depend on demographics, time of day, etc. • Strong preference towards some video categories Category
Average Cumulative Views – 90 Days
Autos
1501.8
Entertainment
1293.1
Comedy
1267.2
Arts & Animation
1106.3
Animals & Pets
1075.1
Science & Technology
794.6
Sports
745.1
How-To
432.4
Video Games
418.8
Family & Kids
328.1
News & Blogs
302.8
Vlogs
259.1
Travel
157.3
Commercials
Hulu
Footb all ESPN
Soccer You Tube
Fox News
Hulu Fox News
Auto
CNN News
Soccer ESPN
CNN News
Hulu
Soccer ESPN
CNN News
124
Reelseo The Online Video Marketing Guide (www.reelseo.com )
[1] M. Cha et. al., "Analyzing the Video Popularity Characteristics of Large-Scale User Generated Content Systems",
User Preference (UPP): user 2009 has preference towards specific categories IEEE/ACM TransactionsProfile on Networking, Vol. 17,Each No. 5, October [2] Michael Zink, et al.,“Watch Globalwatched Cache Local: YouTube Network Traces at a Campus Network - Measurements and Implications.” In (and sources) of videos Proceedings of MMCN 2008, San Jose, CA, USA, Jan 2008
4
Cell Site Video Preference [1] Given overall MPV, video popularity distribution in Video Category, vcj: ( ) ( ) = ( ) if
(
,
)=
| |
∑ =1
( )
belongs to category
, else
0.03 0.03
Cell UPP
Soccer ESPN (SE) Soccer YouTube (SY) CNN News (CN) Fox News (FN) Football ESPN (FE) Hulu (H)
0.03
0.26
0.33 0.32
( ) = 0.
0.06 0.06 0.06
UPP of Active Users in the cell:
0.34
0.34 0.18
| |
=
0.32
(
=1
0.3
)
0.34
User 1
User 2
Assumption: Users request video with equal probability
Likelihood that a video is requested by the Active Users in the cell? ( )=
|
| =1
(
Most Likely Requested (MLR): {
,
)
| = 1. .
. .
( )>
}
Least Likely Requested (LLR): { ( )= . . } [1] H. Ahlehagh, S, Dey, “Video Caching in Radio Access Network: Impact on Delay and Capacity”, 5 In Proc. IEEE Wireless Communications and Networking Conference, Paris, France, April 2012.
Policies for RAN Micro-Caches [1] •
•
•
•
MPV – Proactively cache the most popular videos from MPV list, subject to cache size; – Cache content of each cell site is identical LRU – Reactively cache videos that are associated with cache misses – If cache is full, evict the least recently used video P-UPP – If active users change, proactively cache videos from new MLR list – Developed techniques to reduce bandwidth needed to download new MLR videos, without affecting significantly cache hit ratio R-UPP – Reactively cache videos associated with cache misses – If cache is full, use LLR list to select candidate(s) for eviction • Don’t update cache if the requested video causing the miss is in LLR itself
[1] H. Ahlehagh, S, Dey, “Video Caching in Radio Access Network: Impact on Delay and Capacity”, In Proc. IEEE Wireless Communications and Networking Conference, Paris, France, April 2012.
Hierarchical Caching within the Wireless Network 3G
4G
Hierarchical Cache
How to distribute the caches most effectively to improve individual cell Model wireless network as a tree where the videos traverse down the tree coverage and support mobility across cells? and AUS Information the hierarchical tree. Trade off betweenup coverage and mobility 7
Hierarchical Caching Options L21=VR(L11) U…VR(L1n) - {L11U… U L1n}
L21=L11U… U L1n
VR(L11): videos that L11 would have cached if enough space was available
L21
1. Inclusive Caching: Suitable for Mobility because if a user moves from one cell to another, the associated video that is currently being downloaded is guaranteed to be found in the 2nd layer cache.
L21
2nd layer cache is limited in size so it may not be able to replicate all the videos of the RAN caches
L11
L1n
L11
L1n Optimal for Coverage 2
Optimal for Mobility 1 L21 =
L11
L1n
Hierarchical UPP based 3
U…
−
∩
∩
2. Exclusive Caching: Improves coverage, as the 2nd layer cache stores videos that do not exist in the 1st layer caches. This leads to overall higher hit ratio. A cache in the 1st layer, e.g. L13 might contain videos that are more useful for L11 than the rest of the videos in universe; L11 couldn’t cache the videos due to the cache size constraints; Not suitable for mobility
3. Our hybrid approach: Each cache makes its caching decision independently based on its AUS, e.g. if AUS of L21 favors VC2 category, L21 caches more videos of that category. To improve coverage, intersection of all the 1st layer caches are removed from the 2nd layer cache Suitable for mobility and improves coverage
8
•
•
Policies for Hierarchical Caching
H-MPV – Each cache in the hierarchy stores videos according to the Most Popular ranking; A higher layer cache excludes the intersection of all the lower layer caches H-LRU – Hierarchical LRU is a straight-forward extension of the single-layer LRU and has built-in exclusivity; No further optimization is required
Extended RAN-only UPP caching policies to higher layer caches In the hierarchical settings, the AUS of the higher layer node is defined as the union of all AUSs of the lower layer nodes (child nodes) connected to it • H-P-UPP – Proactively caches videos based on the UPP of the AUS of each cache. Intersection of all the child caches is excluded from the parent cache • H-R-UPP – Reactively caches each video associated with a miss; while the video is traversing towards the leaf in the hierarchy tree, each cache on the way to the leaf decides whether to cache the video based on its AUS – use LLR list to select candidate(s) for eviction Don’t update cache if the requested video causing the miss is in LLR itself 9
Hierarchical R-UPP and P-UPP Policies Video request, V
R-UPP
P-UPP
AUS Changes in an eNodeB (User arrival or departure)
Layer l = 1 Layer l = 1
• •
Download from Cache(l) l -Is l==0?
Yes
Yes
Is V in Cache(l) ?
No End
Layer l ++
• • • •
Calculate UPP for cache(l) Calculate request probability, PR , based on UPP of cache(l) Generate MLR and LLR sets Update the cache if the PR (MLR) - ∑PR (LLR) > Threshold (Request probability of the video that need to be added from MLR is greater than sum probability of videos that need to be evicted for that video to fit in the cache plus a threshold)
No • • • •
Calculate UPP for cache(l) Calculate request probability, PR , based on UPP of cache(l) Calculate MLR and LLR sets Update the cache if the PR (V) - ∑PR (LLR) > Threshold)
Yes Layer l --
Layer l ++
Yes
More cache layers?
End
10
Scheduling Cache Misses • Videos resulting in cache misses have to be fetched from CDNs • Backhaul Bandwidth is a limited/shared resource may lead to increase in video delay, and/or impact on capacity • RAN Backhaul Scheduler: coordinates with video clients, and determines appropriate rates that can be allocated, so as to – Maximize Video Capacity (number of concurrent video requests that can be served), – While meeting Video QoE (maximum initial video delay, and ensuring no stalling during playback). • Relationship between data rate and QoE established by use of Leaky Bucket Parameters (LBP) [4]: N 3-tuples (R, B, F), R: transmission rate, B: buffer size, F: initial fullness – If data rate is R, and client waits for initial delay of F/R secs, no stalling during playback. 11
[4] J. Ribas-Corbera, et al., “A Generalized Hypothetical Reference Decoder for H.264/AVC”, IEEE Transactions on Circuits and Systems, vol. 13, no. 7, July 2003
Hierarchical Backhaul Scheduling • Using LBPs, the video client requests the lowest rate that satisfies its initial delay requirements, C • Successful scheduling depends upon the availability of sufficient backhaul bandwidth; otherwise the request will be blocked. L CACHE • After any change in the state of the current backhaul downloads, recalculate the spare backhaul bandwidth capacity C and allocate the spare resource, using the LP formulation below, Redistribute the spare capacitytousing Admit the requests according their L among the users that have been admitted: formulation minimum LP required rate (LBP table) CACHE Internet
CDN
3
1 Mbps
3,1
2,3
2,1
Maximize:
Subject to:
∑
C1,1
≥
∑∈
∀ ≤
= 1, . . ,
L1,1 CACHE
bi: bandwidth of the ith flow, ri: the minimum rate required, Fn: set of flows that go through the nth backhaul (R,B,F)
Initial Delay
(193K, 9216, 8146)
42.20 sec
(400K, 9216, 6216)
15.54 sec
(500K, 9216, 6216)
12.42 sec
C1,2
Ui Video’s LBP
…
L1,2 CACHE
Uk 12
Simulation Environment and Parameters •
•
MATLAB based framework to simulate end-to-end video cloud eco-system, including user arrival/departure from a cell, mobility model, UPPs, video request generation, cache policies, backhaul video scheduling Mobility is modeled using a Poisson process: users are moved from one cell to a neighboring cell with the mean active cell time of 100seconds Variable
Distribution/Parameters Value
Total Number of Videos, Video Requests, Video Categories, Video Popularity Distribution
20,000, 100,000, 250, Zipf 0.8
Video Frame Size Distribution
Proposed in [5]
Video Size
min=2, mean=8, max=30 minutes
Video Bit Rate
200kbps (QVGA) to 2Mbps (HD)
Total number of mobile users
5,000
UPP Distribution Across VCs
Exponential, 2
User Arrival/Departure Model and Video Request Arrival
Backhaul Delay Thresholds
Poisson: Mean user inter-arrival time = 100 seconds Mean user active time = 2700 seconds Mean inter-arrival time per user = 120 seconds [10,20,30]sec,30sec (LP)
Cache Size
50Gbyte, 100Gbyte, 150Gbyte
Mobility Model
Poisson: mean active cell time = 100sec
6
RAN-only Caching
Hierarchical PGW-only Caching Caching
[5] D. M. B. Masi, et al., “Video Frame Size Distribution Analysis”, The Telecommunications Review 2008, Volume 19, Noblis, Falls Church, VA, September 2008
13
Simulation Results 0.9
MPV
0.8
0.6 0.5 MPV
0.4
H-MPV LRU
0.3
H-LRU R-UPP
0.2
H-R-UPP P-UPP
0.1 0
700
d e ir u q e r W B l u a h k c a B n a e M
50
100 Cache Size (Gbyte) (a)
• • •
400 300
H-LRU
250
R-UPP H-R-UPP
200
P-UPP H-P-UPP
150 100 50 0
150
800 700
Hierarchy Cache
RAN
CN Backhaul Layer (b)
Internet
RAN only Cache w ith mobility Hierarchy Cache w ith mobility
600
500 y it c a p a C
LRU
H-P-UPP
RAN only Cache 600
H-MPV
300
0.7 io t a R it H e h c a C
Cache Size=150Gbyte
350
500 ity c a p a C
400 300
200
200 Hierarchical caching improves cache hit ratio by up to 25 percentage point 100 100 compared to RAN only caching 0 0 Hierarchical caching can improve network capacity 21%R-UPP andP-UPP 30% using H-PNoCache MPV LRU R-UPP P-UPP NoCache MPV byLRU Cache Policy Cache Policy UPP and H-R-UPP(c) compared to RAN only caching (d) UPP based hierarchical caching policies perform significantly better in the case of mobility; hierarchical UPP performs 47% better than RAN-only R-UPP in terms of capacity
14
Simulation Results 1 0.9
300
0.8 d e ir u MPV q e r H-MPV W PGW MPV B l LRU u a h H-LRU ck PGW-LRU a B R-UPP n a H-R-UPP e PGW-R-UPP M
0.7 o ti a R ti H e ch a C
0.6 0.5 0.4 0.3 0.2
P-UPP H-P-UPP PGW-P-UPP
0.1 0
50
800 700 600
250 200 150 100
MPV H-MPV PGW-MPV LRU H-LRU PGW-LRU R-UPP H-R-UPP PGW-R-UPP P-UPP H-P-UPP PGW-P-UPP
50 0
150
RAN
CN Backhaul Layer (b)
Internet
• Hierarchical caching improves cache hit ratio by up to 25 percentage point compared to RAN-only caching • Hierarchical caching can improve network capacity by 21% and 30% using H-PUPP and H-R-UPP compared to RAN only caching • UPP based hierarchical caching policies perform significantly better in the case of mobility; hierarchical UPP performs 47% better than RAN-only R-UPP in terms of capacity • PGW-only caching improves cache hit ratio by 8 and 5 percentage point for PUPP and R-UPP respectively compared to Hierarchical caching. However, improvement in the cache hit ratio comes with the cost of higher RAN and CN required backhaul BW compared to RAN-only and Hierarchical caching, and significantly lower capacity! 800 700
Hierarchy Cache PGW only Cache
600
RAN only Cache with mobility Hierarchy Cache with mobility
PGW only Cache with Mobility
500
yit c a p a C
400 300 200
400 300 200
100 0
100 Cache Size (Gbyte) (a)
RAN only Cache
500 yit c a p a C
Cache Size=150Gbyte
350
100
NoCache
MPV
LRU Cache Policy (c)
R-UPP
P-UPP
0
NoCache
MPV
LRU Cache Policy (d)
R-UPP
P-UPP
15
Delay of Scheduled Videos Cache Size=150Gbyte 1
1
0.9 s o e d i V d e l u d e h c S f o y a le D f o F D C
0.9 s o e d i V d e l u d e h c S f o y a le D f o F D C
0.8
0.7
0.6 MPV LRU R-UPP P-UPP
0.5
0.4
0
5
10
15 Delay (second)
20
25
0.8
0.7
0.6
0.4
30
H-MPV H-LRU H-R-UPP H-P-UPP
0.5
0
5
10
15 Delay (second)
20
25
30
1
0.9
•
s o e d i V d e l u d e h c S f o y a le D f o F D C
0.8
RAN-only micro-caching performs the best in terms of probability of successfully 0.7 scheduled video requests that can meet certain` initial delay compared with Hierarchical and0.6 PGW-only caching. For example, of the successfully scheduled requests, the probability of achieving an initial delay of 5 second or less is about PGW -MPV PGW -LRU 0.79 for P-UPP, 0.50.76 for R-UPP, 0.68 for H-P-UPP, 0.67 for H-R-UPP , and 0.52 for PGW -R-UPP PGW -P-UPP PGW-P-UPP and PGW-R-UPP. 0.4 0
5
10
15 Delay (second)
20
25
30
16
Conclusion • Proposed hierarchical caching of video contents in the CN to supplement RAN caches • Showed that hierarchical caching can significantly improve cache hit ratio (for same cache size), and improve capacity in particular under mobility conditions • Showed that PWG-only caching can significantly improve cache hit ratio (for same cache size), however, it results in higher required RAN and CN backhaul BW, and significantly lower end-to-end capacity because of the bottlenecks in the CN backhaul. 17