Policy-based checkpointing fault tolerance across remote virtual machines
AssigneeVMware, Inc.
InventorRaviprasad Mummidi
Life of this patent
Estimating the term…
Abstract
Embodiments include a checkpointing fault tolerance network architecture enables a first computer system to be remotely located from a second computer system. An intermediary computer system is situated between the first computer system and the second computer system to manage the transmission of checkpoint information from the first computer system to the second computer system in an efficient manner. The intermediary computer system responds to requests from the second computer system for updated data corresponding to memory pages selected by the second computer system, or memory pages identified through application of policy information defined by the second computer system.
Claims20
A non-transitory computer-readable storage medium including instructions that, when executed, cause at least one processor of an intermediary computer system to transmit an updated state of a first computer system to a second computer system, the second computer system being networked to the intermediary computer system through a low bandwidth connection that does not support timely transmission of modified states of the first computer system received by the intermediary computer system at checkpoints, by:
- receiving, at the intermediary computer system, checkpoint information packets from the first computer system, each checkpoint information packet comprising updated data corresponding to one or more memory pages of the first computer system that have been modified since a previously received checkpoint information packet;
- providing the second computer system with data describing the memory pages;
- receiving, from the second computer system based on said providing, a request for a copy of at least one of the memory pages;
- and
- transmitting the requested copy of the at least one of the memory pages to the second computing system,
- wherein the first computer system is a first server hosting a primary virtual machine and the second computer system is a second server hosting a backup virtual machine.
A method for transmitting an updated state of a first computer system to a second computer system through an intermediary computer system, the method comprising:
- receiving, at the intermediary computer system in a first fault domain, checkpoint information packets from the first computer system, each checkpoint information packet comprising updated data corresponding to one or more memory pages of the first computer system that have been modified since a previously received checkpoint information packet;
- providing the second computer system with data describing the memory pages, the second computer system residing in a second fault domain;
- receiving, from the second computer system based on said providing, a request for a copy of at least one of the memory pages;
- and
- transmitting the requested copy of the at least one of the memory pages to the second computing system,
- wherein the first computer system is a first server hosting a primary virtual machine and the second computer system is a second server hosting a backup virtual machine.
A computer system for transmitting an updated state of a first computing system to a second computing system, the computer system comprising:
- an intermediary computing system residing in a first fault domain, the intermediary computing system receiving checkpoint information packets from the first computing system, each checkpoint information packet comprising updated data corresponding to one or more memory pages of the first computing system that have been modified since a previously received checkpoint information packet;
- and
- a second computing system residing in a second fault domain and connected to the intermediary computing system, the second computing system defining policy information describing one or more of the memory pages to select, the intermediary computing system further transmitting to the second computing system the one or more of the memory pages selected based on the defined policy information,
- wherein the first computer system is a first server hosting a primary virtual machine and the second computer system is a second server hosting a backup virtual machine.
Dependencies are inferred from the claim text.