Optimistic Permission Granting for Distributed Resource Placement

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In distributed computing systems, the existing methods for granting permission to host computing resources are inefficient, leading to increased wait times and bottlenecks in the control plane, particularly in large-scale systems where many resources need to be placed across multiple hosts.

Innovation Solution

Implementing an optimistic permission-granting mechanism that allows multiple resource hosts to prepare for hosting computing resources in parallel, reducing the dependency on the control plane and enabling quicker resource placement by granting permission to the first available host, thereby alleviating bottlenecks and improving placement performance.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If traditional permission-granting methods are used where the control plane sequentially evaluates and grants permission to each resource host, then permission accuracy and reliability are maintained, but resource placement time increases and control plane workload increases

Engineering Contradiction:
Improvepermission accuracyVSAvoidresource placement time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system performs preliminary permission evaluation by having resource hosts proactively request permission before actual resource placement. The control plane pre-evaluates permission requests from multiple hosts in parallel, granting permission to eligible hosts before they are selected for actual resource hosting. This preliminary action eliminates the need for sequential permission checks during resource placement, significantly reducing placement time while maintaining permission accuracy through pre-validation.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The permission-granting process is segmented into independent evaluation tasks that can be processed in parallel. Instead of a single sequential permission check, the system divides the permission evaluation into separate requests from different resource hosts, each evaluated independently by the control plane. This segmentation enables concurrent processing of multiple permission requests, reducing overall permission-granting time while maintaining the reliability of individual permission decisions.

Inventive Principle:
Principle #1Segmentation

2Reliability

If the control plane sequentially evaluates permission requests from multiple resource hosts, then permission accuracy is maintained, but control plane workload and processing time increase

Engineering Contradiction:
Improvepermission accuracyVSAvoidcontrol plane processing efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The control plane processes permission requests through segmented, independent evaluation tasks that can be handled concurrently. Each resource host's permission request is evaluated as a separate, self-contained task, allowing the control plane to process multiple requests in parallel rather than sequentially. This segmentation maintains permission accuracy for each individual evaluation while dramatically improving overall control plane processing efficiency through concurrent execution.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The control plane maintains continuous productive action by processing multiple permission requests simultaneously without idle waiting time. While traditional sequential processing would require the control plane to wait between evaluating each request, the parallel evaluation approach keeps the control plane continuously engaged in useful evaluation work across multiple hosts at the same time, maximizing processing efficiency while maintaining evaluation quality.

Inventive Principle:
Principle #20Continuity of useful action

3Speed

If multiple resource hosts prepare for hosting resources in parallel without pre-granted permission, then resource placement speed improves, but system consistency and reliability may be compromised

Engineering Contradiction:
Improveresource placement speedVSAvoidsystem consistency
Core Design Contradiction:
SpeedVSReliability

Solution Approach 1:

Resource hosts perform preliminary preparation actions in parallel by requesting and receiving permission before actual resource placement. The control plane evaluates and grants permission to multiple hosts concurrently, ensuring system consistency through pre-validation. Once permission is granted, hosts can proceed with resource placement at high speed without further coordination overhead, achieving both speed and reliability through the preliminary permission-granting action.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The control plane acts as an intermediary that mediates between resource hosts preparing in parallel and the actual resource placement process. It receives parallel permission requests from multiple hosts, evaluates them against system consistency requirements, and grants permission to eligible hosts before they proceed with placement. This intermediary role ensures system consistency is maintained while allowing parallel preparation activities to occur at high speed.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS11121981B1Optimistically granting permission to host computing resources
Publication Date: 2021.09.14 AMAZON TECH INC
  • US11121981B1 patent drawing
  • US11121981B1 patent drawing
  • US11121981B1 patent drawing

AI summary

A system that hosts computing resources may implement optimistically granting permission to host computing resources. A request for permission to host a computing resource may be received by a control plane. If the control plane determines that the resource host is the first to request permission to host the resource, then the control plane may store an indication of permission that blocks other resource hosts from obtaining permission to host the computing resource and sending an acknowledgement of permission to the resource host that requested permission.