Server-Hosted App Scrolling via Prefetched Tile Caching

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Server-hosted applications accessed by mobile devices face significant network latency issues, leading to lag between user input and graphical feedback, especially on touch-based devices with limited computing capabilities and unpredictable network conditions.

Innovation Solution

A method where a server determines if graphical content contains scrollable UI controls, retrieves metadata, and transmits this information along with prefetched tile content to a remote device, allowing the client to process scrolling input actions and adjust the viewport, reducing server-side updates to zero latency by caching and displaying local video buffer content.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If server-hosted applications are accessed over network connections, then application accessibility and mobility are improved, but network latency causes lag between user input and graphical feedback

Engineering Contradiction:
Improveapplication accessibilityVSAvoidnetwork latency
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The system performs preliminary actions by prefetching tile content and caching it locally on the remote device before it is actually needed. When scrolling occurs, the viewport can immediately display cached content without waiting for network responses, effectively anticipating user navigation patterns and preparing data in advance.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent introduces an intermediary caching mechanism between the server and the remote device. This cache stores tile content locally, acting as a buffer that decouples the interaction between user input and server response, allowing the system to mask network latency by serving content from local storage when available.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Extent of automation

If scrolling operations are processed through the server over the network, then centralized control is maintained, but responsiveness and user experience deteriorate due to network latency

Engineering Contradiction:
Improvecentralized controlVSAvoidscrolling responsiveness
Core Design Contradiction:
Extent of automationVSEase of operation

Solution Approach 1:

The scrolling functionality is segmented into two parts: the viewport rendering and display operations are handled locally on the remote device for immediate responsiveness, while the server maintains centralized control over the application state and data. This division allows local operations to proceed without network latency while the server remains the authority on application logic.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The remote device performs self-service by locally caching tile content and handling viewport rendering independently. When a scroll gesture is detected, the device immediately displays cached content without requiring server intervention, making the scrolling operation self-sufficient and highly responsive while maintaining eventual consistency with the server.

Inventive Principle:
Principle #25Self-service

3Reliability

If continuous server updates are transmitted to maintain synchronized display, then data consistency is ensured, but network bandwidth consumption and server resource usage increase

Engineering Contradiction:
Improvedata consistencyVSAvoidnetwork bandwidth consumption
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

Instead of continuous updates, the system uses periodic or event-driven updates only when the viewport actually changes to new content. The server transmits tile content selectively based on scrolling actions, and the cache is updated periodically or on-demand rather than maintaining constant synchronization, reducing unnecessary network traffic while preserving data consistency when needed.

Inventive Principle:
Principle #19Periodic action

Data Source

PatentUS9558013B2Responsive scroller controls in server-hosted applications
Publication Date: 2017.01.31 CITRIX SYSTEMS INC
  • US9558013B2 patent drawing
  • US9558013B2 patent drawing
  • US9558013B2 patent drawing

AI summary

Environments are disclosed in which a server executes an application on behalf of a client device and, in particular, to providing responsive scrolling in server-hosted applications. In one example, a remote computing device may be a mobile (or stationary) computing device with (or without) a touch screen input surface. Some or all of the client-server communication between a client-side scrollable UI control module of the remote computing device and a server-side scrollable UI control module of the server device may occur in an asynchronous manner.