DNS Records for Software Update Availability Detection

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current software update systems are inefficient in identifying and downloading new patches, leading to increased load on update systems and hardware requirements due to repeated queries for availability of updates.

Innovation Solution

The use of the Domain Name System (DNS) to communicate update availability, where an update system generates DNS records with version data and time-to-live information, allowing client systems to query DNS servers and determine if updates are needed, reducing the need for frequent queries to the update system.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If client systems frequently query the update system to check for software updates, then update availability can be promptly detected, but the load on the update system increases and hardware requirements increase

Engineering Contradiction:
Improveupdate availability detectionVSAvoidload on update system
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent introduces a DNS server as an intermediary between client systems and the update system. Client systems query the DNS server for update information instead of directly querying the update system. The DNS server stores update availability information in DNS records and responds to client queries, thereby mediating the communication and reducing the direct load on the update system while maintaining reliable update detection

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent creates copies of update information by storing it in DNS records at the DNS server. Instead of client systems repeatedly accessing the update system to verify update availability, they query the DNS server which holds cached copies of the update information. This copying mechanism reduces the number of direct queries to the update system while ensuring clients can still detect update availability reliably

Inventive Principle:
Principle #26Copying

2Ease of operation

If client systems manually download updates, then update installation can be controlled by users, but the automation level and efficiency decrease

Engineering Contradiction:
Improveuser controlVSAvoidupdate efficiency
Core Design Contradiction:
Ease of operationVSProductivity

Solution Approach 1:

The patent enables client systems to automatically query the DNS server for update information and self-determine whether updates are needed by comparing version data. The system performs self-service update checks without requiring manual user intervention, thereby improving update efficiency and automation while still allowing users to control the actual download and installation processes

Inventive Principle:
Principle #25Self-service

3Quantity of substance

If the DNS record cache time is extended, then the load on the update system is reduced, but the timeliness of update detection decreases

Engineering Contradiction:
Improveload on update systemVSAvoidupdate detection timeliness
Core Design Contradiction:
Quantity of substanceVSLoss of time

Solution Approach 1:

The patent makes the DNS record cache time dynamic rather than static. The TTL value can be adjusted based on update frequency and importance. For frequently updated software, shorter TTL values ensure timely update detection, while for stable software, longer TTL values reduce the load on the update system. This dynamic adjustment allows the system to optimize the balance between load reduction and update detection timeliness

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS10838706B2Updating software utilizing domain name system (DNS)
Publication Date: 2020.11.17 RED HAT INC
  • US10838706B2 patent drawing
  • US10838706B2 patent drawing
  • US10838706B2 patent drawing

AI summary

Examples described herein are directed to systems and methods for updating software. An update system may generate a first Domain Name System (DNS) record comprising first version data indicating a version of an update to the software. The update system may send the DNS record to a DNS server with an indication of a domain name associated with the software.