Browser Cache Metadata Prediction for Resource Loading

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The existing web browser caching mechanisms lead to latency issues due to repeated communications between the browser and server to obtain sub-resources needed to display web pages, degrading user experience by increasing load time.

Innovation Solution

The proposed solution involves storing metadata and dependency information in the browser's cache to predict and concurrently request needed sub-resources during the initial page load, reducing the need for multiple back-and-forth communications with the server.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If the web browser requests sub-resources sequentially after the main HTML document, then the browser can ensure proper resource loading order, but the total page load time increases due to multiple back-and-forth communications with the server

Engineering Contradiction:
Improveresource loading orderVSAvoidpage load time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent applies preliminary action by predicting and requesting sub-resources before they are actually needed for page rendering. When the main HTML document is received, the browser parses it to identify sub-resource references and proactively sends requests for these sub-resources while the main document is still being processed, rather than waiting for sequential processing. This overlapping of operations reduces the total time spent on resource acquisition while maintaining proper loading order through careful coordination of resource dependencies.

Inventive Principle:
Principle #10Preliminary action

2Quantity of substance

If the web browser communicates with the web server multiple times to obtain sub-resources, then all necessary resources can be acquired, but network latency accumulates and degrades user experience

Engineering Contradiction:
Improvenumber of sub-resources obtainedVSAvoidcommunication latency
Core Design Contradiction:
Quantity of substanceVSLoss of time

Solution Approach 1:

The patent applies merging by combining multiple sequential resource requests into a single batch operation. Instead of sending one request at a time for each sub-resource, the browser parses the HTML document to collect all sub-resource references and then sends multiple requests in parallel to the server. This consolidates what would be multiple separate communication cycles into a single coordinated batch operation, eliminating the cumulative latency of sequential round-trips while ensuring all necessary sub-resources are obtained.

Inventive Principle:
Principle #5Merging (Combining)

3Stability of the object's composition

If the web browser waits for each sub-resource before requesting the next, then resource dependencies are properly respected, but the overall page loading speed decreases

Engineering Contradiction:
Improveresource dependency structureVSAvoidpage loading speed
Core Design Contradiction:
Stability of the object's compositionVSSpeed

Solution Approach 1:

The patent applies preliminary action by identifying and requesting sub-resources in advance based on HTML parsing, before the actual rendering process begins. The browser parses the incoming HTML document to extract sub-resource references and sends requests for these resources while the main document is still being processed, rather than waiting for each resource to be fully loaded before starting the next request. This preliminary identification and concurrent requesting maintains the logical dependency structure while significantly accelerating the overall loading speed.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent applies dynamics by making the resource loading process adaptive and concurrent rather than static and sequential. The browser dynamically adjusts the loading strategy by parsing HTML on-the-fly to identify sub-resources and immediately initiating parallel requests for them. This dynamic approach allows the system to maintain proper dependency relationships while exploiting parallelism to speed up the overall process, transforming a rigid sequential workflow into a flexible concurrent operation model.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS10440140B2Browser cache management
Publication Date: 2019.10.08 APPLE INC
  • US10440140B2 patent drawing
  • US10440140B2 patent drawing
  • US10440140B2 patent drawing

AI summary

Disclosed herein is a technique for storing and managing a number of resources and sub-resources associated with web pages in a cache implemented by a web browser. Metadata associated with the sub-resources is captured and stored in the cache. The metadata can include relationship or dependency information associated with a main resource and the sub-resources associated with the main resource. The previously captured metadata is used to predict any sub-resources that will be needed to properly display the web page and the predicted sub-resources are requested from the web server concurrently with a request for the main resource associated with the web page.