Browser Cache Preloading via Virtualized Resource Prioritization

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Web browsers experience unacceptably long startup wait times in high-latency networks due to the time required to receive dependent resources for webpage rendering, particularly in cellular 3G networks, where network latency is high.

Innovation Solution

The implementation of an optimized content delivery environment that virtualizes the Document Object Model (DOM) of a web browser, allowing for segmentation and reprioritization of downloaded resources, including the use of a virtualization engine to intercept and modify resource requests, and preloading of resources in a browser cache based on determined priority order.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If web browsers wait to receive all dependent resources before rendering webpages, then resource completeness is ensured, but startup wait time becomes unacceptably long in high-latency networks

Engineering Contradiction:
Improveresource completenessVSAvoidstartup wait time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system performs preliminary actions by intercepting and analyzing resource requests before the browser actually needs them. The virtualization engine proactively identifies dependent resources and initiates their delivery in advance, allowing resources to be prepared and staged before the browser requires them for rendering.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The resource delivery process is segmented into priority levels. Critical resources needed for initial rendering are delivered first, while non-critical resources are delivered subsequently. This segmentation allows the browser to begin rendering with essential resources while remaining resources are still being transferred.

Inventive Principle:
Principle #1Segmentation

2Reliability

If all dependent resources are downloaded before webpage rendering, then rendering completeness is ensured, but network bandwidth is wasted on non-critical resources

Engineering Contradiction:
Improverendering completenessVSAvoidnetwork bandwidth
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

Different quality levels of resource delivery are applied based on local needs. Critical resources required for initial webpage display are delivered with high priority and completeness, while non-critical resources are delivered with lower priority or deferred until needed. This local quality approach ensures rendering completeness for essential elements while conserving network bandwidth.

Inventive Principle:
Principle #3Local quality

3Stability of the object's composition

If web browsers download resources in the order they appear in the webpage, then resource dependency is maintained, but total download time increases due to sequential processing

Engineering Contradiction:
Improveresource dependency orderVSAvoiddownload speed
Core Design Contradiction:
Stability of the object's compositionVSProductivity

Solution Approach 1:

The resource delivery order is made dynamic rather than static. The virtualization engine continuously monitors resource dependencies and adjusts the delivery sequence in real-time. Resources are delivered in an optimized order that respects dependency constraints while maximizing parallel downloads and minimizing total transfer time.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS10009439B1Cache preloading
Publication Date: 2018.06.26 AKAMAI TECHNOLOGIES INC
  • US10009439B1 patent drawing
  • US10009439B1 patent drawing
  • US10009439B1 patent drawing

AI summary

Preloading a cache is disclosed. A requested web content is received. A priority order associated with one or more resources of the requested web content is determined. The cache of an application is preloaded with one or more resources of the requested web content in a loading order based at least in part on the determined priority order.