Network Stack Direct Data Access Reducing Memory Copy Overhead
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current data transfer mechanisms over networks, such as VNC and UPnP, consume significant processing and memory resources due to the need for multiple copies of data, which can limit the capacity of servers and impact user experience, especially in mobile systems with limited processing capability.
Innovation Solution
The method involves providing direct access information to the network stack or driver, allowing devices to retrieve data from its original location without copying, thereby reducing the number of data copies and conserving processing and memory resources.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If data is copied multiple times during network transmission (from kernel space to background server, then to TCP/IP stack), then data transfer can be completed, but processing capacity and memory resources are consumed excessively
Solution Approach 1:
The patent applies the copying principle in reverse by eliminating unnecessary data copies. Instead of copying data multiple times through kernel space, background servers, and TCP/IP stacks, the system enables direct access to data in its original location, allowing network drivers to retrieve data without intermediate copying operations.
Solution Approach 2:
The patent extracts the background server component from the data transfer path. By allowing network drivers to directly access data stored in kernel space or file systems without requiring a background server to copy and forward the data, the system eliminates the intermediate copying step that consumes processing resources.
2Reliability
If entire frame buffers are transmitted at high frame rates to achieve desirable user experience in VNC, then visual quality is improved, but CPU power consumption increases significantly
Solution Approach 1:
The patent enables partial data transmission by allowing selective access to portions of frame buffers or specific data regions. Network drivers can retrieve only the necessary data portions directly from their original locations without copying entire frame buffers, reducing CPU power consumption while maintaining acceptable visual quality.
3Reliability
If software-based TCP/IP stack is used to handle large amounts of network packets, then protocol compliance is ensured, but processing load increases and mobile systems with limited processing capability are overwhelmed
Solution Approach 1:
The patent enables network drivers to directly access and retrieve data from their original locations without requiring intermediate processing by software-based TCP/IP stacks. This self-service approach allows network drivers to handle data transmission independently, reducing the processing load on mobile systems while maintaining protocol compliance through direct network driver implementation.
Data Source
Figure 1A~1B
Figure 2
Figure 3
AI summary
An apparatus for providing an efficient and reliable manner for transferring data via a network may include a processor and memory storing executable computer code causing the apparatus to at least perform operations including receiving a request for data from a device and enabling provision of information to a network stack. The information may include content indicating a location of the requested data for direct access by the network stack or a network driver, in response to receipt of the request. The computer program code may further cause the apparatus to enable provision of the requested data to the network driver, or enabling the network driver to retrieve the requested data, based at least in part on the indicated location of the requested data. Corresponding methods and computer program products are also provided.