Hardware Accelerator for DNS Cache with TTL Pre-fetch

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current DNS lookup technologies face inefficiencies in handling DNS queries, particularly in maintaining an effective cache and managing time-to-live (TTL) parameters, leading to suboptimal performance and increased latency.

Innovation Solution

A hardware accelerator for DNS caching, which includes a packet processing engine to identify and manage DNS requests, perform cache lookups, and implement pre-fetch operations based on TTL thresholds, along with security filtering and TCP offload capabilities, utilizing a customized network interface card with programmable packet processing engines.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If traditional software-based DNS lookup is used, then implementation flexibility is maintained, but processing speed and response time deteriorate

Engineering Contradiction:
ImproveDNS query processing speedVSAvoidhardware accelerator complexity
Core Design Contradiction:
SpeedVSDevice complexity

Solution Approach 1:

The DNS server functionality is segmented into two parts: a hardware accelerator for high-speed cache operations and a software component for complex DNS server logic. The hardware accelerator handles packet processing, cache management, and TTL operations in parallel, while the software handles domain name resolution algorithms and protocol management, resolving the contradiction between speed and complexity

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

A hardware accelerator acts as an intermediary between the network interface and the DNS server software. It pre-processes incoming DNS packets, performs cache lookups, and filters traffic before passing relevant information to the software DNS server, enabling fast processing without requiring full software involvement in every operation

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If cache size is increased to improve hit ratio, then memory usage increases, but cache effectiveness improves

Engineering Contradiction:
Improvecache hit ratioVSAvoidmemory resources
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The system dynamically changes cache parameters including entry size, allocation policies, and TTL values based on traffic patterns. The hardware accelerator can adjust cache parameters in real-time to optimize the balance between cache hit ratio and memory resource consumption, adapting to different workload conditions

Inventive Principle:
Principle #35Parameter changes

3Productivity

If manual cache management is used, then control precision is maintained, but processing overhead and latency increase

Engineering Contradiction:
ImproveDNS query throughputVSAvoidcache management automation
Core Design Contradiction:
ProductivityVSExtent of automation

Solution Approach 1:

The hardware accelerator implements self-service cache management by automatically performing cache lookups, TTL decrements, and entry evictions without software intervention. The system autonomously manages cache operations including pre-fetching entries based on traffic patterns, eliminating processing overhead while maintaining precise control through dedicated hardware logic

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS9215205B1Hardware accelerator for a domain name server cache
Publication Date: 2015.12.15 INFOBLOX INC
  • US9215205B1 patent drawing
  • US9215205B1 patent drawing
  • US9215205B1 patent drawing

AI summary

Techniques for a hardware accelerator for a domain name server (DNS) cache are disclosed. In some embodiments, a hardware accelerator for a DNS cache includes: executing a packet processing engine of a host device to identify a DNS request; and performing a DNS lookup in the DNS cache. In some embodiments, a hardware accelerator for a DNS cache includes: determining if a time to live (TTL) parameter associated with a first entry stored in the DNS cache is below a threshold value; and if the TTL parameter associated with the first entry stored in the DNS cache is below the threshold value, then performing a pre-fetch operation to update the first entry in the DNS cache, wherein the updated entry comprises an updated TTL value.