Network Performance Estimation via Historical Data Logging

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Mobile devices struggle to efficiently estimate network performance, especially when applications start or have not been executing for a sufficient duration, leading to suboptimal data streaming and other network operations due to inadequate adjustment for network conditions.

Innovation Solution

A system and method that include a performance logging module generating log entries based on operational data, which are stored in a network performance database, allowing a performance analysis module to determine network performance estimates by comparing current conditions to historical data, providing estimates for throughput and delay.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If applications determine network performance based solely on current session or diagnostics, then the method is simple to implement, but the accuracy of network performance estimation is insufficient especially when applications have just started or have not been executing for sufficient duration

Engineering Contradiction:
Improvenetwork performance estimation accuracyVSAvoidsystem complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The system performs preliminary actions by collecting and storing network performance data from previous sessions before the current application needs to estimate network performance. The performance logging module continuously logs operational data including network condition data, physical state data, and realized network performance data into a database, so that when a new session starts, historical data is already available for analysis to provide accurate estimates even before the application has been executing long enough to gather sufficient current session data.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system introduces an intermediary mechanism - a performance logging module and database - that acts as a mediator between network operations and application decisions. This intermediary collects, stores, and provides historical network performance data that applications can query to make informed decisions about quality of service adjustments, thereby improving estimation accuracy without requiring applications to perform complex diagnostics themselves.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Measurement precision

If applications wait until they have been executing for sufficient duration to gather network performance data, then the estimation accuracy improves, but the response time increases and user experience deteriorates

Engineering Contradiction:
Improvenetwork performance estimation accuracyVSAvoidtime delay in network performance estimation
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The system performs preliminary data collection and storage during previous sessions, so that when a new session begins, the necessary historical network performance data is already ready in the database. This eliminates the need for applications to wait and collect data during their initial execution phase, providing immediate accurate estimates while reducing time loss.

Inventive Principle:
Principle #10Preliminary action

3Measurement precision

If applications perform extensive diagnostics to determine network performance, then the estimation accuracy improves, but the overhead and impact on network operations increases

Engineering Contradiction:
Improvenetwork performance estimation accuracyVSAvoidnetwork operation efficiency
Core Design Contradiction:
Measurement precisionVSProductivity

Solution Approach 1:

The performance logging module serves as an intermediary that handles the complex data collection, storage, and retrieval operations. Applications simply query pre-processed data from the database rather than performing extensive diagnostics themselves. This significantly reduces the overhead and impact on network operations while maintaining high estimation accuracy.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The system performs self-service by automatically collecting, storing, and managing network performance data without requiring applications to manually perform diagnostics or configuration changes. The performance logging module autonomously logs operational data and makes it available for queries, freeing applications to focus on their primary functions while still achieving accurate network performance estimation.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS9154984B1System and method for estimating network performance
Publication Date: 2015.10.06 GOOGLE LLC
  • US9154984B1 patent drawing
  • US9154984B1 patent drawing
  • US9154984B1 patent drawing

AI summary

The present disclosure is directed to techniques for estimating network performance of a mobile device. The techniques include a performance logging module and a performance analysis module. The performance logging module logs realized network performance of previously performed network operations and the operational conditions of a mobile device at the time of the performed network operations. The performance analysis module receives requests to estimate network performance, the requests including the current condition of the mobile device at the time of the request. The performance analysis module determines a network performance estimate based on the current condition of the mobile device and the operational conditions of the previously performed network operations, and the realized network performances of the previously performed network operations. It is appreciated that the proposed techniques allow applications to execute faster, as the applications can tune network operations based on the network performance estimates.