Per-Thread Merged I/O Requests for Client Drive Redirection

Resolve Bottlenecks,
Find Innovative Solutions
Generate 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

VSEngineering 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

Engineering Contradiction:
Improvefile copying efficiencyVSAvoidnumber of packets transmitted
Core Design Contradiction:
ProductivityVSQuantity of substance

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.

Inventive Principle:
Principle #5Merging (Combining)

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.

Inventive Principle:
Principle #10Preliminary action

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

Engineering Contradiction:
Improvefile data completenessVSAvoidnetwork performance
Core Design Contradiction:
ReliabilityVSSpeed

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.

Inventive Principle:
Principle #5Merging (Combining)

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.

Inventive Principle:
Principle #20Continuity of useful action

3Productivity

If per-thread merged I/O requests are implemented, then packet transmission efficiency improves, but system complexity increases

Engineering Contradiction:
Improvecopying performanceVSAvoidI/O request handling complexity
Core Design Contradiction:
ProductivityVSDevice complexity

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.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS11934314B2Method to improve copy performance of client drive redirection with per-thread merged input/output
Publication Date: 2024.03.19 OMNISSA LLC
  • US11934314B2 patent drawing
  • US11934314B2 patent drawing
  • US11934314B2 patent drawing

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.