Web Server Mobile Device Detection via DNS Signatures

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current methods for detecting mobile devices making HTTP requests are resource-intensive and require large databases for user agent string comparisons, leading to significant processing overhead and the need for frequent updates to account for new devices.

Innovation Solution

A web server sends a DNS request for mobile device detection strings, compares the User-Agent header of HTTP requests to these strings, and determines if a client device is a mobile device before forwarding the request to server-side scripts, allowing for early detection and potential redirection to a mobile version of the website.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If server-side scripts compare User-Agent field to large user agent string databases (e.g., WURFL) to ensure comprehensive mobile device detection, then detection accuracy is improved, but processing overhead and resource consumption increase significantly

Engineering Contradiction:
Improvemobile device detection accuracyVSAvoidserver processing overhead
Core Design Contradiction:
Measurement precisionVSLoss of energy

Solution Approach 1:

The patent segments the mobile device detection process into two parts: (1) a lightweight signature matching component that runs in the web server before request processing, and (2) the existing server-side script processing. The signature database contains only essential mobile device identifiers rather than comprehensive user agent strings, separating the heavy lifting from the critical request path.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent performs preliminary mobile device detection by matching the User-Agent field against a signature database before the HTTP request undergoes significant processing or is forwarded to server-side scripts. This early detection allows the system to identify mobile devices and redirect them to mobile-optimized content before resource-intensive processing occurs.

Inventive Principle:
Principle #10Preliminary action

2Adaptability or versatility

If comprehensive user agent string databases are maintained to account for all known devices, then detection coverage is improved, but database size and update frequency requirements increase

Engineering Contradiction:
Improvedevice coverageVSAvoiddatabase size
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent extracts only the essential signature elements needed for mobile device detection from comprehensive user agent string databases. Instead of maintaining complete user agent strings with all their variations and capabilities, the system uses a streamlined signature database containing key identifiers that suffice for distinguishing mobile devices from non-mobile devices.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent uses a lightweight, simplified signature database that can be easily updated and replaced without significant cost or complexity. Rather than maintaining a permanent, comprehensive database like WURFL, the system employs a smaller signature set that can be quickly regenerated or updated as needed, treating the database as a disposable resource that doesn't require long-term maintenance overhead.

Inventive Principle:
Principle #27Cheap short-living objects (Disposable)

Data Source

PatentUS8862777B2Systems, apparatus, and methods for mobile device detection
Publication Date: 2014.10.14 VERISIGN INC
  • US8862777B2 patent drawing
  • US8862777B2 patent drawing
  • US8862777B2 patent drawing

AI summary

Systems and methods are disclosed for detecting mobile devices. In one implementation, a system includes a web server. The web server receives mobile device detection strings from a DNS server in response to a DNS request and stores the mobile device detection strings on the server. The web server uses the mobile device detection strings to determine if a client device making a request to the web server is a mobile device. The web server may determine if the client device is a mobile device by comparing a user agent string in the request to the mobile device detection strings. The web server may determine whether the client device is a mobile device before sending the client device's request to any server-side scripts stored at the web server.