Multi-path routing mitigates network congestion via dynamic flow selection

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Resource providers face strain from high volumes of resource requests from client computing devices, particularly when requested resources have multiple components, leading to increased latency and congestion in communication networks.

Innovation Solution

Implementing multi-path routing between client and target computing devices, which establishes multiple data flows based on latency and throughput, allowing dynamic selection and prioritization of data flows for efficient communication, and enabling intermediate computing devices to update network paths to mitigate congestion.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If a resource provider receives resource requests from a high volume of client computing devices, then the resource provider can serve more clients, but the resource provider's computing resources become strained

Engineering Contradiction:
Improvenumber of clients servedVSAvoidcomputing resource availability
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent segments the single data flow between client and resource provider into multiple parallel data flows through intermediate computing devices. This segmentation allows the system to handle high volumes of requests by distributing traffic across multiple paths, preventing any single resource from becoming overwhelmed while maintaining service capacity for numerous clients.

Inventive Principle:
Principle #1Segmentation

2Adaptability or versatility

If the requested resource has multiple components, then the resource can be more comprehensive, but the resource provider's computing resources experience additional strain

Engineering Contradiction:
Improveresource completenessVSAvoidcomputing resource complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent applies segmentation by dividing the transmission of multi-component resources into separate parallel data flows, where each flow can handle specific components or subsets of components. This reduces the processing burden on any single resource provider instance while maintaining comprehensive resource delivery.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces intermediate computing devices that act as mediators between the resource provider and clients. These intermediaries handle the complexity of managing multiple resource components, offloading this complexity from the resource provider while ensuring complete and coordinated delivery of all resource components to the client.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Ease of operation

If traditional routing is used, then the network path is simple, but latency increases and network congestion occurs

Engineering Contradiction:
Improvenetwork path simplicityVSAvoidtransmission latency
Core Design Contradiction:
Ease of operationVSLoss of time

Solution Approach 1:

The patent implements dynamic routing where the system automatically selects and adjusts network paths based on real-time conditions such as latency measurements and congestion levels. The client computing device measures latency for multiple potential network paths and dynamically selects the optimal path, adapting to changing network conditions to minimize transmission time while maintaining operational simplicity.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS9860159B1Multi-path routing
Publication Date: 2018.01.02 AMAZON TECH INC
  • US9860159B1 patent drawing
  • US9860159B1 patent drawing
  • US9860159B1 patent drawing

AI summary

Systems and methods are provided for dynamically routing packets using multi-flow and multi-path multiplexing connections. A first computing device and second computing device communicate via a plurality of data flows, which may be routed across various network paths. Each flow is defined by a set of network addresses, a set of ports, and a protocol specification, such as UDP. The second device sends information to the first device regarding the various data flows. The first device may send probing packets to facilitate collecting data flow information. Information may include latency, packet loss, and other values. Based on the information received, the first device may select or prioritize data flows to mitigate congestion, and address performance criteria. The first device may also transmit information regarding selected data flows to other devices, allowing the other devices to utilize a selected data flow even if they lack multiplexing capability.