Keywords

These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.

1 Introduction

With the rapid development of mobile video applications, the mobile network operator (MNO) has been under great pressure and shown no sign of suspend. According to the cisco visual networking index mobile forecast for 2016–2021 [1], mobile data traffic is expected to grow at a CAGR of 47 percent to 49 exabytes (one million gigabytes) per month by 2021, among which the leading contributor is the video traffic generated by the mobile users. To cope with the tremendous traffic increase, some changes are required for the current cellular infrastructure. One effective solution is to introduce caching technique at the base station (BS), i.e., to cache video content in advance to the BS that is geographically closer to the users [2, 3]. As the caching-capable BS can enable high density spatial reuse of the wireless resources with high speed localized communication, which is usually assumed to be faster than the backhaul links connected to the VP. On the other hand, adaptive bit rate streaming has become a popular video delivery technique, guaranteed with improving QoE of videos delivered on wireless networks. Therefore, every video file can be delivery with different rate versions to accommodate different media terminal and network channel condition. Achieving the appropriate scheme of caching and delivery strategy is currently one of the most important challenges for the commercial cellular caching networks.

Generally, whenever a mobile user make a playback request for a video, it will first attempt to find an available version from the adjacent BS. If the local BS has cached the corresponding version, the mobile user will download from the BS and playback the video, otherwise it has to download the video file from the VP through weak and costly backhaul links. There are three issues should be considered: the mobile users will suffer a long access latency when the cellular network is congested. For the BS which belongs to the MNO has to use the expensive weak backhaul to retrieve video file from remote VP, when the video is not cached in the BS while the users request for it. For the VP who own all the video files, tries to earn profits by serving as many users as possible. In this work, we consider three interest groups consisting of users, MNO and VP. The VP may lose its users if the users cannot achieve the desired QoE, thus the proportion of attrition cost caused by user losses can be used as the measure of VP revenues. In the meanwhile, the congestion of wireless or backhaul links will inevitably increase the access delay of the users to the video streaming. Therefore, the access delay can be used to measure the QoE performance of the users. Further, the MNO, by storing popular videos at its BSs, can earn the profit from reducing the repetitive video transmissions over the backhaul link.

The challenge of catering to video file, as a dominant type of traffic, is critical for commercial cellular network system. Up to now, many researchers attempted to improve cache utilization with various caching strategies, such as uncoded caching and coded caching [4, 5], transcoding [6] and so on. The authors of [7] present a novel strategy in ICNs for adaptive caching of variable video files, which is to achieve optimal video caching to reduce access delay for the maximal requested bit rate for each user. However, it only considered the profit of the user. In [8,9,10], the authors considered a commercial caching network, and solved the problem of maximizing the profit of both the VP and the MNO by Stackelberg game, but they did not consider the user’s profit and the case in which each video can be encoded into multiple rate versions. The authors in [11] considered the joint derivation of video caching and routing policies for users with different quality requirements, but did not consider the VP’s profit. There are some studies which have simultaneously considered the problem of video caching and delivery [12, 13], but the problem of addressing video caching and delivery over different bit rates remains untouched.

In this paper, we propose a caching strategy to handle multirate video content caching and delivery in a commercial cellular network. Our objective is to maximize the overall profits of the cellular network, which includes the profits of the mobile users, the MNO, and the VP. We formulate the caching problem as a tri-party joint cost minimization problem, and use primal-dual decomposition method [14] to decouple the problem into two optimization problems, which are solved by the subgradient method and greedy algorithm, respectively. The main contributions of this article are summarized as follows:

  1. 1.

    We propose a multi-objective optimization problem, and then formulate it as a tri-party joint cost minimization (profit maximization) problem. Unlike the previous works which mostly focused either the MNO and the users, or the VP and MNO, or the users only, we consider together these three groups with conflicting interests, and model their profit maximization problem as a weighted tri-party joint optimization problem.

  2. 2.

    We use the Lagrange relaxation and primal-dual decomposition method to decompose the original optimization problem into two subproblems. The first subproblem, called as the delivery subproblem, decides the portion of the requests satisfied by the BSs. As it is a typical convex problem, we solve it by using the standard convex optimization methods. For the second subproblem, called as the caching subproblem, it decides whether a video should be cached in a BS. It can be viewed as a knapsack problem, and we can solve it through greedy algorithm.

  3. 3.

    Numerical results illustrate that the proposed caching strategy can significantly improve not only the users’ profits but the profit of VP and MNO for a commercial cellular network.

The remainder of the paper is organized as follows. Section 2 presents the system model and the related specifications. In Sect. 3, we formulate the tri-party joint minimization problem and demonstrate the distributed solution. Our experiment setup and performance evaluation results are detailed in Sect. 4, and our conclusions are summarized in Sect. 5.

2 System Model

In this section, we detail the assumptions and definitions upon which our system model is built.

The system architecture is depicted in Fig. 1. We consider a MNO consisting of a set \(I = \{ 1,2,...i..\left| I \right| \} \) of caching enabled BSs connected to a VP through backhaul links which is too weak to meet so much user requests. Under each BS, there are a number of user requests for video streaming service. When a user requests some video file j, it first asks its local BS (i.e. the BS in the neighborhood of the user). If the video file is available at the local BS, it handles the request directly. Otherwise, the request would be redirected to the VP. We study the system for a certain time period during which each BS \(i \in I\) has an average capacity of \({F_i} \ge 0\) bps, while the capacity of the backhaul link is \({G_i} \ge 0\) bps, and each BS is endowed with a certain storage capacity of \({S_i} \ge 0\) bytes. We assume that the BSs in the system cannot communicate with each other.

Fig. 1.
figure 1

A commercial cellular caching system

The VP contains all \(J = \{ 1,2,...j..\left| J \right| \} \) video files and each video can be delivered with different rate versions. We assume that for each video \(j \in J\), there is a set \(Q= \{ 1,2,...q..\left| Q \right| \}\) of rate versions that can be offered. Each rate version \(q \in Q\) corresponds to a certain playback rate \({R_{jq}}\) and has size \({o_{jq}}\) bytes which increases with the rate (i.e. \({o_{jq}} \ge {o_{jr}}\) if \(q > r\)). Moreover, the file size is assumed to be an affine function: \({o_{jq}} = aq + b\) [15]. The important notations are summarized in Table 1.

Table 1. List of important notations.

User Request Model. The rate version of video j requested by the user is characterized by \({R_{jq}}\). In this paper, we assume the rate versions requested by the users follow a uniform distribution. Due to the constrained wireless capacity, there must be some requests that can not be satisfied. Let \({y_{ijq}} \in [0,1]\) represent the portion of the requests for video j with version q that can be served by the corresponding BS i. For the required video which is not cached at the BS will be turned to the VP through the backhaul link, and we denote the portion of such request served by the VP as \({z_{ijq}}\in [0,1]\).

Content Caching Model. Whether video j with version q will be cached in BS i is denoted by a binary matrix \({x_{ijq}} \in \{0,1\} \), where \({x_{ijq}}=1\) means video j with version q is placed in BS i and 0 otherwise. In order to minimizing the average access latency, the content caching policy must be carefully designed based on the user requests.

3 Problem Formulation

In this section, we first define the profit of the users, the MNO and the VP respectively, and then formulate the tri-party joint optimization problem. Finally, we present out distributed solution.

3.1 Profit Modeling

Users Profits. We use the user access delay to measure the user profit. The average delay \({\overline{d} _{ijq}} \) experienced by the users at BS i for downloading video file j with version q depends on the path and the congestion of the respective links. In order to serve a user by a BS, the requested video should either be already cached there or retrieved via the backhaul link. This latter option adds delay and may be quite significant. Ideally, we want the objective function to reflect the congestion level of the link, so the caching strategy will avoid the congestion of corresponding link. A common option that meets this requirement is to use the average delay in a M/M/1 queue, expressed by \(D(f) = \frac{1}{{C - f}},f < C\), where C denotes the link capacity and f denots the load of correspond links. Therefore, the average delay for the users accessing to version q of video j at BS i can be defined as

(1)
$$\begin{aligned} {y_{ijq}} \le {x_{ijq}} + {z_{ijq}} \quad \end{aligned}$$
(2)
$$\begin{aligned} \sum \limits _j {\sum \limits _q {{x_{ijq}}{o_{jq}}} } \le {S_i} \quad \end{aligned}$$
(3)
$$\begin{aligned} \sum \limits _j {\sum \limits _q {{y_{ijq}}{\lambda _{ij}}{R_{jq}}} } \le {F_i} \quad \end{aligned}$$
(4)
$$\begin{aligned} \sum \limits _j {\sum \limits _q {{z_{ijq}}{\lambda _{ij}}{R_{jq}}} } \le {G_i} \quad \end{aligned}$$
(5)
$$\begin{aligned} {y_{ijq}},{z_{ijq}} \in [0,1],\forall i \in I,j \in J,q \in Q \quad \end{aligned}$$
(6)
$$\begin{aligned} {x_{ijq}} \in \left\{ {0,1} \right\} ,\forall i \in I,j \in J,q \in Q \quad \end{aligned}$$
(7)

where \({A_i}(y) = \sum \limits _j {\sum \limits _q {{y_{ijq}}{\lambda _{ij}}{R_{jq}}} } \) is the load of the wireless link of BS i, and for the backhaul link we have \({B_i}(z) = \sum \limits _j {\sum \limits _q {{z_{ijq}}{\lambda _{ij}}{R_{jq}}} } \). Inequality (3) indicates the storage capacity constraint of BS i. Inequality (4) and (5) indicate the capacity constraints of the wireless links and the backhaul links, respectively.

MNO Profit. The revenue gained by MNO is from the saved cost of the backhaul link due to local caching. Once a user downloads a required video from the local storage, the MNO can save a video transmission over the backhaul link. Therefore, we have the MNO profit defined as

$$\begin{aligned} \hbox {max} :S_i^{BS} = \sum \limits _j {\sum \limits _q {\left( {{y_{ijq}} - {z_{ijq}}} \right) {c^{bh}}{\lambda _{ij}}{o_{jq}}}} \end{aligned}$$
(8)

VP Profit. Users who are experiencing high delays or do not get the service he wants when streaming a video from one VP may switch to another. This will lead to the losses of the former VP. When it occurs we call the VP has a user attrition cost [16]. We use the user attrition cost to measure the VP’s profit, and the user attrition cost is formulated as the penalty of the requests that are unserved.

$$\begin{aligned} \hbox {min} :{P_i} = t\sum \limits _j {\sum \limits _q {(1 - {y_{ijq}}){\lambda _{ijq}}} } \quad \end{aligned}$$
(9)

where t denotes the unit cost of user attrition. Our objective here is to serve as many users as possible through both local BSs and the remote VP.

Tri-party Joint Minimization Problem (TJM Problem). According to the foregoing analysis, we have three objective functions, which include maximizing the MNO profit, minimizing the user access delay, and minimizing the user attrition cost. We change this multiobjective optimization problem as a single objective optimization problem through the weighted method [17]. That is, we introduce a weighted system parameter \(\alpha \in [0,1]\) and combine these three objective functions together into a single objective optimization problem [18] as follows:

(10)

3.2 Distributed Algorithm

To solve the above problem in a distributed manner, we relax the constraints (2), (4), (5) and formulate the Lagrange function as

$$\begin{aligned} \begin{array}{l} L(\mathrm{{u,v,w,x,y,z)}} = \alpha (\sum \limits _j {\sum \limits _q {{{\overline{d} }_{ijq}}} } + \sum \limits _j {\sum \limits _q {\left( {{y_{ijq}} - {z_{ijq}}} \right) {c^{bh}}{\lambda _{ij}}{o_{jq}}} } ) \\ - (1 - \alpha ){P_i}\;\mathrm{{ + }}\sum \limits _j {\sum \limits _q {{u_{ijq}}({y_{ijq}} - {x_{ijq}} - {z_{ijq}})} }\; \mathrm{{ + }}\;{v_{ijq}}(\sum \limits _j {\sum \limits _q {{y_{ijq}}{\lambda _{ij}}{R_{jq}}} } \\ - {F_i})\;\mathrm{{ + }}\;{w_{ijq}}(\sum \limits _j {\sum \limits _q {{z_{ijq}}{\lambda _{ij}}{R_{jq}}} } - {G_i}) \end{array} \end{aligned}$$
(11)

where \({u_{ijq}},{v_{ijq}}\) and \({w_{ijq}}\) are Lagrange multipliers. In addition, the corresponding Lagrange dual function is

$$\begin{aligned} g(u,v,w) = \mathop {inf}\limits _{x,y,z} L(u,v,w,x,y,z) \quad \end{aligned}$$
(12)

The Lagrange dual problem of (10) is then defined as: \(\hbox {max} \; g(u,v,w)\), which can be solved in an iterative fashion, using a primal-dual Lagrange method. Notice that due to the discrete constraint set, we have to employ a subgradient method for updating the dual variables.

$$\begin{aligned} u_{ijq}^{(n + 1)} = {[u_{ijq}^{(n)} + {\tau ^{(n)}}({y_{ijq}} - {x_{ijq}} - {z_{ijq}})]^ + } \quad \end{aligned}$$
(13)
$$\begin{aligned} v_{ijq}^{(n + 1)} = {[v_{ijq}^{(n)} + {\tau ^{(n)}}(\sum \limits _j {\sum \limits _q {{y_{ijq}}{\lambda _{ij}}{R_{jq}}} } - {F_i})]^ + } \quad \end{aligned}$$
(14)
$$\begin{aligned} w_{ijq}^{(n + 1)} = {[w_{ijq}^{(n)} + {\tau ^{(n)}}(\sum \limits _j {\sum \limits _q {{z_{ijq}}{\lambda _{ij}}{R_{jq}}} } - {G_i})]^ + } \quad \end{aligned}$$
(15)

where \({[*]^ + }\) denotes the projection onto the set of nonnegative real numbers, and \({\tau ^{(n)}}\) is a positive step size.

The primal problem can be further decomposed into two subproblems, named P1 and P2, as follows:

(16)
(17)

3.3 Implementation Problem

A decentralized solution procedure of the proposed primal-dual algorithm is summarized in Algorithm 1. For each BS i, subproblem P1 involves only the delivery decision variables \({y_{ijq}}\) and \({z_{ijq}}\), we call it delivery subproblem. Since the objective function of P1 is convex and there exits strictly feasible solutions. Hence, it can be efficiently solved using standard convex optimization techniques [18]. By using the subgradient method, we have

figure a
$$\begin{aligned} {y_{ijq}^{(n + 1)} = {{[y_{ijq}^{(n)} - \mathop {{y_{ijq}}}\limits ^ \bullet ]}^ \pm } = {{[y_{ijq}^{(n)} - {\tau ^{(n)}}\frac{{\partial L(u,v,w,y,z)}}{{\partial {y_{ijq}}}}]}^ + }} \quad \end{aligned}$$
(18)
$$\begin{aligned} \begin{array}{l} z_{ijq}^{(n + 1)} = {[z_{ijq}^{(n)} - \mathop {{z_{ijq}}}\limits ^ \bullet ]^ \pm } = {[z_{ijq}^{(n)} - {\tau ^{(n)}}\frac{{\partial L(u,v,w,x,y,z)}}{{\partial {z_{ijq}}}}]^ \pm } \end{array} \quad \end{aligned}$$
(19)

Subproblem P2 involves only the caching decision variables \({x_{ijq}}\), we call it caching subproblem. It can be separated into \(\left| I \right| \) unidimensional knapsack problems, one for each \(i \in I\). The optimal solution of each knapsack problem for \(i \in I\) can be optimally solved using greedy algorithm in a distributed manner.

3.4 Convergence Analysis

Algorithm 1 converges asymptotically to the optimal solution \(x_{ijq}^*\), \({y_{ijq}^*}\), \({z_{ijq}^*}\). A formal proof of the convergence directly follows from the properties of the decomposition principle [11]. In general, either constant step sizes or diminishing step sizes can be used for a subgradient algorithm [19]. A constant step size is more convenient for distributed implementation, whereas the corresponding subgradient algorithm will only converge to some suboptimal solution within any given small neighborhood around the optimum [14]. Using a diminishing step size, the convergence to the optimum can be guaranteed.

4 Numerical Analysis and Result

In this section, we present the numerical results for the performance evaluation of our proposed tri-party joint optimization policy. For the numerical analysis, we consider a commercial cellular caching network consisted of a VP and a MNO which contains \(I=100\) of BSs with 1000 mobile users are uniformly placed in random statistically independent positions in the cell. We use Zipf distribution [20] to model the popularity of video files.

In all simulations, we assume there totally have \(\left| J \right| = 100\) video files, each of which can be delivered in \(\left| Q \right| = 2\) versions. The size of a version of a video \({o_{jq}}\) is equal to 10 and 20 units of data in the low and the high quality level respectively and thus the playback rate \({R_j}\) is equal to 9.5 and 19.5 respectively as we set \(a = 1\) and \(b = 0.5\) [15]. Within a certain period, each user requests a video file follows a Zipf distribution with a Zipf exponent \(\gamma = 0.8 \) and follows a uniform probability distribution for which version. Unless otherwise specified, The capacity of wireless links \({F_i} = 100\) and backhaul links \({G_i} = 50\). We also set \(t=1000\) and \({c^{bh}} = 200\) which can be a arbitrary constant in simulation and it can be set by the VP in reality.

We compare the percentage of users that can be served by our commercial cellular caching system which are shown in Fig. 2(a). Noted that all ratios of users that can be served are obtain under the condition of wireless and backhaul capacity constrained. In Fig. 2(a) we observe that the ratio of users that can be served is increased gradually with the size of the storage capacity. It is obvious that each local BS can cache more popularity video files with the increase of storage capacity, and thus, more user requests can be satisfied locally, the weak backhaul capacity can naturally be saved, therefore, under the same conditions, when one can’t find the video he want in the local BS will be served by VP through the previously saved backhaul capacity. So, to a certain extent it is increased the proportion of users can be served by the proposed caching policy.

In Fig. 2(b) we observe that the total cost of the tri-party decreases with the size of storage capacity, this is because more user requests can be served by local BS with the increase of storage capacity, as more popularity videos can be cached in the storage of BS in advance and lead to great reduction of duplicated video transmission. On the other hand, there are lots of backhaul resources saved with the reduction of duplicated transmission that can be used to serve more user requests, which cannot get deserved service from local BS.

Fig. 2.
figure 2

Effect of the proposed caching strategy on (a) proportion of users served and (b) total serving cost of tri-party.

Fig. 3.
figure 3

Effect of storage capacity on tri-party utility respectively.

In upper Fig. 3 we can see that the cost of users (i.e. user access delay) decrease with the size of storage capacity, this is because more users can be served by the adjacent BS where is geographically closer to the users directly, and it’s obviously faster than the backhaul links connected to VP with reduced access delay. Due to more users can download required video from the local storage, the MNO can save much video transmission over the backhaul link too. Therefore, from middle Fig. 3 we can see the profit of MNO (i.e. reduction of the backhaul cost) increases with the storage capacity. From lower Fig. 3 we can see the user attrition decreases with the size of storage capacity, this is because more user requests can be served by the local cache of BS and in the meanwhile the number of requests served by VP observably decreased, and with considerable saved backhaul resource, the VP can serve more users that can’t get desired service from local BS. Therefore, with the increase of storage capacity the profit of the users, the MNO and the VP are increased dramatically.

The impact of Zipf parameter \(\gamma \) on the tri-party serving cost is illustrated in Fig. 4. We see that the average serving cost of our proposed scheme in certain caching system is obviously lower than in no caching system. We can observe that as the Zipf parameter \(\gamma \) increases (from 0.1 to 1.7) the corresponding optimal average tri-party serving cost decreases dramatically. This is because with the increase of Zipf parameter \(\gamma \) a few popular videos account for a large percentage of video traffic, and through our strategy most popular videos are cached in the local BSs despite the constrained of storage capacity.

Fig. 4.
figure 4

Effect of Zipf parameter on the tri-party serving cost.

5 Conclusion

In this paper, we addressed the profit maximization problem of the tri-party joint, which consisting of mobile users, VP and MNO, by introducing a weighted coefficient to formulate our three object functions as one tri-party joint minimization problem. Then we solve the problem through prim dual decompose method. By observation, we discovering that we can decompose the primal profit maximization problem to a caching problem and a delivery problem, which can be solved by greedy algorithm and subgradient method, respectively. Finally, abundant simulation results are testified the proposed scheme.