User-Mode Network Driver File Transfer Bypasses Kernel
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Software system delays in remote data transmission are exacerbated by data redundancy, context switches, and interrupts, particularly due to the involvement of kernel modes and unnecessary data copies during file sending and receiving processes.
Innovation Solution
A file sending and receiving method that operates entirely within the user space, bypassing the kernel, by using a user-mode network and storage device driver to process metadata and send files directly to a network adapter, thereby reducing copies, context switches, and interrupts.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If kernel mode involvement is used for file sending and receiving, then system reliability is improved, but data transmission speed deteriorates due to context switches and interrupts
Solution Approach 1:
The patent segments the file transmission system into user space components (user-mode network device driver, user-mode storage device driver) that operate independently without requiring kernel mode involvement. This segmentation allows each component to handle its specific task (metadata processing, file sending, file receiving) directly in user space, eliminating the need for context switches to kernel mode while maintaining system reliability through proper driver-level error handling and data validation.
Solution Approach 2:
The patent extracts the file transmission operations from the kernel mode environment and relocates them to user space. By taking out the file sending and receiving processes from kernel mode, the system eliminates the performance penalty of context switches and interrupts associated with kernel mode involvement, while still achieving reliable transmission through user-mode driver implementations.
2Reliability
If traditional file I/O operations are used, then data security is improved through kernel validation, but data transmission efficiency deteriorates due to multiple data copies
Solution Approach 1:
The patent eliminates unnecessary data copying by implementing direct memory access between the data cache region and external memory through user-mode drivers. Instead of copying data through multiple kernel buffers, the system uses metadata to directly locate and transfer data between user space cache and external storage, significantly improving transmission efficiency while maintaining data integrity through validation checks in the user-mode drivers.
Solution Approach 2:
The patent introduces metadata as an intermediary structure that enables efficient data transmission without direct kernel involvement. The metadata contains information about file locations, sizes, and transmission parameters, allowing the user-mode drivers to perform validated data transfers without requiring kernel mode validation, thus balancing security with efficiency.
3Productivity
If user space operations are used for file transmission, then data transmission efficiency is improved by eliminating context switches, but system complexity increases due to user-mode driver implementation
Solution Approach 1:
The patent implements universal user-mode drivers (user-mode network device driver, user-mode storage device driver) that can handle multiple file transmission operations through a common interface and metadata structure. This multi-functionality reduces system complexity by providing a unified approach to file sending and receiving, rather than requiring separate kernel mode handlers for each operation, thus improving efficiency without proportionally increasing complexity.
Data Source
AI summary
Provided are a file sending method, a file receiving method, and a file transceiving apparatus. The file sending method includes: creating a data sending process; acquiring a file to be sent, corresponding to the data sending process, from a data cache region in a user space; constructing metadata for the data sending process, and recording the metadata in a data reading and sending region in the user space; and sending the file to be sent and the metadata to a network adapter by means of a user-mode network device driver, and sending the file to be sent and the metadata by means of the network adapter.


