Patent ID: 9304804
Filing Date: 2016-04-05
CPC Classification: G06F

Claim Text:
1. In a plurality of networked computer servers having a first server and a second server, wherein the first server has executing therein a first virtual machine with a plurality of virtual disks stored as files in a first storage unit connected to the first server, and the second server includes a second virtual machine with a plurality of virtual disks stored as files in a second storage unit connected to the second server, a method of replicating the first virtual machine to the second virtual machine, the method comprising: transmitting the virtual disks of the first virtual machine to the second server, wherein each transmitted virtual disk corresponds to one of the plurality of virtual disks of the second virtual machine, and wherein the virtual disks of the first virtual machine have a first format and the virtual disks of the second virtual machine have a second format, wherein a hypervisor of a first type is installed in the first server to support execution of the first virtual machine and a hypervisor of a second type is installed in the second server to support execution of the second virtual machine; capturing a plurality of updates to the files in the first storage unit corresponding to the virtual disks of the first virtual machine subsequent to the transmission of the virtual disks of the first virtual machine; selecting updates caused by guest applications or guest operating system running within the first virtual machine from the plurality of updates while filtering out updates corresponding to metadata region of the virtual disks of the first virtual machine, wherein the metadata region contains format information of the virtual disks of the first virtual machine that is accessed and understood by the hypervisor of the first type and not by the hypervisor of the second type; identifying contiguous data blocks in the virtual disks of the first virtual machine that are subject to the selected updates; and transmitting the identified contiguous data blocks to the second server for storage in the virtual disks of the second virtual machine.