IP Library Granted Patent US 11,875,172
Granted Patent B2
US 11,875,172 · App. 17/107,568 · Granted Jan 16, 2024

Bare metal computer for booting copies of VM images on multiple computing devices using a smart NIC

Inventor: Renaud B. Voltz (Los Altos Hills, CA)
Assignee: VMware LLC
G06F9/45558G06F9/4406G06F9/45541G06F9/547G06F13/4221G06F9/5077G06F2009/4557G06F2009/45579G06F2009/45591G06F2009/45595G06F2213/0026
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 11,875,172
App. No.
17/107,568
Granted
Jan 16, 2024
Kind
B2
Abstract

Some embodiments provide a method for operating a physical server in a network. The method stores multiple copies of a virtual machine (VM) image at a network-accessible storage. The method uses a first copy of the VM image as a virtual disk to execute a VM on a hypervisor of a first physical computing device. The method uses a second copy of the VM image as a virtual disk accessible via a smart network interface controller (NIC) of a second physical computing device to execute an operating system of the second physical computing device.

Claims (33)

1. A method for operating a physical server in a network, the method comprising:

storing a plurality of copies of one virtual machine (VM) image at a network-accessible storage;

storing, on a f first physical computing device that executes a hypervisor, a first copy of the VM image that is used to boot-up a first VM to execute on the hypervisor of the first physical computing device; and

using a smart network interface controller (NIC) of a second physical computing device to retrieve a second copy of the same VM image from the network-accessible storage in order to boot-up a second VM on the second physical computing device, wherein to boot-up the second VM on the second physical computing device, the smart NIC converts read requests that the smart NIC receives from the second physical computing device in a first format to read requests in a second format that the smart NIC forwards to the network-accessible storage in order to retrieve data regarding the second copy of the VM image.

2. The method of claim 1 , wherein the VM image is stored in a VM-specific format.

3. The method of claim 1 , wherein the smart NIC communicates with the second physical computing device via a peripheral component interface express (PCIE) interface that executes on the smart NIC, the PCIE interface enabling the smart NIC to appear to the second physical computing device as a non-volatile memory express (NVMe) device.

4. The method of claim 1 , wherein the smart NIC communicates with the network-accessible storage using NVMe over Fabrics (NVMeOF) protocol.

5. The method of claim 1 , wherein the VM image is a virtual machine disk (VMDK) file.

6. The method of claim 1 , wherein the smart NIC receives a command from a boot loader executing on the second computing device and streams data from the second copy of the same VM image in order to execute the VM to provide an operating system for the second computing device.

7. The method of claim 1 , wherein the network-accessible storage is a distributed storage.

8. The method of claim 1 , wherein the network-accessible storage is a storage associated with a compute manager for the network.

9. The method of claim 8 , wherein the compute manager manages the first and second VMs and the second physical computing device.

10. The method of claim 1 , wherein the network comprises a datacenter.

11. The method of claim 1 , wherein the network comprises a plurality of datacenters.

12. The method of claim 1 , wherein the smart NIC comprises an application specific integrated circuit (ASIC), a general purpose central processing unit (CPU), and a memory.

13. The method of claim 12 , wherein the CPU executes a PCIE interface that presents the smart NIC as a plurality of separate devices, the plurality of separate devices comprising at least one NIC and at least one NVMe storage device.

14. The method of claim 12 , wherein the ASIC is for processing data messages forwarded to and from the second physical computing device.

15. The method of claim 1 , wherein the smart NIC executes a network virtualization program for providing network virtualization services.

16. The method of claim 15 , wherein the network virtualization services comprise segregating data messages into different private networks that are defined over a datacenter's shared network and forwarding the data messages for the private networks.

17. The method of claim 15 , wherein the network virtualization services comprise at least one of network switching operations and network routing operations.

18. The method of claim 15 , wherein the network virtualization services comprise middlebox services.

19. A system comprising:

a network-accessible storage storing a plurality of copies of one virtual machine (VM) image;

a first physical computing device executing a hypervisor on which a f first VM runs by storing, on the first physical computing device, a first copy of the VM image that is used to boot-up the first VM; and

a second physical computing device comprising a smart network interface controller (NIC) used to retrieve a second copy of the same VM image from the network-accessible storage, wherein the second physical computing device boots-up a second VM by using the second copy of the same VM image, wherein to boot-up the second VM on the second physical computing device, the smart NIC converts read requests that the smart NIC receives from the second physical computing device in a first format to read requests in a second format that the smart NIC forwards to the network-accessible storage in order to retrieve data regarding the second copy of the VM image.

20. The system of claim 19 , wherein the VM image is stored in a VM-specific format.

21. The system of claim 19 , wherein the smart NIC communicates with the second physical computing device via a peripheral component interface express (PCIE) interface that executes on the smart NIC, the PCIE interface enabling the smart NIC to appear to the second physical computing device as a non-volatile memory express (NVMe) device.

22. The system of claim 19 , wherein the smart NIC receives a command from a boot loader executing on the second physical computing device and streams data from the second copy of the same VM image in order to execute an operating system of the second physical computing device.

23. The system of claim 19 , wherein:

the smart NIC comprises an application specific integrated circuit (ASIC), a general purpose central processing unit (CPU), and a memory;

the CPU executes a PCIE interface that presents the smart NIC as a plurality of separate devices, the plurality of separate devices comprising at least one NIC and at least one NVMe storage device;

the ASIC is for processing data messages forwarded to and from the second physical computing device; and

the smart NIC executes a network virtualization program for providing network virtualization services.

Assignments (2)
CHANGE OF NAME Recorded Feb 27, 2024
From: VMWARE, INC.
To: VMWARE LLC
Reel/Frame 066692/0103 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 30, 2020
From: VOLTZ, RENAUD B.
To: VMWARE, INC.
Reel/Frame 054495/0585 →
Continuity (3)
Provisional Application 63084534 · Sep 28, 2020
Provisional Application 63084536 · Sep 28, 2020
Related Publication 20220100542A1 · Mar 31, 2022
Cited By (1)
US 12,579,019