Proxy Server Selection Using Latency Prediction

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing proxy server systems face challenges in selecting the optimal server for minimizing latency when proxying data between multiple devices located in different geographical regions, as they often rely on insufficient prior latency measurements or lack efficient methods for predicting latency in new combinations of subnets and proxy servers.

Innovation Solution

The system estimates latencies between subnets and proxy servers by using prior measurements and generates a data structure for lookup, and when measurements are insufficient, it employs a machine learning model trained with geographic data to predict latencies, allowing for quick selection of the proxy server with the lowest estimated total latency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of time

If prior latency measurements are used to select proxy servers, then selection speed is improved, but accuracy deteriorates when measurements are insufficient

Engineering Contradiction:
Improveproxy server selection timeVSAvoidlatency prediction accuracy
Core Design Contradiction:
Loss of timeVSMeasurement precision

Solution Approach 1:

The system performs preliminary latency measurements between subnets and proxy servers, storing these measurements in advance in a data structure. This allows the selection process to use pre-computed data rather than measuring in real-time, improving selection speed while maintaining accuracy when measurements exist.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

A machine learning model is introduced as an intermediary to predict latency values when prior measurements are insufficient. The model takes geographic data as input and outputs predicted latency, bridging the gap between available measurements and required predictions, thus maintaining accuracy even when direct measurements are unavailable.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Measurement precision

If machine learning models are used to predict latency, then accuracy is improved for new combinations, but system complexity increases

Engineering Contradiction:
Improvelatency prediction accuracyVSAvoidsystem architecture complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The machine learning model is trained in advance using historical latency data and geographic information. This preliminary training phase allows the model to be ready for deployment without requiring complex real-time computations during proxy server selection, thus managing system complexity while maintaining prediction accuracy.

Inventive Principle:
Principle #10Preliminary action

3Measurement precision

If comprehensive latency measurements are collected for all subnet-proxy server combinations, then prediction accuracy is improved, but data storage requirements increase

Engineering Contradiction:
Improvelatency measurement completenessVSAvoiddata storage volume
Core Design Contradiction:
Measurement precisionVSQuantity of substance

Solution Approach 1:

Instead of collecting latency measurements for all possible subnet-proxy server combinations, the system collects measurements for a subset of combinations and uses the machine learning model to predict the rest. This partial measurement approach reduces data storage requirements while maintaining sufficient prediction accuracy through the combination of measured and predicted values.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS11005923B2Proxy server selection based on server latency times
Publication Date: 2021.05.11 APPLE INC
  • US11005923B2 patent drawing
  • US11005923B2 patent drawing
  • US11005923B2 patent drawing

AI summary

A device implementing a system for proxying data between devices includes a processor configured to obtain a first latency and a second latency, the first latency being between a server and a first subnet, and the second latency being between the server and a second subnet. The at least one processor is further configured to train a machine learning model with a training dataset that includes the first latency with respect to the server and the first subnet, the second latency with respect to the server and the second subnet, and geographic data of the server, the first subnet and the second subnet. The at least one processor is further configured to use the machine learning model to estimate a third latency between the server and a third subnet, and store the first, second and third latencies in a data structure.