Per-Thread Merged I/O Requests for Client Drive Redirection
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The inefficiency of file copying in remote desktop services due to the high number of input/output (I/O) requests and responses between client computing devices and host servers, especially when network performance is poor and when copying a large number of small files, leads to bottlenecks in the remote desktop experience.
Innovation Solution
The method involves transmitting pre-read I/O requests for files, generating read I/O requests based on responses, and grouping these requests into merged I/O requests and responses, reducing the number of packets transmitted and improving efficiency by caching and appending additional I/O requests to read I/O requests.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If traditional separate I/O requests are used for copying files, then file copying can be performed, but the number of packets transmitted increases significantly creating network bottlenecks
Solution Approach 1:
The patent merges multiple separate I/O requests into a single combined I/O request that includes both read requests and metadata queries. This consolidation reduces the number of packets transmitted between client and server while maintaining the functionality of copying files, directly resolving the contradiction between copying efficiency and packet quantity.
Solution Approach 2:
The patent performs preliminary actions by including metadata queries and file information requests within the same I/O request block as the actual read operations. This preliminary gathering of file information allows the system to prepare and optimize the copying process, reducing subsequent packet transmissions and improving overall copying efficiency.
2Reliability
If multiple separate I/O requests are transmitted for each file, then complete file data can be retrieved, but network performance degrades due to the high number of requests
Solution Approach 1:
The patent combines multiple I/O requests including read operations and metadata queries into a single merged request. This ensures that complete file data is retrieved while reducing the number of network transactions, thereby maintaining reliability without degrading network performance.
Solution Approach 2:
The patent maintains continuous useful action by batching multiple I/O operations into single requests, allowing the network to transmit data more efficiently. This continuous batching approach ensures complete file retrieval while improving network throughput and performance.
3Productivity
If per-thread merged I/O requests are implemented, then packet transmission efficiency improves, but system complexity increases
Solution Approach 1:
The patent applies segmentation by implementing per-thread merged I/O requests, where each thread handles its own I/O operations independently. This segmentation approach improves copying performance by reducing packet transmission overhead while managing complexity through thread-level isolation and independent processing.
Data Source
AI summary
A method of copying at least first and second files stored in a client computing device to a host server, includes the steps of: generating at the host server a first read I/O request for data of the first file based on responses to pre-read I/O requests for the first file, received from the client computing device; transmitting a merged I/O request that includes the first read I/O request for data of the first file and pre-read I/O requests for the second file from the host server to the client computing device; generating at the host server a second read I/O request for data of the second file based on responses to the pre-read I/O requests for the second file, received from the client computing device; and transmitting the second read I/O request for data of the second file from the host server to the client computing device.


