DNS Resolver Functional Cache for Context-Aware Query Processing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Traditional DNS caching mechanisms are inefficient due to short validity periods and context-dependent responses, leading to increased load on authoritative name servers and longer response times, as cached records often expire before matching queries arrive and vary significantly with non-local information changes.

Innovation Solution

Implementing a DNS resolution server that caches rules and non-local access information, allowing it to respond adaptively to queries based on contextual factors like location and device attributes, while periodically updating this information from authoritative name servers to maintain accuracy.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If traditional DNS caching mechanisms are used with short validity periods, then cache memory usage is reduced, but response times increase and authoritative name server load increases

Engineering Contradiction:
Improvecache memory usageVSAvoidresponse time
Core Design Contradiction:
Quantity of substanceVSLoss of time

Solution Approach 1:

The patent segments the DNS caching function into two distinct components: a traditional DNS cache for storing resource records with standard TTLs, and a separate functional cache for storing executable code and data structures (like the trie structure) that enable adaptive query processing. This segmentation allows each cache to be optimized independently - the traditional cache maintains small size while the functional cache stores reusable processing logic, thereby reducing overall memory usage while improving response times through efficient query processing.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements preliminary action by pre-compiling domain name patterns, regex expressions, and resolution rules into a trie data structure and associated code during an offline preparation phase. This pre-processed functional cache enables the DNS resolver to quickly evaluate queries against predetermined patterns without performing complex computations in real-time, significantly reducing response time while keeping the cached data compact.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If traditional DNS caching mechanisms are used with short validity periods, then cache data freshness is maintained, but authoritative name server load increases

Engineering Contradiction:
Improvecache data freshnessVSAvoidauthoritative name server load
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent creates a copy of the functional cache (trie structure and processing code) at the recursive DNS resolver, eliminating the need for the authoritative name server to process every query. The functional cache is replicated and stored locally, enabling the resolver to independently evaluate queries against cached patterns and rules, thereby distributing the processing load and reducing authoritative server burden while maintaining data freshness through periodic updates.

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The patent enables self-service by allowing the recursive DNS resolver to autonomously process queries using its local functional cache, without requiring continuous interaction with the authoritative name server. The resolver independently evaluates queries against cached patterns, performs substitutions, and generates responses, only contacting the authoritative server when necessary (e.g., for cache misses or updates), thereby reducing server load while maintaining reliability.

Inventive Principle:
Principle #25Self-service

3Measurement precision

If context-dependent responses are implemented, then query accuracy is improved, but device complexity increases

Engineering Contradiction:
Improvequery accuracyVSAvoidDNS resolver complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The patent applies parameter changes by transforming complex context-dependent query evaluation into a structured process that manipulates parameters within a predefined framework. The trie structure organizes domain patterns with associated substitution parameters, and the resolution process systematically evaluates these parameters against query components. This parameterized approach enables accurate context-dependent responses while keeping the resolver logic manageable through structured data representation rather than complex conditional programming.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The patent introduces an intermediary layer - the functional cache containing the trie structure and substitution rules - that mediates between the raw query and the resolution process. This intermediary pre-compiled structure translates complex context-dependent matching logic into efficient pattern evaluation and parameter substitution operations, improving query accuracy while shielding the resolver from the complexity of implementing sophisticated pattern matching algorithms from scratch.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS9900281B2Computer-implemented method, apparatus, and computer-readable medium for processing named entity queries using a cached functionality in a domain name system
Publication Date: 2018.02.20 VERISIGN INC
  • US9900281B2 patent drawing
  • US9900281B2 patent drawing
  • US9900281B2 patent drawing

AI summary

The present disclosure relates to a computer-implemented method for responding to a query request from a requestor using information supplied by an authoritative name server. The computer-implemented method can include obtaining, by a DNS resolution server, a query for a named resource from a requestor, wherein the query comprises information comprising contextual information related to the requestor. The method can obtain at least a portion of a zone file of a domain name space using the domain name system (DNS), one or more rules, and information on how to access information that is not local to the DNS resolution server from the authoritative name server based on the query obtained from the requestor. An answer can then be provided to the query from requester based on the at least a portion of the zone file, the one or more rules, and the contextual information.