Keywords

1 Introduction

With the rapid upgrading of the network environment and the popularity of smartphones, video has become a conveniently way to delivery information. As reported by a survey [1], online video has been the dominant application of network traffic due to social media sharing. In 2015, global video traffic accounted for 70% of all Internet traffic. By 2019, global video traffic will increase by approximately 80% since mobile devices and applications should increase by 10 times [2]. For example, as the most popular online video site, YouTube has more than 1 billion users per month. With the surge of massive online video and majority terminal access, video streaming multimedia objects are taking a large portion of network traffic and its quality of service is influenced by factors such as bandwidth, delay, packet loss, and jitter. How to increase the video content hitting rate, reduce bandwidth consumption, minify video access delay and improve user experience on the internet has become a challenging topic in the field of video streaming multimedia technology.

Video Distribution networks (VDNs) play a vital role in content distribution between final users and origin servers because they can effectively reduce response time of users accessing video content and bandwidth consumption by deploying servers closer to the users. In addition, even if the origin server malfunctions, users can also obtain video content from the surrogate servers, and the reliability of video distribution is enhanced. However, VDNs also have some limitations. On the one hand, the storage constraint of surrogate server cache has limited storage capacity and it is impossible to replicate all the video objects; on the other hand, because of the limited bandwidth of backbone network, origin server is infeasible to send all video streaming multimedia objects to each surrogate server. Consequently, how to effectively distribute video streaming multimedia objects while ensuring service quality and providing an optimal distribution cost is a hot topic in wireless network research. The work [3] contribute to analyze the strategy in which the most popular contents are pushed, and design of push-based content delivery to alleviate the burden of bandwidth in cellular network and converged broadcasting network. Caching strategies introduced in [4] provide an effective mechanism for alleviating massive bandwidth requirements by caching the most popular video objects closer to the network edge. The popularity of most videos is well studied on the temporal evolution [5, 6]. Popularity-driven content caching [7] studies the popularity of content and uses it to determine which content it should cache and which it should remove. This algorithm can effectively improve the cache hitting rate. However, they do not consider the personalized demands of users. In particular, randomly request of video streaming multimedia objects need to be fast and efficient allocation from origin server. Due to the storage limit of surrogate server and the pressure of bandwidth, it opens a new challenge to increase the hitting rate of video streaming multimedia and minimize the distribution cost.

In this paper, we present a novel model called Cost-Effective Coupled Video Distribution Model which aims at satisfying the personalized needs of users, improving the video hitting rate, and achieving effective cost of consider bandwidth and delay. The Coupling Video Distribution model combines coupled active video distribution and coupled negative video distribution. Before the user requests arise for video streaming multimedia objects, coupled active video distribution selectively deliver video objects to the surrogate servers based on the quantification for video objects of user interested. Besides, when the requests arrives at the request servers that have not replicate the relevant video objects in advance, coupled negative video distribution forward the request and replicate the requested video objects from the origin server. And then request servers deliver video objects to clients. For the cost-effective of coupled video distribution, we jointly consider distribution cost of both bandwidth consumption and delay performance and construct a multicast distribution tree to delivery video objects. Therefore, we formulate the coupled distribution as a problem of a minimizing cost problem. Since solving the problem is NP-hard, an efficient algorithm HMDT (Heuristic Multicast Distribution Tree) is proposed toward the optimization problem. Finally, the comparison is executed between our proposed HMDT algorithm and the Approximate Steiner Tree Distribution (ASTD) algorithm. The effectiveness of HMDT algorithm is justified through extensive simulations, from which we demonstrate that HMDT algorithm yield strategies with smaller expected cost than ASTD algorithm.

The organization of the paper is as follows. First, we give a brief review of the related studies in Sect. 2. Then, we introduce our network model in Sect. 3 and formulate the optimization cost problem in Sect. 4 respectively. Next, we present the heuristic multicast distribution tree algorithm in Sect. 5 and conduct simulations to compare the performance of our proposed HMDT algorithm with the ASTD algorithm. In Sect. 6, we. Finally, the conclusion is given in Sect. 7.

2 Related Work

Recently, many of the work focuses on the allocation of video streaming multimedia content and the quality of service to satisfy users. In the wireless sensor network, the minimum energy consumption transmission from origin to multiple receivers is explored by constructing a minimum multicast tree [8]. According to the battery status and information of content popularity, proactive caching are implemented to satisfy the random energy arrival and requests of user content, and to provide more multicast opportunities [9]. The authors in [10] introduced a method of session based cloud content delivery network by considering the mobility and the dynamic demands of users in the mobile Internet. Wang et al. optimized the dynamic content replication and resource allocation by using a controller of software defined network [11]. The authors in [12] minimized the energy consumption in a multicast situation where the information should be disseminated to several destinations in the limited delay. Aram et al. [13] considered the problem of replica placement and the server selection together, and proposed an optimal scheme to minimize deployment cost of servers. Mukerjee et al. [14] proposed a centralized VDN that allows network operators to control video layout and allocate bit rate on a precise time scale while optimizing the quality of real-time video delivery.

Users are assigned to a surrogate server in a QoS-based surrogate server prioritization techniques [15,16,17]. In order to meet the needs of user, Zeng et al. [18] proposed a QoS-based greedy heuristic algorithm to optimize the replica placement of cloud storage content delivery networks. In [19, 20], the authors proposed an optimal video placement strategy according to analyze the deployment of video distribution services based on cloud-assisted and formulated deployment problem which considers user experience together with operational cost. In [21, 22], the authors indicated that mapping users’ request to an adjacent surrogate server can significantly improve the QoS in a mobile network, such as delay and jitter. However, in the mobile wireless network, because of the uncertainty of the distribution surrogate server and the personalized demand for video streaming multimedia objects, we design cost-effective coupled video distribution model. Coupled video distribution effectively distribute video streaming multimedia objects according to users’ interests and requests for video objects, reducing user access delay and bandwidth consumption. In addition, we construct multicast distribution tree to delivery video objects, considering cost with bandwidth consumption and delay performance. Since minimizing coupled distribution cost are proven NP-hard, we design a heuristic multicast distribution tree algorithm to solve it.

3 Network Model

3.1 Coupled Video Distribution Model

Dynamic multicast is required in the coupled multicast video distribution application. Since the users of group often join or leave timely, the network topology changes constantly in the distribution group. Hence, continuous dynamic process is truncated into a series of static graphs \( G = \{ g_{1} ,g_{2} , \ldots ,g_{n} \} \). Therefore, the surrogate servers may vary over time in coupled video distribution.

In our model, we assume that the origin server stores all video streaming media objects. Each surrogate server covers at least one area, and users can request and offload videos from surrogate servers closer to them. To meet the demands of users with limited capacity of surrogate servers, a novel video distribution method coupled active distribution and negative distribution is adopted.

In the Coupled Video Distribution Model (see Fig. 1), when users send request to surrogate servers, the surrogate servers may cache the video objects or not.  The active video distribution strategy allows the origin server distribute the relevant video objects that users are interested to the surrogate servers closer to the client before requests arise for those video objects. Oij indicates the number of video streaming media object j in the surrogate server i and Oj represents the total number of video objects j in all stored video streaming multimedia objects. The origin server evaluates ratio Oij/Oj to quantify interested degree of users for video objects j in the surrogate server i. According to the ratio, the origin server distributes the video objects to the surrogate servers through the multicast distribution tree. Several relay servers can be added during the multicast distribution process to enhance performance of video distribution. The process of coupled negative video distribution strategy is as follows: when the user send request to the video objects, disappointedly, the request servers does not cache those video objects and cannot satisfy users requested. Then, request servers will send requested to origin server and it sends video objects to the request servers through the multicast distribution tree according to the received video request. Finally, request servers delivery those video objects to the requesting user. Coupled active video distribution can effectively reduce the user access delay and improve hitting rate of video streaming multimedia objects in the surrogate servers. Coupled negative video distribution relieve bandwidth consumption by transmitting only the request video objects in the network.

Fig. 1.
figure 1

Coupling video distribution model: taking the snapshot at time t1 as an example. The origin server, 1 is the relay server, 2 is the request server, and 3, 4 represent the surrogate servers. The solid red directed edges corresponds to coupled active video distribution process in the figure; the dashed directed edge corresponds to the process of request server sends queries for video objects to origin server when there is not cache user requested video objects.

3.2 Constructing Multicast Distribution Tree

The popularity of smart devices for video multimedia induces great demand of bandwidth and lower access delay in mobile network. In term of cost on coupled video distribution, we consider video distribution cost on bandwidth and delay. In the coupled video distribution model, the origin server distributes video objects to surrogate servers by constructing multicast distribution tree. During construction of the multicast distribution tree, we add several relay servers to optimize the performance and minimize the cost of video distribution. In the multicast distribution tree model (see Fig. 2), red node 0 represents the origin server, blue nodes 1, 2, 3, 4, 6 represent surrogate servers or request servers, and black nodes 5, 7 represent the relay surrogate servers. The directed edge between the two nodes corresponds to the communication edge among servers, and the number on the directed edge indicates cost of considering bandwidth and delay. The red edge indicates the path we are looking for with the effective cost from origin server to each surrogate or request server.

Fig. 2.
figure 2

Multicast distribution tree model

4 Problem Formulation

Here, we assume the performance of the video distribution network do not include the cost of delay and bandwidth among the terminal users and the surrogate servers. Because users usually request video from a surrogate server in their own area, the access time and bandwidth costs are not effected by allocation of video objects replica.

4.1 Minimizing Coupled Distribution Cost

In the process of coupled video distribution, the problem of minimizing the coupled distribution cost is designed to satisfy the demand for video objects of user requests and the minimization of bandwidth and delay.

The video streaming multimedia in origin server is divided into n different video stream objects, and each video stream object is represented by e. Then the video stream object can be expressed by \( E = \{ e_{1} ,e_{2} ,e_{3} , \ldots ,e_{n} \} \). We denote the storage constraint of each surrogate server i (\( i = 1,2, \ldots ,m \)) as li . \( \lambda_{i} \) represents the number of requested video objects that the surrogate server i forwards. In the process of coupled active distribution, \( \theta_{ij} \) indicates the interested degree of users for video object j in the surrogate server i, then \( \theta_{ij} = O_{ij} /O_{j} \). The variable xij indicates whether the video object j is cached in the surrogate server i.

$$ x_{ij} = \left\{ {\begin{array}{*{20}l} {1,} \hfill & {{\text{Video}}\,{\text{object}}\,j\,{\text{is}}\,{\text{active}}\,{\text{distributed}}\,{\text{to}}\,{\text{surrogate}}\,{\text{server}}\,i} \hfill \\ {0,} \hfill & {{\text{Video}}\,{\text{object}}\,j\,{\text{is}}\,{\text{negative}}\,{\text{distributed}}\,{\text{to}}\,{\text{request}}\,{\text{server}}\,i} \hfill \\ \end{array} } \right. $$

The coupled video distribution delay cost can be expressed by

$$ \sum\limits_{i = 1}^{m} {\sum\limits_{j = 1}^{n} {(1 - x_{ij} } } )\lambda_{i} d_{ij} $$
(1)

In the formula (1), dij represents retrieval delay of the surrogate server i for the video object j

The coupled video distribution bandwidth cost can be formulated as

$$ \sum\limits_{i = 1}^{m} {\sum\limits_{j = 1}^{n} {(x_{ij} c_{j} b_{ij} \theta_{ij} + (1 - x_{ij} } } )\lambda_{i} c_{j} d_{ij} ) $$
(2)

For the formula (2), cj indicates the size of the video streaming object j and bij represents the bandwidth of the surrogate/request server i requesting for video object j.

When considering cost of bandwidth together with delay, using coefficients α and β to balance delay and bandwidth to meet a variety of applications and requirements, the subject of minimization cost is as follows:

$$ Min\left( {\alpha \sum\limits_{i = 1}^{m} {\sum\limits_{j = 1}^{n} {(1 - x_{ij} )\lambda_{i} d_{ij} } } + \beta \sum\limits_{i = 1}^{m} {\sum\limits_{j = 1}^{n} {(x_{ij} c_{j} b_{ij} \theta_{ij} + (1 - x_{ij} )\lambda_{i} c_{j} b_{ij} )} } } \right) $$
(3)

Similarly,

$$ Min\sum\limits_{i = 1}^{m} {\sum\limits_{j = 1}^{n} {(\alpha (1 - x_{ij} } } )\lambda_{i} d_{ij} + \beta c_{j} b_{ij} (x_{ij} \theta_{ij} + \lambda_{i} (1 - x_{ij} ))) $$
(4)

The constraints of formula (4) are as below:

$$ \sum\limits_{j = 1}^{n} {x_{ij} c_{j} \le l_{i} } ,\quad i = 1,2, \ldots ,m $$
(5)
$$ b_{ij} \le b $$
(6)
$$ 0.1 \le \alpha < 1,\quad 0.1 \le \beta < 1 $$
(7)
$$ \alpha + \beta \ge 1 $$
(8)

Formula (5) is the storage capacity constraint of surrogate/request server i, Bandwidth of the surrogate/request server delivery video objects cannot over the maximum bandwidth b is shown as Eq. (6). Formulas (7) and (8) are constraints for balance factor α and β.

4.2 Problem Complexity

Next, we review the problem of minimizing coupled distribution cost. Given the size of different video stream objects and the number of requested video objects, is there an allocation strategy such that the total cost in (4) is less than a threshold? Meanwhile, video stream capacity stored in the surrogate server i is not more than li as in Eq. (5). The bandwidth satisfies the Eq. (6), and the relationship of the balanced coefficients satisfy the constraints of the Eqs. (7) and (8).

For the convenience, we only consider a special scenario where single surrogate server with the storage capacity l is considered. Then, the cost minimization problem is mapped to a set coverage problem and is proven NP-hard. Its complete proof is available in [23]. In the following part, we will give a heuristic algorithm to solve this problem.

5 Heuristic Multicast Distribution Tree Algorithm

The previous section analysis of the NP-hard problem showing that addressing the problem of minimizing coupled distribution cost lead to tremendous cost. Hence, we propose an effective algorithm, which we called Heuristic Multicast Distribution Tree (HMDT), to obtain better approximate cost. The weight of a node is assigned by the density of the subtree which is rooted at the node and extended the minimal cost path to each terminals [24]. HMDT algorithm continuously adds the minimal weight node and effective cost terminal to this node. Eventually, a cost-effective distribution tree will be constructed where all terminals are included.

We regard the servers in the network as node \( V(v_{1} ,v_{2} ,..,v_{m} ) \) and the origin server as root node r. The terminals represents surrogate/request servers and terminalSet indicates terminal set. Additionally, we generate a directed network graph file, which include root node r, the number of node, node set V, terminalSet, the number of directed edges and the edges cost between the two nodes.

figure a

6 Experimental Results

In this part, we perform extensive simulations to show the improvement of our proposed HMDT algorithm. We compare our algorithm with the generally used Approximate Steiner Tree Distribution (ASTD) [25] in various performance. The ASTD algorithm selects the optimal path according to the density of the Steiner tree [25]. Given a tree T and the cost of the tree c(T), the density of the Steiner tree is defined as: \( \rho (T) = c(T)/k(T) \), where k(T) represents the number of terminals in the tree T. To build this tree, the subtree with the minimal density is selected as the first level of the selection tree in ASTD algorithm. Then, the algorithm selects the minimal density subtree from remaining terminal set nodes and add this subtree to the previous level of the selection tree. Next, we repeat the selection until enough terminals are contained in the tree. In our simulation, the size of the video streaming is distributed with the normal distribution N(20 k, 1 GB).The servers deployment obey the uniform distribution U (100, 1000), and surrogate servers are randomly selected among these servers.

We first analyze the cost affected by the balance coefficient α and β (see Fig. 3). In the simulation, we deploy 15 servers and select 10 surrogate/request servers among these servers. The bandwidth was randomly allocated from 800 to 3000 bps, and the delay was randomly distributed between 1000 and 2500 ms. Figure 3(a) and (b) show the influence of the balance coefficient on the cost from the three-dimensional surface map and the three-dimensional contour map respectively. As can be seen from Fig. 3(a), when the sum of α and β becomes larger, the cost of distribution rises. Especially, the yellow area of cost reaches the highest value. We can observe the effect of α and β more intuitively in Fig. 3(b). When the sum of α and β remains unchanged, the cost of distribution fluctuates within a smaller range. In addition, when the sum of α and β remains 1, the cost is low; particularly, when α and β vary from 0.5 to 0.7, the consumed bandwidth and the produced delay can achieve a better balance which is acceptable for the users.

Fig. 3.
figure 3

Impact of the coefficient α and β

Next, we evaluate the influence on bandwidth cost according to the balance coefficient, the number of surrogate server and the directed edges (see Fig. 4). In this simulation, the delay is randomly allocated between 1000 and 2500 ms, and the specific parameter settings are given for each figure (see Table 1). It can be seen from the comparison between Fig. 4(a) and (b) that the cost of Fig. 4(b) increase slowly as the bandwidth becoming larger. We can note that the balanced cost of α = 0.5, β = 0.5 is better than that of α = 0.2, β = 0.8. This result shows that the balanced distribution cost is optimal when the sum of coefficient is 1 and the difference between α and β is small. Additionally, we explore how the number of surrogate servers affect the distribution cost when different number of surrogate servers is deployed in Fig. 4(b) and (c). Experimental analysis shows that the increased number of surrogate servers leads to larger cost when the number of servers is fixed. Then, we change the number of directed edges to explore whether the number of edges has an impact on the distribution cost. By comparing Fig. 4(b) and (d), we can see that the distribution cost is relatively lower with more edges. The analysis results of the above experimental results show that parameter setting of different have a greater impact on distribution cost. Importantly, our proposed HMDT algorithm exhibits effective performance and achieves lower cost than ASTD algorithm. In Fig. 5, we study the influence of the number of directed edges. We set α = 0.5, β = 0.5 and deploy 20 servers and 15 surrogate servers in the scenario. The bandwidth was randomly allocated between 800 and 3000 bps, and the delay is distributed within 1000 ms and 2500 ms. As we can see from Fig. 5, the distribution cost is declining as the number of edges increases. Consequently, the distribution cost of the HMDT algorithm is lower than ASTD algorithm.

Fig. 4.
figure 4

Influence on the bandwidth cost

Table 1. Parameter settings.
Fig. 5.
figure 5

Cost vs. number of directed edges

In Fig. 6, we explore the delay effect on cost. We set α = 0.5, β = 0.5, and deploy 20 servers, randomly selected 10 surrogate servers, 40 directed edges. The bandwidth ranges between 800bps and 3000bps. It can be seen from the graph that the distribution cost keeps rising as the delay increases. In other words, the longer delay leads to higher cost. Moreover, our proposed HMDT algorithm achieves lower distribution cost than the ASTD algorithm.

Fig. 6.
figure 6

Cost vs. delay

Figures 7 and 8 show the effect on distribution cost of the number of surrogate server and the number of serve respectively. In this simulation, we set α = 0.5, β = 0.5, and randomly deploy 200 directed edges. The bandwidth ranges from 800 to 3000 bps, and the delay is randomly allocated between 1000 ms and 2500 ms. As for the influence of the number of surrogate servers, we randomly deploy 100 servers and select surrogate servers based on demands of users among servers. Figure 7 shows that the distribution cost is rising when the number of surrogate servers increases. In Fig. 8, we randomly deploy 15 surrogate servers and keep the number of surrogate servers unchanged. As demonstrated in this figure, the distribution cost grows rapidly as the number of servers increases. During the simulation, we can find that the increasing of the number of surrogate servers or the number of servers will result in higher distribution cost, and our proposed HMDT algorithm is superior to the ASTD algorithm in performance.

Fig. 7.
figure 7

Cost vs. number of terminals

Fig. 8.
figure 8

Cost vs. number of servers

7 Conclusion

In this paper, we propose a Cost-Effective Coupled Video Distribution model, which combines coupled active video distribution and coupled negative video distribution. On one hand, the process of coupled active video distribution is that origin server advanced distributes video objects which is according to quantification video objects of users interested to surrogate servers through constructing multicast distribution tree, before the user send video objects requested; On the other hand, when users query video objects for request servers which has not replicate those video objects, origin server distributes those video objects to the request servers through constructing multicast distribution tree. The process of this is coupled negative video distribution. Hence, users can request video stream multimedia objects from surrogate/request servers closer to users, relieving access delay.

To meet the demand of users for video objects and minimize the distribution cost, we formulate the coupled video distribution process as problem of minimizing coupled distribution cost by considering the bandwidth together with delay. Due to the problem is NP-hard, we propose a heuristic multicast distribution tree (HMDT) algorithm to provide an optimal approximately cost. The simulation results show that HMDT algorithm reduce distribution cost of considering bandwidth and delay effectively. Additionally, we demonstrate effective performance and lower cost of HMDT algorithm compared with ASTD algorithm in bandwidth, delay, the number of surrogate server and number of server etc. Whatever, cost-effective coupled video distribution proposed in this paper significantly improves the accuracy rate of delivery video objects and achieves an optimal minimum cost of consider bandwidth and delay.