User Space Data Flow for Storage Systems
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional network storage systems face inefficiencies and latency due to hypervisor processing and contention among multiple storage servers accessing hardware devices, which hinder maximum performance and fault tolerance.
Innovation Solution
The implementation of Excessive Symmetric Multi-Processing (XSMP) allows multiple user space processes to share a read-only address space that maps the entire physical memory, enabling direct access to hardware devices and efficient communication through synchronous non-blocking queues, thereby achieving fault isolation and high performance.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If hypervisor processing is used to manage multiple storage servers, then fault tolerance is provided through redundancy, but system latency increases and performance efficiency decreases
Solution Approach 1:
The patent extracts the hypervisor layer from the system architecture and replaces it with direct user-space process execution. Multiple storage server processes run directly on the host operating system without hypervisor mediation, eliminating the performance overhead while maintaining fault tolerance through process-level redundancy and isolation.
Solution Approach 2:
The patent introduces a shared read-only address space as an intermediary mechanism between multiple user-space processes and hardware devices. This shared address space enables efficient communication and coordination without requiring hypervisor intervention, reducing latency while preserving fault tolerance capabilities.
2Reliability
If multiple storage servers access hardware devices through hypervisor, then fault isolation is achieved, but contention increases and performance efficiency decreases
Solution Approach 1:
The patent segments the storage server functionality into multiple independent user-space processes, each with its own address space. These processes can access hardware devices independently through the shared read-only address space, achieving fault isolation at the process level while eliminating hypervisor-induced contention and improving overall performance efficiency.
3Loss of time
If shared read-only address space is implemented among multiple user space processes, then direct hardware device access is enabled and latency is reduced, but system complexity increases
Solution Approach 1:
The patent merges multiple user-space processes into a shared read-only address space that maps the entire physical memory. This consolidation enables direct hardware device access for all processes simultaneously, reducing access latency while the shared nature of the address space actually simplifies the system by eliminating the need for complex hypervisor-mediated memory management.
Data Source
AI summary
Fault isolation capabilities made available by user space can be provided for a embedded network storage system without sacrificing efficiency. By giving user space processes direct access to specific devices (e.g., network interface cards and storage adapters), processes in a user space can initiate Input/Output requests without issuing system calls (and entering kernel mode). The multiple user spaces processes can initiate requests serviced by a user space device driver by sharing a read-only address space that maps the entire physical memory one-to-one. In addition, a user space process can initiate communication with another user space process by use of transmit and receive queues similar to transmit and receiver queues used by hardware devices. And, a mechanism of ensuring that virtual addresses that work in one address space reference the same physical page in another address space is used.


