Provisioning overlay distribution networks - CiteSeerX

16 downloads 178125 Views 405KB Size Report
May 12, 2005 - ment requirements. As a result, the current CDN model where content from various service provid- ers are hosted, managed, delivered by one ...
Computer Networks 49 (2005) 103–118 www.elsevier.com/locate/comnet

Provisioning overlay distribution networks Thanh Vinh Nguyen a

a,*

, Farzad Safaei a, Paul Boustead a, Chun Tung Chou

b

Telecommunications and Information Technology Research Institute (TITR), University of Wollongong, Australia b School of Computer Science and Engineering, University of New South Wales, Australia Available online 12 May 2005

Abstract Future entertainment services are expected to be increasingly interactive, on demand and personalized. This paper aims to address the challenge of provisioning network and server resources to support the distribution of these services over the Internet. We propose the Overlay Distribution Network (ODN) as a cost-effective means to deliver these services. Because ODNs are created over shared network and server infrastructure, the provisioning problem becomes significantly complex. The paper formulates this problem as a joint resource provisioning and content replication optimization. The resulting formulation is proved to be NP-complete. We solved this problem with an efficient Lagrangian heuristic. Further, content clustering is employed to improve the heuristic run time. Initial results show that this is efficient. In some cases, clustering allows solutions with very similar quality to be achieved at a 20 times reduction in complexity.  2005 Elsevier B.V. All rights reserved. Keywords: Overlay Distribution Network; Content Distribution Networks; Resource optimization; Lagrangian heuristic; Content clustering

1. Introduction This paper looks at service provisioning needs and challenges brought by distributing next generation entertainment content over the Internet. Entertainment content delivery has been showing a trend of convergence between the rich function*

Corresponding author. E-mail addresses: [email protected] (T. Vinh Nguyen), [email protected] (F. Safaei), [email protected] (P. Boustead), [email protected] (C. Tung Chou).

ality and interactivity of the Internet and video/ audio content of television and radio. This is being driven by many technological and social forces, including: • Growth of the Internet, its ubiquitous availability and the popularity of broadband connection to the home. • The increasing use of digital formats in entertainment media production, distribution and consumption, e.g., digital music, photos and movies.

1389-1286/$ - see front matter  2005 Elsevier B.V. All rights reserved. doi:10.1016/j.comnet.2005.04.001

104

T. Vinh Nguyen et al. / Computer Networks 49 (2005) 103–118

• Technological advances that allow standardized multimedia content description, adaptation and creation, e.g., MPEG-7 and MPEG-21 standards. • Increasing levels of user expectations in terms of availability, functionality, interactivity, and personalization. The convergence has been evidenced through commercial growth and research interest in Digital Television [1], Interactive TV [2], Video on Demand [3], the production of television sets capable of browsing the Internet and PCs that can receive television signals, and most recently the launch and success of online music retailers like Apple [4] and Napster [5]. Ultimately, the Internet may become a main distribution channel for multimedia entertainment content, including TV programmes, movies, music and the likes, with content distribution moving from a push (broadcast) model to a pull model with rich personalization and interactivity, where user interactions go beyond the hyperlink, to include virtual presence or participation, such as virtual environments and games. Although such a convergence will not happen overnight, we are convinced it is coming and are interested in contemplating the entailed challenges. As Internet distribution of entertainment content gains popularity, we believe the most paramount challenge would be service scalability, very much similar to what has been facing todayÕs killer Internet application, web content delivery. For the Web, a range of techniques have been progressively developed to mitigate service scalability issues, ranging from hierarchical caching to server clusters with dispatchers, to Content Distribution Networks (CDN). The latest effort, CDN, is well recognized for the ability to bypass network bottlenecks, distribute server loads and improve access latency. This is achieved by delivering replicated content from a geographically distributed network of servers, taking into account the spatial distribution of service demand. This is consistent with moving the distribution model from a clientserver model to a client-network of servers model. Future Internet entertainment, which features multimedia content and rich functionality, in com-

parison, will place an even heavier burden on servers and networks, due to high processing, bandwidth and stringent latency requirements. Therefore, a distributed CDN-style approach–– with a client-network of servers access model––will be necessary. However, we believe the existing model of CDN will not be sufficient. Delivering entertainment content will no longer be just ‘‘delivery’’, but an extremely complex process involving user interaction, content adaption, usage accounting and QoS control. There will also be a diversity of service classes, with different behaviour, resource and management requirements. As a result, the current CDN model where content from various service providers are hosted, managed, delivered by one CDN, which is owned and operated by a CDN provider, may no longer be appropriate. Instead, service providers will need additional capabilities to exercise more control over the distribution process. This may includes deploying in-house delivery, billing, monitoring and control software, managing content replication and the distribution network infrastructure so as to meet QoS policies and cope with rating fluctuations. Naturally, a technically simple solution is for service providers to deploy and operate their own (physical) distribution networks. However, this is prohibitively expensive. Besides, since services may be rolled out without accurate advanced knowledge of the geographical take-up, or only deployed for certain events (e.g., soccer world cup or the Olympics), such physical resource commitment is highly undesirable. 1.1. Focus of our work This paper considers the distribution of future entertainment content over the Internet and proposes an innovative and cost-effective approach to provide these services with the necessary distributed resources: using shared network and server infrastructure. We envisage an environment where network and server owners offer processing, bandwidth and storage resources ‘‘for hire’’ in a spot market. A service provider will lease these resources to establish an overlay network of virtual servers, which are logical partitions of physical

T. Vinh Nguyen et al. / Computer Networks 49 (2005) 103–118

servers/clusters, and connecting virtual links. This overlay topology is made to appear as a network of dedicated servers, over which the service provider has complete control. We call this an Overlay Distribution Network (ODN). This approach addresses our problem by providing the functionality of a private distributed infrastructure and the flexibility of adjusting this infrastructure on-the-fly. We believe the ‘‘resource-hiring’’ nature of this approach makes resource provisioning and service replication in ODN substantially more challenging and different from those in current generation CDNs. This is because: 1. Provisioning must be addressed jointly with replication, since it is service replication issues, such as the locations of servers and replicated content, user handling, QoS levels to be achieved, that decide the resources to be leased. 2. Leasing resources incurs costs, thus the goal of service replication must be to deliver content with a certain QoS level agreement at the minimum resource cost, so as to maximize service profit. In comparison, existing CDN replication algorithms usually assume an established infrastructure and simply use up the available resources in search of the best performance possible, which is not appropriate in a shared infrastructure environment (e.g., [6,7]). This paper aims to address the ODN provisioning-replication challenge and provides an optimal provisioning solution for the service providers. Section 2 of this paper will present a framework describing the provisioning process, the roles and interactions between resource providers and service providers. This process is then modelled as a mixed integer programming optimization in Section 3. The optimal service replication parameters and amounts of resources to be leased can be obtained by solving this model. In Section 4, an efficient Lagrangian heuristic is developed to solve this model and experimental results are described. The paper also explores the use of content clustering to improve optimization scalability, which is described in Section 5. Section 6 provides a review of related works and finally our main conclusions and contributions are summed up in Section 7.

105

2. ODN provisioning framework During the provisioning process, a service provider (SP) aims to determine the overlay network topology, including virtual servers, links and associated resources to be leased from resource providers (RPs), where content is replicated and user requests are redirected. In order to do this, information on the currently available resources must first be obtained from RPs, describing: • Potential server locations and potential links. • Leasing costs of various resources (bandwidth, computation, storage space). • Server and link capacity limits. Over this infrastructure, a desired topology can be specified through the following components: 1. Virtual servers: Logical partitions of physical servers or server clusters. A virtual server is defined through its location, the allocated computation power, storage space and bandwidth. A serverÕs bandwith is allocated for delivering content from that server to consumers and is dimensioned based on the aggregated amount of content requested from that particular server. 2. Virtual links: These links form the backbone of the distribution network, and are used for software distribution, content replication and updates, realtime streaming, and upstream communications (e.g., messages from users participating in a talk show). Each virtual link is defined by its end points and allocated bandwidth. The challenge in the provisioning process is for the SP to determine the best content replication and user redirection pattern and, as a result, the best overlay topology. An optimal topology would deliver the highest profit while maintaining a certain degree of acceptable performance. Provisioning, therefore, would involve an optimization process which maximizes service profit, taking into account the following: • Available resources and costs. • Service performance requirement.

106

T. Vinh Nguyen et al. / Computer Networks 49 (2005) 103–118

• Available content, spatial distribution of demands, delivery resource requirements and potential revenues. We envisage this optimization process to be implemented in a provisioning tool used by the SP, which gathers the necessary information, computes the optimal topology, and passes this information onto RPs, who will then allocate the requested resources. By performing the above optimization process at appropriate time intervals, an SP can also adjust resource usage to cope with demand variations (e.g., program rating fluctuations or day/night access patterns).

3. ODN provisioning model Based on the above framework, an optimization model for the provisioning process will now be developed. 3.1. Assumptions and simplifications It is assumed that bandwidth consumption due to content delivery between servers and end users is much higher than bandwidth consumption due to content replication and updates over the ODN backbone. Therefore a simplified approach has been adopted where the more significant components––virtual servers––are provisioned before the virtual links. Our optimization model, as a result, does take into account virtual link costs. It is also assumed that not all available content is necessarily replicated. This is because: (1) it may not be cost effective to replicate content with low ratings, (2) there may not be enough resources to replicate and deliver everything. In that case, the service provider would give priority to content with higher revenues and/or rating in order to maximize profit. 3.2. Network and cost models The network is modelled as a graph G = hV, Ei, where V is the set of nodes and E is the set of edges. Two subsets of nodes are defined––cus-

tomer access nodes Vc and potential server nodes Vs, where V = Vc [ Vs, M = jVcj and N = jVsj. A customer access node is where end users reside, e.g., an ISP access network. A potential server node represents a location that resources can be hired and a virtual server can be established, e.g., a server farm owned by resource providers. Each server node i 2 Vs is assumed to have the following properties: • ci: site cost, i.e., the cost involved in establishing and maintaining a virtual server (e.g., resource allocation, shipping software, configuration, . . .); • ai: unit storage cost. The total storage cost would be proportional to the amount of content cached at the server; • bi: unit bandwidth cost; • di: unit processing power cost; • Ci: maximum server processing power available. Note that processing power has been used as the limiting factor on server capacities because we believe the rich interactivity and personalization in entertainment content would make it the most critical server resource bottleneck. However, server capacities can be modelled based on any other server resource without significant changes in our mathematical formulation. Each edge e 2 E, on the other hand, represents a network link and has a weight that reflects the latency between the two nodes. The latency dij between any node i 2 Vs and j 2 Vc is thus known and pre-processed using shortest path algorithms on graph G. Entertainment content to be delivered, including video, audio, images or text, are represented by a population of K ‘‘objects’’, with object k having the following properties: • • • • • •

sk: storage requirement; bk: delivery bandwidth consumption; ck: processing power consumption; Tk: latency requirement; qk: revenue per unit time; kjk average demand from customer site j.

The demand kjk of an object reflects its popularity at each customer access node. This is measured

T. Vinh Nguyen et al. / Computer Networks 49 (2005) 103–118

by the estimated number of users from node j accessing content k simultaneously. Even though at a particular instant different users may actually be accessing different parts of a certain content, e.g., different positions within a movie, it is reasonable to assume that the same bandwidth and processing requirement applies. The provisioning problem can now be formulated as an optimization whose objective is to find a distribution network configuration (i.e., server locations and capacities, object replication and user redirection patterns) so that the service profit (i.e., total revenue less total cost) is maximized, while available resources are not exceeded and delivery latency requirements are satisfied. 3.3. Problem formulation To formulate this optimization problem we used the following binary and continuous decision variables:  1 if site i is used; yi ¼ ð1Þ 0 otherwise.  1 object k is replicated; uk ¼ ð2Þ 0 otherwise.  1 if object k is replicated at site i; xik ¼ ð3Þ 0 otherwise. rkij 2 ½0; kjk .

ð4Þ

The continuous variable rkij is used to indicate the fraction of accesses for object k from customer j that should be directed to site i. Based on these variables, the optimization can be formulated as the following mixed integer linear programming model: ðPÞ Max



j¼1

rk q k¼1 ij k

|fflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflffl{zfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflffl}

XN XK

revenue

xik ai sk i¼1 k¼1 |fflfflfflfflfflfflfflfflfflfflfflfflfflffl{zfflfflfflfflfflfflfflfflfflfflfflfflfflffl} storage cost



XN XM XK

XN þ di c k Þ yc i¼1 i i |fflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflffl{zfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflffl} |fflfflfflfflffl{zfflfflfflfflffl} i¼1

j¼1

rk ðbi bk k¼1 ij

bandwidthþcpu cost

subject to: M X K X j¼1 N X

rkij ck 6 y i C i ;

8i

ð6aÞ

k¼1

rkij ¼ uk kjk ;

i¼1 rkij ðd ij T k Þ rkij 6 kjk xik ;

xik 6 y i ;

8j; k

6 0;

8i; j; k

8i; j; k

ð6cÞ ð6dÞ

8i; k

xik ; uk ; y i 2 f0; 1g;

ð6bÞ

ð6eÞ rkij 2 ½0; kjk .

In this model, constraint (6a) enforces the server capacity at each potential site, (6b) ensures all requests for replicated content are allocated to virtual servers. Constraint (6c) means that object k can only be delivered from server i to user j if the latency between them (dij) is not more than its minimum requirement Tk. Constraints (6d) and (6e) set the dependencies among variables r, x and y, namely an object can only be delivered from a location where it is replicated and it can only be replicated where a server has been established. The relationship uk P xik (i.e., replications are only made if the object is selected) is implied by a combination of constraints (6b) and (6d). The complexity of this model is as follows: • Number of binary variables: N + K + NK, i.e., O(NK). • Number of continuous variables: MNK, i.e., O(MNK). • Number of constraints: 2MNK + MK + NK + N, i.e., O(MNK).

3.4. Proving NP-completeness

XN XM XK i¼1

107

site cost

ð5Þ

We will prove that the model is NP-complete by reducing it to a well-known NP-complete problem knapsack problem [8]. Consider a special case of our model with only one site, zero resource costs and no performance constraint (i.e., N = 1, ci = 0, ai = 0, bi = 0, di = 0 and T = 1). With subscript i removed for convenience and redundant constraints eliminated, the problem can be written as:

108

T. Vinh Nguyen et al. / Computer Networks 49 (2005) 103–118

Max

M X K X j¼1

with a heuristic based on Lagrangian relaxation and subgradient optimization. Using Lagrangian relaxation, we relax constraints (6a) and (6b) and add the following terms to PeqÕs objective function: ! N M X K X X wi ck rkij y i C i and

qk rkj

k¼1

subject to: M X K X j¼1

ck rkj 6 C;

k¼1

rkj ¼ kjk uk ; 8j; k;  rkij 2 0; kjk 8j; k; uk 2 f0; 1g; 8k.

i¼1 M X K X

Replacing rkj with kjkuk will then transform the model into: ! K M X X k uk q k kj Max k¼1

j¼1

j¼1

j¼1

ljk

k¼1

K X

uk c k

M X

k¼1

kkj

Min

K X

8k;

k¼1

which is a classical Knapsack problem. Since our model is NP-complete, it cannot be efficiently solved for realistically large networks. We thus have developed an efficient Lagrangian heuristic to find near optimal solutions within a reasonable time.

þ

Akij

N X K X i¼1



j¼1

rkij ðbi bk þ di ck qk þ wi ck þ ljk Þ |fflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflffl{zfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflfflffl}

K X

k¼1

xik ai sk þ |{z} Bik

M X

uk

k¼1

4.1. Relaxing the model

rkij ðd ij T k Þ 6 0;

ðPeq Þ Min

i¼1

þ

N X K X i¼1

k¼1

j¼1

k¼1

xik ai sk þ

rkij 6 kjk xik ;

N X

y i ci

ð7Þ

i¼1

subject to: ((6a)–(6e)). Solving this equivalent problem will give us the solution to the original problem and the negative of its objective function. We solve this problem

y i ðci wi C i Þ |fflfflfflfflfflfflffl{zfflfflfflfflfflfflffl}

!

Di

ð8Þ

8i; j; k

8i; j; k

8i; k

xik ; uk ; y i 2 f0; 1g; rkij ðbi bk þ di ck qk Þ

i¼1

ljk kjk

subject to:

xik 6 y i ;

N X

j¼1

4. Lagrangian heuristic

We rearrange the objective function and transform the model into the following equivalent form, which minimizes the negative of the profit:

uk kjk ;

N X M X i¼1

6 C;

N X M X K X

! rkij

where wi, ljk 2 Rjwi P 0 are Lagrangian multipliers. After re-arranging the objective function, we have the following relaxed model: ðPLR Þ

j¼1

uk 2 f0; 1g;

N X i¼1

subject to: !

k¼1

rkij 2 ½0; kjk .

This can be decomposed into the following independent subproblems: ! K M X X ðPs1 Þ Max uk ljk kjk ð9Þ k¼1

subject to: uk 2 f0; 1g.

j¼1

T. Vinh Nguyen et al. / Computer Networks 49 (2005) 103–118

And: ðPs2 Þ Min

N X M X K X i¼1

þ

N X K X i¼1

j¼1

rkij Akij

k¼1

xik Bik þ

k¼1

N X

y i Di

ð10Þ

tion only. Thus if the relaxed solution rules out delivering object k from server i to customer j, it is not considered in the solution recovering process. These request redirection variables can be found by solving the following problem:

i¼1

Min

subject to:

N X M X i¼1

rkij ðd ij T k Þ 6 0; rkij 6 kjk xik ; xik 6 y i ;

8i; j; k

rij ðbi b þ di cÞ

ð12Þ

j¼1

subject to:

8i; j; k

rij ck 6 y i C residual ; i

8i; k

xik ; y i 2 f0; 1g;

109

N X

rkij 2 ½0; kjk

rij ¼ uk kjk ;

8i 8j

i¼1

with Akij , Bik, and Di as defined in (8). Ps1 and Ps2 can be solved easily through simple inspection, as described in detail in Appendix A. For each value of multipliers wi and ljk, solving these subproblems gives a solution to the corresponding relaxed problem PLR(l, w). The resulting objective function value, Obj(PLR(l, w)), is a lower bound of the optimal objective of Peq, due to the properties of Lagrangian relaxation [9]: ObjðP LR ðl; wÞÞ 6 ObjOPT ðP eq Þ.

ð11Þ

4.2. Constructing feasible solutions A solution to the relaxed problem PLR may not be a feasible solution to Peq, since constraints (6a) and (6b) may be violated. However, we use this relaxed solution as a starting point to reconstruct a feasible solution to Peq. Our strategy is to accept the service replication parameters (i.e., variables xik, yi, uk) and adjust the user redirections (i.e., variables rkij ) so that the relaxed constraints are again satisfied. We used the following procedure: 1. Initialize: • rank objects in decreasing order of priority, • initialize server capacities: C residual ¼ C i ; 8i, i • start with first object: set k = 1. 2. For each object k, find the request redirection variables rkij , that results in minimum total delivery cost for that object. Request redirections are searched from the set used by the relaxed solu-

rij ðd ij T k Þ 6 0; rij 6 kjk xik ;

8i; j;

8i; j

¼0 rij ¼ 0; if rrelaxed ij rkij 2 ½0; kjk . Note that subscript k has been dropped for clarity. A variable rij is set to zero (i.e., delivery from i to j is not considered) if the corresponding variable is zero in the relaxed solution. With x, y, u already defined, this problem can be transformed into a max flow min cost problem that can be solved efficiently [10]. 3. Update residual server capacity if the above problem is feasible (i.e., object k is replicated) C residual ¼ C residual i i

M X

rij ck .

j¼1

4. Proceed to the next object: • k = k + 1, • go back to Step 2. For ranking objects in Step 1, we experimented with different priorities, including: 1. Object revenue: priority(k) = qk. 2. Estimated profit (per request): priority(k) = qk dcostk, where dcostk is the estimated delivery cost for this object, dcostk ¼ b  bk þ d  ck , b and d are mean unit costs for bandwidth and processing, respectively.

110

T. Vinh Nguyen et al. / Computer Networks 49 (2005) 103–118

P 3. Total potential revenue: priorityðkÞ ¼ j kjk  qk . P 4. Total potential profit: priorityðkÞ ¼ j kjk ðqk dcostk Þ. qk 5. Revenue/delivery cost ratio: priorityðkÞ ¼ dcost . k 6. Profit/computation cost ratio: priorityðkÞ ¼ qk dcostk this ratio was experimented with d because our model can be seen to have the embedded structure of a knapsack problem, where the gain is profit and the weight is processing resource, which is limited by server capacity. The solution produced by this procedure will then be a feasible solution to problem Peq. Obviously, the corresponding objective function value Obj(Peq) cannot be better than the optimal objective: ObjðP eq Þ P ObjOPT ðP eq Þ.

ð13Þ

4.3. Subgradient heuristic From properties (11) and (13), it can be seen that for any value of the Lagrangian multipliers, by solving the relaxed problem we obtain a lower bound to the optimal value of Peq. Using this result to reconstruct a feasible solution, we obtain an upper bound on that optimal value. The difference between the upper and lower bounds then gives an indication on how far from optimal our feasible solution is. Therefore, instead of solving the full problem Peq, we solve a series of relaxed problems for different multiplier values iteratively. In each iteration, we obtain a lower bound and a feasible solution. The multipliers are adjusted to search for better and better solutions, i.e., reduce gap between the bounds. This is done using the wellknown subgradient optimization technique [9]. Detailed description of this procedure is included in Appendix B. Due to the equivalence of problems P and Peq, the best feasible solution found is a heuristic solution to original problem P and the magnitude of the best lower bound gives an upper bound on PÕs objective.

4.4. Numerical results The algorithm has been implemented and tested on a number of different network topologies generated by the GT-ITM topology generator [11]. In each topology, a number of nodes are randomly selected to be potential server nodes, and the others are assumed to be customer nodes. Other parameters, including server capacities, content requests and resource costs are randomly generated. For each topology, we experimented with different cost combinations in which resource costs are varied across a wide range. Note that although we used an equivalent model to get results, they will now be presented in terms of the original profitmaximization problem, P. Table 1 shows the results obtained from a number of problems with different sizes. Some small problems were used so that we could obtain an exact (optimal) solution with the mixed integer programming solver provided by optimization package Cplex [12], which enabled a comparison between heuristic and optimal solutions. In this table, each row show the result from a different problem. The first three columns show problem size parameters, namely N, M and K. Heuristic results are given in terms of the objective function (i.e., service profit) Obj(P) and upper bound UB. The gap between these values, which is calculated by gap ¼ UB LB indicates the worst UB case distance from heuristic and optimal results. Fractional costs, as contributed by each type of resources––denoted cc, ca, cb and cd for start up, storage and processing and bandwidth costs, respectively––are also displayed. Exact solutions, if obtainable, are placed in the Optimal column. Column gap* then shows the actual gap between this optimal result and the heuristic result. Generally, our results show a gap of at most 20% between the heuristic solution and the upper bound. This performance is seen to be similar with different component cost percentages. At small problem sizes, where we were able to compare with the optimal solution, the heuristic result is actually very close (under 5%) to the optimal solution, as shown in the gap* column, even when gap is larger. This suggests that although the heuristic does not always provide a good bound on solution quality,

T. Vinh Nguyen et al. / Computer Networks 49 (2005) 103–118

111

Table 1 Numerical results Problem size

Heuristic result

K

Cplex result

N

M

O(P)

UB

cc (%)

ca (%)

cd (%)

cb (%)

gap (%)

Time

Optimal

gap* (%)

10

10

10

19,423 46,497 36,411

21,824 48,944 38,735

14 70 26

2 10 20

6 7 26

78 13 28

11 5 6

1s 2s 2s

19,539 48,798 37,185

0.6 4.7 2

2s 14 s 73 s

10

10

20

4199 8219 14,393

4564 10,274 16,203

88 24 2

5 21 15

2 44 23

5 11 60

8 20 11.2

3s 2s 5s

4343 8406 –

3.3 2.2 –

419 s 800 s –

Time

54

54

100

56,464 45,519 58,877

57,371 55,127 59,526

8 80 10

5 3 50

41 3 10

46 14 30

1.6 17.4 1

8 min 7 min 7 min

– – –

– – –

– – –

60

80

1000

11,709 20,759 19,252

14,279 23,065 22,919

22 20 6

74 40 14

2 20 14

2 20 66

18 10 16

2.0 h 5h 1.0 h

– – –

– – –

– – –

The top curves are upper bounds, and the bottom ones are objective functions. Note that these have been normalized by the corresponding final objective function, so that they can be plotted on the same graph. Bounds from the same problem are plotted with the same graph style. It can be seen from this figure that the most significant solution improvements are made during the first few hundred iterations. The heuristic often

it does give a good indication of where requests should be directed, which, in turn, translates into a good feasible solution with our solution recovery procedure. Close examination of the optimization process showed that the heuristic is quick in approaching its final solution. Fig. 1 plots the upper bounds and objective functions (i.e., lower bounds) of some sample problems for the first 1000 iterations. 3

Problem 1 Problem 2 Problem 3

2.5

2

Upper bounds

1.5

1

0.5

Lower bounds

0 0

100

200

300

400

500

600

700

800

Fig. 1. Solution bounds for the first 1000 iterations.

900

1000

112

T. Vinh Nguyen et al. / Computer Networks 49 (2005) 103–118

Objective function

15000

Object ranking based on: potential net revenue potential net profit revenue profit revenue/cost ratio profit/comp cost ratio random

10000

5000

0

1

2

3

4

5

6

7

Problem ID

Fig. 2. Comparing different object ranking methods for problems with progressively decreasing server capacities.

approaches quickly its final solution, and spend the rest of the time making small improvements or simply improving the upper bound. This type of behaviour has been observed with all experiments. Therefore we usually run the heuristic for a maximum of only 4000 iterations. Results also suggest that how objects are prioritized during solution recovery is not very important. When server resources are abundant, object ranking is clearly not significant. However, with small server capacities, we expected that proper object prioritization would become more critical. We therefore compared the different object ranking methods as mentioned in Section 4.2 in a series of problems generated on the same topology, but with increasingly lower server capacities. Fig. 2 shows the objective function values obtained when optimizing these problems with different object ranking methods. As seen in the figure, however, the different methods give very similar results. Therefore in this section we only presented results obtained with the ‘‘total revenue’’ ranking method, which was observed to perform reasonably well in all experiments. This observation also suggests that the relaxed model has been effective in selecting which objects to replicate.

5. Improve provisioning scalability with content clustering Since in a real-life service network, the number of objects (K) is expected to be very large and the complexity of the ODN provisioning problem is at least proportional to K even with the heuristic, we

aim to improve its scalability using content clustering. By grouping objects into clusters, we hope to dramatically reduce the number of objects that have to be considered by the optimization. Clustering content for CDN object placement has been explored in [13], as will be reviewed in detailed in Section 6. However, the inclusion of object revenue and resource requirement factors in the ODN model has made clustering significantly more challenging. With object clustering, our provisioning process now involves three steps: 1. Clustering: Objects are grouped into clusters. Objects in each cluster will be considered and replicated together. 2. Optimization: Resource provisioning is carried out for the object clusters. Each cluster is considered as a single object. This will produce a solution (i.e., set of variables x, y, u and r) in terms of the cluster population. 3. Declustering the result: In order to obtain a final solution in terms of the original objects, we have to translate the result by breaking down the clusters. We do this by using cluster replication locations for all of its member objects and break down cluster request redirection into member object redirection. Thus it is crucial for the clustering to be done in a way such that a solution in terms of clusters can always be translated into a feasible solution of original objects.

5.1. Analysis We compute the attributes of a cluster based on those of member objects, as follows. Consider {kjk 2 KD} to be objects assigned to cluster D, then: • Request rate for the cluster is sum of requests for member objects: X kjk . kjD ¼ k2K D

• Revenue level of the cluster is the averaged revenue:

T. Vinh Nguyen et al. / Computer Networks 49 (2005) 103–118

P P j

kjk qk

k2K D

qD ¼ P P j

kjk

.

k2K c

• Storage requirement is the total requirements of member objects, since they are replicated together X sD ¼ sk . k2K D

• Delivery computation and bandwidth requirements are the maximum requirements by member objects cD ¼ maxk2K D fck g; bD ¼ maxk2K D fbk g. The max criteria must be used here to ensure that a solution based on clusters can always be converted into a feasible solution for individual objects. For example, the optimization process may indicate that a total amount k of request for cluster D should be handled by a certain server. This total may include any combination of requests for objects, with different resource requirements, in D. With this scheme in mind, we believe the following factors need to be considered in grouping objects: • Spatial distribution of demand: since objects in a cluster are replicated together, clustering objects with different spatial distributions of demand would result in unnecessary replication, which leads to wasted resources. • Revenue: in order to maximize the profit, the service provider needs to give higher priority to high revenue objects, thus objects should have close revenue levels to be clustered together. • Delivery resource requirements: if possible, objects with high processing requirements, e.g., a highly interactive object, should be replicated in servers with low processing cost, while one with high bandwidth requirement, e.g., a streaming video, should be replicated in servers with low bandwidth costs. Thus objects should have similar delivery requirements to be clustered together.

113

• Latency requirement: objects with different latency requirements (Tk) cannot be grouped in a cluster unless a restrictive value is used for the cluster latency requirement, e.g., TD = mink 2 K D ½T k . However, we assume that such objects belong to different service classes and should be dealt with separately.

5.2. Clustering techniques and results We begin with a simple scenario, where objects have similar delivery resource requirements but different revenues and demand distributions. To cluster objects that have close demand distribution, each object k is represented by an M-dimensional vector [k1k, k2k, . . . , kMk] of spatial demands, which maps to a unique point in an M-dimension space. The distance between two objects is defined as the Euclidean distance between the points defined by their demand distribution vectors in this M-dimension space. The classic K-mean algorithm [14] is then applied over this space to cluster objects. This algorithm tries to minimize the total distances from objects to their cluster centres, for a given number of clusters. Other clustering metrics are also evaluated, including weighting the demand vector by the object revenue (i.e., qk · [k1k, k2k, . . . , kMk]) and by object estimated profit (i.e., (qk dcostk) · [k1k, k2k, . . . , kMk]). To test the performance of this clustering scheme, problems are generated over a 120-node topology with a mixture of 2000 objects with different demand patterns, namely global, regional and local objects, which are accessed by all, 30– 50% and 10% of customer nodes, respectively. Experimental results show that clustering with demand vector weighted by either revenue or profit is very effective. Fig. 3a plots the objective function values (i.e., service profit), obtained with clustering against the number of clusters as a percentage of total number of objects. The objective values are normalized by the value obtained by performing a full optimization without clustering. This graph shows that clustering using weighted demand vectors gives similar results, which are far better than using the non-weighted vector.

114

T. Vinh Nguyen et al. / Computer Networks 49 (2005) 103–118

1

Normalized objective function

Normalized objective function

1

0.8

0.6

0.4 Clustering based on:

0.2

(a)

0

request request x revenue request x profit

Clustering ratio (%)

0

1

2

3

4

5

6

7

8

9

0.8

0.6

0.4 Clustering based on:

0.2

request request x revenue request x profit

Clustering ratio (%)

10

(b)

0

0

1

2

3

4

5

6

7

8

9

10

Fig. 3. Clustering based on demand spatial distribution—(a) base problem (b) same problem with increased revenue variation and lower server capacities.

With these clustering metrics, we can obtain 95% solution quality at a number of clusters as small as 5% of the number of objects, which means at least a 20 times reduction in problem complexity. Weighting demands with revenue or profit incorporates object priority into clustering metrics, which is especially important when there are large revenue variations and/or low server capacities. This is illustrated in Fig. 3b, which shows the results the of same problem but with larger revenue variations and smaller server capacities. As expected, clustering with the weighted demand vectors maintains similar performance while the unweighted metric gives much poorer results. Further experiments showed that while the above clustering approach gives good results when objects have similar delivery resource requirements, its performance worsens as larger variations are introduced. In view of this problem, we devised a two-layer hierarchical clustering approach. In the first layer, objects are clustered based on delivery resource requirements. Each object k is represented by a resource requirement vector ½bbk ; dck , which is weighted by mean unit costs b and d to reflect the relative importance of each resource. Objects are then clustered by applying the K-mean algorithm in this 2-dimensional space. In the second layer, objects are further clustered using weighted demand vectors without mixing objects from different first-layer clusters. This is done by placing all objects back into the M-dimensional space and repeatedly splitting the largest clusters into two, until a desired number of clusters is reached.

The performance of this hierarchical approach is tested by generating objects with bandwidth and processing requirements randomly selected in the range [1, 10]. Fig. 4a plots the normalized objective function against the final number of clusters for this problem. Different curves corresponds to results obtained with different numbers of firstlayer clusters. Fig. 4b shows results for a similar problem, with resource requirements randomly selected from [1, 14.1], effectively doubling their variance. The results show that hierarchical clustering gives significant improvements compared to non-hierarchical clustering, even when objects are just roughly classified (with number of classes < 1 if P l k P 0; jk jk ðA:1Þ uk ¼ j¼1 > : 0 otherwise. Subproblem Ps2, on the other hand, can be further decomposed into N subproblems, each corresponds to one separate site i 2 1, 2, . . . , N. With subscript i dropped, the subproblem for site i is: ðPs2 i Þ

Min

M X K X j¼1

rkj Akj þ

k¼1

K X

xk Bk þ yD

ðA:2Þ

k¼1

subject to: rkj ðd j T k Þ 6 0; rkj 6 kjk xk ; xk 6 y;

8j; k

8j; k

8k

xk ; y 2 f0; 1g;

rkj 2 ½0; kjk .

For each subproblem Ps2 i, we need to consider only two possibilities: 1. if y = 0 (server i closed) then xk = 0, "k, rkj ¼ 0; 8j; k and Obj(Ps2 i) = 0, due to variable dependencies. 2. if y = 1 (server i opened) then the objective function becomes: " !# K M X X k k Min r j A j þ x k Bk þD k¼1

j¼1

T. Vinh Nguyen et al. / Computer Networks 49 (2005) 103–118

and Ps2 i can be solved through a series of K subproblems correspond to each object k 2 1, 2, . . . , K. Subproblem corresponding to site i, object k, with these subscripts dropped, is: ðPs2 i;k Þ Min

M X

rj Aj þ xB

ðA:3Þ

j¼1

117

3. Update bounds: LB = max{LB, Obj(PLR)t} UB = min{UB, Obj(Peq)t}. 4. Update Lagrangian multiplier: ( ðtþ1Þ wi

¼ max

ðtÞ wi þ ht

M X K X

! ) ck rkij

yiCi ; 0 ;

j¼1 k¼1

subject to: rj ðd j T Þ 6 0; 8j rj 6 kj x; 8j x 2 f0; 1g; rj 2 ½0; kj .

ðtþ1Þ

ljk

ðtÞ

¼ ljk þ ht

N X

!

ðB:1Þ

rkij uk kjk ;

ðB:2Þ

i¼1 t

where step size h is calculated by: t

/½UB ObjðP LR Þ

2 P P P 2 M K N k k c r y C þ j¼1 k¼1 i i k¼1 k ij i¼1 rij uk kjk

ht ¼ P P P N M K i¼1

j¼1

Each problem Ps2 i,k can be solved using the following simple procedure: 1. Assuming x = 1, we have: ( rj ¼

kj

if d j 6 T and Aj 6 0;

0

otherwise.

ðB:3Þ

and / is a number between 0 and 2t = t + 1. 5. Go back to step 2. References

ðA:4Þ

2. Using these variable values, calculate the objective function of Ps2 i,k, if Obj(Ps2 i,k) 6 0 then we have found the optimal solution, otherwise the optimal solution is x = 0, rj = 0, "j and Obj(Ps2 i,k) = 0.

Appendix B. Subgradient optimization Subgradient procedure for updating Lagrangian multipliers: 1. Initialize: Set LB ¼ 0; UB ¼ 1; t ¼ 1; lktij ¼ 0: 2. At iteration t: Solve subproblems: Ps1(lt, wt) and Ps2(lt, wt) Obj(PLR)t = Obj(Ps1(lt, wt)) Obj(Ps2(lt, wt)). Generate feasible solution based on solutions of Ps1 and Ps2, as described in Section 4.2; resulted in objective function Obj(Peq)t.

[1] C.P. Sandbank, Digital TV in the convergence environment, IEEE Computer Graphics and Applications (January/February) (2001) 32–36. [2] S.S.Y. Shim, Y.-J. Lee, Interactive TV: Vod meets the internet, IEEE Computer 35 (7) (2002) 108–109. [3] K. Cleary, Video on demand-competing technologies and services, International Broadcasting Convention IBC95 (September) (1995) 432–437. [4] iTunes. AppleÕs online music store, Available from: . [5] Napster. Napster online music store, Available from: . [6] J. Kangasharju, J. Roberts, K. Ross, Object replication strategies in content distribution networks, in: Proceedings of the WCWÕOl: Web Caching and Content Distribution Workshop, Boston, MA, June 2001. [7] L. Qiu, V. Padmanabham, G. Voelker, On the placement of web server replicas, in: Proceedings of the 20th IEEE INFOCOM, 2001. [8] S. Martello, P. Toth, Knapsack Problems: Algorithms and Computer Implementations, John Wiley and Sons, Ltd., New York, 1990. [9] F. Glover, M. Laguna, Modern Heuristic Techniques or Combinatorial Problems, Chapter Lagrange Relaxation, Blackwell, Oxford, UK, 1993. [10] R.K. Ahuja, T.L. Magnanti, J.B. Orlin, Network Flows–– Theory, Algorithms, and Applications, Prentice-Hall, Inc., Upper Saddle River, NJ, 1993.

118

T. Vinh Nguyen et al. / Computer Networks 49 (2005) 103–118

[11] K. Calvert, M. Doar, E.W. Zegura, Modeling internet topology, IEEE Communications Magazine (June) (1997). [12] ILOG Cplex Optimization Suite, Available from: . [13] Yan Chen, Lili Qiu, Weiyu Chen, Luan Nguyen, Randy H. Katz, Efficient and adaptive web replication using content clustering, IEEE Journal on Selected Areas in Communications 21 (Y) (2003). [14] B.G. Mirkin, Mathematical Classification and Clustering, Kluwer Academic Publishers, Dordrecht, Boston, 1996. [15] S.-H. Gary Chan, F. Tobagi, Distributed servers architecture for networked video services, IEEE/ACM Transactions on Networking 9 (2) (2001) 125–136. [16] K.A. Sheu, S. Tran, D.A. Hua, A new caching architecture for efficient virleo-on-demand services on the internet, in: Symposium on Applications and the Internet, IEEE, January 2003, pp. 172–181. [17] G. Prem Premkumar, Alternate distribution strategies for digital music, Communications of the ACM 46 (9) (2003) 89–95. [18] K.C. Almeroth, M.H. Ammar, The interactive multimedia jukebox (imj): A new paradigm for the on-demand delivery of audio/video, Computer Networks and ISDN Systems 30 (1–7) (1998) 431–441. [19] IBM. Ibm grid computing, Available from: . [20] Butterfly.net. Grid solution for online games, Available from: . [21] S. Jamiri, C. Jin, A.R. Kurc, D. Raz, Y. Shavitt, Constrained mirror placement on the internet, in: Proceedings of INFOCOM, 2001, pp. 31–40. [22] A. Venkataramani, M. Dahlin, P. Weidmann, Bandwidth constrained placement in a wan, ACM Principles of Distributed Computing (August) (2001). [23] B. Li, M.J. Golin, G.F. Italiano, X. Deng, K. Sohraby, On the optimal placement of web proxies in the internet, in: Proceedings of INFOCOM, 1999. [24] M. Karlsson, M. Mahalingam, Do we need replica placement algorithms in content delivery networks, in: WCWÕ01. IEEE International Web Content Caching and Distribution Workshop, August 2002.

Thanh Vinh Nguyen graduated from the University of Wollongong, Australia in 2000 with the degree of Bachelor of Telecommunications Engineering (Hons 1). He has since been working towards a PhD at the University of Wollongong under the sponsorship of the Cooperative Research Centre for Smart Internet Technology. His research is in the area of Content Distribution Networks, programmable networking, overlay networking, and resource optimization.

Farzad Safaei graduated from the University of Western Australia with the degree of Bachelor of Engineering and obtained his PhD in Telecommunications Engineering from Monash University, Melbourne, Australia. He has more than 14 years of experience in conducting and managing advanced research in the field of data communications and networks. Currently, he is the Chair of Telecommunications Engineering in the School of Electrical, Computer and Telecommunications Engineering, University of Wollongong.

Paul Boustead received a BE degree (Hons 1) in Computer Engineering from the University of Wollongong, Australia in 1995. From 1989 to 1995 he was employed as a Computer Engineering degree cadet at BHP Steel, Port Kembla. Upon completion of the cadetship he was employed as a Computer Engineer till 1996. From 1996 to 2000 he completed on a PhD in Telecommunications sponsored by Telstra Research Laboratories and examined packet over cell protocols in a carrier scale environment. Since finishing his PhD he has been working as the Lab Manager and Senior Research Fellow at the Telecommunications and Information Technology Research Institute, University of Wollongong.

Chun Tung Chou is a Senior Lecturer at the School of Computer Science and Engineering, University of New South Wales, Sydney, Australia. He received his BA in Engineering Science from University of Oxford, UK and his PhD in Control Engineering from University of Cambridge, UK. He has published over 60 articles in Computer Networking and Control Engineering. His current research interests are Sensor Networks, Wireless Networks, Content Distribution Networks and Traffic Engineering. www: http://www.cse. unsw.edu.au/ctchou/

Suggest Documents