Online multi-objective optimization for live video forwarding across video data centers

Online multi-objective optimization for live video forwarding across video data centers

J. Vis. Commun. Image R. xxx (2017) xxx–xxx Contents lists available at ScienceDirect J. Vis. Commun. Image R. journal homepage: www.elsevier.com/lo...

1MB Sizes 13 Downloads 73 Views

J. Vis. Commun. Image R. xxx (2017) xxx–xxx

Contents lists available at ScienceDirect

J. Vis. Commun. Image R. journal homepage: www.elsevier.com/locate/jvci

Online multi-objective optimization for live video forwarding across video data centers q Wu Liu a,⇑, Yihong Gao a, Huadong Ma a, Shui Yu b, Jie Nie c a

Beijing Key Lab of Intelligent Telecomm. Software and Multimedia, Beijing University of Posts and Telecomm., Beijing 100876, China School of Information Technology, Deakin University, Melbourne, VIC 3125, Australia c Department of Computer Science and Technology, Tsinghua University, Beijing, China b

a r t i c l e

i n f o

Article history: Received 26 September 2016 Revised 31 December 2016 Accepted 7 January 2017 Available online xxxx Keywords: Big video data Video data center Live video forwarding Resource provisioning optimization

a b s t r a c t The proliferation of video surveillance has led to surveillance video forwarding services becoming a basic server in video data centers. End users in diverse locations require live video streams from the IP cameras through the inter-connected video data centers. Consequently, the resource scheduler, which is set up to assign the resources of the video data centers to each arriving end user, is in urgent need of achieving the global optimal resource cost and forwarding delay. In this paper, we propose a multi-objective resource provisioning (MORP) approach to minimize the resource provisioning cost during live video forwarding. Different from existed works, the MORP optimizes the resource provisioning cost from both the resource cost and forwarding delay. Moreover, as an approximate optimal approach, MORP adaptively assigns the proper media servers among video data centers, and connects these media servers together through network connections to provide system scalability and connectivity. Finally, we prove that the computational complexity of our online approach is only OðlogðjUjÞÞ (jUj is the number of arrival end users). The comprehensive evaluations show that our approach not only significantly reduces the resource provisioning cost, but also has a considerably shorter computational delay compared to the benchmark approaches. Ó 2017 Elsevier Inc. All rights reserved.

1. Introduction Recently, massive IP cameras in diverse locations are connected to the geo-distributed video data centers (VDCs) to provide live video streams for end users [1–3]. The surveillance video service [4–8] provided by the VDCs can be viewed as Video Surveillance as a Service (VSaaS). For example, travelers can remotely obtain views around the scenic locations by accessing IP cameras to plan their tours.1 Furthermore, VSaaS can also extract the objects of interest from the video streams to help travelers recognize landmarks and special events on their trips [9–13]. In this service, travelers located at different places randomly access IP cameras deployed at several hot spots. The service requires both server and network resources of the video data centers to forward the live video streams.

q

This paper has been recommended for acceptance by Anan Liu.

⇑ Corresponding author.

E-mail addresses: [email protected] (W. Liu), [email protected] (Y. Gao), [email protected] (H. Ma), [email protected] (S. Yu), [email protected]. cn (J. Nie). 1 It is a service of MegaEyes. MegaEyes is a video surveillance system on a video data center. http://qqy.fjii.com/, Aug. 2016.

Thus, an online and cost-saving resource provisioning plan is the key point of the VDCs to serve the end users. Generally, VDCs at different locations are connected by highcapacity networks [14]. There is typically more than one VDC around the arriving end user. As shown in Fig. 1, each VDC employs virtual machines (VMs) as media servers, which can provide the end users with the live video streams. A scheduler is set up to decide the media server and network resources of the VDCs for each end user. Furthermore, VDCs rent the media servers and bandwidths at different prices,2 and employ different forwarding delays to forward the live video stream for each end user [23]. Consequently, the resource provisioning approach of the scheduler must not only reduce the resource provisioning cost but also consider the media server cost, the bandwidth cost, and the forwarding delay as the factors of the resource provisioning cost during resource provisioning, which is a multi-objective resource provisioning approach. Furthermore, since the requests arrive in real time, the approach must be an online approach, which can only obtain the local information of the resource utilization to provide resources for each arriv2 For example, Amazon EC2, Aliyun, and Google Cloud Platform charge different resource prices for the video data centers from different locations.

http://dx.doi.org/10.1016/j.jvcir.2017.01.010 1047-3203/Ó 2017 Elsevier Inc. All rights reserved.

Please cite this article in press as: W. Liu et al., Online multi-objective optimization for live video forwarding across video data centers, J. Vis. Commun. (2017), http://dx.doi.org/10.1016/j.jvcir.2017.01.010

2

W. Liu et al. / J. Vis. Commun. Image R. xxx (2017) xxx–xxx

Fig. 1. System overview for the live video forwarding across VDCs.

ing end user. Therefore, the main challenge in providing resources for video stream forwarding is to achieve the global optimal resource provisioning cost with local information. Existing video data centers provide three different services: video delivery service, interactive video forwarding service, and live video forwarding service. These three services provide different resource provisioning solutions. (1) For the video delivery service, most resource provisioning approaches utilize the P2P or server-client structure to manage the resources [19–21]. Nonetheless, the approaches are offline, which require the arrival sequence of the requests before resource provisioning. (2) For the interactive video forwarding service, the resource provisioning approaches provide media servers between any two communicating users [22–27]. However, the resource provisioning does not share the media servers for different communicating pairs, and thus, the resource provisioning approaches are very costly in terms of the interactive forwarding service. (3) For the live video forwarding service, the media servers are constructed as a forwarding tree from the end users to the video sources, and the forwarding tree can share the resources with different end users [28–32]. However, the resource scalability, prices and forwarding delay factors are not comprehensively considered during the resource provisioning for the forwarding tree. Finally, the online resource provisioning approaches across VDCs primarily maximize the throughput of the system [19,30]. The number of media servers in these approaches cannot be changed, and the arrival requests can be denied. In brief, the previous works cannot comprehensively optimize the resource cost and forwarding delay for online video forwarding. In this paper, we propose an online resource provisioning approach, which is called multi-objective resource provisioning (MORP), to minimize the resource provisioning cost for VSaaS. Our approach views the forwarding tree as a route for the live video stream from IP cameras to all end users simultaneously. Different from the previous work in [28–32], we take the media server capacity, the resource scalability, the resource prices, and the forwarding delay into account. Since the end users randomly arrive and leave the media servers, our approach adaptively provides or removes media servers of the VDCs, and dynamically adjusts the forwarding trees for the end users. First, we formulate the resource provisioning problem as a route selection problem, which organizes the media servers at runtime to optimize the resource provisioning cost. The traditional mathematical methods for solving the route selection problem have a computational delay that is too long to assign the media servers and the network connections. To improve the computational delay, we convert the problem into two traditional resource provisioning problems with consideration

of the resource capacity constraint, the resource prices, and the forwarding delay: facility location (FL) problem and shortest path (SP) problem. This conversion can obtain the approximate optimal solutions with a lower competitive ratio. For the FL problem, we design an online iterative algorithm to provide resource scalability, which chooses a proper media server among the VDCs. For the SP problem, we further design an online algorithm to support the connectivity with the minimum cost, which establishes a forwarding path from the chosen media server to the forwarding tree. We prove that our approach is OðlogðjUjÞÞ-competitive (jUj is the number of end users), and the time complexity of our approach is OðjFj logðjFjÞÞ (jFj is the number of VDCs). Finally, we provide a resource releasing approach to further save the resource cost. The experimental results show that the resource provisioning cost of VDCs is clearly reduced by our approach, and the computational delay of the approach is greatly reduced. Our work includes the following contributions:  We propose an online multi-objective optimization approach for live video forwarding in video data centers. The proposed approach comprehensively considers the forwarding delay, server and bandwidth costs, and the availability and scalability of VDCs.  Compared to the traditional approaches, the proposed approach achieves better time complexity (OðjFj logðjFjÞÞ), and is feasible with an OðlogðjUjÞÞ competitive ratio.  The extensive experiments demonstrate the effectiveness and efficiency of our approach based on a real-world scenario. The remainder of this paper is organized as follows. The system framework for live video forwarding is introduced in Section 2. In Section 3, we discuss the system models and the resource provisioning problem. Section 4 presents how to provide the resources for each arriving end user to minimize the resource provisioning cost. We further show the experimental results in Section 5. Section 6 provides the related work. Finally, the conclusions are given in Section 7.

2. System overview There are four participants in Fig. 1 to provide the VSaaS: end users, Web server, VDCs, and IP cameras. When the end users require the live video streams from the IP cameras, the VDCs must assign a media server to forward the streams. The VDC can provide current or new media servers to serve the end users (for example, the DC 1 provides a new media server for the end user in region 4. The DC 4 utilizes the current media server to serve the end user from region 2). For the network usage, the serving media server can directly receive the required live video stream from the IP camera (for example, DC 1 and DC 4 build up connections to IP cameras to serve end users). The serving media server can also receive the live video streams from the media server of the neighboring VDCs (the relationship between DC 3 and DC 2 ). During these processes, some new media servers and network connections are employed. The details of each component are given as follows:

2.1. End users Each end user accesses the Web server to require the live video stream of a certain IP camera and waits for the addresses of the chosen media servers. When the addresses are received, the end users connect to the media servers and obtain the live video streams of the required IP cameras.

Please cite this article in press as: W. Liu et al., Online multi-objective optimization for live video forwarding across video data centers, J. Vis. Commun. (2017), http://dx.doi.org/10.1016/j.jvcir.2017.01.010

3

W. Liu et al. / J. Vis. Commun. Image R. xxx (2017) xxx–xxx

2.2. Web server The Web server periodically receives the request from each end user, and assigns the resources to the end user based on the resource usage of each VDC. Therefore, a resource scheduler, which can communicate with each VDC to schedule its media servers, is deployed on the Web server. After the Web server receives the request, the scheduler selects proper media servers in VDCs, and connects the servers as a forwarding path to the end user. The scheduler can both open new media servers or assign current media servers of the VDC to serve the arrival requests. The resource provision plans of the scheduler for the requests are different, which lead to different media server costs, connection bandwidth costs, and forwarding delays. 2.3. Video data centers In VSaaS, media servers are organized by the network connections to connect the end users with the IP cameras. The media servers are supplied by different cloud service providers (CSPs), which generally construct VDCs at many places. VDCs can exchange millions of data streams via high-speed networks [17]. In addition to directly gaining the live video streams from the IP cameras, the media server can also be viewed as a relay to help forward live video streams. Then, a media server is chosen to forward the video stream to the end user. 2.4. IP cameras IP cameras are provided by third-party providers (e.g., traffic administrative department) and are located at different locations. They can upload live video streams to the media servers of the VDCs. 3. Problem formulation In this section, we set up the system models of the live video service, and further formulate the resource provisioning problem.

Table 1 Parameters and definitions. Parameters

Definitions

F; U; S Luu ; Lsu Cap pr sv

Sets of VDCs, end users, and IP cameras End user u’s location, and required IP camera location Maximum requests one media server can serve Media server price of VDC v Network bandwidth price of VDC v

pr bv duv dvv 0 Cv C uv Ce xij yuv Pathv ;v 0 ;e fPathðT s ; v Þg

Forwarding delay from VDC v to end user u Forwarding delay between VDC v and VDC v 0 New media server cost of VDC v Bandwidth cost from VDC v to end user u Bandwidth cost of edge e ¼ fv ; v 0 g Denoting whether the edge from participant i to j is chosen Denoting whether a media server is added for u in VDC v Chosen path with the selected media servers and the connections All possible forwarding pathes from the chosen media server of VDC v to the forwarding tree T s

to gain the live video streams. The bandwidth price of the connection from VDC v to any other VDC is denoted as pr bv . Furthermore, the connection between the media servers of the same VDC is not charged by the CSPs. The resource usage model and the pricing model reference the models of Amazon EC2, Aliyun and Google Cloud Platform.3 3.1.3. Video forwarding delay We define jFj ¼ n as the number of video data centers and jUj ¼ m and jSj ¼ k as the numbers of end users and IP cameras, respectively. Usually, jFj is considerably smaller than jUj and jSj. Then, we denote duv as the forwarding delay from the media server of VDC v to end user u 2 U; dvv 0 as the delay between any two media servers of VDC v and VDC v 0 , and dsv as the forwarding delay between IP camera s 2 S and VDC v 2 F. Finally, because the video forwarding in the same location is much faster than the forwarding between different locations, the forwarding delay between any two participants in the same location is denoted as dmin . 3.2. Resource provisioning problem

3.1. System models We introduce the details of the end user behavior, resource usage, and forwarding delay by three system models. Furthermore, the most frequently utilized parameters in the models are shown in Table 1. 3.1.1. User arrival model Suppose that m end users sequentially arrive at the scheduler to require the video streams from k IP cameras (no more than one request at each time) within a time period T. Let D ¼ fD1 ; D2 ; . . . ; Dm g be an end user request set. An end user request is represented by Du ¼ fLuu ; Lsu g 2 D, which is a location pair of end user u 2 f1; 2; . . . ; mg. The location pair contains both the end user location Luu , and the IP camera location Lsu . 3.1.2. Resource usage model There are n VDCs around the end users to provide the media servers for live stream forwarding. The media servers have the maximum capacity Cap to serve the end users. Cap is a constant number to denote the maximum requests that can be simultaneously served by one media server. To simplify the resource management among VDCs, the scheduler generally uses VMs with the same configurations for the forwarding service [29]. When the idle capacities run out on VDC v 2 f1; 2; . . . ; ng, the scheduler adds a media server at the price of pr sv , and builds up new connections

In this paper, the topology of the inter-connected participants is defined as a directed acyclic graph G ¼ fV; Eg, in which V is the vertex set, and E is the edge set. Therefore, F # V; U # V, and S # V. The edges in E represent the connections established between two participants to forward a live video stream. For each IP camera s, a spanning tree T s ¼ fV  ; E g is utilized as a route, which is constructed by IP camera s, end users and the media servers of the proper VDCs. The scheduler selects the VDCs and the edges from V and E to construct V  and E . For example, a forwarding tree is illustrated in Fig. 2: the numbered cycles are media servers in the numbered VDC, the cycle with s is the IP camera s, and the squares are the end users. The media server cost of adding a media server at VDC v is denoted as C v ¼ pr sv , and the bandwidth cost from VDC v to end user u is denoted as C uv ¼ B  pr bv . We utilize B as the bandwidth to forward one video stream. Furthermore, we employ C e ¼ B  pr bv to represent the bandwidth cost of edge e ¼ fv ; v 0 g, and C vv ¼ 0. Note that the input stream of VDCs is not charged by the CSPs. Similarly, there is a delay on each edge to forward video streams on the networks. Let xij be an indicator to show whether the scheduler chooses the edge from participant i to j:

3 https://aws.amazon.com/ec2, https://ecs-buy.aliyun.com, and https://cloud. google.com.

Please cite this article in press as: W. Liu et al., Online multi-objective optimization for live video forwarding across video data centers, J. Vis. Commun. (2017), http://dx.doi.org/10.1016/j.jvcir.2017.01.010

4

W. Liu et al. / J. Vis. Commun. Image R. xxx (2017) xxx–xxx

ver cost Cost S . Note that a new media server can serve any arrival requests without any additional media server costs. Finally, parameters a; b and c are positive constants that denote the weight of each component. The offline solution must simultaneously select the media servers for each end user and the relays to comprise a forwarding path from the IP camera to each end user. However, this problem is too complicated to obtain the optimal solutions within an effective time delay in the real-time model [33]. Therefore, we convert the problem into two parts: the facility location problem (FL), and the shortest path problem (SP). To solve the FL problem, the scheduler finds a proper media server for the arriving end user and supports the scalability; to solve the SP problem, the scheduler connects the chosen media server to the forwarding tree of the IP camera, and supports the connectivity. Both problems are typical resource provisioning problems, which have approximate optimal solutions with a low competitive ratio, and the costs can also be calculated as follows:

CostðUÞ ¼ CostFL þ Cost SP ; XX XX xu v f u v þ c yuv C v ; CostFL ¼ u2U v 2F

Fig. 2. Forwarding tree of the live video stream for the inter-datacenter network.

 xij ¼

0; otherwise:

When VDC v adds a media server to serve end user u; yuv equals 1. Otherwise, yuv equals 0. Particularly, when all the media server capacities of VDC v 0 are occupied by sequential arrival requests and the media servers, the media server can no longer serve any other requests. Although there is a video stream on this media server of VDC v 0 , the media server cannot transmit the live video streams for new arriving end user u. Therefore, a new media server in VDC v 0 is needed. It also means that additional new connections are needed, and xue must equal to 1 for the end user u at this time. When the scheduler knows the sequence of requests within a time period T, the resource provisioning cost of the offline model can be:

CostðUÞ ¼ Cost B þ CostD þ CostS :

Cost D ¼ b Cost S ¼ c

ð1Þ

!

XX XX xue C e þ xuv C uv ; u2U v 2F

ð2Þ !

XX XX XX xue de þ xsv dsv þ xuv duv ; u2U e2E

s2S

v 2F

ð3Þ

u2U v 2F

!

XX XX y uv C v þ y uv 0 C v 0 : u2U v 2F

u2U e2E

s2S

!

v 2F

ð7Þ ð8Þ

The objective function of the offline resource provisioning problem is:

min CostðUÞ; subject to :

X xue P 0;

for any v ;

v 0 2 F;

ð9Þ

e2E

X xuv ¼ 1;

for any u 2 U;

ð10Þ

v 2F

X xsv 6 1 for any s 2 S;

ð11Þ

X yuv 6 1;

ð12Þ

v 2F

1; new;

u2U e2E

u2U e2E

f uv ¼ aC uv þ bduv :

0; otherwise:

Cost B ¼ a

XX XX XX xue C e þ b xue de þ xsv dsv CostSP ¼ a u2U v 0 2F

When edge fi; jg is chosen, xij equals 1. Otherwise, xij equals 0. Particularly, if e ¼ fv ; v 0 g 2 E, and v ; v 0 2 F; xvv 0 for each end user u is denoted as xue . When all the media servers in v 0 have no capacities to forward the live video streams, the edge e ¼ fv ; v 0 g cannot transmit the live video stream for other participants either. At this moment, the scheduler adds a media server in v 0 and establishes additional connections. It means that xue must equal 1 for end user u. Otherwise, set xue to be 0. We further set up an indicator yuv to show whether the scheduler adds a media server in a certain VDC:

y uv ¼

ð6Þ

u2U v 2F

XX yuv 0 C v 0 ; þc

1; chosen;



ð5Þ

ð4Þ

u2U v 0 2F

Let the resource provisioning cost CostðUÞ be the sum of the total bandwidth cost CostB , the total delay CostD , and the total media ser-

for any u 2 U;

v 2F

X yuv 0 P 0;

for any u 2 U;

ð13Þ

v 0 2F

Pathv ;v 0 ;e # fPathðT s ; v Þg:

ð14Þ

At each time, the chosen media server only constructs one edge to connect end user u, and no more than one connection is utilized to connect the chosen media server of VDC v to IP camera s. Generally, each end user requires no more than one new media server (if possible) to directly serve him or her, and the scheduler can also add relays, which are the media servers in other VDCs, to forward the video stream. Specifically, edges between VDCs can be selected to forward live video streams from IP cameras to end users. Thus, Constraint (9) describes whether there are new connections employed from the chosen media server to the forwarding tree to obtain the live video stream for end user u. The chosen media server is the media server of VDC v, and it directly forwards the live video stream to arriving end user u. Constraint (10) implies that only one edge is utilized from the chosen media server to end user u at each time. Constraint (11) states that there is not more than one connection from IP camera s to the chosen media server of VDC v. If the media server of VDC v obtains the required video stream from other media server, xsv is set to be 0. Otherwise, xsv equals 1 to denote the chosen media server that directly receives the video stream from the required IP camera s. Generally, the scheduler assigns at most one new media server (if possible) to

Please cite this article in press as: W. Liu et al., Online multi-objective optimization for live video forwarding across video data centers, J. Vis. Commun. (2017), http://dx.doi.org/10.1016/j.jvcir.2017.01.010

5

W. Liu et al. / J. Vis. Commun. Image R. xxx (2017) xxx–xxx

serve the request of end user u at the time in Constraint (12). Constraint (13) shows that the scheduler can add relays (media servers) to forward the live video stream for end user u. When P u e2E xe P 1, there must be new media servers, which are employed as the relays. In Constraint (14), the chosen forwarding path, which is denoted as Pathv ;v 0 ;e , is composed of the selected media servers and connections. fPathðT s ; v Þg is the set of all forwarding paths that connect the chosen media server to IP camera s. Pathv ;v 0 ;e must support the connectivity and belongs to fPathðT s ; v Þg. The traditional online algorithms are not scalable to deal with this problem [33]. When one vertex is added, no additional vertex cost is generated on that location. However, we define a VDC as a vertex, which employs a VM as the media server. The VM is sold by the VDCs, and can be dynamically added and released. Adding a vertex means that there are VMs added to serve the arrival request. If all the capacities of the added VMs are utilized, a new VM is still required with additional VM and connection costs. Therefore, we design a novel online algorithm to handle this new resource provisioning problem.

method. The objective function of the dual problem is defined as follows:

max

X zu ;

ð16Þ

u2U

subject to : zu 6

1 X g ; jFj v 2F uv

for any u 2 U;

g uv ¼ f uv þ cC v =Cap :

ð17Þ ð18Þ

Inspired by the online algorithms of [19,30], we first design Algorithm 1 to obtain the optimal fractional provisioning plan. Here, C v is replaced with C v . When the scheduler adds a VM for the arriving end user, C v equals C v . Otherwise, C v is set to be 0 if a VM with idle capacities in VDC v is employed to serve the arriving end user. Then, the scheduler can obtain the optimal integer scheduling plan by utilizing a random rounding method in Algorithm 2. Algorithm 1. Online Facility Location Algorithm.

4. Online resource provisioning approach In this section, the online resource provisioning approach is proposed, which is shown in Fig. 3. The proposed approach first presents a scalable algorithm for online VM provisioning, and further analyzes the performance of the algorithm. Then, we propose an algorithm to adjust the forwarding tree and gain the required video stream. Finally, we prove that the competitive ratio of our approach is logðjUjÞ.

Input: G ¼ ðV; EÞ; Du ; dij ; pr si , and pr bi . Output: Vector of the fractional xuv . 1: For each arrival request of end user u, get the IP camera location Lsu and end user location Luu . P 2: while v 2F xuv < 1 do 3: For each VDC v 2 F : xuv ¼ xuv ð1 þ 1=g uv Þ þ 1=jFjg uv . 4: zu ¼ zu þ 1. 5: end while

4.1. Scalable algorithm for online VM provisioning We design an online VM provisioning algorithm based on a primal-dual method. The VM provisioning algorithm aims at improving the system scalability and minimizing CostFL for each arriving end user. Therefore, the objective function of the FL problem is:

min

XX XX xu v f u v þ c yuv C v ; u2U v 2F

subject to :

u2U v 2F

X X Cap yuv P xuv ; u2U

for any

v 2 F:

ð15Þ

u2U

Constraint (15) means that the total capacities provided by the VM cluster must be greater than the number of requests. Then, we obtain the dual problem of the primal problem by a relaxation

The proposed algorithms are C-competitive, and the time complexity of the algorithm is OðjFj log jFjÞ. Algorithm 2. Random Rounding Method. Input: G ¼ ðV; EÞ; Du ; dij ; pr si , and pr bi . Output: Integer xuv vector. 1: For each set v 2 F, choose 2 ln n independently random variables Xðv ; iÞ uniformly at random in the interval ½0; 1.

ln n Xðv ; iÞ. 2: For each set of VDC v, let Hðv Þ ¼ min2i¼1 3: Solve linear programming problem with Algorithm 1. 4: If Hðv Þ 6 xuv , take the candidate VDC v with the minimum cost.

Fig. 3. Online resource provisioning for each arrival request.

Please cite this article in press as: W. Liu et al., Online multi-objective optimization for live video forwarding across video data centers, J. Vis. Commun. (2017), http://dx.doi.org/10.1016/j.jvcir.2017.01.010

6

W. Liu et al. / J. Vis. Commun. Image R. xxx (2017) xxx–xxx

Theorem 1. The online algorithm produces a primal feasible solution. P Proof. Consider the primal constraint that v 2F xuv is no less than 1. During each iteration, the algorithm increases the value of each variable xuv , until the constraint is satisfied. Subsequent increases of the variables cannot result in infeasibility. h Theorem 2. The online algorithm is an Oðlog jFjÞ-approximation algorithm for the VM provisioning problem. Proof. We a1 ¼

1 jFjmaxv 2F g uv

first

introduce a geometric sequence with   and q ¼ 1 þ maxv 2F1 ðguv Þ . According to Algorithm 1,

we have

xu v P

 zu 1 1 1 1þ : jFjmaxv 2F g uv maxv 2F g uv

ð19Þ

Initially, we set xuv ¼ 0. The variable zu increases by 1 at each iteration. Let x0uv be the variable after the increment of xuv . Then,

x0uv P xuv ð1 þ 1=g uv Þ þ 1=jFjg uv  zu 1   1 1 1 P 1þ  1þ jFjmaxv 2F g uv maxv 2F g uv maxv 2F g uv zu   1 1 1 ¼ 1þ þ1 : þ jFjmaxv 2F g uv jFjmaxv 2F g uv maxv 2F g uv ð20Þ On one hand, the increased x0uv > 1 will never occur in our fractional algorithm. On the other hand, g uv is always greater than 1 based on the actual data set obtained from current CSPs. Together with inequality (20), we can obtain:

1P

x0uv

1 P jFjmaxg uv

 1þ

v 2F

1 maxv 2F g uv

zu

 þ1 :

ð21Þ

zu 6 C

v 2F

1 1þg max

ðjFjg max  1Þ:

Theorem 3. The online algorithm is an Oðlog jUjÞ-approximation algorithm for the shortest path problem.

Proof. According to the proof provided in [33], the cost of the online SP algorithm C SP is not more than log jUjOPT SP . As we show above, the cost of the online FL algorithm C FL is not more than log jFjOPT FL . Note that jUj is generally much larger than jFj. Then, we have:

Costtotal ¼ C SP þ C FL 6 log jUjOPT SP þ log jFjOPT FL ð24Þ

where OPT ¼ OPT SP þ OPT FL is the optimal resource provisioning cost of the combination problem. Therefore, our algorithm is OðlogðjUjÞÞ-competitive.

ð22Þ ð23Þ

4.3. Idle VM releasing approach

v 2F

C ¼ maxg uv log1þ

The following analysis is provided to prove the performance of the algorithm:

Note that the scheduler can also employ many other shortest path algorithms to be adapt to different network routing requirements.

6 maxg uv log2 ðjFj  1Þ v 2F

Input: G ¼ ðV; EÞ; Du ; dij ; pr si , and pr bi . Output: Proper ST s . 1: for all s 2 S do 2: ST s ¼ s 3: end for 4: while End user u arrives to require the streams from IP camera s do 5: Gain the chosen VM from Algorithm 1. 6: if A VM is added in VDC v then S S ST s fðv ; uÞg Spathðv ; ST s Þ. 7: ST s 8: end if 9: Assign the VM of VDC v to the arrival end user u 10: end while 11: Remove the idle VMs, and adjust the structure of the forwarding tree.

6 Oðlog jUjÞOPT;

We further consider maxv 2F g uv > 1. Finally, we derive the following results from inequality (21):

¼ maxg uv  Oðlog jFjÞ;

Algorithm 3. Online Shortest Path Algorithm.

Where g max ¼ maxu2U; v 2F g uv . h 4.2. Online algorithm for forwarding tree adjustment The scheduler connects the chosen VM for each end user to the forwarding tree to obtain the live video stream, and the required IP camera is the root of the forwarding tree. Therefore, we propose Algorithm 3 to adaptively adjust the forwarding tree and provide the connectivity of each path. For each arrival request, Algorithm 2 first selects the proper VM from the VDC candidates via the scheduler. Then, the scheduler selects the forwarding path with the lowest resource provisioning cost to connect the chosen VM to the current forwarding tree. Algorithm 3 connects each end user and the assigned VMs to construct the forwarding tree ST s each time. Note that the parameter Spathðv ; ST s Þ is denoted as the forwarding path with the minimum resource provisioning cost to connect the chosen VM to the forwarding tree ST s . Finally, the time complexity of the algorithm is OðjFj log jFjÞ.

The scheduler needs to dynamically release the idle VMs for cost savings. The idle VM is the VM that no longer serves any end user requests. However, releasing idle VMs will disconnect the forwarding trees. Therefore, an approach is proposed on the scheduler to release the idle VMs and rebuild each forwarding path for the disconnected end users. The VM releasing approach works as follows: the scheduler explores the idle VMs at each time, and finds out their locations on the forwarding trees. If the idle VMs are the leaves of the forwarding trees, then they will be directly released. However, releasing idle VMs in the middle of the forwarding trees will impact their children because they are also employed as the relays. In this situation, the scheduler firstly finds another VMs with the idle capacities in the same VDCs of the releasing VMs to connect to the children. If there are still children left, and the parent VDCs of the releasing VMs have idle capacities, then the scheduler connects the children to the VMs in the parent VDCs on the forwarding trees. If the proper parent VDCs on the forwarding trees are not found, then the scheduler will find the nearest VDCs with the idle capacities, which have the minimum resource provisioning cost for the children to continue providing

Please cite this article in press as: W. Liu et al., Online multi-objective optimization for live video forwarding across video data centers, J. Vis. Commun. (2017), http://dx.doi.org/10.1016/j.jvcir.2017.01.010

7

W. Liu et al. / J. Vis. Commun. Image R. xxx (2017) xxx–xxx

the live video streams. If the scheduler still cannot find the parent VDCs, the rest of the media servers will be directly connected to the required IP cameras by the scheduler. 5. Performance evaluation In this section, we present the experimental results to show the performance of our approach compared to the state-of-the-art approaches. 5.1. Experiment setup We design a network topology GfV; Eg to denote the relationships of the end users, VDCs, and IP cameras in the experiments. The vertices of the topology are all real cities in China. There are 50 vertices: 15 vertices are the VDCs, and 35 vertices are the end users and IP cameras. In the network topology, any participants can connect to the VDCs to forward video streams, but the IP cameras and the end users can only connect to the VDCs. We number the locations of the VDCs from 1 to 15. Note that the VDCs, IP cameras, and end users can be set in the same cities. The VDC provides a VM as a media server, which has 4 cores, 8 GB of memory and 100 GB of storage. On each media server, Live555 (an RTSP server application) is deployed to forward live video streams. One media server can simultaneously serve at most 50 requests. The VM price in each VDC is shown in Table 2. We further evaluate the bandwidth utilization, and collect the video

streams from 20 IP cameras in Fuzhou, China. The bitrates of the IP cameras range from 300 Kpbs to 800 Kpbs, and the RTSP protocol is utilized as the forwarding protocol among IP cameras, media servers, and end users. Table 3 shows the bandwidth prices of VDCs. Both VM and bandwidth prices reference the resource charges of Amazon, Aliyun, and Google. For the calculation of the video forwarding delay, we first select several regions, and measure the delay values from the selected region to all other regions by ‘‘pinging” the IP addresses in those regions. Then, we can gain the average forwarding delay per kilometer. Finally, we obtain the delay of each edge, which multiplies the average forwarding delay by the distance between the two regions of each edge. The delay of each edge is shown in Table 4, and we set dmin ¼ 0:01 to represent the forwarding delay between any two participants in the same region. In the experiments, two state-of-the-art approaches are employed to compare with our approach: greedy scheduling approach [30] and nearest available approach. These approaches are widely utilized in video delivery services. For the greedy scheduling approach, the scheduler exhaustively explores all the possibilities to connect each end user to the forwarding tree with the minimum resource provisioning cost. We employ the greedy scheduling approach as a benchmark approach, and its time complexity is Oð2jFj Þ. For the nearest available approach, the scheduler chooses the media server that is nearest to each end user. Then, the chosen media server directly accesses the IP camera to gain the required stream, and the time complexity of the nearest avail-

Table 2 VM prices of VDCs (yuan/h). Locations Prices

Shenyang (1) 0.67

Beijing (2) 0.88

Tianjin (3) 0.56

Xian (4) 0.67

Qingdao (5) 0.792

Locations Prices

Zhengzhou (6) 0.67

Nanjing (7) 0.56

Shanghai (8) 0.67

Hangzhou (9) 0.88

Wuhan (10) 0.67

Locations Prices

Changsha (11) 0.88

Fuzhou (12) 0.56

Shenzhen (13) 0.88

Hong Kong (14) 0.456

Chengdu (15) 0.67

Table 3 Bandwidth prices of VDCs (yuan/Mbps/h). Locations Prices

Shenyang (1) 1.08

Beijing (2) 0.8

Tianjin (3) 0.868

Xian (4) 1.08

Qingdao (5) 0.72

Locations Prices

Zhengzhou (6) 0.744

Nanjing (7) 0.868

Shanghai (8) 0.868

Hangzhou (9) 0.8

Wuhan (10) 1.08

Locations Prices

Changsha (11) 0.8

Fuzhou (12) 0.868

Shenzhen (13) 0.8

Hong Kong (14) 1.0

Chengdu (15) 1.08

Table 4 Stream forwarding delay between VDCs (ms). NO.

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

0.01 17.0 16.4 43.3 29.4 33.6 38.2 42.9 44.4 44.3 52.1 59.6 69.2 70.3 60.8

17.0 0.01 3.1 26.7 16.4 17.2 25.2 29.8 31.4 28.6 36.3 46.6 53.3 54.3 44.2

16.4 3.1 0.01 27.2 13.4 17.4 22.2 26.8 28.4 28.1 35.9 43.6 53.0 54.0 44.8

43.3 26.7 27.2 0.01 29.3 11.9 26.6 34.2 32.3 18.1 24.3 40.6 43.5 44.4 17.6

29.4 16.4 13.4 29.3 0.01 18.0 14.7 17.9 20.1 26.7 35.0 35.3 47.5 48.5 46.8

33.6 17.2 17.4 11.9 18.0 0.01 16.7 23.6 23.2 12.7 19.8 35.2 39.1 39.9 29.4

38.2 25.2 22.2 26.6 14.1 16.7 0.01 7.4 6.8 13.4 21.8 22.2 34.2 39.9 41.3

42.9 29.8 26.8 34.2 17.9 23.6 7.4 0.01 4.3 20.7 26.9 19.0 36.4 37.4 48.7

44.3 31.4 28.4 32.3 20.1 23.2 6.8 4.3 0.01 18.5 22.4 15.2 32.1 33.1 46.5

44.3 28.6 28.1 18.1 26.6 12.7 13.4 20.7 18.5 0.01 8.5 22.6 26.4 27.4 31.7

52.1 36.3 35.9 24.3 35.0 19.8 21.8 26.9 22.4 8.5 0.01 22.4 19.9 20.7 29.3

59.6 46.6 43.6 40.6 35.3 35.2 22.2 19.0 15.2 22.6 22.4 0.01 20.3 21.3 50.6

69.2 53.3 53.0 43.5 47.5 39.1 34.2 36.4 32.1 26.4 19.9 20.3 0.01 1.1 44.2

70.3 54.3 54.0 44.4 48.5 39.9 39.9 37.4 33.1 27.4 20.7 21.3 1.1 0.01 45.0

60.8 44.2 44.8 17.6 46.8 29.4 41.3 48.7 46.5 31.7 29.3 50.6 44.2 45.0 0.01

Please cite this article in press as: W. Liu et al., Online multi-objective optimization for live video forwarding across video data centers, J. Vis. Commun. (2017), http://dx.doi.org/10.1016/j.jvcir.2017.01.010

8

W. Liu et al. / J. Vis. Commun. Image R. xxx (2017) xxx–xxx

Fig. 4. In each experiment, there are over 1300 time slots, and the request distribution is shown in Fig. 5. In addition, the experimental results consist of the following items: the cumulative total cost C total , the cumulative media server cost C VM , the cumulative bandwidth cost C B , and the cumulative delay cost C D ¼ b  Delay. 5.2. Performance comparison

Fig. 4. Interest distribution of the experiments.

0

Fig. 5. Request distribution of the experiments.

able approach is OðjFjÞ. When the media servers of the VDCs cannot serve any end users, the schedulers of both approaches can add new media servers to serve the arriving end users. We randomly choose Luu and Lsu for each request at each time. The end user arrival process is a Poisson process. The end user interest in each IP camera follows a power low distribution, as shown in

The experimental results show the resource provisioning costs of the three approaches. Furthermore, we utilize three different values of parameter b to indicate the importance of the forwarding delay during the live video forwarding. We set the value of b equal to 1; 0:03 and 0:003, respectively. When b ¼ 1, the value of the forwarding delay on one edge is obviously larger than the VM cost to add one media server, and the value of the bandwidth cost to forward one video stream. That is to say, the forwarding delay has the largest values during resource provisioning. When b is reduced to 0:03, the value of the forwarding delay for one edge is nearly the same as the value of a new VM cost and the bandwidth cost of a new network connection. After b is set to 0:003, the value of the forwarding delay is much less than the value of the VM cost or the value of the bandwidth cost. Note that based on the resource charges of the commercial CSPs, the values of the parameters a and c are equal to 1. The cumulative values of the VM cost, the bandwidth cost, and the forwarding delay under different b are presented in Figs. 6–8. Based on the experimental results, we can conclude that our approach can largely cut down the total resource provisioning cost not only by decreasing the largest values, but also by achieving more comprehensive optimization. When b is set to be 1, the C D of our approach has the largest values. Our approach, which has the minimum forwarding delay as shown in Fig. 6(c), leads to the minimum cumulative total resource provisioning cost. At the same time, the values of C B in our approach are just a little lower than the highest values shown in Fig. 6(b). We also find that the C VM

Fig. 6. Experimental results for b ¼ 1.

Please cite this article in press as: W. Liu et al., Online multi-objective optimization for live video forwarding across video data centers, J. Vis. Commun. (2017), http://dx.doi.org/10.1016/j.jvcir.2017.01.010

W. Liu et al. / J. Vis. Commun. Image R. xxx (2017) xxx–xxx

9

Fig. 7. Experimental results for b ¼ 0:03.

Fig. 8. Experimental results for b ¼ 0:003.

of our approach is slightly higher than the costs of the other two approaches in Fig. 6(a). That means our approach assigns more media servers, but selects more proper locations for live video forwarding to shorten the forwarding delay. When b ¼ 0:03, the average value of the forwarding delay on one connection is nearly the

same as the values of the cost to add a VM or build up a network connection. Although we still get a little higher C VM than the Greedy approach and the Nearest Available approach shown in Fig. 7(a), we maintain a lower C B shown in Fig. 7(b), and much less C D , as shown in Fig. 7(c). When further decreasing the forwarding

Please cite this article in press as: W. Liu et al., Online multi-objective optimization for live video forwarding across video data centers, J. Vis. Commun. (2017), http://dx.doi.org/10.1016/j.jvcir.2017.01.010

10

W. Liu et al. / J. Vis. Commun. Image R. xxx (2017) xxx–xxx

delay to b ¼ 0:003, the cumulative bandwidth costs are much higher than the cumulative VM costs. Although the VM cost and forwarding delay are higher than the competitors, which is presented by Fig. 8(b) and (d), we well control the bandwidth cost, as shown in Fig. 8(c). Generally, since the nearest available approach mainly searches the nearest VDCs, the approach is not sensitive to changes of the parameter b, and the resource costs and the forwarding delay do not obviously charge for different values of b. For the greedy approach, the total forwarding delay increases as b decreases in the experiments. On the contrary, the media server costs and the bandwidth costs are cut down at the same time. Our approach is very similar to the greedy approach, but it spends more media server costs to achieve bandwidth costs and less forwarding delay. Because the media server can build up more than one network connection to forward live video streams, the bandwidth costs are obviously higher than media server costs. For this reason, our approach can increase media server costs to improve the bandwidth costs and shorten the forwarding delay, as shown in the experimental results. Therefore, our approach gains the minimum C Total comparing with the other two approaches at most of the time during b ¼ 1; 0:03, and 0:003 shown in Fig. 9(a)-(c). Based on the above analysis, we utilize the greedy approach as the benchmark approach, and our approach averagely cuts the total cost from 3% to 10% comparing to the benchmark approach. Moreover, the computational delay of our approach is significantly faster than that of the benchmark approach when comparing the time complexity of the approaches. In the experiments, the greedy approach averagely spends a few seconds to assign the resources for each end user, but our approach just needs a few milliseconds. Furthermore, our approach is nearly as fast as the nearest approach. Although the nearest approach has the shortest computational delay, it also spends the most resource provisioning cost among the three approaches. For this reason, our online approach can save costs, and the computational advantage of our approach is also more obvious.

6. Related work Video forwarding services require the cooperation of media servers in different VDCs to forward video streams to end users in different regions [15–18]. Optimal resource provisioning approaches are the main concern for video forwarding services. The authors of [3,28] provided the solutions to optimize the network performance across inter-connected VDCs. The approaches aimed at optimizing the performance of data center networks, which were deployed at the infrastructure layer to provide Infrastructure as a Service (IaaS). IaaS optimizes the physical resources of interconnected VDCs using a virtualization technique, but it did not consider the resource usage and cost on the virtualization platform. More work focused on providing an optimal resource provisioning plan on both servers and networks on the virtualization platform layer to provide video services. As discussed above, VSaaS is also provided on this platform. For offline video services, current resource optimization approaches mainly focus on selecting the data centers in different places to store video files before video delivery. Considering that server and network charges are much different among the data centers, the resource allocation plan minimizes the server cost, the bandwidth cost, and the forwarding delay. For example, the authors of [20] predicted the bandwidth demands in different regions of each video file. Then, a heuristic resource scheduling algorithm was proposed to allocate bandwidth and determine a cost-efficient video file placement among data centers. The authors of [21] also optimized the resource usage on server storage and network bandwidth to deliver video files. A greedy algorithm was proposed to maximize the resource utility of current media servers, which can minimize the rental cost for new media servers and bandwidths for video delivery. To provide interactive video service, a multi-objective data placement approach was explored in [23] to support a social media sharing service among multiple clouds. Video files were uploaded to data centers by users, and shared with their friends. Replicas of each video were divided into

Fig. 9. Cumulative total cost under different b.

Please cite this article in press as: W. Liu et al., Online multi-objective optimization for live video forwarding across video data centers, J. Vis. Commun. (2017), http://dx.doi.org/10.1016/j.jvcir.2017.01.010

W. Liu et al. / J. Vis. Commun. Image R. xxx (2017) xxx–xxx

one master replica and several slave replicas. The master replica can be read and written, and slave replicas cannot be written. To properly place different replicas among different data centers, the algorithm aimed at reducing the replica operation delay, the resource usage cost, and the inter-datacenter network traffic. Similarly, the resource provisioning approach proposed in [24] also considered a social media sharing service on multiple data centers by optimizing both upload and download video cost among users. An improved interactive video forwarding service was shown in [26,27]: two users communicate with each other by data centers, and the locations of users are known to the system. The proposed algorithm selected servers in proper locations between any two users to minimize communication delay. The above works did not consider the server capacity, and lacked of the media server organizations. To forward live video streams across VDCs, a stream forwarding tree was proposed in [28] for video conference service. On the other hand, the algorithm proposed in [29] utilized the prediction result of the arriving user to achieve the minimum resource cost. The locality of the live video stream was the main concern of this algorithm. Online resource provisioning algorithms were proposed in [19,22,30,32] to provide efficient video services. To select media servers for video file storage, the algorithm provided by [19] minimized the total media server cost of different data centers for users in different regions. The authors of [22] provided an online resource provisioning algorithm to share social media among friends by data centers. A queuing model was established using the drift-plus-penalty optimization method to optimize the resource cost and forwarding delay. However, the above algorithms mainly focused on the video storage and lacked media server cooperation to forward live video stream. The authors of [30] proposed an online resource scheduling algorithm for real-time multimedia services. They supposed that the request contains more than one end user, and a new forwarding tree was built up for each arrival request. The algorithm provided an online solution to combine forwarding trees and took full use of the limited number of media servers. Therefore, the algorithm was not scalable, and denied a lot of requests. Similar to the work of [30], the approach proposed in [32] improved the traditional CDN system to forward live video streams. However, the proposed approach focused on improving the performance of the network between media servers to reduce the network cost and forwarding delay. Lacking the consideration of the VDC locations and resource prices means that the approach cannot be directly utilized in the system across inter-connected VDCs. In brief, the proposed resource provisioning solutions are not suitable for online live video stream forwarding across inter-connected VDCs.

7. Conclusions In this paper, we present a comprehensive consideration of the forwarding delay, media server cost and bandwidth cost, and propose a multi-objective optimization approach for online resource provisioning across VDCs in the VSaaS. Different from existed works, the proposed approach provides resource availability and scalability during resource provisioning. The resource provisioning problem is formulated as an online route selection problem, which aims at minimizing the resource provisioning cost (calculated by the sum of the media server cost, bandwidth cost, and forwarding delay). To efficiently assign proper resources in real time for each end user, we convert the problem into the combination of the FL and SP problems. We deal with the traditional resource provisioning problems using a primal-dual optimal method, which achieves the online approximate optimal solutions with a lower competitive ratio. Furthermore, we prove that the online VM provisioning algo-

11

rithm is OðlogðjFjÞÞ-competitive and that our MORP approach is OðlogðjUjÞÞ-competitive. The experimental results demonstrate the effectiveness and efficiency of the proposed approach, which can largely cut the resource provisioning cost and shorten the computational delay to provide the resources. Acknowledgments This work is partially supported by the National Key Research and Development Plan (No. 2016YFC0801005), the National Natural Science Foundation of China (No. 61602049), the Funds for Creative Research Groups of China (No. 61421061), the Beijing Training Project for the Leading Talents in S&T (No. ljrc 201502), and the CCF-Tencent Open Research Fund (No. AGR20160113). Appendix A. Supplementary material Supplementary data associated with this article can be found, in the online version, at http://dx.doi.org/10.1016/j.jvcir.2017.01.010. References [1] Y. Gao, H.D. Ma, H. Zhang, X. Yang, N. Cao, Minimizing resource cost for camera stream scheduling in video data center, in: IEEE CloudCom, 2015, pp. 210–217. [2] W. Liu, T. Mei, Y. Zhang, C. Che, J. Luo, Multi-task deep visual-semantic embedding for video thumbnail selection, in: IEEE CVPR, 2015, pp. 3707–3715. [3] Y. Feng, B. Li, B. Li, Airlift: video conferencing as a cloud service using interdatacenter networks, in: IEEE ICNP, 2012, pp. 1–11. [4] C. Gan, N. Wang, Y. Yang, D. Yeung, A.G. Hauptmann, DevNet: a deep event network for multimedia event detection and evidence recounting, in: IEEE CVPR, 2015, pp. 2568–2577. [5] A. Liu, Y. Su, P. Jia, Z. Gao, T. Hao, Z. Yang, Multiple/single-view human action recognition via part-induced multitask structural learning, IEEE Trans. Cybernet. 45 (6) (2015) 1194–1208. [6] L. Chu, S. Wang, S. Liu, Q. Huang, J. Pei, ALID: scalable dominant cluster detection, Proc. VLDB Endowment, vol. 8, no. 8, 2015, pp. 826–837. [7] X. Zhang, H. Zhang, Y. Zhang, Y. Yang, M. Wang, H. Luan, J. Li, T. Chua, Deep fusion of multiple semantic cues for complex event recognition, IEEE Trans. Image Process. 25 (3) (2016) 1033–1046. [8] A. Liu, Y. Su, W. Nie, M. Kankanhalli, Hierarchical clustering multi-task learning for joint human action grouping and recognition, IEEE Trans. Pattern Anal. Mach. Intell. 39 (1) (2017) 102–114. [9] W. Nie, A. Liu, Z. Gao, Y. Su, Clique-graph matching by preserving global & local structure, in: IEEE CVPR, 2015, pp. 4503–4510. [10] T. Hao, W. Peng, Q. Wang, B. Wang, J. Sun, Reconstruction and application of protein-protein interaction network, Int. J. Mol. Sci. 17 (6) (2016) 907. [11] B. Wang, Q. Ning, T. Hao, A. Yu, J. Sun, Reconstruction and analysis of a genome-scale metabolic model for Eriocheir sinensis eyestalks, Mol. BioSyst. 12 (1) (2016) 246–252. [12] A. Liu, W. Nie, Y. Gao, Y. Su, Multi-modal clique-graph matching for viewbased 3D model retrieval, IEEE Trans. Image Process. 25 (5) (2016) 2103–2116. [13] H. Yao, S. Zhang, Y. Zhang, J. Li, Q. Tian, Coarse-to-fine description for finegrained visual categorization, IEEE Trans. Image Process. 25 (10) (2016) 4858– 4872. [14] Y. Chen, S. Jain, V.K. Adhikari, Z. Zhang, K. Xu, A first look at inter-data center traffic characteristics via Yahoo! datasets, in: IEEE INFOCOM, 2011, pp. 1620– 1628. [15] V.K. Adhikari, S. Jain, Z. Zhang, YouTube traffic dynamics and its interplay with a Tier-1 ISP: an ISP perspective, in: Proc. ACM IMC, 2010, pp. 431–443. [16] V.K. Adhikari, Y. Guo, F. Hao, M. Varvello, V. Hilt, M. Steiner, Z. Zhang, Unreeling Netflix: understanding and improving multi-CDN movie delivery, in: IEEE INFOCOM, 2012, pp. 1620–1628. [17] V.K. Adhikari, S. Jain, Y. Chen, Z. Zhang, Vivisecting YouTube: an active measurement study, in: IEEE INFOCOM, 2012, pp. 2521–2525. [18] G. Zhang, W. Liu, X. Hei, W. Cheng, Unreeling Xunelei Kankan: understanding hybrid CDN-P2P video-on-demand streaming, IEEE Trans. Multimedia 17 (2) (2015) 229–242. [19] F. Hao, M. Kodialam, T. Lakshman, S. Mukherjee, Online allocation of virtual machines in a distributed cloud, in: IEEE INFOCOM, 2014, pp. 10–18. [20] Y. Zhao, H. Jiang, K. Zhou, Z. Huang, P. Huang, Meeting service level agreement cost-effectively for video-on-demand applications in the cloud, in: IEEE INFOCOM, 2014, pp. 298–306. [21] M. Hu, J. Luo, Y. Wang, B. Veeravalli, Practical resource provisioning and caching with dynamic resilience for cloud-based content distribution networks, IEEE TPDS 25 (8) (2014) 2169–2179. [22] H. Hu, Y. Wen, T. Chua, Z. Wang, Community based effective social video contents placement in cloud centric CDN network, in: IEEE ICME, 2014, pp. 1–6. [23] L. Jiao, J. Li, W. Du, X. Fu, Multi-objective data placement for multi-cloud socially aware services, in: IEEE INFOCOM, 2014, pp. 28–36.

Please cite this article in press as: W. Liu et al., Online multi-objective optimization for live video forwarding across video data centers, J. Vis. Commun. (2017), http://dx.doi.org/10.1016/j.jvcir.2017.01.010

12

W. Liu et al. / J. Vis. Commun. Image R. xxx (2017) xxx–xxx

[24] Z. Wang, B. Li, L. Sun, W. Zhu, S. Yang, Dispersing instant social video service across multiple clouds, IEEE TPDS 27 (1) (2016) 735–747. [25] H. Nishida, T. Nguyen, Optimal client-server assignment for internet distributed systems, IEEE TPDS 24 (3) (2013) 565–575. [26] H. Zheng, X. Tang, On server provisioning for distributed interactive applications, in: IEEE ICDCS, 2013, pp. 500–509. [27] H. Zheng, X. Tang, The server provisioning problem for continuous distributed interactive application, IEEE TPDS 27 (1) (2016) 271–285. [28] Y. Feng, B. Li, B. Li, Jetway: minimizing costs on inter-datacenter video traffic, in: Proc. ACM Multimedia, 2012, pp. 259–268. [29] F. Wang, J. Liu, M. Chen, CALMS: cloud-assisted live media streaming for globalized demands with time/region diversities, in: IEEE INFOCOM, 2012, pp. 199–207.

[30] J. Liao, P. Chou, C. Yuan, Y. Hu, W. Zhu, Online allocation of communication and computation resources for real-time multimedia services, IEEE Trans. Multimedia 15 (3) (2013) 670–683. [31] X. Jiang, X. Cao, DHC Du, Multihop transmission and retransmission measurement of real-time video streaming over DSRC devices, in: IEEE WoWMoM, 2014, pp. 1–9. [32] M.K. Mukerjee, D. Naylor, J. Jiang, D. Han, S. Seshan, H. Zhang, Practical, realtime, centralized control for CDN-based live video delivery, in: Proc. ACM SIGCOMM, 2015, pp. 311–324. [33] M.C.S. Felice, D.P. Willamson, O. Lee, The online connected facility location problem, Lect. Notes Comput. Sci. (2014) 574–585.

Please cite this article in press as: W. Liu et al., Online multi-objective optimization for live video forwarding across video data centers, J. Vis. Commun. (2017), http://dx.doi.org/10.1016/j.jvcir.2017.01.010