# US 10,771,324 B2 · System and method for using virtual machine fabric profiles to reduce virtual machine downtime during migration in a high-performance computing environment

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 10,771,324 B2
- Document ID: US10771324B2
- Status: Granted
- Kind: B2
- Application number: 16/238,345
- Filed: 2019-01-02
- Published: 2019-05-09
- Granted: 2020-09-08
- Earliest claimed: 2016-01-27
- Assignees: Oracle International Corporation
- Applicants: Oracle International Corporation
- Inventors: Bjørn Dag Johnsen; Harald Høeg; Line Holen
- Web page: https://patentgrep.com/patent/US10771324B2

## CPC

- H04L 49/358: {Infiniband Switches}
- G06F 9/45558: {Hypervisor-specific management and integration aspects}
- G06F 9/4856: {resumption being on a different machine, e.g. task migration, virtual machine migration (G06F9/5088 takes precedence)}
- G06F 9/5077: {Logical partitioning of resources; Management or configuration of virtualized resources (specific details on emulation or internal functioning of virtual machines G06F9/455)}
- G06F 12/0806: Multiuser, multiprocessor or multiprocessing cache systems
- G06F 13/4022: {using switching circuits, e.g. switching matrix, connection or expansion network (G06F13/4009 takes precedence)}
- H04L 12/4641: {Virtual LANs, VLANs, e.g. virtual private networks [VPN] (LAN interconnection over a bridge based backbone H04L12/462; encapsulation techniques H04L12/4633; routing of packets H04L45/00; packet switches H04L49/00; virtual private networks for security H04L63/0272)}
- H04L 41/08: Configuration management of networks or network elements (address allocation H04L61/50)
- H04L 41/0803: Configuration setting
- H04L 41/0806: for initial configuration or provisioning, e.g. plug-and-play
- H04L 41/0813: characterised by the conditions triggering a change of settings
- H04L 41/0895: Configuration of virtualised networks or elements, e.g. virtualised network function or OpenFlow elements
- H04L 41/22: comprising specially adapted graphical user interfaces [GUI]
- H04L 41/50: Network service management, e.g. ensuring proper service fulfilment according to agreements
- H04L 45/484: using multiple routing trees
- H04L 45/64: using an overlay routing layer
- H04L 47/82: {Miscellaneous aspects}
- H04L 49/65: Re-configuration of fast packet switches
- H04L 61/5038: for local use, e.g. in LAN or USB networks, or in a controller area network [CAN]
- H04L 63/10: {for controlling access to devices or network resources}
- H04L 63/20: {for managing network security; network security policies in general (filtering policies H04L63/0227)}
- H04L 67/10: in which an application is distributed across nodes in the network (software deployment G06F8/60; multiprogramming arrangements G06F9/46)
- H04L 67/34: {involving the movement of software or configuration parameters (network booting or remote initial program loading [RIPL] G06F9/4416)}
- G06F 2009/4557: {Distribution of virtual machine instances; Migration and load balancing}
- G06F 2009/45579: {I/O management, e.g. providing access to device drivers or storage}
- G06F 2009/45583: {Memory management, e.g. access or allocation}
- G06F 2009/45595: {Network integration; Enabling network access in virtual machine instances}
- H04L 45/586: of virtual routers
- H04L 49/70: {Virtual switches}
- H04L 2101/645: Fibre channel identifiers
- H04L 2101/668: Internet protocol [IP] address subnets
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

Systems and methods for using a virtual machine fabric profiles to reduce virtual machine downtime during migration. An exemplary embodiment can provide a subnet manager (SM) and a virtual machine fabric profile that is accessible by the subnet manager, and where the virtual machine fabric profile includes a virtual host channel adapter (vHCA) configuration. The SM can receive a request to preregister the vHCA with a first physical host channel adapter (HCA) while the vHCA is already actively registered with a second physical HCA. The subnet manager can send the vHCA configuration to the first physical HCA for preregistration. After preregistration, the virtual link between the vHCA and a vSwitch of the first physical HCA can be left unestablished, until the SM determines that a virtual link between the vHCA and a vSwitch on the second physical HCA has been disconnected.

## Claims

### Claim 1

A method of reducing virtual machine downtime during virtual machine migration, comprising:
providing a first physical host channel adapter, the first physical host channel adapter configured to be physically connected to a network fabric;
sending, by the first physical host channel adapter and to a subnet manager connected to the network fabric, a request to preregister a virtual host channel adapter configuration with a first virtual function of the first physical host channel adapter,
wherein, when the request is received by the subnet manager, the virtual host channel adapter configuration is actively registered with a second virtual function of a second physical host channel adapter, and
wherein the active registration of the virtual host channel adapter configuration with the second virtual function of the second physical host channel adapter comprises a virtual link between the virtual host channel adapter configuration and a virtual switch of the second physical host channel adapter;
receiving, by the first physical host channel adapter and from the subnet manager, the virtual host channel adapter configuration for preregistration with the first virtual function;
receiving, by the first physical host channel adapter and from the subnet manager, a request to establish a new virtual link between the virtual host channel adapter configuration and a virtual switch of the first physical host channel adapter, wherein the request to establish the new virtual link is received after the subnet manager determines that the virtual link between the virtual host channel adapter configuration and the virtual switch of the second physical host channel adapter is disconnected;
establishing, by the first physical host channel adapter, the new virtual link; and
receiving, by the first physical host channel adapter and via a migration from the second physical host channel adapter, a virtual machine instance associated with the virtual host channel adapter configuration.

### Claim 2 (depends on 1)

The method of claim 1, further comprising:
providing the subnet manager adapter.

### Claim 3 (depends on 1)

The method of claim 1, wherein the virtual host channel adapter configuration is associated with a virtual machine fabric profile.

### Claim 4 (depends on 3)

The method of claim 3, wherein the virtual machine instance is associated with the virtual machine fabric profile.

### Claim 5 (depends on 4)

The method of claim 4, wherein the virtual machine fabric profile is stored in a cache in a memory of the subnet manager.

### Claim 6 (depends on 1)

The method of claim 1, wherein the virtual host channel adapter configuration includes a configuration of a virtual port defined by the virtual host channel adapter configuration.

### Claim 7 (depends on 6)

The method of claim 6, wherein the new virtual link between the virtual host channel adapter configuration and the virtual switch of the first physical host channel adapter is between the virtual port defined by the virtual host channel adapter configuration and the virtual switch of the first physical host channel adapter.

### Claim 8

A system for reducing virtual machine downtime during virtual machine migration, comprising:
a first physical host channel adapter physically connected to a network fabric, wherein the first physical host channel adapter operates to:
send a request to a subnet manager connected to the network fabric to preregister a virtual host channel adapter configuration with a first virtual function of the first physical host channel adapter,
wherein, when the request is received by the subnet manager, the virtual host channel adapter configuration is actively registered with a second virtual function of a second physical host channel adapter, and
wherein the active registration of the virtual host channel adapter configuration with the second virtual function of the second physical host channel adapter comprises a virtual link between the virtual host channel adapter configuration and a virtual switch of the second physical host channel adapter;
receive, from the subnet manager, the virtual host channel adapter configuration for preregistration with the first virtual function;
receive, from the subnet manager, a request to establish a new virtual link between the virtual host channel adapter configuration and a virtual switch of the first physical host channel adapter, wherein the request to establish the new virtual link is received after the subnet manager determines that the virtual link between the virtual host channel adapter configuration and the virtual switch of the second physical host channel adapter is disconnected;
establish the new virtual link; and
receive, via a migration from the second physical host channel adapter, a virtual machine instance associated with the virtual host channel adapter configuration.

### Claim 9 (depends on 8)

The system of claim 8, further comprising the subnet manager.

### Claim 10 (depends on 8)

The system of claim 8, wherein the virtual host channel adapter configuration is associated with a virtual machine fabric profile.

### Claim 11 (depends on 10)

The system of claim 10, wherein the virtual machine instance is associated with the virtual machine fabric profile.

### Claim 12 (depends on 11)

The system of claim 11, wherein the virtual machine fabric profile is stored in a cache in a memory of the subnet manager.

### Claim 13 (depends on 8)

The system of claim 8, wherein the virtual host channel adapter configuration includes a configuration of a virtual port defined by the virtual host channel adapter configuration.

### Claim 14 (depends on 13)

The system of claim 13, wherein the new virtual link between the virtual host channel adapter configuration and the virtual switch of the first physical host channel adapter is between the virtual port defined by the virtual host channel adapter configuration and the virtual switch of the first physical host channel adapter.

### Claim 15

A non-transitory computer readable storage medium, including instructions stored thereon for reducing virtual machine downtime during virtual machine migration, which, when read and executed by one or more processors of a first physical host channel adapter physically connected to a network fabric, cause the first physical host channel adapter to perform steps comprising:
sending, by the first physical host channel adapter and to a subnet manager connected to the network fabric, a request to preregister a virtual host channel adapter configuration with a first virtual function of the first physical host channel adapter,
wherein, when the request is received by the subnet manager, the virtual host channel adapter configuration is actively registered with a second virtual function of a second physical host channel adapter, and
wherein the active registration of the virtual host channel adapter configuration with the second virtual function of the second physical host channel adapter comprises a virtual link between the virtual host channel adapter configuration and a virtual switch of the second physical host channel adapter;
receiving, by the first physical host channel adapter and from the subnet manager, the virtual host channel adapter configuration for preregistration with the first virtual function;
receiving, by the first physical host channel adapter and from the subnet manager, a request to establish a new virtual link between the virtual host channel adapter configuration and a virtual switch of the first physical host channel adapter, wherein the request to establish the new virtual link is received after the subnet manager determines that the virtual link between the virtual host channel adapter configuration and the virtual switch of the second physical host channel adapter is disconnected;
establishing, by the first physical host channel adapter, the new virtual link; and
receiving, by the first physical host channel adapter and via a migration from the second physical host channel adapter, a virtual machine instance associated with the virtual host channel adapter configuration.

### Claim 16 (depends on 15)

The non-transitory computer readable storage medium of claim 15, wherein the virtual host channel adapter configuration is associated with a virtual machine fabric profile.

### Claim 17 (depends on 16)

The non-transitory computer readable storage medium of claim 16, wherein the virtual machine instance is associated with the virtual machine fabric profile.

### Claim 18 (depends on 17)

The non-transitory computer readable storage medium of claim 17, the steps further comprising:
storing the virtual machine fabric profile in a cache in a memory of the subnet manager.

### Claim 19 (depends on 15)

The non-transitory computer readable storage medium of claim 15, the steps further comprising:
including a configuration of a virtual port defined by the virtual host channel adapter configuration in the virtual host channel adapter configuration.

### Claim 20 (depends on 19)

The non-transitory computer readable storage medium of claim 19, wherein the new virtual link between the virtual host channel adapter configuration and the virtual switch of the first physical host channel adapter is between the virtual port defined by the virtual host channel adapter configuration and the virtual switch of the first physical host channel adapter.
