IP Library Granted Patent US 12,585,487
Granted Patent B2
US 12,585,487 · App. 18/148,792 · Granted Mar 24, 2026

Cancellation of a migration-based upgrade using a network swap workflow

Inventors: Tomo Vladimirov Simeonov (Sofia, BG); Ivaylo Radoslavov Radev (Sofia, BG); Vladimir Ivanov (Sofia, BG); Georgi Hristov (Sofia, BG); Grigor Harbaliev (Sofia, BG)
Assignee: VMware LLC
G06F9/45558G06F2009/4557G06F2009/45595
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,585,487
App. No.
18/148,792
Granted
Mar 24, 2026
Kind
B2
Abstract

A non-disruptive cancellation of a migration-based virtual machine (VM) upgrade uses a network swap workflow and may be performed without user involvement (e.g., without providing login credentials). A source machine and a target machine swap machine identities such that, for example, the target machine takes on the internet protocol (IP) address of the source machine and the source machine takes on the original IP address of the target machine. Upon a cancellation of the upgrade, the source machine and the target machine revert to their original machine identities, for example, by swapping machine identities again. In this manner, the target machine assumes the role of the source machine for the user if the upgrade is not canceled, and the source machine rapidly resumes its role for the user if there is a cancellation. Advantageously, fewer computing resources are required for this cancellation.

Claims (58)

1 . A computer-implemented method comprising:

obtaining, by a source machine, a first network swap instruction, wherein the source machine has a first machine identity;

based at least on obtaining the first network swap instruction:

transmitting, by the source machine, to a target machine, a second network swap instruction, wherein the target machine has a second machine identity;

executing, by the source machine, a first function that swaps its identity from the first machine identity to the second machine identity by storing on the source machine an indicator of the second machine identity; and

executing, by the target machine, a second function that swaps its identity from the second machine identity to the first machine identity by storing on the target machine an indicator of the first machine identity;

obtaining, by the source machine or the target machine, an upgrade cancellation instruction; and

based on at least obtaining the upgrade cancellation instruction:

executing, by the source machine, the first function to revert its identity to the first machine identity by storing on the source machine the indicator of the first machine identity; and

executing by the target machine, the second function to revert its identity to the second machine identity by storing on the target machine the indicator of the second identity.

2 . The computer-implemented method of claim 1 , wherein the first machine identity and the second machine identity each comprise network configuration information, network interface information, and network identity information.

3 . The computer-implemented method of claim 1 , wherein neither the swapping nor the reverting requires use of a user password.

4 . The computer-implemented method of claim 1 , wherein the swapping comprises executing a network interface configuration operation, a host configuration operation, and a network identity setting operation.

5 . The computer-implemented method of claim 1 , further comprising:

based on at least the target machine completing the swapping from the second machine identity to the first machine identity, transmitting, by the target machine, to the source machine, a completion notification using network configuration information of the second machine identity.

6 . The computer-implemented method of claim 1 , further comprising:

based on at least the target machine obtaining the upgrade cancellation instruction, transmitting, by the target machine to the source machine, a cancellation notification using network configuration information of the second machine identity.

7 . The computer-implemented method of claim 1 , further comprising:

prior to obtaining the first network swap instruction, performing, by the source machine, user operations with an external resource; and

after reverting to the first machine identity by the source machine, performing, by the source machine, user operations with the external resource.

8 . The computer-implemented method of claim 7 , further comprising:

after completing the swapping by both the source machine and the target machine and prior to the source machine reverting to the first machine identity, performing, by the target machine, user operations with the external resource.

9 . A computer system comprising:

a processor; and

a non-transitory computer readable medium having stored thereon program code executable by the processor, the program code causing the processor to:

based on at least a first network swap instruction:

transmit, by a source machine, to a target machine, a second network swap instruction, wherein the source machine has a first machine identity and the target machine has a second machine identity;

execute, by the source machine, a first function that swaps its identity from the first machine identity to the second machine identity by storing on the source machine an indicator of the second machine identity; and

wherein the target machine is configured to execute a second function that swaps its identity from the second machine identity to the first machine identity by storing on the target machine an indication of the first machine identity;

obtain, by the source machine, an upgrade cancellation instruction; and

based at least on obtaining the upgrade cancellation instruction:

execute, by the source machine, the first function to revert its identity to the first machine identity by storing on the source machine the indicator of the first machine identity; and

wherein the target machine is configured to execute the second function to execute the second function to revert its identity to the second machine identity by storing on the target machine the indicator of the second machine identity.

10 . The computer system of claim 9 , wherein the first machine identity and the second machine identity each comprises network configuration information, network interface information, and network identity information.

11 . The computer system of claim 9 , wherein neither the swapping nor the reverting requires use of a user password.

12 . The computer system of claim 9 , wherein the swapping comprises executing a network interface configuration operation, a host configuration operation, and a network identity setting operation.

13 . The computer system of claim 9 , wherein the program code is further operative to:

based on at least the source machine obtaining the upgrade cancellation instruction, transmit, by the source machine to the target machine, a cancellation notification using network configuration information of the first machine identity.

14 . The computer system of claim 9 , wherein the program code is further operative to:

prior to obtaining the first network swap instruction, performing, by the source machine, user operations with an external resource; and

after reverting to the first machine identity by the source machine, performing, by the source machine, user operations with the external resource.

15 . A non-transitory computer storage medium having stored thereon program code executable by a processor, the program code embodying a method comprising:

based on a first network swap instruction:

obtaining, by a target machine from a source machine, a second network swap instruction, wherein the source machine has a first machine identity and the target machine has a second machine identity;

executing, by the target machine, a second function that swaps its identity from the second machine identity to the first machine identity by storing on the target machine an indicator of the first machine identity;

wherein the source machine is configured to execute a first function that swaps its identity from the first machine identity to the second machine identity by storing on the source machine an indicator of the second machine identity; and

obtaining, by the target machine, an upgrade cancellation instruction; and

based at least on obtaining the upgrade cancellation instruction:

executing, by the target machine, the second function to revert its identity to the second machine identity by storing on the target machine the indication of the second machine identity; and

wherein the source machine is configured to execute the first function to revert its identity to the first machine identity by storing on the source machine an indication of the first identity.

16 . The non-transitory computer storage medium of claim 15 , wherein the first machine identity and the second machine identity each comprises network configuration information, network interface information, and network identity information.

17 . The non-transitory computer storage medium of claim 15 , wherein neither the swapping nor the reverting requires use of a user password.

18 . The non-transitory computer storage medium of claim 15 , wherein the program code method further comprises:

based on at least the target machine obtaining the upgrade cancellation instruction, transmitting, by the target machine to the source machine, a cancellation notification using network configuration information of the second machine identity.

19 . The non-transitory computer storage medium of claim 15 , wherein the program code is further operative to:

based on at least the target machine completing the swapping from the second machine identity to the first machine identity, transmit, by the target machine, to the source machine, a completion notification using network configuration information of the second machine identity.

20 . The non-transitory computer storage medium of claim 15 , wherein the program code is further operative to:

after completing the swapping by both the source machine and the target machine and prior to the source machine reverting to the first machine identity, performing, by the target machine, user operations with the external resource.

Assignments (2)
CHANGE OF NAME Recorded May 8, 2024
From: VMWARE, INC.
To: VMWARE LLC
Reel/Frame 067355/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 5, 2023
From: SIMEONOV, TOMO VLADIMIROV; RADEV, IVAYLO RADOSLAVOV; IVANOV, VLADIMIR; HRISTOV, GEORGI; HARBALIEV, GRIGOR
To: VMWARE, INC.
Reel/Frame 062285/0756 →