10659340

System and Method for Supporting Vm Migration Between Subnets in a High Performance Computing Environment

PublishedMay 19, 2020
Assigneenot available in USPTO data we have
Technical Abstract

Patent Claims
17 claims

Legal claims defining the scope of protection. Each claim is shown in both the original legal language and a plain English translation.

Claim 1

Original Legal Text

1. A method for supporting virtual machine migration in a high performance computing environment, comprising: providing, at one or more computers, including one or more microprocessors a network fabric, the network fabric comprising a first subnet, the first subnet comprising a first set of network switches, the first set of network switches comprising a gateway switch, the gateway switch having access to a memory; a second subnet, the second subnet comprising a second set of network switches; a virtual machine attached to the first subnet via a first virtual function, the virtual machine being associated with a first plurality of addresses, the first plurality of addresses comprising at least a global unique identifier (GUID), a global identifier (GID), and a destination local identifier (DLID); and a global fabric manager, the global fabric manager having administrative control within the first subnet and second subnet; detaching the virtual machine from the first virtual function; migrating the virtual machine from the first subnet to the second subnet, wherein after migration the virtual machine is associated with a second plurality of addresses, the second plurality of addresses comprising the GUID, a second GID, and a second DLID, wherein the second GID is different from the GID, and wherein the second DLID is different from the DLID; attaching the virtual machine to the second subnet via a second virtual function; adding a temporary entry to the memory, the temporary entry comprising a set of addresses comprising the first plurality of addresses and the second plurality of addresses of virtual machine; after migrating the virtual machine, receiving, at the gateway switch of the first subnet, a packet addressed to the virtual machine at the first plurality of addresses; performing a lookup within the memory to find the second plurality of addresses of the virtual machine; and updating a header of the received packet with the second plurality of addresses of the virtual machine.

Plain English Translation

This invention relates to virtual machine (VM) migration in high-performance computing (HPC) environments, addressing the challenge of maintaining seamless communication during VM relocation across different network subnets. In HPC systems, VMs often need to migrate between subnets for load balancing, maintenance, or resource optimization, but traditional methods disrupt connectivity due to address changes. The invention provides a network fabric with multiple subnets, each containing network switches and a gateway switch with memory access. A global fabric manager oversees both subnets. A VM initially attaches to the first subnet via a virtual function and is assigned addresses including a GUID, GID, and DLID. During migration, the VM detaches from the first subnet, moves to the second subnet, and reattaches via a new virtual function, receiving updated GID and DLID while retaining the GUID. The gateway switch's memory stores a temporary entry mapping the VM's old and new addresses. When a packet arrives at the first subnet addressed to the VM's old addresses, the gateway switch looks up the new addresses in memory and updates the packet header before forwarding it to the VM in the second subnet. This ensures uninterrupted communication during migration without requiring external intervention.

Claim 2

Original Legal Text

2. The method of claim 1 , wherein performing the lookup comprises: looking up the second plurality of addresses based upon the GUID of the migrated virtual machine.

Plain English Translation

A system and method for managing virtual machine (VM) migration in a computing environment involves tracking and accessing migrated VMs using globally unique identifiers (GUIDs). The technology addresses the challenge of efficiently locating and managing VMs after migration, particularly in distributed or cloud-based systems where VMs may be relocated across different hosts or storage systems. The method includes generating a GUID for a VM before migration, storing this GUID in a lookup table or database, and using the GUID to retrieve the VM's new address or location after migration. This ensures that applications, services, or administrators can reliably access the VM regardless of its physical or logical location. The lookup process involves querying the stored GUID to obtain the updated address or addresses associated with the migrated VM, enabling seamless connectivity and management. The system may also support multiple addresses per VM, allowing for redundancy or load balancing. The method improves VM mobility, reduces downtime, and simplifies administration in dynamic computing environments.

Claim 3

Original Legal Text

3. The method of claim 2 , wherein the GUID of the virtual machine remains unchanged throughout the migration.

Plain English Translation

A system and method for virtual machine migration ensures seamless transfer of virtual machines (VMs) between host systems while maintaining the globally unique identifier (GUID) of the VM throughout the process. The technology addresses the challenge of preserving VM identity during migration, which is critical for maintaining consistency in distributed systems, licensing, and tracking. The method involves transferring the VM's state, including its GUID, from a source host to a target host without altering the identifier. This ensures that the VM retains its unique identity post-migration, preventing disruptions in services or applications that rely on the GUID for authentication, authorization, or tracking. The migration process may include suspending the VM, transferring its memory and storage state, and resuming execution on the target host, all while ensuring the GUID remains unchanged. This approach is particularly useful in cloud computing environments, data centers, and enterprise IT systems where VM mobility is essential for load balancing, maintenance, or disaster recovery. The solution eliminates the need for post-migration reconfiguration or re-registration of the VM, reducing downtime and operational overhead.

Claim 4

Original Legal Text

4. The method of claim 3 , wherein the memory comprises a ternary content-addressable memory (TCAM).

Plain English Translation

A system and method for high-speed data processing in networking applications addresses the challenge of efficiently matching and classifying data packets in real-time. The invention utilizes a ternary content-addressable memory (TCAM) to enable rapid parallel searches for pattern matching, which is critical for tasks such as packet filtering, access control, and deep packet inspection. TCAM allows for flexible matching of data patterns by storing ternary values (0, 1, and don’t care) and comparing them against incoming data in a single clock cycle, significantly improving throughput compared to traditional memory architectures. The system integrates the TCAM with a processing unit that dynamically updates the memory with new rules or patterns, ensuring adaptability to changing network conditions. The method further includes error handling mechanisms to manage mismatches or conflicts during pattern searches, enhancing reliability. By leveraging TCAM’s parallel search capabilities, the invention provides a scalable solution for high-performance networking applications, reducing latency and improving efficiency in data packet processing.

Claim 5

Original Legal Text

5. The method of claim 1 , further comprising: removing the temporary entry from the memory after a period of time.

Plain English Translation

A system and method for managing temporary data entries in a memory storage device addresses the challenge of efficiently handling transient data while optimizing memory usage. The invention involves storing a temporary entry in a memory, where the entry is associated with a specific time duration. The system monitors the elapsed time since the entry was stored and automatically removes the entry from the memory once the predefined period expires. This ensures that temporary data does not persist indefinitely, preventing memory clutter and improving system performance. The method may also include tracking multiple temporary entries, each with distinct time durations, and removing each entry upon expiration of its respective time period. The system may further validate the entry before removal to confirm its temporary status, ensuring only intended transient data is deleted. This approach is particularly useful in applications requiring dynamic data management, such as caching, session management, or temporary file handling, where timely removal of outdated or unnecessary data is critical. The invention enhances memory efficiency by automating the cleanup process, reducing manual intervention, and minimizing the risk of memory leaks or storage overload.

Claim 6

Original Legal Text

6. The method of claim 5 , wherein the period of time is determined based upon a length of time to update the network fabric with the second plurality of addresses.

Plain English Translation

Image processing and network fabric management. The problem addressed is efficiently updating network devices with new address information. This method involves a period of time that is specifically determined by how long it takes to update a network fabric with a second set of addresses. The duration of this time period is not arbitrary but is dynamically set based on the practical requirements of network fabric synchronization. This ensures that the update process is coordinated with the network's ability to ingest the new address data.

Claim 7

Original Legal Text

7. A system for supporting virtual machine migration in a high performance computing environment, the system comprising: a computer environment comprising: a network fabric, the network fabric comprising a first subnet, the first subnet comprising a first set of network switches, the first set of network switches comprising a gateway switch, the gateway switch having access to a memory; a second subnet, the second subnet comprising a second set of network switches; a virtual machine attached to the first subnet via a first virtual function, the virtual machine being associated with a first plurality of addresses, the first plurality of addresses comprising at least a global unique identifier (GUID), a global identifier (GID), and a destination local identifier (DLID); and a global fabric manager, the global fabric manager having administrative control within the first subnet and second subnet; wherein the virtual machine is configured to detach from the first virtual function; wherein the virtual machine is migrated from the first subnet to the second subnet, wherein after migration the virtual machine is associated with a second plurality of addresses, the second plurality of addresses comprising the GUID, a second GID, and a second DLID, wherein the second GID is different from the GID, and wherein the second DLID is different from the DLID; wherein the virtual machine is attached to the second subnet via a second virtual function; wherein, upon the migration, a temporary entry to the memory is added, the temporary entry comprising a set of addresses comprising the first plurality of addresses and the second plurality of addresses of virtual machine; wherein upon migrating the virtual machine, the gateway switch of the first subnet receives a packet addressed to the virtual machine at the first plurality of addresses; wherein upon receiving the packet, the gateway switch performs a lookup within the memory to find the second plurality of addresses of the virtual machine; and wherein a header of the received packet is updated with the second plurality of addresses of the virtual machine.

Plain English Translation

A system supports virtual machine migration in high-performance computing environments by enabling seamless movement of virtual machines between network subnets while maintaining communication continuity. The system includes a network fabric with at least two subnets, each containing multiple network switches, including a gateway switch with access to a shared memory. A virtual machine operates within the first subnet, connected via a virtual function and assigned multiple addresses, including a globally unique identifier (GUID), a global identifier (GID), and a destination local identifier (DLID). During migration, the virtual machine detaches from its current virtual function, moves to the second subnet, and reattaches via a new virtual function. Post-migration, the virtual machine retains its GUID but receives new GID and DLID values. The system ensures uninterrupted communication by storing a temporary entry in the gateway switch's memory, mapping the original and new addresses. When a packet arrives at the gateway switch addressed to the virtual machine's old addresses, the switch performs a lookup, retrieves the new addresses, and updates the packet header accordingly. This approach minimizes disruption during migration, allowing the virtual machine to continue receiving packets without requiring external intervention or address changes.

Claim 8

Original Legal Text

8. The system of claim 7 , wherein performing the lookup comprises: looking up the second plurality of addresses based upon the GUID of the migrated virtual machine.

Plain English Translation

A system for managing virtual machine (VM) migration in a computing environment addresses the challenge of tracking and accessing VM resources after migration. The system includes a storage device storing a plurality of addresses associated with a first virtual machine and a second virtual machine, where the second virtual machine is a migrated version of the first virtual machine. Each address in the plurality is associated with a globally unique identifier (GUID) of the migrated virtual machine. The system also includes a processor configured to perform a lookup operation to retrieve the second plurality of addresses based on the GUID of the migrated virtual machine. This lookup allows the system to efficiently locate and manage resources associated with the migrated VM, ensuring continuity and proper resource allocation in the new environment. The system may also include a network interface for communicating with the storage device and other components, facilitating seamless access to the stored addresses. The lookup process ensures that the correct addresses are retrieved, enabling the system to maintain accurate tracking of VM resources post-migration. This solution improves resource management and reduces errors in VM migration scenarios.

Claim 9

Original Legal Text

9. The system of claim 8 , wherein the GUID of the virtual machine remains unchanged throughout the migration.

Plain English Translation

A system for virtual machine migration ensures the globally unique identifier (GUID) of the virtual machine remains unchanged during the migration process. The system includes a source host and a destination host, each capable of running virtual machines. The source host executes a virtual machine with a GUID, and the system migrates the virtual machine from the source host to the destination host while preserving the GUID. This involves transferring the virtual machine's state, configuration, and data to the destination host without altering the GUID. The system may also include mechanisms to synchronize the virtual machine's state between the source and destination hosts during migration, ensuring continuity of operations. The unchanged GUID allows the virtual machine to maintain consistent identity and compatibility with external systems, such as management tools or network services, throughout the migration. This approach prevents disruptions in services or dependencies that rely on the GUID for identification. The system may further include error handling to detect and resolve issues during migration, ensuring the GUID remains intact even if the migration is interrupted or fails. The solution addresses the problem of maintaining virtual machine identity during migration, which is critical for environments requiring high availability and seamless transitions.

Claim 10

Original Legal Text

10. The system of claim 9 , wherein the memory comprises a ternary content-addressable memory (TCAM).

Plain English Translation

A system enables seamless virtual machine (VM) migration between subnets in a High Performance Computing (HPC) environment. Initially, a VM is connected to a first subnet with network addresses, including a Global Unique Identifier (GUID), Global ID (GID), and Destination Local ID (DLID). During migration to a second subnet, the VM's GID and DLID change, but its GUID remains constant. A global fabric manager orchestrates this move. Post-migration, a temporary entry is stored in a memory within the first subnet's gateway switch, containing both the VM's original and new network addresses. If a packet arrives at the first subnet's gateway switch, addressed to the VM's original location, the gateway switch performs a lookup using the VM's *unchanged GUID* to find its new addresses in memory. The packet's header is then updated with these new addresses to reach the migrated VM. This memory within the gateway switch is a Ternary Content-Addressable Memory (TCAM). ERROR (embedding): Error: Failed to save embedding: Could not find the 'embedding' column of 'patent_claims' in the schema cache

Claim 11

Original Legal Text

11. The system of claim 7 , wherein the temporary entry to the memory is removed after a period of time.

Plain English Translation

A system for managing temporary data entries in a memory storage device addresses the challenge of efficiently handling transient data while minimizing resource usage. The system includes a memory configured to store data entries and a controller that processes these entries. The controller is designed to create temporary entries in the memory, which are distinct from permanent data storage. These temporary entries are automatically removed after a predefined period of time, ensuring that the memory does not become cluttered with outdated or unnecessary data. The system may also include a timer mechanism to track the duration for which each temporary entry remains in the memory, triggering its deletion once the specified time elapses. This approach optimizes memory utilization by preventing long-term storage of temporary data, which is particularly useful in applications where transient data must be retained for a limited time before being discarded. The system may further include additional features such as user-defined time thresholds or automated cleanup processes to enhance flexibility and efficiency in managing temporary data storage.

Claim 12

Original Legal Text

12. The system of claim 11 , wherein the period of time is determined based upon a length of time to update the network fabric with the second plurality of addresses.

Plain English Translation

The invention relates to network systems, specifically addressing the challenge of efficiently updating network fabric with new addresses while minimizing disruption. The system includes a network fabric with a first set of addresses and a second set of addresses to be updated. The system determines a period of time required to update the network fabric with the second set of addresses, ensuring the update process is completed within this period to maintain network stability. This period is dynamically calculated based on factors such as network traffic, available bandwidth, and the complexity of the address update process. The system may also include mechanisms to monitor the progress of the update and adjust the period of time if necessary to prevent network congestion or downtime. The invention aims to optimize network performance by ensuring seamless address updates without interrupting ongoing network operations.

Claim 13

Original Legal Text

13. A non-transitory machine readable medium, including instructions stored thereon for supporting virtual machine migration in a high performance computing environment, which when read and executed by one or more computers caused the one or more computers to perform steps comprising: providing, at one or more computers, including one or more microprocessors a network fabric, the network fabric comprising a first subnet, the first subnet comprising a first set of network switches, the first set of network switches comprising a gateway switch, the gateway switch having access to a memory; a second subnet, the second subnet comprising a second set of network switches; a virtual machine attached to the first subnet via a first virtual function, the virtual machine being associated with a first plurality of addresses, the first plurality of addresses comprising at least a global unique identifier (GUID), a global identifier (GID), and a destination local identifier (DLID); and a global fabric manager, the global fabric manager having administrative control within the first subnet and second subnet; detaching the virtual machine from the first virtual function; migrating the virtual machine from the first subnet to the second subnet, wherein after migration the virtual machine is associated with a second plurality of addresses, the second plurality of addresses comprising the GUID, a second GID, and a second DLID, wherein the second GID is different from the GID, and wherein the second DLID is different from the DLID; attaching the virtual machine to the second subnet via a second virtual function; adding a temporary entry to the memory, the temporary entry comprising a set of addresses comprising the first plurality of addresses and the second plurality of addresses of virtual machine; after migrating the virtual machine, receiving, at the gateway switch of the first subnet, a packet addressed to the virtual machine at the first plurality of addresses; performing a lookup within the memory to find the second plurality of addresses of the virtual machine; and updating a header of the received packet with the second plurality of addresses of the virtual machine.

Plain English Translation

This invention relates to virtual machine (VM) migration in high-performance computing (HPC) environments, addressing the challenge of maintaining seamless communication during VM relocation across network subnets. The system includes a network fabric with multiple subnets, each containing a set of network switches, including a gateway switch with access to a memory. A VM is initially attached to a first subnet via a virtual function and is associated with a set of addresses, including a global unique identifier (GUID), a global identifier (GID), and a destination local identifier (DLID). A global fabric manager oversees administrative control across subnets. During migration, the VM is detached from the first subnet, moved to a second subnet, and reattached via a new virtual function. The VM is then assigned a new set of addresses, retaining the GUID but updating the GID and DLID. A temporary entry is added to the gateway switch's memory, mapping the old and new addresses. When a packet is received at the gateway switch addressed to the VM's old addresses, the system performs a lookup, identifies the new addresses, and updates the packet header accordingly. This ensures uninterrupted communication during VM migration.

Claim 14

Original Legal Text

14. The non-transitory machine readable medium of claim 13 , wherein performing the lookup comprises: looking up the second plurality of addresses based upon the GUID of the migrated virtual machine.

Plain English Translation

The invention relates to virtual machine (VM) migration and address translation in computing systems. The problem addressed is efficiently managing address lookups for migrated virtual machines to ensure proper communication and resource access after migration. When a virtual machine is migrated from one host to another, its memory addresses may change, requiring a mechanism to translate these addresses correctly. The invention provides a method for performing address lookups based on a globally unique identifier (GUID) associated with the migrated virtual machine. This GUID is used to retrieve a second set of addresses, which are the new addresses assigned to the VM after migration. The lookup process ensures that the system can accurately map the original addresses to the new addresses, maintaining seamless operation of the VM in its new environment. The invention also includes a non-transitory machine-readable medium storing instructions for performing this lookup operation, which may involve querying a database or a translation table that associates the GUID with the updated address information. This approach improves the efficiency and reliability of address translation in virtualized environments, particularly in scenarios involving frequent VM migrations.

Claim 15

Original Legal Text

15. The non-transitory machine readable medium of claim 14 , wherein the GUID of the virtual machine remains unchanged throughout the migration.

Plain English Translation

A system and method for managing virtual machine (VM) migration ensures the globally unique identifier (GUID) of a VM remains unchanged during migration between physical hosts. The technology addresses the challenge of maintaining consistent identification of VMs in distributed computing environments, where migration is necessary for load balancing, maintenance, or fault tolerance. The system includes a migration module that transfers the VM's state, configuration, and data from a source host to a target host while preserving the original GUID. This prevents disruptions in services that rely on the VM's unique identifier, such as licensing systems, monitoring tools, or inter-VM communication protocols. The migration process may involve suspending the VM, transferring its memory and disk state, and resuming execution on the target host without altering the GUID. The system may also include a GUID validation mechanism to verify consistency before and after migration. This approach ensures seamless migration without requiring external systems to update references to the VM, improving reliability and reducing administrative overhead. The solution is applicable in cloud computing, virtualized data centers, and enterprise IT environments where VM mobility is critical.

Claim 16

Original Legal Text

16. The non-transitory machine readable medium of claim 15 , wherein the memory comprises a ternary content-addressable memory (TCAM).

Plain English Translation

A system for high-speed data processing uses a non-transitory machine-readable medium storing instructions that, when executed, perform a method for managing data in a memory. The memory is configured to store data entries and is optimized for fast search and retrieval operations. Specifically, the memory includes a ternary content-addressable memory (TCAM), which allows for efficient pattern matching and search operations by comparing input search keys against stored data entries. The TCAM can handle ternary values (0, 1, and don’t care) in its comparisons, enabling flexible and rapid searches. The system further includes a controller that processes data entries, updates the memory, and performs search operations based on input queries. The controller may also handle data compression, error correction, or other memory management tasks to enhance performance. The use of TCAM improves search efficiency, particularly in applications requiring fast lookups, such as network routing, packet filtering, or database indexing. The system ensures reliable and scalable data management by leveraging the TCAM’s parallel search capabilities, reducing latency and improving throughput in high-performance computing environments.

Claim 17

Original Legal Text

17. The non-transitory machine readable medium of claim 13 , the steps further comprising: removing the temporary entry from the memory after a period of time; wherein the period of time is determined based upon a length of time to update the network fabric with the second plurality of addresses.

Plain English Translation

A system and method for managing network address updates in a computing environment involves dynamically updating network fabric configurations to accommodate changes in network addresses. The technology addresses the challenge of efficiently propagating address changes across a network fabric while minimizing disruptions and ensuring consistency. The method includes generating a temporary entry in memory to store a second plurality of addresses, which are used to update the network fabric. This temporary entry is retained for a specific period, determined by the time required to fully propagate the address updates across the network fabric. Once the updates are complete, the temporary entry is removed from memory to free up resources and maintain system efficiency. The approach ensures that the network fabric remains synchronized with the latest address configurations without unnecessary delays or redundant data retention. The system may also include mechanisms to monitor the progress of address updates and adjust the retention period dynamically based on network conditions or performance metrics. This method is particularly useful in large-scale or distributed computing environments where network address changes must be managed efficiently to avoid service interruptions.

Patent Metadata

Filing Date

Unknown

Publication Date

May 19, 2020

Inventors

Bjørn Dag Johnsen
Arvind Srinivasan
Bartosz Bogdanski

Want to explore more patents?

Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.

Citation & reuse

Analysis on this page is generated by Patentable — an AI-powered patent intelligence platform. AI-generated summaries, explanations, FAQs, and analysis may be reused with attribution and a visible link back to the canonical URL below. Patent abstracts and claims are USPTO public domain.

Cite as: Patentable. “SYSTEM AND METHOD FOR SUPPORTING VM MIGRATION BETWEEN SUBNETS IN A HIGH PERFORMANCE COMPUTING ENVIRONMENT” (10659340). https://patentable.app/patents/10659340

© 2026 Nomic Interactive Technology LLC. Machine-readable context available at /api/llm-context/10659340. See llms.txt for full attribution policy.