26
Optimizing server placement in distributed systems in the presence of competition Jan-Jan Wu( 吳吳吳 ), Shu-Fan Shih ( 吳吳吳 ), Pangfeng Liu ( 吳吳吳 ), Yi-Min Chung ( 吳吳吳 ) in Elsevier Journal of Parallel and Distributed Computing, 2011 吳吳 吳吳吳吳吳吳 2011 吳吳吳吳吳吳

Optimizing server placement in distributed systems in the presence of competition

  • Upload
    pello

  • View
    30

  • Download
    0

Embed Size (px)

DESCRIPTION

Optimizing server placement in distributed systems in the presence of competition. Jan-Jan Wu( 吳真貞 ), Shu -Fan Shih ( 施書帆 ), Pangfeng Liu ( 劉邦鋒 ), Yi-Min Chung ( 鐘逸民 ). in Elsevier Journal of Parallel and Distributed Computing, 2011 台灣 雲端計算學會 2011 年最佳論文獎. Outline. Introduction - PowerPoint PPT Presentation

Citation preview

Page 1: Optimizing server placement  in distributed systems in the  presence of  competition

Optimizing server placement in distributed systems in the presence of competition

Jan-Jan Wu(吳真貞 ), Shu-Fan Shih (施書帆 ), Pangfeng Liu (劉邦鋒 ), Yi-Min Chung (鐘逸民 )

in Elsevier Journal of Parallel and Distributed Computing, 2011

台灣雲端計算學會2011年最佳論文獎

Page 2: Optimizing server placement  in distributed systems in the  presence of  competition

Outline

• Introduction• Extra-server problem without server capacity constraint

Tree topology : dynamic programmingGeneral graph: NP-Complete

• Extra-server problem with server capacity constraintNP-Complete

• Conclusion

Three greedy heuristicsGreedy Add, Greedy Remove, and Greedy Add-Remove

2

Page 3: Optimizing server placement  in distributed systems in the  presence of  competition

3

Introduction• This paper considers the following two placement

problems– Given the network layout and a number k, where should we

locate k extra servers such that they will earn the most profit?– Given the network layout, where should we locate extra servers

such that they will earn the most profit, without any constraint on the number of extra servers?

Page 4: Optimizing server placement  in distributed systems in the  presence of  competition

4

Introduction (cont’d)• We define the benefit of an extra server placement to be the

profit derived from user requests made to the server, minus the cost of setting up the server.– The cost may vary, depending on the location of the extra server.

• For example– We assume that there is a number of McDonald’s restaurants in a

city, but no Kentucky Fried Chicken (KFC) outlets. – Now, if we decide to set up a number of KFC restaurants in the

same city, where should we place them?– We need to determine the locations for the KFC outlets so that

they can compete with McDonald’s and maximize their profits.

Page 5: Optimizing server placement  in distributed systems in the  presence of  competition

5

Motivation• Cloud computing service providers are building data centers

globally and the locations of these servers are important. – For example, users of Amazon’s Elastic Compute Cloud (EC2) can

choose servers either in Europe or in the United States.

• This indicates that users of cloud computing do care about distance to servers, which directly relates to service quality.

• When building new data centers, the service provider must build them in strategic locations so that users, while choosing closer servers for better network performance, will choose the new data centers instead of existing ones.

Page 6: Optimizing server placement  in distributed systems in the  presence of  competition

6

Notations and Definitions• V: the set of nodes, E: the set of edges• Each edge (u,v) has a distance denoted by d(u,v)• d(v,S)=minuSd(v,u), where SV.• Every node v must go to the nearest u for service.• Original servers O V, we would linke to add a number of

extra servers, X V where XO= to G such that we can maximize their net profit.

Page 7: Optimizing server placement  in distributed systems in the  presence of  competition

7

Notations and Definitions (cont’d)• By serving a client v, a server node u makes a profit of b(v, u).• Benefit function of adding the servers X

• Problem definition– k-extra-server: Given a k, find the optimal placement of k extra servers X

(V −O) such that the following benefit function will be maximized.⊆

– Extra-server: Find the optimal placement of extra servers X (V−O) such ⊆that the following benefit function will be maximized

VX: Users go to new servers

NS(v): The nearest server of v

Page 8: Optimizing server placement  in distributed systems in the  presence of  competition

8

Extra-server problem without server capacity constraint

• General graph : NP-Complete• Tree topology

Tv(i): the subtree consisting of v and the first i

subtrees of v.

u

Page 9: Optimizing server placement  in distributed systems in the  presence of  competition

9

Extra-server problem without server capacity constraint (cont’d)

Page 10: Optimizing server placement  in distributed systems in the  presence of  competition

10

Extra-server problem without server capacity constraint (cont’d)

Page 11: Optimizing server placement  in distributed systems in the  presence of  competition

11

Extra-server problem without server capacity constraint (cont’d)•

• The execution time of the dynamic programming under different tree network sizes when the numbers of extra servers and original servers are both set to 0.3|V|.

Page 12: Optimizing server placement  in distributed systems in the  presence of  competition

12

Extra-server problem without server capacity constraint (cont’d)• Extra-server solution

Page 13: Optimizing server placement  in distributed systems in the  presence of  competition

13

Extra-server problem without server capacity constraint

• General graph: NP-Complete• Three greedy heuristics– Greedy Add

• In each iteration, it allocates an extra server that maximizes its benefit, while considering all original servers and previously added extra server as competitors.

– Greedy Remove• start with placing an extra server on every node that is not an

original server. In each iteration, it removes the extra server which has the highest cost.

Page 14: Optimizing server placement  in distributed systems in the  presence of  competition

14

Extra-server problem without server capacity constraint (cont’d)

• Three greedy heuristics (cont’d)– Greedy Add-Remove

• The heuristic Greedy Add-Remove works in two phases: Greedy Add and then Greedy Remove.

• The first phase, Greedy Add adds an extra server without concerning about a limitation of the number of extra servers k until no more benefit can be earned.

• The second phase, Greedy Remove takes the extra server set determined by the first phase as input and repeatedly remove extra servers until the number of extra servers equals to k.

Page 15: Optimizing server placement  in distributed systems in the  presence of  competition

15

Extra-server problem without server capacity constraint (cont’d)• Experiment results– Setting• use the GT-ITM generator to generate random graphs• each of the graphs is connected, and nodes are added

randomly in a 100 × 100 square• The probability of an edge between u and v is given by

Page 16: Optimizing server placement  in distributed systems in the  presence of  competition

16

Experiment results

• Effect of

Page 17: Optimizing server placement  in distributed systems in the  presence of  competition

17

Experiment results (cont’d)

• Effect of network size

Page 18: Optimizing server placement  in distributed systems in the  presence of  competition

18

Experiment results (cont’d)

• Effect of k

Page 19: Optimizing server placement  in distributed systems in the  presence of  competition

19

Experiment results (cont’d)

• Effect of the number of original servers

Page 20: Optimizing server placement  in distributed systems in the  presence of  competition

20

Experiment results (cont’d)

• Effect of building cost

Page 21: Optimizing server placement  in distributed systems in the  presence of  competition

21

Extra-server problem with server capacity constraint

• Tree topology and General graph : NP-Complete• Apply the proposed three heuristic algorithm– Greedy Add– Greedy Remove– Greedy Add-Remove

Page 22: Optimizing server placement  in distributed systems in the  presence of  competition

22

Experiment results

• Effect of

Page 23: Optimizing server placement  in distributed systems in the  presence of  competition

23

Experiment results (cont’d)

• Effect of the network size

Page 24: Optimizing server placement  in distributed systems in the  presence of  competition

24

Experiment results (cont’d)

• Effect of server capacity

Page 25: Optimizing server placement  in distributed systems in the  presence of  competition

25

Conclusion

• This paper formulated two optimization problems related to the placement of extra servers– the k-extra-server problem – the extra-server problem.

• For tree networks, the author proposed dynamic programming algorithms to solve the problem.

• For general graphs, this paper proved that the problems are NP-complete – Three greedy heuristic algorithms, Greedy Add, Greedy

Remove and Greedy Add-Remove.

Page 26: Optimizing server placement  in distributed systems in the  presence of  competition

26

My comments• A complete problem definition and analysis. • Is the behavior of “competition” realistic ?

– Why do not consider the benefit of original server ?• Although three heuristic algorithms are proposed, but the

authors did not explain or discuss why the Greedy Remove performs worse than others.

• We can modify some configuration of this paper to fit more realistic problem.– e.g., consider the network transmission delay, server performance…

• Consider the technique of virtualization, the problem of serer placement must also consider the resource allocation. It will be a more complex problem.