Table of Contents
Fetching ...

SwiftCache: Model-Based Learning for Dynamic Content Caching in CDNs

Bahman Abolhassani, Atilla Eryilmaz, Tom Hou

TL;DR

This work explores scenarios with requests arriving at a local cache following a Poisson process, whereby it proves that the optimal policy features a threshold-based structure with updates occurring solely at request arrivals, and proposes SwiftCache, a model-based learning framework for dynamic content caching.

Abstract

We introduce SwiftCache, a "fresh" learning-based caching framework designed for content distribution networks (CDNs) featuring distributed front-end local caches and a dynamic back-end database. Users prefer the most recent version of the dynamically updated content, while the local caches lack knowledge of item popularity and refresh rates. We first explore scenarios with requests arriving at a local cache following a Poisson process, whereby we prove that the optimal policy features a threshold-based structure with updates occurring solely at request arrivals. Leveraging these findings, SwiftCache is proposed as a model-based learning framework for dynamic content caching. The simulation demonstrates near-optimal cost for Poisson process arrivals and strong performance with limited cache sizes. For more general environments, we present a model-free Reinforcement Learning (RL) based caching policy without prior statistical assumptions. The model-based policy performs well compared to the model-free policy when the variance of interarrival times remains moderate. However, as the variance increases, RL slightly outperforms model-based learning at the cost of longer training times, and higher computational resource consumption. Model-based learning's adaptability to environmental changes without retraining positions it as a practical choice for dynamic network environments. Distributed edge caches can utilize this approach in a decentralized manner to effectively meet the evolving behaviors of users.

SwiftCache: Model-Based Learning for Dynamic Content Caching in CDNs

TL;DR

This work explores scenarios with requests arriving at a local cache following a Poisson process, whereby it proves that the optimal policy features a threshold-based structure with updates occurring solely at request arrivals, and proposes SwiftCache, a model-based learning framework for dynamic content caching.

Abstract

We introduce SwiftCache, a "fresh" learning-based caching framework designed for content distribution networks (CDNs) featuring distributed front-end local caches and a dynamic back-end database. Users prefer the most recent version of the dynamically updated content, while the local caches lack knowledge of item popularity and refresh rates. We first explore scenarios with requests arriving at a local cache following a Poisson process, whereby we prove that the optimal policy features a threshold-based structure with updates occurring solely at request arrivals. Leveraging these findings, SwiftCache is proposed as a model-based learning framework for dynamic content caching. The simulation demonstrates near-optimal cost for Poisson process arrivals and strong performance with limited cache sizes. For more general environments, we present a model-free Reinforcement Learning (RL) based caching policy without prior statistical assumptions. The model-based policy performs well compared to the model-free policy when the variance of interarrival times remains moderate. However, as the variance increases, RL slightly outperforms model-based learning at the cost of longer training times, and higher computational resource consumption. Model-based learning's adaptability to environmental changes without retraining positions it as a practical choice for dynamic network environments. Distributed edge caches can utilize this approach in a decentralized manner to effectively meet the evolving behaviors of users.
Paper Structure (6 sections, 5 theorems, 29 equations, 4 figures, 1 algorithm)

This paper contains 6 sections, 5 theorems, 29 equations, 4 figures, 1 algorithm.

Key Result

Theorem 1

Consider a system comprising a dataset $\mathcal{N}$ of $N$ dynamic items, where each item has a corresponding size denoted as $(\boldsymbol{b})_{n=1}^N$. In this system, a local cache with a constraint on its average cache occupancy $\tilde{B}$ serves a group of users that generate demand according where $\tilde{\alpha}^* \geq 0$ is selected such that the following condition is satisfied.

Figures (4)

  • Figure 1: Setting of Fresh Caching for Dynamic Content
  • Figure 2: Cost Comparison: SwiftCache vs. Optimal Policy
  • Figure 3: Cost Comparison: SwiftCache vs. RL Policy
  • Figure 4: Cost Comparison: SwiftCache vs. RL Policy

Theorems & Definitions (5)

  • Theorem 1
  • Proposition 1
  • Proposition 2
  • Lemma 1
  • Proposition 3