Dynamic Network Traffic Throttling via Queue Monitoring

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In multi-tenant network environments, conventional systems face challenges in managing shared resources like network interface cards (NICs), leading to unfair resource allocation and increased latency due to the inability to accurately track and manage network traffic from virtual machines, resulting in performance degradation for peers.

Innovation Solution

Intelligent network traffic control software that monitors packet transmission and behavior across virtual machines, dynamically adjusts queue allocation, and throttles resource usage to ensure fairness and minimize latency by tracking pending packets and their sources, even without explicit acknowledgments from the NIC.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Device complexity

If conventional fairness approaches are used to manage shared network resources, then resource allocation is simplified, but network latency increases due to inability to track and manage individual virtual machine traffic

Engineering Contradiction:
Improveresource management complexityVSAvoidnetwork latency
Core Design Contradiction:
Device complexityVSLoss of time

Solution Approach 1:

The system implements feedback mechanisms by monitoring packet transmission from virtual machines and using this information to dynamically adjust queue allocation. The network traffic control software tracks pending packets and their sources, providing feedback loops that enable dynamic resource management to reduce latency while maintaining fairness.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The patent applies dynamics by making queue allocation adjustable rather than fixed. The system dynamically adjusts queue depth and resource allocation based on real-time traffic patterns and virtual machine behavior, allowing the system to adapt to changing conditions and optimize latency performance.

Inventive Principle:
Principle #15Dynamics

2Reliability

If throughput is throttled to constrain misbehaving peers, then resource fairness is improved, but system performance slows down increasing latency for all peers

Engineering Contradiction:
Improveresource fairnessVSAvoidsystem throughput
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The system applies local quality by treating different virtual machines differently based on their individual traffic patterns and behavior. Rather than applying uniform throttling, the system monitors and manages each peer's queue allocation individually, allowing fair resource distribution while maintaining overall system performance and throughput.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The patent uses dynamics to enable adjustable queue depth and resource allocation for each virtual machine. This dynamic management allows the system to optimize fairness by monitoring actual traffic patterns and adjusting allocations in real-time, preventing both over-constraint and under-constraint of resources.

Inventive Principle:
Principle #15Dynamics

3Productivity

If queue depth is increased to maintain throughput, then data transmission capacity is improved, but cross-VM latency impact increases due to larger buffers

Engineering Contradiction:
Improvedata transmission throughputVSAvoidcross-VM latency
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The system dynamically adjusts queue depth based on real-time monitoring of virtual machine traffic patterns. By making queue depth adjustable rather than fixed, the system can optimize the balance between maintaining throughput and minimizing cross-VM latency impact, adapting queue sizes to actual workload conditions.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent applies parameter changes by monitoring packet transmission and using this information to adjust queue depth as a variable parameter. The system changes queue depth based on observed virtual machine behavior, allowing optimization of both throughput and latency performance by adapting this critical parameter to real-time conditions.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS9276864B1Dynamic network traffic throttling
Publication Date: 2016.03.01 AMAZON TECH INC
  • US9276864B1 patent drawing
  • US9276864B1 patent drawing
  • US9276864B1 patent drawing

AI summary

Information about the transmission of packets or other information can be inferred based at least in part upon the state of one or more queues used to transmit that information. In a networking example, a hook can be added to a free buffer API call from a queue of a NIC driver. When a packet is transmitted and a buffer freed, the hook can cause information for that packet to be transmitted to an appropriate location, such as a network traffic control component or control plane component, whereby that information can be compared with packet, source, and other such information to infer which packets have been transmitted, which packets are pending, and other such information. This information can be used for various purposes, such as to dynamically adjust the allocation of a resource (e.g., a NIC) to various sources based at least in part upon the monitored behavior.