Guest FTL for Virtual Machine SSD Isolation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional host systems with flash translation layers (FTL) do not allow virtual machines to exclusively operate memory blocks of solid state drives (SSDs), limiting direct access and security for virtual machine operations.

Innovation Solution

Implementing a guest FTL instance on a virtual machine and a host FTL driver on the host operating system to convert logical block addresses to physical addresses, enabling direct access and secure operations on SSDs by translating requests into hardware commands executable by the SSD.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If the FTL is implemented on the host system, then the host system can manage the SSD, but virtual machines cannot exclusively operate memory blocks of the SSD

Engineering Contradiction:
ImproveVirtual machine access to SSDVSAvoidData security and isolation
Core Design Contradiction:
Ease of operationVSReliability

Solution Approach 1:

The FTL functionality is segmented into two parts: a guest FTL driver running within the virtual machine and a host FTL driver running on the host system. The guest FTL driver handles virtual machine-specific address translation and access control, while the host FTL driver manages overall SSD control. This segmentation allows virtual machines to exclusively operate their designated memory blocks while maintaining data security through hierarchical management.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The guest FTL driver acts as an intermediary between the virtual machine and the host FTL driver. It receives access requests from the virtual machine, translates logical block addresses to physical addresses, and forwards them to the host FTL driver. This intermediary layer enables direct virtual machine access to SSD memory blocks while maintaining security through address translation and access control mechanisms.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If virtual machines can directly access SSD physical addresses, then performance improves, but access control and security become more complex

Engineering Contradiction:
ImproveSSD access performanceVSAvoidAccess control mechanism
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The guest FTL driver performs preliminary address translation by converting logical block addresses to physical addresses before requests reach the host system. It also pre-establishes access control rules for each virtual machine's designated memory blocks. This preliminary action enables direct high-performance access while simplifying host-side control, as the complex address translation and access control are handled in advance by the guest FTL driver.

Inventive Principle:
Principle #10Preliminary action

3Reliability

If the host system manages all SSD operations, then centralized control is maintained, but virtual machine isolation and exclusive operation are limited

Engineering Contradiction:
ImproveVirtual machine isolationVSAvoidDirect SSD operation by virtual machine
Core Design Contradiction:
ReliabilityVSEase of operation

Solution Approach 1:

Each virtual machine is assigned a specific guest FTL driver instance with local control over its designated SSD memory blocks. The guest FTL driver provides localized address translation and access control tailored to each virtual machine's needs. This local quality approach maintains virtual machine isolation while enabling direct operation, as each virtual machine manages its own access to assigned memory blocks through its dedicated guest FTL driver.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS11599377B2Open-channel storage device management with FTL on virtual machine
Publication Date: 2023.03.07 CLOUD INTELLIGENCE ASSETS HOLDING (SINGAPORE) PTE LTD
  • US11599377B2 patent drawing
  • US11599377B2 patent drawing
  • US11599377B2 patent drawing

AI summary

Embodiments of the disclosure provide systems and methods accessing a storage device of a host machine. The method can include: receiving, via a first guest flash translation layer (FTL) instance, a first request for accessing the storage device from a first virtual machine running on a host machine, wherein the first request comprises a first physical address of the storage device; transmitting, via the first FTL instance, the first request to a host FTL driver; converting, via the host FTL driver, the first request into a first hardware command; transmitting, via the host FTL driver, the first hardware command to the storage device; and executing, via the solid state drive, the first hardware command.