Browser Prefetching via Dynamic User Feedback

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current web page transmission and prefetching systems face inefficiencies due to the nested nature of web pages, leading to incorrect object prefetching, missed objects, and increased wait times, as they lack knowledge about interdependencies and server functions, resulting in suboptimal performance and resource wastage.

Innovation Solution

A system that uses a third-party assistance server to analyze real user actions and provide dynamic hints for prefetching, including lists of expected objects, formulas for child URL generation, and timing dependencies, allowing for optimized prefetching and caching, even for dynamically generated URLs, and prioritizing object fetching based on render time and server performance data.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If traditional HTTP prefetching is used to pre-request content before actual user requests, then web page transmission performance is improved, but incorrect objects may be prefetched repeatedly based on incorrect models, resulting in resource wastage

Engineering Contradiction:
Improveweb page transmission performanceVSAvoidresource wastage from incorrect prefetching
Core Design Contradiction:
ProductivityVSLoss of energy

Solution Approach 1:

The system implements feedback mechanisms by analyzing actual user behavior patterns and request histories to continuously refine prefetching models. Real user data from browsing sessions is collected and used to train machine learning models that predict which objects users will actually request, thereby reducing incorrect prefetches and resource wastage while maintaining improved transmission performance.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The invention changes the parameters used for prefetching decisions from static rules to dynamic, data-driven predictions. By using machine learning models that process real user behavior parameters, the system adapts prefetching strategies based on actual usage patterns, improving accuracy and reducing resource consumption on unwanted prefetches.

Inventive Principle:
Principle #35Parameter changes

2Measurement precision

If speculative parsing of static files is performed to identify candidate child URLs, then object identification is improved, but the system is limited by the nested nature of web pages and cannot operate on all objects

Engineering Contradiction:
Improveobject identification accuracyVSAvoidoperational scope on web page objects
Core Design Contradiction:
Measurement precisionVSAdaptability or versatility

Solution Approach 1:

The system achieves universality by processing both static and dynamic objects through a unified approach. The machine learning model analyzes the entire web page including dynamically generated content, allowing the prefetching system to operate on all objects regardless of their source, thereby expanding operational scope while maintaining identification accuracy.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Solution Approach 2:

The system performs preliminary analysis of web page structures and content before actual user requests are made. By pre-processing and analyzing page elements, dependency graphs, and content characteristics, the system prepares accurate object identification and prefetching strategies in advance, enabling precise measurement even for complex nested page structures.

Inventive Principle:
Principle #10Preliminary action

3Loss of time

If prefetching systems request all objects embedded in web pages in anticipation of user requests, then web page load time is reduced, but objects that will never be used are fetched, increasing wait time for useful objects

Engineering Contradiction:
Improveweb page load timeVSAvoideffective object fetching efficiency
Core Design Contradiction:
Loss of timeVSProductivity

Solution Approach 1:

The system applies local quality by differentiating between different objects on the web page based on their individual characteristics, user interaction patterns, and importance. Instead of uniformly treating all objects equally, the prefetching system prioritizes and selectively fetches only those objects with highest predicted utility, improving effective fetching efficiency while reducing unnecessary requests.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The invention uses partial action by selectively prefetching only a subset of objects rather than all embedded objects. The machine learning model calculates priority scores for each object based on predicted user requests, and the system fetches only the top-priority objects, avoiding excessive action on unused objects while maintaining sufficient coverage for actual user needs.

Inventive Principle:
Principle #16Partial or excessive action

4Measurement precision

If a third-party assistance server is used to analyze real user actions and provide dynamic hints, then prefetching accuracy is improved, but system complexity increases

Engineering Contradiction:
Improveprefetching accuracyVSAvoidsystem architecture complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The system introduces a third-party assistance server as an intermediary component that handles complex analysis tasks. This mediator collects real user data, trains machine learning models, and provides dynamic prefetching hints to client systems, thereby improving prefetching accuracy while centralizing complexity in a dedicated service that simplifies the overall architecture.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS9106607B1Browser based feedback for optimized web browsing
Publication Date: 2015.08.11 SNAPPI INC
  • US9106607B1 patent drawing
  • US9106607B1 patent drawing
  • US9106607B1 patent drawing

AI summary

The present invention relates to systems, apparatus, and methods of accelerating web transactions. One embodiment includes observing, with a web browser plug-in operating on a computer, at least a portion of a first web page transaction in a web browser operating on the computer. A web browser module may be used to identify transaction information from the observing of the at least a portion of the first web page transaction. The browser may communicates transaction information to a prefetching system in a communication separate from the first web page transaction; and the transaction information may be used to perform a prefetch operation.