Request-Specific Nonce for Coordinated Subrequest Throttling

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Large-scale service provider systems face inefficiencies in managing overload conditions due to uncoordinated throttling and tracing of subrequests across subsystems, leading to incomplete traces and high failure rates of top-level requests.

Innovation Solution

A request-specific nonce is generated and shared among subsystems to coordinate the selection of subrequests, ensuring consistent and randomized prioritization, thereby minimizing the impact on top-level requests and maximizing complete trace collection.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If subsystems independently collect trace samples of random subrequests, then each subsystem can perform local tracing, but complete traces of top-level requests are extremely unlikely to be captured

Engineering Contradiction:
Improvetrace completenessVSAvoidcoordination complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent introduces a request ID as an intermediary mechanism that is propagated through all subsystems. This request ID serves as a common reference that enables subsystems to coordinate their tracing decisions without requiring complex direct communication between them. Each subsystem uses the request ID to determine whether to trace a subrequest, ensuring consistent coordination across the distributed system.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The request ID serves multiple functions simultaneously: it identifies the top-level request, enables coordinated tracing across subsystems, facilitates throttling decisions, and provides a basis for sampling. By making the request ID universal across all subsystems, the patent eliminates the need for separate coordination mechanisms while achieving complete trace capture.

Inventive Principle:
Principle #6Universality (Multi-functionality)

2Productivity

If subsystems throttle subrequests randomly, then load distribution is simplified, but the effective throttling rate for top-level requests becomes much larger than the subsystem throttling rate

Engineering Contradiction:
Improvetop-level request throughputVSAvoidthrottling coordination
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The request ID acts as a mediator that allows subsystems to coordinate their throttling decisions. Instead of independent random throttling, each subsystem uses the request ID to determine whether to throttle a subrequest based on a consistent sampling criterion. This coordination ensures that the effective throttling rate at the top-level request level matches the intended subsystem throttling rate.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent creates equipotentiality in the throttling process by using a uniform sampling criterion based on the request ID across all subsystems. Each subsystem applies the same throttling logic relative to the request ID, ensuring that the probability of throttling is consistent across the distributed system. This eliminates the amplification effect where small subsystem throttling rates would translate to large top-level throttling rates.

Inventive Principle:
Principle #12Equipotentiality

3Reliability

If high sampling percentages are used for trace collection, then more complete traces can be captured, but system overhead and resource consumption increase

Engineering Contradiction:
Improvetrace completenessVSAvoidtracing resource consumption
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

The patent applies partial action by using a sampling approach where only a subset of subrequests are traced. Instead of tracing all subrequests (excessive action), the system traces a statistically significant sample based on the request ID. This partial sampling achieves sufficient trace completeness for analysis while minimizing the resource consumption associated with full-system tracing.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS10445136B1Randomized subrequest selection using request-specific nonce
Publication Date: 2019.10.15 AMAZON TECH INC
  • US10445136B1 patent drawing
  • US10445136B1 patent drawing
  • US10445136B1 patent drawing

AI summary

Methods and related systems are provided for the generation and use of a request-specific nonce to coordinate the randomized selection of subrequests stemming from a top-level request to a system. The method includes receiving, but a subsystem of the system, a subrequest that is generated in response to the receipt of a top-level request to the system. The subsystem then determines a nonce that comprises a pseudorandom value that is consistent for all subrequests stemming from the top-level request. The subsystem may use the nonce to make a variety of processing decisions for the subrequests. In one embodiment, the nonce is used to determine which subrequests should be throttled. In another embodiment, the nonce is used to determine whether trace data should be collected for received subrequests. The nonce allows different subsystems to coordinate their processing decisions based on a randomized but consistent prioritization of the top-level request.