Lightweight Kernel Driver for Virtual Storage Routing Overhead
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing storage systems face inefficiencies due to complex routing strategies that impact performance and require frequent kernel updates, especially in container environments, leading to increased communication overhead and administrative complications.
Innovation Solution
A lightweight kernel driver is implemented to manage storage routing using a reduced set of code instructions, maintaining a routing table that is updated from the storage devices, thereby reducing the need for kernel updates and optimizing performance.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If complex routing strategies are implemented in the kernel to manage storage requests, then storage system functionality and adaptability are improved, but kernel complexity increases and frequent updates are required
Solution Approach 1:
The patent extracts the complex routing logic from the kernel space and places it in user space as a library. The kernel driver becomes lightweight, only handling basic I/O operations, while the complex routing algorithms reside in separately compilable user-space code that can be updated without kernel modifications.
Solution Approach 2:
The patent introduces a user-space library as an intermediary between the kernel driver and the storage routing logic. This library acts as a mediator that handles complex routing decisions, allowing the kernel to remain simple while still achieving sophisticated storage management through the intermediary layer.
2Productivity
If complex routing algorithms are implemented in the kernel, then storage request routing capability is improved, but transmission overhead increases
Solution Approach 1:
The patent segments the storage system into distinct layers: a lightweight kernel driver for basic I/O handling and a user-space library for complex routing logic. This segmentation allows each component to be optimized independently, reducing overall transmission overhead while maintaining routing capability.
3Adaptability or versatility
If frequent kernel updates are performed to adapt to storage algorithm changes, then storage system adaptability is improved, but system stability and administrative complexity worsen
Solution Approach 1:
The patent extracts routing algorithms from the kernel to user space, where they can be updated as separate libraries without requiring kernel updates. This extraction maintains adaptability while preserving kernel stability and reducing administrative overhead.
Solution Approach 2:
The user-space library serves as a universal interface that can accommodate multiple routing algorithms and storage strategies without modifying the kernel. This multi-functionality in user space provides adaptability while keeping the kernel simple and stable.
Data Source
AI summary
A routing table is requested from a storage device operatively coupled to the computing device, the routing table comprising a routing table entry mapping a virtual storage address to a destination storage address of the storage device. An input/output (I/O) request is received from an application executing on the computing device, the I/O request comprising the virtual storage address. A modified I/O request is transmitted to the storage device based on the mapping of the routing table entry.


