+ All Categories
Home > Documents > How Hard Can It Be?stefan/icnp_fuerst.pdf · •Set cost[n] to the bandwidth costs of placing n VMs...

How Hard Can It Be?stefan/icnp_fuerst.pdf · •Set cost[n] to the bandwidth costs of placing n VMs...

Date post: 22-Jul-2020
Category:
Upload: others
View: 0 times
Download: 0 times
Share this document with a friend
73
How Hard Can It Be? Understanding the Complexity of Replica Aware Virtual Cluster Embeddings Carlo Fuerst (TU Berlin, Germany), Maciek Pacut (University of Wroclaw, Poland) Paolo Costa (Microsoft Research, UK), Stefan Schmid (TU Berlin & T-Labs, Germany)
Transcript
Page 1: How Hard Can It Be?stefan/icnp_fuerst.pdf · •Set cost[n] to the bandwidth costs of placing n VMs at the server •For each switch and each amount of VMs in {0,…,N} •Set cost[n]

How Hard Can It Be?Understanding the Complexity of

Replica Aware Virtual Cluster Embeddings

Carlo Fuerst (TU Berlin, Germany), Maciek Pacut (University of Wroclaw, Poland)

Paolo Costa (Microsoft Research, UK), Stefan Schmid (TU Berlin & T-Labs, Germany)

Page 2: How Hard Can It Be?stefan/icnp_fuerst.pdf · •Set cost[n] to the bandwidth costs of placing n VMs at the server •For each switch and each amount of VMs in {0,…,N} •Set cost[n]

Today‘s Cloud Computing

8

Page 3: How Hard Can It Be?stefan/icnp_fuerst.pdf · •Set cost[n] to the bandwidth costs of placing n VMs at the server •For each switch and each amount of VMs in {0,…,N} •Set cost[n]

Today‘s Cloud Computing

Source: Ballani et al. [1] in Sigcomm‘11

8

Page 4: How Hard Can It Be?stefan/icnp_fuerst.pdf · •Set cost[n] to the bandwidth costs of placing n VMs at the server •For each switch and each amount of VMs in {0,…,N} •Set cost[n]

Today‘s Cloud Computing

Source: Ballani et al. [1] in Sigcomm‘11

“Hadoop traces from Facebook show that, on average, transferring data between successive stages accounts for 33% of the running times of jobs with reduce phases”

Source: Chowdhury et al. [2] in Sigcomm’11

8

Page 5: How Hard Can It Be?stefan/icnp_fuerst.pdf · •Set cost[n] to the bandwidth costs of placing n VMs at the server •For each switch and each amount of VMs in {0,…,N} •Set cost[n]

Today‘s Cloud Computing

Source: Ballani et al. [1] in Sigcomm‘11

Costs for the tenats become unpredictable

“Hadoop traces from Facebook show that, on average, transferring data between successive stages accounts for 33% of the running times of jobs with reduce phases”

Source: Chowdhury et al. [2] in Sigcomm’11

8

Page 6: How Hard Can It Be?stefan/icnp_fuerst.pdf · •Set cost[n] to the bandwidth costs of placing n VMs at the server •For each switch and each amount of VMs in {0,…,N} •Set cost[n]

Proposed Solutions: Virtual Clusters

v2v1

9

Page 7: How Hard Can It Be?stefan/icnp_fuerst.pdf · •Set cost[n] to the bandwidth costs of placing n VMs at the server •For each switch and each amount of VMs in {0,…,N} •Set cost[n]

Proposed Solutions: Virtual Clusters

v2v1 ?

9

Page 8: How Hard Can It Be?stefan/icnp_fuerst.pdf · •Set cost[n] to the bandwidth costs of placing n VMs at the server •For each switch and each amount of VMs in {0,…,N} •Set cost[n]

Proposed Solutions: Virtual Clusters

Remove the uncertainty by specifiying the bandwidth connecting the VMs

v2v1

9

Page 9: How Hard Can It Be?stefan/icnp_fuerst.pdf · •Set cost[n] to the bandwidth costs of placing n VMs at the server •For each switch and each amount of VMs in {0,…,N} •Set cost[n]

Proposed Solutions: Virtual Clusters

• Introduced by Ballani et al. [1]

• Provides absolute guarantees on VMs and network perfomance

• Specified by two parameters:• N the number of VMs

• B the available bandwidth between VMs.

10

Page 10: How Hard Can It Be?stefan/icnp_fuerst.pdf · •Set cost[n] to the bandwidth costs of placing n VMs at the server •For each switch and each amount of VMs in {0,…,N} •Set cost[n]

Embedding

v2v1

13

Page 11: How Hard Can It Be?stefan/icnp_fuerst.pdf · •Set cost[n] to the bandwidth costs of placing n VMs at the server •For each switch and each amount of VMs in {0,…,N} •Set cost[n]

Embedding

v2v1

13

Page 12: How Hard Can It Be?stefan/icnp_fuerst.pdf · •Set cost[n] to the bandwidth costs of placing n VMs at the server •For each switch and each amount of VMs in {0,…,N} •Set cost[n]

Embedding

v2v1

13

Page 13: How Hard Can It Be?stefan/icnp_fuerst.pdf · •Set cost[n] to the bandwidth costs of placing n VMs at the server •For each switch and each amount of VMs in {0,…,N} •Set cost[n]

v2v1

Embedding

14

Page 14: How Hard Can It Be?stefan/icnp_fuerst.pdf · •Set cost[n] to the bandwidth costs of placing n VMs at the server •For each switch and each amount of VMs in {0,…,N} •Set cost[n]

v2v1

Embedding

14

Page 15: How Hard Can It Be?stefan/icnp_fuerst.pdf · •Set cost[n] to the bandwidth costs of placing n VMs at the server •For each switch and each amount of VMs in {0,…,N} •Set cost[n]

v2v1

Embedding

14

Page 16: How Hard Can It Be?stefan/icnp_fuerst.pdf · •Set cost[n] to the bandwidth costs of placing n VMs at the server •For each switch and each amount of VMs in {0,…,N} •Set cost[n]

Embedding

15

v2v1

Page 17: How Hard Can It Be?stefan/icnp_fuerst.pdf · •Set cost[n] to the bandwidth costs of placing n VMs at the server •For each switch and each amount of VMs in {0,…,N} •Set cost[n]

Virtual Cluster Embedding Problem

• Subproblem of the NP-hard virtual network embeddding problem

• Good heuristics available• Ballani et al. [1] in Sigcomm’11

• Xie et al. [3] in Sigcomm’12

16

Page 18: How Hard Can It Be?stefan/icnp_fuerst.pdf · •Set cost[n] to the bandwidth costs of placing n VMs at the server •For each switch and each amount of VMs in {0,…,N} •Set cost[n]

Virtual Cluster Embedding Problem

• Subproblem of the NP-hard virtual network embeddding problem

• Good heuristics available• Ballani et al. [1] in Sigcomm’11

• Xie et al. [3] in Sigcomm’12

but…

16

Page 19: How Hard Can It Be?stefan/icnp_fuerst.pdf · •Set cost[n] to the bandwidth costs of placing n VMs at the server •For each switch and each amount of VMs in {0,…,N} •Set cost[n]

Virtual Cluster Embedding Problem

• Subproblem of the NP-hard virtual network embeddding problem

• Good heuristics available• Ballani et al. [1] in Sigcomm’11

• Xie et al. [3] in Sigcomm’12

but…

The virtual cluster embedding problem is not NP-hard.[4]

16

Page 20: How Hard Can It Be?stefan/icnp_fuerst.pdf · •Set cost[n] to the bandwidth costs of placing n VMs at the server •For each switch and each amount of VMs in {0,…,N} •Set cost[n]

Can the problem be solved efficiently with additional properties?

Page 21: How Hard Can It Be?stefan/icnp_fuerst.pdf · •Set cost[n] to the bandwidth costs of placing n VMs at the server •For each switch and each amount of VMs in {0,…,N} •Set cost[n]

Cloud Application: Batch processing

Example: MapReduce

1. Input is given by a set of atomic chunks

c3

c2

c4

c1

v2

v1v3

v4

18

Page 22: How Hard Can It Be?stefan/icnp_fuerst.pdf · •Set cost[n] to the bandwidth costs of placing n VMs at the server •For each switch and each amount of VMs in {0,…,N} •Set cost[n]

Cloud Application: Batch processing

Example: MapReduce

1. Input is given by a set of atomic chunks

2. Every chunk is processed by a map task

c3

c2

c4

c1

v2

v1v3

v4

18

Page 23: How Hard Can It Be?stefan/icnp_fuerst.pdf · •Set cost[n] to the bandwidth costs of placing n VMs at the server •For each switch and each amount of VMs in {0,…,N} •Set cost[n]

Cloud Application: Batch processing

Example: MapReduce

1. Input is given by a set of atomic chunks

2. Every chunk is processed by a map task

c3

c2

c4

c1

v2

v1v3

v4

18

Page 24: How Hard Can It Be?stefan/icnp_fuerst.pdf · •Set cost[n] to the bandwidth costs of placing n VMs at the server •For each switch and each amount of VMs in {0,…,N} •Set cost[n]

Cloud Application: Batch processing

Example: MapReduce

1. Input is given by a set of atomic chunks

2. Every chunk is processed by a map task

c3

c2

c4

c1

v2

v1v3

v4

18

Page 25: How Hard Can It Be?stefan/icnp_fuerst.pdf · •Set cost[n] to the bandwidth costs of placing n VMs at the server •For each switch and each amount of VMs in {0,…,N} •Set cost[n]

Cloud Application: Batch processing

Example: MapReduce

1. Input is given by a set of atomic chunks

2. Every chunk is processed by a map task

3. The output of the map task is transfered to reduce tasks (shuffle)

c3

c2

c4

c1

v2

v1v3

v4

18

Page 26: How Hard Can It Be?stefan/icnp_fuerst.pdf · •Set cost[n] to the bandwidth costs of placing n VMs at the server •For each switch and each amount of VMs in {0,…,N} •Set cost[n]

Cloud Application: Batch processing

Example: MapReduce

1. Input is given by a set of atomic chunks

2. Every chunk is processed by a map task

3. The output of the map task is transfered to reduce tasks (shuffle)

c3

c2

c4

c1

v2

v1v3

v4

18

Page 27: How Hard Can It Be?stefan/icnp_fuerst.pdf · •Set cost[n] to the bandwidth costs of placing n VMs at the server •For each switch and each amount of VMs in {0,…,N} •Set cost[n]

Cloud Application: Batch processing

Example: MapReduce

1. Input is given by a set of atomic chunks

2. Every chunk is processed by a map task

3. The output of the map task is transfered to reduce tasks (shuffle)

4. Reduce tasks are executed c3

c2

c4

c1

v2

v1v3

v4

18

Page 28: How Hard Can It Be?stefan/icnp_fuerst.pdf · •Set cost[n] to the bandwidth costs of placing n VMs at the server •For each switch and each amount of VMs in {0,…,N} •Set cost[n]

Cloud Application: Batch processing

Example: MapReduce

1. Input is given by a set of atomic chunks

2. Every chunk is processed by a map task

3. The output of the map task is transfered to reduce tasks (shuffle)

4. Reduce tasks are executed

5. Once all reduce tasks finished there is an aggregated output

c3

c2

c4

c1

v2

v1v3

v4

18

Page 29: How Hard Can It Be?stefan/icnp_fuerst.pdf · •Set cost[n] to the bandwidth costs of placing n VMs at the server •For each switch and each amount of VMs in {0,…,N} •Set cost[n]

Cloud Application: Batch processing

Example: MapReduce

1. Input is given by a set of atomic chunks

2. Every chunk is processed by a map task

3. The output of the map task is transfered to reduce tasks (shuffle)

4. Reduce tasks are executed

5. Once all reduce tasks finished there is an aggregated output

c3

c2

c4

c1

v2

v1v3

v4

18

Page 30: How Hard Can It Be?stefan/icnp_fuerst.pdf · •Set cost[n] to the bandwidth costs of placing n VMs at the server •For each switch and each amount of VMs in {0,…,N} •Set cost[n]

Shortcoming of Virtual Clusters

c3 c2c4 c2c1c1 c3

c4

20

Page 31: How Hard Can It Be?stefan/icnp_fuerst.pdf · •Set cost[n] to the bandwidth costs of placing n VMs at the server •For each switch and each amount of VMs in {0,…,N} •Set cost[n]

Shortcoming of Virtual Clusters

21

c3 c2c4 c2c1c1 c3

c4v2v1

Page 32: How Hard Can It Be?stefan/icnp_fuerst.pdf · •Set cost[n] to the bandwidth costs of placing n VMs at the server •For each switch and each amount of VMs in {0,…,N} •Set cost[n]

c3 c2c4 c2c1c1 c3

c4v2v1

Shortcoming of Virtual Clusters

22

Page 33: How Hard Can It Be?stefan/icnp_fuerst.pdf · •Set cost[n] to the bandwidth costs of placing n VMs at the server •For each switch and each amount of VMs in {0,…,N} •Set cost[n]

c3 c2c4 c2c1c1 c3

c4v2v1

Shortcoming of Virtual Clusters

Virtual Clusters provide a guarantee for the shuffle phase, but not for the transfer of chunks.

22

Page 34: How Hard Can It Be?stefan/icnp_fuerst.pdf · •Set cost[n] to the bandwidth costs of placing n VMs at the server •For each switch and each amount of VMs in {0,…,N} •Set cost[n]

Basic Problem

c2c1

v2v1

23

Page 35: How Hard Can It Be?stefan/icnp_fuerst.pdf · •Set cost[n] to the bandwidth costs of placing n VMs at the server •For each switch and each amount of VMs in {0,…,N} •Set cost[n]

Basic Solution

24

c2c1

v2v1

Page 36: How Hard Can It Be?stefan/icnp_fuerst.pdf · •Set cost[n] to the bandwidth costs of placing n VMs at the server •For each switch and each amount of VMs in {0,…,N} •Set cost[n]

Problem Decomposition

The basic problem can be extended with:

• VM interconnect (NI)

25

Page 37: How Hard Can It Be?stefan/icnp_fuerst.pdf · •Set cost[n] to the bandwidth costs of placing n VMs at the server •For each switch and each amount of VMs in {0,…,N} •Set cost[n]

Problem Decomposition

c2c1

v2v1

26

Page 38: How Hard Can It Be?stefan/icnp_fuerst.pdf · •Set cost[n] to the bandwidth costs of placing n VMs at the server •For each switch and each amount of VMs in {0,…,N} •Set cost[n]

Problem Decomposition

27

c2c1

v2v1

Page 39: How Hard Can It Be?stefan/icnp_fuerst.pdf · •Set cost[n] to the bandwidth costs of placing n VMs at the server •For each switch and each amount of VMs in {0,…,N} •Set cost[n]

Problem Decomposition

The basic problem can be extended with:

• VM interconnect (NI)

• Replica Selection (RS)

28

Page 40: How Hard Can It Be?stefan/icnp_fuerst.pdf · •Set cost[n] to the bandwidth costs of placing n VMs at the server •For each switch and each amount of VMs in {0,…,N} •Set cost[n]

Problem Decomposition

29

c2c1

v2v1

Page 41: How Hard Can It Be?stefan/icnp_fuerst.pdf · •Set cost[n] to the bandwidth costs of placing n VMs at the server •For each switch and each amount of VMs in {0,…,N} •Set cost[n]

Problem Decomposition

30

c2 c2c1c1

v2v1

Page 42: How Hard Can It Be?stefan/icnp_fuerst.pdf · •Set cost[n] to the bandwidth costs of placing n VMs at the server •For each switch and each amount of VMs in {0,…,N} •Set cost[n]

Problem Decomposition

The basic problem can be extended with:

• VM interconnect (NI)

• Replica Selection (RS)

• Multiple Assignment (MA)

31

Page 43: How Hard Can It Be?stefan/icnp_fuerst.pdf · •Set cost[n] to the bandwidth costs of placing n VMs at the server •For each switch and each amount of VMs in {0,…,N} •Set cost[n]

Problem Decomposition

32

c2 c2c1c1

v2v1

Page 44: How Hard Can It Be?stefan/icnp_fuerst.pdf · •Set cost[n] to the bandwidth costs of placing n VMs at the server •For each switch and each amount of VMs in {0,…,N} •Set cost[n]

Problem Decomposition

33

c3 c2c4 c2c1c1 c3

c4v2v1

Page 45: How Hard Can It Be?stefan/icnp_fuerst.pdf · •Set cost[n] to the bandwidth costs of placing n VMs at the server •For each switch and each amount of VMs in {0,…,N} •Set cost[n]

Problem Decomposition

The basic problem can be extended with:

• VM interconnect (NI)

• Replica Selection (RS)

• Multiple Assignment (MA)

• Free placement of VMs (FP)

34

Page 46: How Hard Can It Be?stefan/icnp_fuerst.pdf · •Set cost[n] to the bandwidth costs of placing n VMs at the server •For each switch and each amount of VMs in {0,…,N} •Set cost[n]

Problem Decomposition

35

c3 c2c4 c2c1c1 c3

c4v2v1

Page 47: How Hard Can It Be?stefan/icnp_fuerst.pdf · •Set cost[n] to the bandwidth costs of placing n VMs at the server •For each switch and each amount of VMs in {0,…,N} •Set cost[n]

Problem Decomposition

36

c3 c2c4 c2c1c1 c3

c4

v2v1

Page 48: How Hard Can It Be?stefan/icnp_fuerst.pdf · •Set cost[n] to the bandwidth costs of placing n VMs at the server •For each switch and each amount of VMs in {0,…,N} •Set cost[n]

Problem Decomposition

The basic problem can be extended with:

• VM interconnect (NI)

• Replica Selection (RS)

• Multiple Assignment (MA)

• Free placement of VMs (FP)

• Bandwidth Constraints (BW)

37

Page 49: How Hard Can It Be?stefan/icnp_fuerst.pdf · •Set cost[n] to the bandwidth costs of placing n VMs at the server •For each switch and each amount of VMs in {0,…,N} •Set cost[n]

Problem Decomposition

38

Page 50: How Hard Can It Be?stefan/icnp_fuerst.pdf · •Set cost[n] to the bandwidth costs of placing n VMs at the server •For each switch and each amount of VMs in {0,…,N} •Set cost[n]

What is in the Paper?

• Trivial problem identification

39

Page 51: How Hard Can It Be?stefan/icnp_fuerst.pdf · •Set cost[n] to the bandwidth costs of placing n VMs at the server •For each switch and each amount of VMs in {0,…,N} •Set cost[n]

What is in the Paper?

40

Page 52: How Hard Can It Be?stefan/icnp_fuerst.pdf · •Set cost[n] to the bandwidth costs of placing n VMs at the server •For each switch and each amount of VMs in {0,…,N} •Set cost[n]

What is in the Paper?

• Trivial problem identification

• Matching based algorithms

41

Page 53: How Hard Can It Be?stefan/icnp_fuerst.pdf · •Set cost[n] to the bandwidth costs of placing n VMs at the server •For each switch and each amount of VMs in {0,…,N} •Set cost[n]

What is in the Paper?

42

Page 54: How Hard Can It Be?stefan/icnp_fuerst.pdf · •Set cost[n] to the bandwidth costs of placing n VMs at the server •For each switch and each amount of VMs in {0,…,N} •Set cost[n]

What is in the Paper?

43

Page 55: How Hard Can It Be?stefan/icnp_fuerst.pdf · •Set cost[n] to the bandwidth costs of placing n VMs at the server •For each switch and each amount of VMs in {0,…,N} •Set cost[n]

What is in the Paper?

• Trivial problem identification

• Matching based algorithms

• Flow based algorithm

44

Page 56: How Hard Can It Be?stefan/icnp_fuerst.pdf · •Set cost[n] to the bandwidth costs of placing n VMs at the server •For each switch and each amount of VMs in {0,…,N} •Set cost[n]

What is in the Paper?

45

Page 57: How Hard Can It Be?stefan/icnp_fuerst.pdf · •Set cost[n] to the bandwidth costs of placing n VMs at the server •For each switch and each amount of VMs in {0,…,N} •Set cost[n]

What is in the Paper?

46

Page 58: How Hard Can It Be?stefan/icnp_fuerst.pdf · •Set cost[n] to the bandwidth costs of placing n VMs at the server •For each switch and each amount of VMs in {0,…,N} •Set cost[n]

What is in the Paper?

• Trivial problem identification

• Matching based algorithms

• Flow based algorithm

• Hardness results

47

Page 59: How Hard Can It Be?stefan/icnp_fuerst.pdf · •Set cost[n] to the bandwidth costs of placing n VMs at the server •For each switch and each amount of VMs in {0,…,N} •Set cost[n]

What is in the Paper?

48

Page 60: How Hard Can It Be?stefan/icnp_fuerst.pdf · •Set cost[n] to the bandwidth costs of placing n VMs at the server •For each switch and each amount of VMs in {0,…,N} •Set cost[n]

Everything but Replicas (MA + NI + FP + BW)

49

Page 61: How Hard Can It Be?stefan/icnp_fuerst.pdf · •Set cost[n] to the bandwidth costs of placing n VMs at the server •For each switch and each amount of VMs in {0,…,N} •Set cost[n]

Everything but Replicas (MA + NI + FP + BW)

49

Page 62: How Hard Can It Be?stefan/icnp_fuerst.pdf · •Set cost[n] to the bandwidth costs of placing n VMs at the server •For each switch and each amount of VMs in {0,…,N} •Set cost[n]

Dynamic Programming

• Create physical topology annotations in a bottom-up manner

• Start at the servers

• For each amount n of VMs in {0,...,N}• Set cost[n] to ∞ if n exceeds the servers capacity

• Set cost[n] to the bandwidth costs of placing n VMs at the server

50

Page 63: How Hard Can It Be?stefan/icnp_fuerst.pdf · •Set cost[n] to the bandwidth costs of placing n VMs at the server •For each switch and each amount of VMs in {0,…,N} •Set cost[n]

c3 c2c1

c4

Dynamic Programming

• Max 1 VM per server

• 2 Chunks per VM

51

Page 64: How Hard Can It Be?stefan/icnp_fuerst.pdf · •Set cost[n] to the bandwidth costs of placing n VMs at the server •For each switch and each amount of VMs in {0,…,N} •Set cost[n]

c3 c2c1

c4

Dynamic Programming

• Max 1 VM per server

• 2 Chunks per VM

51

Page 65: How Hard Can It Be?stefan/icnp_fuerst.pdf · •Set cost[n] to the bandwidth costs of placing n VMs at the server •For each switch and each amount of VMs in {0,…,N} •Set cost[n]

Dynamic Programming

• Create physical topology annotations in a bottom-up manner

• Start at the servers

• For each amount n of VMs in {0,...,N}• Set cost[n] to ∞ if n exceeds the servers capacity

• Set cost[n] to the bandwidth costs of placing n VMs at the server

• For each switch and each amount of VMs in {0,…,N}• Set cost[n] to the sum of the cheapest combination of the children and add

the costs for the bandwdith on the uplink

52

Page 66: How Hard Can It Be?stefan/icnp_fuerst.pdf · •Set cost[n] to the bandwidth costs of placing n VMs at the server •For each switch and each amount of VMs in {0,…,N} •Set cost[n]

c3 c2c1

c4

Dynamic Programming

• Max 1 VM per server

• 2 Chunks per VM

53

Page 67: How Hard Can It Be?stefan/icnp_fuerst.pdf · •Set cost[n] to the bandwidth costs of placing n VMs at the server •For each switch and each amount of VMs in {0,…,N} •Set cost[n]

c3 c2c1

c4

Dynamic Programming

• Max 1 VM per server

• 2 Chunks per VM

53

Page 68: How Hard Can It Be?stefan/icnp_fuerst.pdf · •Set cost[n] to the bandwidth costs of placing n VMs at the server •For each switch and each amount of VMs in {0,…,N} •Set cost[n]

Runtimes

• Intel(R) Xeon(R) CPU L5420 @ 2.50GHzwith (single threaded)

• 512 MB

• openjdk-7

• Max 4 VMs per Server

• 3 Chunks per VM

56

Page 69: How Hard Can It Be?stefan/icnp_fuerst.pdf · •Set cost[n] to the bandwidth costs of placing n VMs at the server •For each switch and each amount of VMs in {0,…,N} •Set cost[n]

Which problems can be solved like this?

57

Page 70: How Hard Can It Be?stefan/icnp_fuerst.pdf · •Set cost[n] to the bandwidth costs of placing n VMs at the server •For each switch and each amount of VMs in {0,…,N} •Set cost[n]

Which problems can be solved like this?

58

Page 71: How Hard Can It Be?stefan/icnp_fuerst.pdf · •Set cost[n] to the bandwidth costs of placing n VMs at the server •For each switch and each amount of VMs in {0,…,N} •Set cost[n]

What is in the Paper?

59

Page 72: How Hard Can It Be?stefan/icnp_fuerst.pdf · •Set cost[n] to the bandwidth costs of placing n VMs at the server •For each switch and each amount of VMs in {0,…,N} •Set cost[n]

Summary

• Virtual clusters provide dedicated resource guarantees

• Datalocality can be incorporated into the virtual cluster abstraction

• Problem decomposition into five properties• NP-hardness proofs for some property combinations

• Algorithms for all other property combinations

60

Page 73: How Hard Can It Be?stefan/icnp_fuerst.pdf · •Set cost[n] to the bandwidth costs of placing n VMs at the server •For each switch and each amount of VMs in {0,…,N} •Set cost[n]

References

[1] Ballani et al. „Towards Predictable Datacenter Networks“ The ACM SIGCOMM Conference on Data Communication (SIGCOMM'11), Toronto,Canada, August 2011

[2] Chowdhury et al. „Managing Data Transfers in Computer Clusters with Orchestra.“ The ACM SIGCOMMConference on Data Communication (SIGCOMM'11)

[3] D. Xie, et al. "The only constant is change: incorporating time-varying network reservations in data centers." The ACM SIGCOMMConference on Data Communication (SIGCOMM'12)

[4] M. Rost, et al. "Beyond the stars: Revisiting virtual cluster embeddings." ACM SIGCOMM Computer Communication Review 45.3(2015)

61


Recommended