Interconnecting data centers for migration of virtual machines

US8990371B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-8990371-B2
Application numberUS-201213362165-A
CountryUS
Kind codeB2
Filing dateJan 31, 2012
Priority dateJan 31, 2012
Publication dateMar 24, 2015
Grant dateMar 24, 2015

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

Methods and arrangements for facilitating virtual machine migration across data centers. A virtual machine is designated for migration from a first data center to a second data center, the virtual machine including a real identifier. A pseudo identifier is assigned to the virtual machine, and the pseudo identifier is mapped to the real identifier at a controller of the first data center. The real identifier is replaced in a data packet with the pseudo identifier for a routing task. Communication is maintained between the controller of the first data center and a controller of the second data center, and the controllers are synchronized to update a correct location of the virtual machine. The virtual machine is migrated from the first data center to the second data center.

First claim

Opening claim text (preview).

What is claimed is: 1. An apparatus comprising: at least one processor; and a non-signal computer readable storage medium having computer readable program code embodied therewith and executable by the at least one processor, the computer readable program code comprising: computer readable program code configured to designate a virtual machine for migration from a first data center to a second data center, the virtual machine including a real identifier; computer readable program code configured to assign a location-dependent pseudo identifier to the virtual machine that is disseminated using an address resolution protocol request message and that encodes a data center number, network topology and position of the virtual machine inside a given data center network; computer readable program code configured to map the pseudo identifier to the real identifier at a controller of the first data center; computer readable program code configured to replace the real identifier in a data packet with the pseudo identifier for a routing task; computer readable program code configured to maintain communication between the controller of the first data center and a controller of the second data center, and synchronize the controllers to update a correct location of the virtual machine; and computer readable program code configured to migrate the virtual machine from the first data center to the second data center. 2. A computer program product comprising: a non-signal computer readable storage medium having computer readable program code embodied therewith, the computer readable program code comprising: computer readable program code configured to designate a virtual machine for migration from a first data center to a second data center, the virtual machine including a real identifier; computer readable program code configured to assign a location-dependent pseudo identifier to the virtual machine that is disseminated using an address resolution protocol request message and that encodes a data center number, network topology and position of the virtual machine inside a given data center network; computer readable program code configured to map the pseudo identifier to the real identifier at a controller of the first data center; computer readable program code configured to replace the real identifier in a data packet with the pseudo identifier for a routing task; computer readable program code configured to maintain communication between the controller of the first data center and a controller of the second data center, and synchronize the controllers to update a correct location of the virtual machine; and computer readable program code configured to migrate the virtual machine from the first data center to the second data center. 3. The computer program product according to claim 2 , wherein the pseudo identifier comprises a layer two pseudo identifier. 4. The computer program product according to claim 1 , wherein the pseudo identifier comprises a layer three pseudo identifier. 5. The computer program product according to claim 2 , wherein source traffic to the designated virtual machine originates from at least one taken from the group consisting of: within a layer two domain in which the virtual machine resides and across a layer three boundary. 6. The computer program product according to claim 2 , wherein the pseudo identifier comprises at least one taken from the group consisting of: encoding relative to a data center in which the virtual machine resides and encoding relative to a position of the virtual machine within a data center. 7. The computer program product according to claim 2 , wherein said computer readable program code is further configured to: undertake the replacing via one taken from the group consisting of: via address resolution protocol and via rules at a network ingress edge switch; route a data packet based on the pseudo identifier and replacing the pseudo identifier with the real identifier through rules at a network egress edge switch for routing the packet to a destination virtual machine; route a packet destined for a remote data center to an encapsulation switch that encapsulates a packet with a layer-3 address of a remote encapsulation switch and sends the packet over an existing network between data centers, wherein the remote encapsulation switch, upon receiving the packet, decapsulates the packet and routes the packet to a layer-2 switch; and map the pseudo identifier to the real identifier at a network controller within each data center. 8. The computer program product according to claim 7 , wherein said computer readable program code is further configured to redirect an address resolution protocol request for a location-independent destination layer 3 real identifier to a controller, wherein the controller thereupon: returns the location dependent layer 2 pseudo identifier if the virtual machine is in the same network; returns a new layer 2 identifier if the virtual machine is in a different network, whereupon the new layer 2 identifier is subsequently used in the packet. 9. The computer program product according to claim 8 , wherein said computer readable program code is further configured to install, via a controller, a rule on an ingress switch to replace a layer 3 real identifier with a layer 3 pseudo identifier and a rule on an egress switch to replace layer 2 and layer 3 pseudo identifiers with corresponding real identifiers. 10. The computer program product according to claim 7 , wherein said computer readable program code is further configured to: broadcast, via a controller, an address resolution protocol request to a remote controller if a destination layer 3 real identifier is not in a mapping table; and via a remote controller, upon receiving an address resolution protocol broadcast message from a controller, consult a local mapping table and, if mapping is found, return location-dependent real layer 2 and layer 3 identifiers.

Assignees

Inventors

Classifications

  • H04L67/34Primary

    involving the movement of software or configuration parameters  (network booting or remote initial program loading [RIPL] G06F9/4416) · CPC title

  • of different types · CPC title

  • G06F9/4856Primary

    resumption being on a different machine, e.g. task migration, virtual machine migration (G06F9/5088 takes precedence) · CPC title

  • Distribution of virtual machine instances; Migration and load balancing · CPC title

  • Hypervisor-specific management and integration aspects · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US8990371B2 cover?
Methods and arrangements for facilitating virtual machine migration across data centers. A virtual machine is designated for migration from a first data center to a second data center, the virtual machine including a real identifier. A pseudo identifier is assigned to the virtual machine, and the pseudo identifier is mapped to the real identifier at a controller of the first data center. The re…
Who is the assignee on this patent?
Kalyanaraman Shivkumar, Kannan Kalapriya, Mann Vijay, and 2 more
What technology area does this patent fall under?
Primary CPC classification H04L67/34. Mapped technology areas include Electricity.
When was this patent published?
Publication date Tue Mar 24 2015 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).