Shadow-Routing Based Dynamic Algorithms for Virtual Machine Placement in a Network Cloud

Yang Guo, Alexander L. Stolyar, Anwar Walid

Research output: Contribution to journalArticlepeer-review


We consider a shadow routing based approach to the problem of real-time adaptive placement of virtual machines (VM) in large data centers (DC) within a network cloud. Such placement in particular has to respect vector packing constraints on the allocation of VMs to host physical machines (PM) within a DC, because each PM can potentially serve multiple VMs simultaneously. Shadow routing is attractive in that it allows a large variety of system objectives and/or constraints to be treated within a common framework (as long as the underlying optimization problem is convex). Perhaps even more attractive feature is that the corresponding algorithm is very simple to implement, it runs continuously, and adapts automatically to changes in the VM demand rates, changes in system parameters, etc., without the need to re-solve the underlying optimization problem 'from scratch'. In this paper we focus on the min-max-DC-load problem. Namely, we propose a combined VM-to-DC routing and VM-to-PM assignment algorithm, referred to as Shadow scheme, which minimizes the maximum of appropriately defined DC utilizations. We prove that the Shadow scheme is asymptotically optimal (as one of its parameters goes to 0). Simulation confirms good performance and high adaptivity of the algorithm. Favorable performance is also demonstrated in comparison with a baseline algorithm based on VMware implementation [7] , [8]. We also propose a simplified - 'more distributed' - version of the Shadow scheme, which performs almost as well in simulations.

Original languageEnglish (US)
Pages (from-to)209-220
Number of pages12
JournalIEEE Transactions on Cloud Computing
Issue number1
StatePublished - Jan 1 2018
Externally publishedYes


  • Cloud
  • Greedy Primal-Dual (GPD) algorithm
  • Shadow routing algorithm
  • Stochastic bin packing
  • Virtual machine (VM) placement

ASJC Scopus subject areas

  • Software
  • Information Systems
  • Hardware and Architecture
  • Computer Science Applications
  • Computer Networks and Communications

Cite this