Rule-Based Cache Processing in Application Delivery Controllers

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing web architectures fail to efficiently utilize HTTP caching and load balancing, leading to resource wastage and increased response times due to strict matching requirements in HTTP request headers, resulting in frequent cache misses and server overload.

Innovation Solution

Implementing a rule-based system within an Application Delivery Controller (ADC) that allows partial matching of HTTP request headers with cached content using vary rules, enabling the ADC to determine if locally cached content can service HTTP requests without exact header matches, thereby reducing resource utilization and improving performance.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If strict matching of HTTP request headers with cached content is implemented, then cache hit accuracy is improved, but cache hit rate deteriorates due to frequent cache misses

Engineering Contradiction:
Improvecache hit accuracyVSAvoidcache hit rate
Core Design Contradiction:
Measurement precisionVSProductivity

Solution Approach 1:

The patent changes the matching parameters from requiring exact header matches to using vary rules that define when headers are meaningfully different. This allows the cache to service requests even with minor header differences, improving cache hit rate while maintaining adequate accuracy through the structured vary rule framework

Inventive Principle:
Principle #35Parameter changes

2Loss of time

If HTTP cache is used to store frequently accessed data, then response time is improved, but resource utilization deteriorates due to frequent cache misses causing server overload

Engineering Contradiction:
Improveresponse timeVSAvoidresource utilization
Core Design Contradiction:
Loss of timeVSLoss of energy

Solution Approach 1:

The patent modifies the cache matching parameters to use vary rules instead of strict header matching. This increases cache effectiveness, reducing the number of times cached data must be refreshed from servers, thereby lowering resource utilization and energy consumption while maintaining fast response times

Inventive Principle:
Principle #35Parameter changes

3Productivity

If vary rules are configured to allow partial header matching, then cache hit rate is improved, but matching precision deteriorates

Engineering Contradiction:
Improvecache hit rateVSAvoidheader matching precision
Core Design Contradiction:
ProductivityVSMeasurement precision

Solution Approach 1:

The patent introduces vary rules as an intermediate parameter system that defines meaningful differences between headers. This structured approach allows partial matching to improve cache hit rate while preventing excessive imprecision by providing explicit rules for when headers should be considered different

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The vary rules act as an intermediary layer between the HTTP request headers and the cache matching logic. Rather than directly comparing headers, the system uses vary rules as mediators to determine equivalence, balancing cache hit rate improvement with matching precision

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS10560543B2Rule based cache processing in application delivery controller for load balancing
Publication Date: 2020.02.11 FORTINET INC
  • US10560543B2 patent drawing
  • US10560543B2 patent drawing
  • US10560543B2 patent drawing

AI summary

Methods and systems for improving performance of an HTTP cache are provided. According to one embodiment, an HTTP request is received by an ADC for a resource associated with a server on behalf of which the ADC is performing load balancing. The ADC determines based on a local HTTP cache whether it can service the request. The request is parsed to identify a header. The existence or non-existence of locally cached content matching the request is identified by comparing portions of the identified header with corresponding portions of header information of cached content based on a vary rule defining when two headers are meaningfully different. Therefore, the identified header need not exactly match an entirety of the cached information for a cache hit to be found. Responsive to a cache hit, the ADC responds to the request with an HTTP response containing the identified locally cached content.