Remote Browsing Session Management via Cloud Processing
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current computing devices experience performance limitations and latencies when loading and rendering web pages due to inefficiencies in processing network content, particularly on devices with limited resources such as netbooks, tablets, and smartphones.
Innovation Solution
A network computing provider manages remote application sessions by instantiating virtual machines to process and cache network resources, shifting processing tasks from client devices to a network computing environment, which includes caching resources and determining remote session browsing configurations to optimize content delivery.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Speed
If web pages and resources are processed locally on client computing devices, then processing can be performed in real-time, but performance limitations and latencies occur on devices with limited resources
Solution Approach 1:
A network computing provider acts as an intermediary between content providers and client computing devices. The intermediary receives browse session requests from clients, obtains network content from content providers, processes the content through browser software applications, and transmits processed content back to clients. This mediator approach allows resource-constrained client devices to access processed content without performing intensive processing locally.
Solution Approach 2:
The patent shifts the processing dimension from the client device to the network computing provider. Instead of processing occurring at the edge (client device), it moves to the cloud (network computing provider), effectively changing the spatial dimension of where processing occurs. This allows client devices with limited resources to benefit from powerful remote processing capabilities.
2Measurement precision
If browser software applications process content in multiple stages locally, then content can be rendered accurately, but latencies diminish the user experience
Solution Approach 1:
The network computing provider performs content processing actions in advance before transmitting to the client device. The intermediary receives the requested network content, processes it through browser software applications including parsing HTML, processing CSS and JavaScript, constructing object models, and calculating layout properties before the client device receives the content. This preliminary processing eliminates the need for the client device to perform these time-consuming operations locally.
3Reliability
If all processing is performed on the client computing device, then no network dependency exists, but performance is limited by device resources
Solution Approach 1:
The network computing provider serves multiple functions: it acts as a client to content providers, a browser to process content, and a server to deliver processed content to client devices. This multi-functional intermediary consolidates the roles of content requester, processor, and distributor into a single system, allowing resource-constrained client devices to access powerful processing capabilities without requiring the processing functions to be built into each client device.
Data Source
AI summary
A browsing process is directed to the generation and management of a browse session at a network computing provider. A client computing device requests a remote browse session instance at a network computing provider. The browse session instance may correspond to requested network content. The network computing provider determines a browse configuration. The browse configuration may identify a communication protocol and various processing actions. The network computing provider retrieves the requested content through an instantiated network browse session instance, and performs a first set of processing actions to generate a processing result. The processing result may be provided to the client computing device for display, including performing a second set of processing actions on the processing result at the client computing device. The processing result, or portions thereof, may be stored in a shared network cache and/or in a local cache.


