User Agent String Analysis via Dynamic Keyword Extraction

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing techniques for detecting user agent identity rely heavily on predefined regular expressions, which are inadequate for covering the vast and constantly changing landscape of user agent strings, resulting in low detection rates and requiring significant manual effort to maintain.

Innovation Solution

A method and system that utilize a list of predefined keywords associated with user agent information, extract candidate keywords from user agent strings, and apply extraction patterns to determine the type and version of user agent information, with an analyzing database building engine that automatically updates the database with new keywords from unrecognized strings.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If predefined regular expressions are used for user agent detection, then the detection process is simple and fast, but the detection rate and coverage are low due to the inability to cover constantly changing user agent strings

Engineering Contradiction:
Improvedetection rateVSAvoidsystem complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent implements a dynamic keyword list that can be automatically updated with new keywords extracted from unrecognized user agent strings. Unlike static regular expressions, the system adapts to changing user agent formats by continuously learning new patterns from actual traffic data, thereby improving detection rate while maintaining manageable complexity through automated updates.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system performs self-updates by automatically extracting new keywords from unrecognized user agent strings and adding them to the keyword list without requiring manual intervention. This self-service mechanism allows the system to improve its own detection capabilities over time, resolving the contradiction between maintaining high detection rates and avoiding excessive complexity.

Inventive Principle:
Principle #25Self-service

2Reliability

If predefined regular expressions are used, then manual maintenance effort is required to update for new devices and OS versions, but this requires significant human resources and time

Engineering Contradiction:
Improvedetection coverageVSAvoidmaintenance time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system automatically extracts new keywords from unrecognized user agent strings and updates the keyword list without human intervention. This eliminates the need for manual collection of new information from market sources and generation of new regular expressions, dramatically reducing maintenance time and human resources while improving detection coverage for new devices and OS versions.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The system uses feedback from unrecognized user agent strings to continuously improve its detection capabilities. When a user agent string cannot be recognized, the system extracts new keywords from it and adds them to the keyword list, creating a closed-loop feedback mechanism that automatically adapts to new devices and OS versions without requiring manual maintenance efforts.

Inventive Principle:
Principle #23Feedback

3Adaptability or versatility

If the user agent schema is constantly updated to cover new devices and browsers, then detection coverage improves, but the complexity of managing and updating regular expressions increases significantly

Engineering Contradiction:
Improvecoverage of new devicesVSAvoidregular expression management
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The system uses a dynamic keyword list that automatically adapts to new user agent formats by extracting keywords directly from unrecognized strings. This dynamic approach replaces the need for manually updating complex regular expressions to cover new devices, browsers, and OS versions, thereby improving adaptability while reducing the complexity of schema management.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system automatically updates its keyword list by extracting new keywords from unrecognized user agent strings without requiring manual intervention. This self-service mechanism allows the system to adapt to constantly changing user agent schemas for new devices and browsers while avoiding the complexity of manual regular expression management and updates.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS11120004B2Method and system for analyzing a user agent string
Publication Date: 2021.09.14 YAHOO ASSETS LLC
  • US11120004B2 patent drawing
  • US11120004B2 patent drawing
  • US11120004B2 patent drawing

AI summary

Method, system, and programs for analyzing user agent string are disclosed. In one example, a user agent string is received. A list of predefined keywords is obtained. Each of the predefined keywords is associated with a type of user agent information. One or more candidate keywords are extracted from the user agent string based on the list of predefined keywords. An extraction pattern is obtained for each of the one or more candidate keywords. A keyword is determined with a version from the one or more candidate keywords based, at least in part, on the extraction patterns for the one or more candidate keywords. The determined keyword with the version represents the type of user agent information in the received use agent string.