Remote Browsing Session Management via Proxy Rendering

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current computing devices experience performance and latency issues when loading and rendering web content due to inefficiencies in processing and rendering web pages, especially on devices with limited resources such as netbooks, tablets, and smartphones.

Innovation Solution

A remote application session is established between client computing devices and content providers through a network computing and storage provider, which processes and renders content, shifting processing tasks from the client to the network side to alleviate latency and improve performance.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If web content is processed and rendered locally on client computing devices, then processing autonomy is maintained, but performance and latency are degraded due to limited device resources

Engineering Contradiction:
Improvecontent rendering performanceVSAvoidclient device resource requirements
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

A proxy server is introduced as an intermediary between the content provider and the client computing device. The proxy server receives web content from the content provider, processes and renders it, then transmits the processed content to the client device for display. This mediator handles the computationally intensive tasks of HTML parsing, CSS application, JavaScript execution, and layout calculation, freeing the client device from these resource-intensive operations while maintaining the ability to display rendered content.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent extracts the processing and rendering functions from the client computing device and relocates them to the proxy server. Specifically, tasks such as parsing HTML layout information, processing Cascading Style Sheets (CSS), executing JavaScript code, constructing object models, and calculating layout and display properties are all performed on the proxy server rather than on the resource-constrained client device. This extraction resolves the contradiction by removing the performance bottleneck from the client side.

Inventive Principle:
Principle #2Taking out (Extraction)

2Loss of time

If processing tasks are offloaded to a proxy server, then rendering performance is improved, but network dependency increases

Engineering Contradiction:
Improvecontent loading latencyVSAvoidnetwork connectivity requirements
Core Design Contradiction:
Loss of timeVSObject-affected harmful factors

Solution Approach 1:

The proxy server performs preliminary processing of web content before it reaches the client device. By pre-parsing HTML, pre-processing CSS, pre-executing JavaScript, and pre-calculating layouts on the proxy server, the system reduces the time required for the client device to render content. This preliminary action on the server side mitigates the latency that would otherwise occur during client-side processing, directly addressing the time loss contradiction.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentEP2727025B1Remote browsing session management
Publication Date: 2019.11.20 AMAZON TECH INC
  • EP2727025B1 patent drawingFigure 1
  • EP2727025B1 patent drawingFigure 2
  • EP2727025B1 patent drawingFigure 3

AI summary

A remote browsing process is directed to the generation and management of a remote browse session at a network computing and storage provider. A client computing device requests a remote browse session instance at a network computing and storage provider. The browse session instance may correspond to one or more requested network resources. The network computing and storage provider instantiates the browse session instance and retrieves the requested content. The network computing and storage provider processes the requested content for display, and provides display data corresponding to a processed representation of the requested content to the client computing device in accordance with a display protocol configuration. The client computing device may display the representation of the requested content in a browser, and may send user interaction data based on user interactions with the representation to the network computing and storage provider for processing.