Nested Browsing Context for Cross-Origin Resource Access

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Web browsers experience significant wait times when rendering webpages due to the need to access dependent resources from multiple domains, especially in high-latency networks, as they are restricted by the same-origin security policy and CORS requests can be blocked by firewalls in private networks.

Innovation Solution

Implementing an embedded nested browsing context within the web browser that makes same-origin requests to access cross-origin domains, bypassing CORS restrictions and allowing resource access even behind firewalls by using a proxy server, thereby enabling parallel resource downloading from multiple domains.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If CORS requests are used to access cross-origin resources, then resource access from multiple domains is enabled, but requests are blocked by firewalls in private networks

Engineering Contradiction:
Improvecross-origin resource accessVSAvoidrequest delivery reliability
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The patent introduces a nested browsing context as an intermediary entity that makes same-origin requests to the cross-origin domain through the firewall. This nested context acts as a mediator that bypasses CORS restrictions while maintaining reliable communication through the private network firewall, solving both the cross-origin access need and the firewall blocking issue.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If same-origin requests are used to bypass CORS restrictions, then resource access is enabled behind firewalls, but the browser cannot directly access cross-origin domains

Engineering Contradiction:
Improvefirewall compatibilityVSAvoidcross-domain resource access
Core Design Contradiction:
ReliabilityVSAdaptability or versatility

Solution Approach 1:

The patent embeds a nested browsing context within the parent browsing context. The nested context is associated with the cross-origin domain while the parent remains on the original domain. This nesting structure allows the browser to maintain same-origin security policies while effectively accessing cross-origin resources through the nested context's same-origin requests.

Inventive Principle:
Principle #7Nested doll (Nesting)

3Reliability

If dependent resources are downloaded sequentially from multiple domains, then CORS security policy is maintained, but webpage rendering wait time increases

Engineering Contradiction:
ImproveCORS security complianceVSAvoidpage rendering wait time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent segments the resource loading process by creating multiple nested browsing contexts, each associated with different cross-origin domains. Each nested context independently downloads resources from its associated domain through same-origin requests. This segmentation enables parallel resource downloading across multiple domains while maintaining CORS security compliance, significantly reducing the sequential waiting time.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS9697188B2Method to enable cross-origin resource sharing from a webpage inside a private network
Publication Date: 2017.07.04 AKAMAI TECHNOLOGIES INC
  • US9697188B2 patent drawing
  • US9697188B2 patent drawing
  • US9697188B2 patent drawing

AI summary

A method of delivering content of a webpage to a web browser on a device communicating with a network through a proxy server includes embedding a first nested browsing context in a parent browsing context of the web browser where the parent browsing context is associated with a first domain and the first nested browsing context is associated with a second domain; sending a request for content from the first nested browsing context to the second domain through the proxy server; and receiving at the first nested browsing context the content from the second domain.