Remote Desktop Window Resize Optimization

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing app remoting technologies face inefficiencies in handling window resize actions, particularly when the 'show window contents while dragging' option is enabled, leading to high CPU and network bandwidth usage due to frequent framebuffer updates, and existing optimizations are insufficient for non-standard resize regions.

Innovation Solution

The client system receives a notification of server-side window resizing and cancels the resizing, allowing the user to resize the client-side window independently, synchronizing only at the end, thereby reducing the need for continuous framebuffer updates and optimizing resource usage.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If the server-side application window is dynamically refreshed during resize operations, then the client-side window displays updated contents in real-time, but CPU and network bandwidth consumption increase significantly

Engineering Contradiction:
Improvedisplay synchronizationVSAvoidCPU consumption
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

The client system sends a cancel message to the server before the resize operation completes, preventing the server from performing unnecessary framebuffer updates. This preliminary counter-action stops the harmful continuous refresh process while the client handles the resize display locally, eliminating wasted CPU cycles and network bandwidth.

Inventive Principle:
Principle #9Preliminary anti-action

Solution Approach 2:

Instead of having the server push framebuffer updates to the client during resize, the inversion approach allows the client to take control of the resize display process. The client receives the resize notification, cancels server-side updates, and handles the resize rendering locally, reversing the traditional push-model to a pull-model where the client manages the resize display independently.

Inventive Principle:
Principle #13The other way round (Inversion)

2Reliability

If the server pushes continuous framebuffer updates during window resize, then the client window mirrors the server window in real-time, but network bandwidth consumption increases significantly

Engineering Contradiction:
Improvedisplay synchronizationVSAvoidnetwork bandwidth
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

The invention extracts the resize display functionality from the server-side process. By allowing the client to handle resize operations locally after receiving a notification, the continuous framebuffer update stream is interrupted and replaced with local rendering. This extracts the harmful network traffic generation from the resize process while preserving the visual update capability on the client side.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

Instead of continuous framebuffer updates during resize, the system transitions to periodic or event-driven updates. The client receives a notification event, cancels ongoing server updates, and then handles resize displays based on user interaction rather than continuous server pushes, converting continuous action to periodic/event-based action to reduce network overhead.

Inventive Principle:
Principle #19Periodic action

3Use of energy by moving object

If existing optimization detects left-click-and-drag on standard resize regions, then resource consumption is reduced for standard resizing, but non-standard resize regions are not optimized

Engineering Contradiction:
Improveresource consumptionVSAvoidresize region support
Core Design Contradiction:
Use of energy by moving objectVSAdaptability or versatility

Solution Approach 1:

The invention makes the optimization mechanism universal by applying it to all resize operations regardless of the specific region or method used. Instead of checking for specific click-drag patterns on standard regions, the system optimizes all resize operations through the notification-cancel-local-handle mechanism, making the optimization applicable to non-standard regions, keyboard resizing, and other resize methods while maintaining the same resource efficiency.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Data Source

PatentUS11467717B2Optimizing window resize actions for remoted applications
Publication Date: 2022.10.11 OMNISSA LLC
  • US11467717B2 patent drawing
  • US11467717B2 patent drawing
  • US11467717B2 patent drawing

AI summary

Techniques for optimizing window resize actions for a remoted application are provided, where the remoted application has a server-side window running within a remote desktop of a server system, and where the server-side window is made accessible to a user of a client system as a client-side window displayed in a client desktop of the client system. In one embodiment, the client system can receive from the server system a notification that the server-side window is being resized in the remote desktop, and can determine that the user is currently entering one or more input commands for resizing the server-side window. In response, the client system can send a message to the server system for canceling the resizing of the server-side window. The client system can then allow the user to resize the client-side window via the one or more input commands, while the server-side window remains a fixed size.