Title: An Optimization Problem in Adaptive Virtual Environments
1An Optimization Problem in Adaptive Virtual
Environments
- Ananth I. Sundararaj
- Manan Sanghi
- Jack R. Lange
- Peter A. Dinda
- Prescience Lab
- Department of Computer Science
- Northwestern University
- http//virtuoso.cs.northwestern.edu
2Summary
- Virtual execution environments provide
opportunities for dynamic adaptation - Important components are
- Resource monitoring and inference
- Application independent adaptation mechanisms
- Efficient adaptation algorithms
- Previously proposed simple heuristics
- Significant scope for improvement
- In this work
- Formalize the adaptation problem
- Show that it is NP-hard
- Propose future research directions
3Outline
- Virtual execution environments An example
- Virtuoso system Introduction
- Virtual networks
- Measurement and inference (VTTIF)
- Adaptation mechanisms (VNET)
- Problem formalization
- A special case of the adaptation problem
- Analysis
- Status
- Summary
4Virtual Machine Grid Computing
Deliver arbitrary amounts of computational power
to perform distributed and parallel computations
Aim
1
New Paradigm
Traditional Paradigm
5
2
Grid Computing using virtual machines
Resource multiplexing using OS level mechanism
Grid Computing
4
3a
6a
3b
Problem1
6b
Virtual Machines What are they?
Complexity from resource users perspective
Solution
Problem2
How to leverage them?
Complexity from resource owners perspective
5Virtual Machines
Virtual machine monitors (VMMs)
- Raw machine is the abstraction
- VM represented by a single
- image
- VMware GSX Server
6The Simplified Virtuoso Model
Virtual networking ties the machine back to
users home network
Users LAN
Specific hardware and performance
VM
Basic software installation available
Orders a raw machine
Virtuoso continuously monitors and adapts
User
7Outline
- Virtual execution environments An example
- Virtuoso system Introduction
- Virtual networks
- Measurement and inference
- Adaptation mechanisms
- Problem formalization
- A special case of the adaptation problem
- Analysis
- Status
- Summary
8Virtual Networks
VM traffic going out on foreign LAN
Foreign hostile LAN
X
Users friendly LAN
IP network
Virtual Machine
Host
- A machine is suddenly plugged into a foreign
network. What happens? - Does it get an IP address?
- Is it a routeable address?
- Does firewall let its traffic
- through? To any port?
Proxy
VNET A bridge with long wires
9Measurement and Inference
Host and VM
Underlying network
- Size and compute capacities
- Size and compute demands
- Topology
- Bandwidth
- Latency
Application (VTTIF)
Gupta et al. In submission
Gupta et al. LNCS 05
Application layer
VM layer
Virtual network layer
VNET daemons
Underlying network layer
Physical hosts
10Adaptation Mechanisms
Topology changes
VM Migration
- Overlay links
- Overlay forwarding rules
- Third party migration schemes
Sundararaj et al. LCR 04, HPDC 05
Resource reservation
Lange et al. HPDC 05
Lin et al. GRID 2004
VM Migration
X
VM layer
Topology changes
X
X
VNET daemons
Resource reservation
Physical hosts
11Outline
- Virtual execution environments An example
- Virtuoso system Introduction
- Virtual networks
- Measurement and inference (VTTIF)
- Adaptation mechanisms (VNET)
- Problem formalization
- A special case of the adaptation problem
- Analysis
- Status
- Summary
12Generic Adaptation Problem In Virtual Execution
Environments (GAPVEE)
compute2
size2
Input
H2
1.
lat12
bw24
bw12
lat24
compute1
compute4
bw14
lat14
H4
H1
size4
size1
bw13
lat34
lat13
bw34
H3
compute3
size3
di
si
bi
li
2.
3.
VM1 VM2 b1 l1
VM1 VM3 b2 l2
VM2 VM3 b3 l3
VM3 VM1 b4 l4
A1
vm_compute1
VM1
vm_size1
A2
A3
vm_compute2
VM2
A4
vm_size2
vm_compute3
A set of ordered 4-tuples, A
VM3
vm_size3
13Generic Adaptation Problem In Virtual Execution
Environments
Output
compute4
size4
Host constraints
H2
H4
H1
- A mapping from VMs to Hosts
- Size and compute demands of VMs must be met
within host constraints
mapped
H3
mapped
vm_compute1
mapped
VM1
vm_size1
vm_compute3
vm_compute2
VM1
VM1
vm_size3
vm_size2
VM demands
14Generic Adaptation Problem In Virtual Execution
Environments
Output
compute4
size4
Host constraints
H2
H4
H1
VM1
bw13
lat13
- A mapping from 4-tuples to Paths
- Bandwidth and latency demands of 4-tuples must
be met within constraints
H3
VM2
VM3
di
si
bi
li
VM1 VM2 b1 l1
VM1 VM3 b2 l2
VM2 VM3 b3 l3
VM3 VM1 b4 l4
A1
Hence b1 b2 lt bw13 l1 , l2 gt lat13
A2
A3
A4
A set of ordered 4-tuples, A
15Generic Adaptation Problem In Virtual Execution
Environments
Output
compute4
size4
Host constraints
H2
H4
H1
VM1
bw13
lat13
H3
H1
bw13
VM2
VM3
H3
A1 (b1)
di
si
bi
li
A2 (b2)
VM1 VM2 b1 l1
VM1 VM3 b2 l2
VM2 VM3 b3 l3
VM3 VM1 b4 l4
A1
A2
bw13 (b1b2) is the residual capacity of the
edge Bottleneck bandwidth min residual capacity
along a path
A3
A4
A set of ordered 4-tuples, A
16Generic Adaptation Problem In Virtual Execution
Environments
- Goal
- VMs to Hosts mapping
- Path to each 4-tuple
- Meeting all demands within constraints
- Such that
- Sum of residual bottleneck bandwidth over each
mapped path is maximized
17Optimizing Objective functions
- Many possibilities
- Maximizing sum of residual bottleneck bandwidths
over each mapped path - Intuition
- Leave the most room for application to increase
performance - Minimizing the residual bottleneck capacity
- Intuition
- Increase room for other applications to enter
system -
18Outline
- Virtual execution environments An example
- Virtuoso system Introduction
- Virtual networks
- Measurement and inference (VTTIF)
- Adaptation mechanisms (VNET)
- Problem formalization
- A special case of the adaptation problem
- Analysis
- Status
- Summary
19Special Case of GAPVEE Routing Problem In
Virtual Execution Environments (RPVEE)
Input
H2
1.
bw24
bw12
bw14
H4
H1
bw13
bw34
H3
2.
di
si
bi
H1 H3 b1
H1 H3 b2
H2 H3 b3
H3 H4 b4
A1
A2
A3
A4
A set of ordered 3-tuples, A
20Special Case of GAPVEE Routing Problem In
Virtual Execution Environments (RPVEE)
Output
H2
H4
H1
bw13
H3
- A mapping from 3-tuples to Paths
- Bandwidth demands of 3-tuples must be met within
constraints - Sum of residual bottleneck bandwidth is maximized
over each path
di
si
bi
H1 H3 b1
H1 H3 b2
H2 H3 b3
H3 H4 b4
A1
A2
A3
A4
A set of ordered 3-tuples, A
21Analysis
- Theorem 1 RPVEE is NP-hard
- Edge Disjoint Path Problem (EDPP)
- Arbitrary instance of EDPP
- Convert to an instance of RPVEED
- A Yes solution for RPVEED implies a Yes
solution for EDPP - A No solution for RPVEED implies a No
solution for EDPP
22Edge Disjoint Path Problem (EDPP)
- A well known NP-complete problem
- Input
- A graph G (H,E)
- A set of ordered 2-tuples S (si,di), where si,
di in H - Output
- Yes if for all (si,di) in S, there exist edge
disjoint paths from si to di in G (H,E) - No otherwise
23Decision version of RPVEE (RPVEED)
- Input
- A graph G (H,E)
- A function bw E -gt R
- A set of ordered 3-tuples S (si,di,bi), where
si, di in H, bi in R, i 1,k - Output
- Yes if for all (si,di,bi) in S, there exist
paths from si to di in G (H,E), such that sum
of bottleneck bandwidth ke - No otherwise
24Given an arbitrary instance of EDPP
si
di
H2
H1 H2
H1 H4
H2 H4
H1 H3
H4
H1
A set of ordered 2-tuples
A directed graph G (H,E)
H3
Converted to a particular instance of RPVEED
di
si
bi
H2
1
H1 H2 1
H1 H4 1
H2 H4 1
H1 H3 1
1
1e
1 e
1
1 e
H4
H1
1 e
1
1
1 e
A set of ordered 3-tuples
1
A complete directed graph G (H,E) A function bw
E -gt R
H3
1
25Outline
- Virtual execution environments An example
- Virtuoso system Introduction
- Virtual networks
- Measurement and inference (VTTIF)
- Adaptation mechanisms (VNET)
- Problem formalization
- A special case of the adaptation problem
- Analysis
- Status
- Summary
26Status
- Previously developed a variety of heuristics
(Greedy and Simulated annealing) - Effective in improving performance
- Significant scope for improvement
- Formalization and analysis, first steps
- Generic incarnation hard, focus on special cases
- Currently researching the well studied variants
of our problem (such as un-splittable flows)
27Summary
- Virtual execution environments provide
opportunities for dynamic adaptation - Important components are
- Resource monitoring and inference
- Application independent adaptation mechanisms
- Efficient adaptation algorithms
- Previously proposed simple heuristics
- Significant scope for improvement
- In this work
- Formalize the adaptation problem
- Show that it is NP-hard
- Propose future research directions
28- For More Information
- Prescience Lab (Northwestern University)
- http//plab.cs.northwestern.edu
- Virtuoso Resource Management and Prediction for
Distributed Computing using Virtual Machines - http//virtuoso.cs.northwestern.edu
- VNET is publicly available from
- http//virtuoso.cs.northwestern.edu