Parallel Cache Revalidation for WAN Traffic Acceleration

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Traditional disk-based caching techniques for network traffic acceleration in wide area networks (WANs) face issues such as high memory consumption, inaccurate freshness values leading to stale data transmission, and security risks due to lack of user authentication in proxy servers, while existing acceleration methods like prefetching often exacerbate delays and do not significantly improve performance.

Innovation Solution

The solution involves a method of optimizing network traffic by using multiple storage tiers for cached objects based on size, improving cache efficiency, and implementing security measures such as user authentication for serving cached objects, along with techniques like parallel revalidation and speculative prefetching to enhance data freshness and reduce latency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If traditional disk-based caching techniques are used to accelerate WAN traffic, then network traffic acceleration is achieved, but memory consumption increases significantly due to scaling cache index entries

Engineering Contradiction:
Improvenetwork traffic accelerationVSAvoidmemory consumption
Core Design Contradiction:
SpeedVSQuantity of substance

Solution Approach 1:

The cache system is segmented into disk-based storage for actual cache entries and memory-based storage only for essential index information. This segmentation allows the system to maintain large cache capacities without proportionally increasing memory consumption, as most data resides on disk rather than in memory.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The invention transitions from a traditional memory-centric cache architecture to a multi-dimensional architecture that utilizes both disk and memory resources. By storing cache entries on disk and using memory only for indexing and metadata, the system effectively adds a disk dimension to the caching hierarchy, enabling scalable performance without linear memory growth.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

2Productivity

If freshness values are used to determine cache validity, then cache transmission efficiency is improved, but accuracy of determining whether objects have changed deteriorates

Engineering Contradiction:
Improvecache transmission efficiencyVSAvoidaccuracy of determining object changes
Core Design Contradiction:
ProductivityVSMeasurement precision

Solution Approach 1:

The system implements feedback mechanisms where the cache validator receives responses from remote servers about object status. This feedback loop allows the cache to accurately determine whether cached objects have changed by comparing server responses with stored freshness information, thereby maintaining both efficiency and accuracy.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The cache system performs preliminary validation checks using freshness values before transmitting objects. By pre-assessing cache validity through freshness metadata and conditional requests, the system avoids unnecessary transmissions of unchanged objects while maintaining high accuracy in change detection.

Inventive Principle:
Principle #10Preliminary action

3Loss of time

If proxy servers are deployed to respond to user requests with cached data, then WAN communication delays are reduced, but security risks increase due to lack of user authentication

Engineering Contradiction:
ImproveWAN communication delaysVSAvoiddata security
Core Design Contradiction:
Loss of timeVSReliability

Solution Approach 1:

The cache validator acts as an intermediary between the cache and the remote server, handling authentication and security checks. This intermediary component can verify user credentials and authorization before allowing cache access, thereby maintaining security while still enabling fast cached responses when appropriate.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

Different security measures are applied locally based on the specific cache entry and user context. The system can provide fast cached access for authenticated users with proper permissions while implementing stricter validation for sensitive resources, creating localized security policies that optimize both speed and security for different scenarios.

Inventive Principle:
Principle #3Local quality

4Productivity

If prefetching is used to identify and request files before actual user requests, then cache hit rate is improved, but network contention increases and actual request performance deteriorates

Engineering Contradiction:
Improvecache hit rateVSAvoidactual request response time
Core Design Contradiction:
ProductivityVSSpeed

Solution Approach 1:

The system performs partial prefetching by pre-validating cache entries and preparing metadata before actual requests arrive, without fully retrieving all potential objects. This partial action improves cache readiness and hit rates while avoiding the network contention that would result from complete prefetching of all possible objects.

Inventive Principle:
Principle #16Partial or excessive action

Solution Approach 2:

The cache validator performs periodic validation of cached objects at scheduled intervals or based on freshness thresholds, rather than continuously prefetching. This periodic action maintains cache accuracy and readiness without creating constant network traffic that would interfere with actual user requests.

Inventive Principle:
Principle #19Periodic action

Data Source

PatentUS7783757B2Systems and methods of revalidating cached objects in parallel with request for object
Publication Date: 2010.08.24 CITRIX SYSTEMS INC
  • US7783757B2 patent drawing
  • US7783757B2 patent drawing
  • US7783757B2 patent drawing

AI summary

The present solution provides a variety of techniques for accelerating and optimizing network traffic, such as HTTP based network traffic. The solution described herein provides techniques in the areas of proxy caching, protocol acceleration, domain name resolution acceleration as well as compression improvements. In some cases, the present solution provides various prefetching and/or prefreshening techniques to improve intermediary or proxy caching, such as HTTP proxy caching. In other cases, the present solution provides techniques for accelerating a protocol by improving the efficiency of obtaining and servicing data from an originating server to server to clients. In another cases, the present solution accelerates domain name resolution more quickly. As every HTTP access starts with a URL that includes a hostname that must be resolved via domain name resolution into an IP address, the present solution helps accelerate HTTP access. In some cases, the present solution improves compression techniques by prefetching non-cacheable and cacheable content to use for compressing network traffic, such as HTTP. The acceleration and optimization techniques described herein may be deployed on the client as a client agent or as part of a browser, as well as on any type and form of intermediary device, such as an appliance, proxying device or any type of interception caching and/or proxying device.