Presentation is loading. Please wait.

Presentation is loading. Please wait.

An Optimization Problem in Adaptive Virtual Environments Ananth I. Sundararaj Manan Sanghi Jack R. Lange Peter A. Dinda Prescience Lab Department of Computer.

Similar presentations


Presentation on theme: "An Optimization Problem in Adaptive Virtual Environments Ananth I. Sundararaj Manan Sanghi Jack R. Lange Peter A. Dinda Prescience Lab Department of Computer."— Presentation transcript:

1 An 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

2 2 Summary 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

3 3 Outline 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

4 4 Aim Grid Computing New Paradigm Traditional Paradigm Deliver arbitrary amounts of computational power to perform distributed and parallel computations Problem1: Grid Computing using virtual machines Problem2: Solution How to leverage them? Virtual Machines What are they? 6b 6a 5 4 3b 3a 2 1 Resource multiplexing using OS level mechanism Complexity from resource user’s perspective Complexity from resource owner’s perspective Virtual Machine Grid Computing

5 5 Virtual Machines Virtual machine monitors (VMMs) Raw machine is the abstraction VM represented by a single image VMware GSX Server

6 6 The Simplified Virtuoso Model Orders a raw machine User Specific hardware and performance Basic software installation available User’s LAN VM Virtual networking ties the machine back to user’s home network Virtuoso continuously monitors and adapts

7 7 Outline 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

8 8 User’s friendly LAN Foreign hostile LAN Virtual Machine VNET: A bridge with long wires Host Proxy X Virtual Networks VM traffic going out on foreign LAN IP network 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?

9 9 Measurement and Inference Application (VTTIF) Topology Traffic load Underlying network layer Physical hosts Virtual network layer VNET daemons Application layer VM layer Host and VM Size and compute capacities Size and compute demands Topology Bandwidth Latency Underlying network [Gupta et al. LNCS 05] [Gupta et al. In submission]

10 10 Adaptation Mechanisms Resource reservation Network CPU Resource reservation Physical hosts Topology changes VNET daemons VM Migration VM layer Topology changes Overlay links Overlay forwarding rules VM Migration Third party migration schemes X X X [Sundararaj et al. LCR 04, HPDC 05] [Lange et al. HPDC 05] [Lin et al. GRID 2004]

11 11 Outline 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

12 12 bw 12 H3H3 H2H2 H1H1 H4H4 VM 1 VM 2 b1b1 l1l1 VM 1 VM 3 b2b2 l2l2 VM 2 VM 3 b3b3 l3l3 VM 1 b4b4 l4l4 A set of ordered 4-tuples, “A” didi sisi bibi Generic Adaptation Problem In Virtual Execution Environments (GAPVEE) bw 24 bw 14 bw 13 bw 34 lat 12 lat 13 lat 34 lat 24 lat 14 compute 4 compute 1 compute 2 compute 3 size 4 size 1 size 2 size 3 VM 1 vm_compute 1 vm_size 1 VM 2 vm_compute 2 vm_size 2 VM 3 vm_compute 3 vm_size 3 lili A1A1 A2A2 A3A3 A4A4 Input: 1. 2. 3.

13 13 Generic Adaptation Problem In Virtual Execution Environments Output: H3H3 H2H2 H1H1 H4H4 VM 1 vm_compute 1 vm_size 1 VM 1 vm_compute 3 vm_size 3 VM 1 vm_compute 2 vm_size 2 mapped A mapping from VMs to Hosts Size and compute demands of VMs must be met within host constraints VM demands compute 4 size 4 Host constraints

14 14 Generic Adaptation Problem In Virtual Execution Environments Output: H3H3 H2H2 H1H1 H4H4 A mapping from 4-tuples to Paths Bandwidth and latency demands of 4- tuples must be met within constraints compute 4 size 4 Host constraints VM 1 VM 2 b1b1 l1l1 VM 1 VM 3 b2b2 l2l2 VM 2 VM 3 b3b3 l3l3 VM 1 b4b4 l4l4 A set of ordered 4-tuples, “A” didi sisi bibi lili A1A1 A2A2 A3A3 A4A4 VM 1 VM 2 VM 3 bw 13 lat 13 Hence b 1 + b 2 <= bw 13 l 1, l 2 >= lat 13

15 15 Generic Adaptation Problem In Virtual Execution Environments Output: H3H3 H2H2 H1H1 H4H4 compute 4 size 4 Host constraints VM 1 VM 2 b1b1 l1l1 VM 1 VM 3 b2b2 l2l2 VM 2 VM 3 b3b3 l3l3 VM 1 b4b4 l4l4 A set of ordered 4-tuples, “A” didi sisi bibi lili A1A1 A2A2 A3A3 A4A4 VM 1 VM 2 VM 3 bw 13 lat 13 H1H1 H3H3 bw 13 A 1 (b 1 ) A 2 (b 2 ) bw 13 – (b 1 +b 2 ) is the residual capacity of the edge Bottleneck bandwidth: min residual capacity along a path

16 16 Generic 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

17 17 Optimizing 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

18 18 Outline 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

19 19 bw 12 H3H3 H2H2 H1H1 H4H4 H1H1 H3H3 b1b1 H1H1 H3H3 b2b2 H2H2 H3H3 b3b3 H3H3 H4H4 b4b4 A set of ordered 3-tuples, “A” didi sisi bibi Special Case of GAPVEE: Routing Problem In Virtual Execution Environments (RPVEE) bw 24 bw 14 bw 13 bw 34 A1A1 A2A2 A3A3 A4A4 Input: 1. 2.

20 20 Special Case of GAPVEE: Routing Problem In Virtual Execution Environments (RPVEE) Output: H3H3 H2H2 H1H1 H4H4 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 bw 13 H1H1 H3H3 b1b1 H1H1 H3H3 b2b2 H2H2 H3H3 b3b3 H3H3 H4H4 b4b4 A set of ordered 3-tuples, “A” didi sisi bibi A1A1 A2A2 A3A3 A4A4

21 21 Analysis 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

22 22 Edge Disjoint Path Problem (EDPP) A well known NP-complete problem Input –A graph G = (H,E) –A set of ordered 2-tuples S = {(s i,d i ), where s i, d i in H} Output –“Yes” if for all (s i,d i ) in S, there exist edge disjoint paths from s i to d i in G = (H,E) –“No” otherwise

23 23 Decision version of RPVEE (RPVEED) Input –A graph G = (H,E) –A function bw: E -> R –A set of ordered 3-tuples S = {(s i,d i,b i ), where s i, d i in H, b i in R, i = 1,…k} Output –“Yes” if for all (s i,d i,b i ) in S, there exist paths from s i to d i in G = (H,E), such that sum of bottleneck bandwidth = k* ε –“No” otherwise

24 24 H3H3 H2H2 H1H1 H4H4 1+ε H3H3 H2H2 H1H1 H4H4 1 1 1 1 1 11 H1H1 H2H2 H1H1 H4H4 H2H2 H4H4 H1H1 H3H3 A set of ordered 2-tuples H1H1 H2H2 1 H1H1 H4H4 1 H2H2 H4H4 1 H1H1 H3H3 1 A set of ordered 3-tuples sisi didi didi sisi bibi Given an arbitrary instance of EDPP Converted to a particular instance of RPVEED A directed graph G = (H,E) A complete directed graph G = (H,E) A function bw : E -> R

25 25 Outline 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

26 26 Status 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)

27 27 Summary 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 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


Download ppt "An Optimization Problem in Adaptive Virtual Environments Ananth I. Sundararaj Manan Sanghi Jack R. Lange Peter A. Dinda Prescience Lab Department of Computer."

Similar presentations


Ads by Google