Server Load Management via Dynamic Update Timing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In client-server applications, servers face challenges in managing the volume of updates from clients, leading to inefficient use of computing power and increased traffic, especially with a large number of clients, as they currently have no control over the timing of updates and must reserve high capacity to handle regular updates regardless of necessity.

Innovation Solution

The server calculates and communicates the optimal timing for clients to send updates based on models constructed from historical data, determining when parameter changes are significant, allowing for controlled and efficient update scheduling on a client-by-client basis.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If clients send regular updates to the server at fixed intervals, then the server can maintain up-to-date information about client states, but the server capacity must be set high requiring higher than needed reservation of computing power because updates will be sent according to the regular timing even when no update is necessary

Engineering Contradiction:
Improvedata freshnessVSAvoidserver computing power reservation
Core Design Contradiction:
ReliabilityVSUse of energy by stationary object

Solution Approach 1:

The server dynamically adjusts the update interval for each client based on their historical update patterns and current state. Instead of using a fixed regular interval, the system adapts the timing of updates to match actual client behavior, sending updates more frequently when changes are likely and less frequently when the client state is stable.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system changes the parameter of update timing from a static fixed interval to a dynamic variable interval. The server analyzes historical data to determine optimal update intervals for each client, adjusting these intervals based on observed patterns of state changes, thereby reducing unnecessary updates while maintaining data freshness.

Inventive Principle:
Principle #35Parameter changes

2Productivity

If clients send updates only when parameter values change, then the server receives updates only when necessary, but the server has no control over volume of traffic generated by clients

Engineering Contradiction:
Improveupdate efficiencyVSAvoidtraffic volume control
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The server implements a feedback mechanism where it monitors client update patterns, analyzes the timing and content of updates, and uses this information to control future update timing. The server provides guidance to clients about when updates are most valuable, creating a closed-loop system that manages traffic volume while maintaining update efficiency.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

Instead of allowing completely event-driven updates, the system introduces a periodic component where the server schedules updates based on analyzed patterns. This periodic scheduling, combined with event-triggered updates, creates a balanced approach that controls traffic volume while ensuring updates occur when parameter changes are significant.

Inventive Principle:
Principle #19Periodic action

3Reliability

If the server increases capacity to handle updates from tens of millions of clients, then all client updates can be accommodated, but the cost and resource requirements increase significantly

Engineering Contradiction:
Improvesystem capacityVSAvoidserver resources
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The server applies partial action by not processing every potential update from every client with equal frequency. Instead, it uses historical analysis to determine which clients are likely to have significant state changes and prioritizes updates from those clients. This selective approach reduces the overall update volume the server must handle while maintaining system reliability.

Inventive Principle:
Principle #16Partial or excessive action

Solution Approach 2:

The system changes the parameter of update frequency from a uniform high frequency for all clients to a variable frequency based on individual client patterns. By analyzing historical data, the server identifies clients with high state change probabilities and adjusts update intervals accordingly, reducing total traffic volume while maintaining adequate monitoring of all clients.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS10516571B2Server load management
Publication Date: 2019.12.24 MICROSOFT TECHNOLOGY LICENSING LLC
  • US10516571B2 patent drawing

AI summary

System and method for collecting values of one or more parameters of one or more clients that are communicatively connected to a server. A model is constructed based on the collected values of the one or more parameters to thereby model as a function of time the probability that the values of the one or more parameters of the one or more clients will change by an amount that is considered significant, e.g. at the server. An update of the one or more parameters is received from one of the clients. Responsive to receiving the update, the model is used to calculate a timing for the next update of the values from the one of the clients. The calculated timing for the next update is sent to the one of the clients.