Local NVMe Virtualization for Multi-SSD Resource Isolation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing technologies face challenges in efficiently managing and optimizing the use of non-volatile memory express (NVMe) solid-state drives (SSDs) in server systems, particularly in terms of resource allocation, data security, and performance isolation across multiple virtual machines.
Innovation Solution
The implementation of a local non-volatile memory express virtualization (LNV) device that virtualizes hardware resources of multiple SSDs, presenting a virtual SSD device to host software while hiding the physical SSDs, thereby enabling efficient resource management, data security, and performance isolation.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If multiple physical SSDs are directly connected to host processors, then storage performance and resource utilization are improved, but device complexity and management difficulty increase
Solution Approach 1:
The patent introduces a virtualization device as an intermediary component between the host processor and multiple physical SSDs. This virtualization device manages the complexity of connecting multiple SSDs to the host by presenting a unified virtual storage interface, thereby improving resource utilization while reducing management complexity through abstraction.
Solution Approach 2:
The patent segments the storage system into multiple independent virtual storage devices, each representing a portion of the physical SSDs. This segmentation allows the host to access storage resources through multiple virtual interfaces simultaneously, improving resource utilization while maintaining manageable complexity through modular virtual device architecture.
2Speed
If physical SSDs are directly visible to host processors, then direct access performance is improved, but security and isolation between virtual machines deteriorate
Solution Approach 1:
The virtualization device acts as a security intermediary between the host processor and physical SSDs. It enables direct data access for performance while simultaneously providing security and isolation functions by controlling access rights and preventing unauthorized access between different virtual machines or hosts.
Solution Approach 2:
The patent creates virtual copies of physical storage devices that present identical interfaces and performance characteristics to host processors. These virtual copies maintain the speed of direct access while adding security and isolation layers, as each virtual copy can be independently managed and isolated from others.
3Adaptability or versatility
If a virtualization layer is introduced between host and SSDs, then resource management and security are improved, but system complexity and performance overhead increase
Solution Approach 1:
The virtualization device is designed with multi-functionality, handling resource management, security control, isolation, and performance optimization within a single component. This universality improves resource allocation flexibility while minimizing the increase in system complexity by consolidating multiple functions into one integrated device rather than requiring separate components for each function.
4Quantity of substance
If multiple SSDs are exposed to host processors, then storage capacity and versatility are improved, but performance isolation and quality of service deteriorate
Solution Approach 1:
The patent segments the aggregate storage capacity of multiple SSDs into separate virtual storage devices, each allocated to specific virtual machines or hosts. This segmentation maintains the total storage capacity while ensuring performance isolation, as each virtual device can be independently managed and prioritized without interfering with others.
Data Source
AI summary
A server system is provided that includes one or more compute nodes that include at least one processor and a host memory device. The server system further includes a plurality of solid-state drive (SSD) devices, a local non-volatile memory express virtualization (LNV) device, and a non-transparent (NT) switch for a peripheral component interconnect express (PCIe) bus that interconnects the plurality of SSD devices and the LNV device to the at least one processor of each compute node. The LNV device is configured to virtualize hardware resources of the plurality of SSD devices. The plurality of SSD devices are configured to directly access data buffers of the host memory device. The NT switch is configured to hide the plurality of SSD devices such that the plurality of SSD devices are not visible to the at least one processor of each compute node.


