DNS Shared Cache with Policy Views for Scalable Resolution
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Traditional DNS server systems are limited in their ability to handle large volumes of queries efficiently, as they typically employ separate caches for each view, leading to scalability issues and inability to provide unique views to each DNS client, and lack effective mechanisms for policy-based modification of DNS responses.
Innovation Solution
The system decouples the DNS resolver and cache from the view, allowing for a shared cache that can be used across multiple views, with policies applied to DNS responses to personalize and modify them for each client, enabling a scalable and customizable DNS response system.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If separate caches are employed for each view in traditional DNS server systems, then each DNS client can have its own view, but the system cannot scale to handle large volumes of queries efficiently
Solution Approach 1:
The patent merges multiple view-specific caches into a single shared cache that serves all views. The cache stores DNS responses with view identifiers, allowing the same cached response to be served to multiple views when appropriate, thereby reducing memory usage and improving cache hit rates while maintaining view-specific customization through policy application.
Solution Approach 2:
The shared cache is designed to serve multiple views simultaneously, making it a universal resource. The cache structure allows it to store and retrieve responses for different views, and the policy framework enables the same cached response to be selectively applied or modified for different views, achieving multi-functionality.
2Productivity
If a shared cache is used across multiple views, then scalability and efficiency are improved, but the ability to provide unique views to each DNS client is reduced
Solution Approach 1:
The policy framework acts as an intermediary layer between the shared cache and the various views. When a DNS query arrives, the policy framework intercepts the cached response and applies view-specific modifications before returning it to the client. This mediator approach allows the shared cache to maintain efficiency while the policy layer preserves view uniqueness.
Solution Approach 2:
The system applies local quality by allowing each view to have its own set of policies that modify the general cached responses. Each view can have customized policies for malicious domain redirection, non-existent domain redirection, and other view-specific requirements, while still benefiting from the shared cache for common responses.
3Adaptability or versatility
If policies are applied to modify DNS responses for each view, then customization and security are enhanced, but the system complexity increases
Solution Approach 1:
The policy framework is segmented into distinct, modular policy components that can be independently configured and applied to different views. Each policy (e.g., malicious domain redirection, non-existent domain redirection) is a separate unit that can be enabled or disabled per view, reducing the complexity of managing customization across the entire system.
Data Source
AI summary
Systems and methods for resolving domain name system (DNS) queries are provided herein. Methods may include receiving a DNS query from a DNS client via a DNS server, responsive to the DNS query, generating the DNS response utilizing the at least one policy associated with the view, providing the DNS response to the DNS client from which the DNS query was received, and storing the DNS response in a shared cache, the shared cache including previously generated DNS responses that are available to the DNS server, wherein previously generated DNS responses may be provided to DNS clients upon receiving a DNS query corresponding to at least one of the previously generated DNS responses.


