SmartNIC Namespace ID Preservation for Live VM Migration

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing distributed block storage systems face challenges in maintaining uninterrupted storage transactions during the migration of virtualized execution environments across different computing platforms, as they often require changes in namespace IDs and access permissions, leading to potential disruptions and complexities in managing storage transactions.

Innovation Solution

The implementation of SmartNICs with NVMe-oF offload engines and advanced network interface controllers that manage namespace IDs and access permissions, allowing for live migration of virtualized execution environments while preserving requester and target access permissions and media formats, ensuring continuous storage transactions without disruptions.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If virtualized execution environments are migrated across different computing platforms, then resource utilization and flexibility are improved, but storage transaction continuity and namespace identifier consistency deteriorate

Engineering Contradiction:
Improvemigration capabilityVSAvoidstorage transaction continuity
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The patent introduces network interface controllers (NICs) with NVMe-oF offload engines as intermediary components between computing platforms and storage systems. These NICs maintain namespace identifiers and access permissions during migration, acting as mediators that preserve storage transaction continuity while enabling platform mobility. The NICs translate and manage I/O operations across different platforms without requiring namespace ID changes.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent replaces traditional CPU-based storage I/O handling with hardware-accelerated NVMe-oF offload engines in network interface controllers. This substitution moves storage transaction management from software (CPU) to hardware (NIC), enabling persistent namespace identifiers and access permissions to be maintained during virtual environment migration without CPU involvement in the actual data transfer.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

2Adaptability or versatility

If namespace identifiers are changed during migration, then adaptability to different platforms is improved, but storage transaction disruption increases

Engineering Contradiction:
Improveplatform compatibilityVSAvoidtransaction disruption time
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The patent performs preliminary configuration of network interface controllers with NVMe-oF offload engines before migration occurs. These pre-configured NICs are ready to maintain namespace identifiers and access permissions immediately upon migration, eliminating the need for post-migration namespace reconfiguration and minimizing transaction disruption time.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent changes the fundamental parameter of how storage transactions are managed by introducing hardware-offloaded namespace identifier maintenance. Instead of software-managed namespace IDs that must be recreated during migration, the hardware NICs preserve these identifiers as persistent configuration, allowing platform migration without parameter changes to storage transactions.

Inventive Principle:
Principle #35Parameter changes

3Ease of operation

If CPU-based storage transaction management is used, then ease of software control is improved, but processing throughput and CPU bottlenecking worsen

Engineering Contradiction:
Improvesoftware control flexibilityVSAvoidstorage I/O throughput
Core Design Contradiction:
Ease of operationVSProductivity

Solution Approach 1:

The patent substitutes CPU-based software storage transaction management with hardware-based NVMe-oF offload engines in network interface controllers. This replacement moves computationally intensive I/O operations from CPU to dedicated hardware, dramatically increasing storage I/O throughput while maintaining software control flexibility through configuration interfaces of the offload engines.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

Solution Approach 2:

The patent segments storage transaction processing into separate functional components: CPU handles high-level management and coordination, while hardware NICs with NVMe-oF offload engines handle low-level I/O operations. This segmentation allows each component to optimize its function, with hardware processing bulk I/O operations independently of CPU, thereby increasing overall throughput.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS11941458B2Maintaining storage namespace identifiers for live virtualized execution environment migration
Publication Date: 2024.03.26 SK HYNIX NAND PRODUCT SOLUTIONS CORP
  • US11941458B2 patent drawing
  • US11941458B2 patent drawing
  • US11941458B2 patent drawing

AI summary

Examples described herein relate to migrating a virtualized execution environment from a first platform to a second platform while retaining use of namespace identifiers and permitting issuance of storage transactions by the virtualized execution environment. The first platform can include a first central processing unit or a first network interface. The second platform can include a central processing unit that is different that the first central processing unit and a network interface that is the same or different than the first network interface. The second platform can retain access permissions and target media format independent of one or more identifiers associated with the migrated virtualized execution environment at the second platform. Unperformed storage transactions can be migrated to the second platform for execution.