Transport-Layer Congestion Control for Dynamic Flow Prioritization

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing solutions for TCP traffic prioritization, such as traffic shaping and throttling, are limited by licensing constraints and lack dynamic adjustment capabilities, failing to effectively manage dynamically changing priority flows.

Innovation Solution

A method for congestion control is implemented at the transport layer of the networking stack, using bandwidth thresholds and contextual data to dynamically adjust the congestion window size based on priority levels and flow phases, with centralized or distributed management to optimize bandwidth allocation across multiple machines.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If traffic shaping or port group throttling is used for TCP traffic prioritization, then bandwidth allocation can be controlled, but the solution lacks dynamic adjustment capability and is subject to licensing constraints

Engineering Contradiction:
Improvedynamic adjustment capabilityVSAvoidlicensing constraints
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent implements dynamic TCP traffic prioritization by continuously adjusting the congestion window size based on real-time bandwidth consumption measurements and contextual data about flow priorities. The system transitions from static traffic shaping to dynamic adaptation where the congestion control window is automatically modified according to current network conditions and priority requirements, enabling the system to respond to changing traffic patterns without manual intervention or licensing constraints

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent employs feedback mechanisms by periodically measuring bandwidth consumption and using this information to adjust the congestion window size. The system receives contextual data about flow priorities and continuously compares actual bandwidth usage against target allocations, then modifies the congestion control parameters accordingly. This closed-loop feedback enables dynamic prioritization that adapts to both network conditions and application requirements

Inventive Principle:
Principle #23Feedback

2Adaptability or versatility

If standard traffic shaping is used, then bandwidth allocation can be controlled, but it cannot dynamically adjust TCP traffic priority during flow lifecycle

Engineering Contradiction:
Improvedynamic priority adjustmentVSAvoidresponse time to priority changes
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The system dynamically adjusts TCP traffic priority throughout the flow lifecycle by modifying the congestion window size in real-time based on contextual data received from the application layer. Unlike static traffic shaping, this approach allows priority levels to change dynamically as flows evolve, with the transport layer continuously adapting to new requirements without manual reconfiguration

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent implements preliminary action by pre-configuring bandwidth thresholds and priority levels for different application flows before traffic begins. The application layer provides contextual data including target bandwidth thresholds that are used to establish initial congestion control parameters. This preliminary configuration enables rapid response to priority changes without requiring real-time computation during critical moments

Inventive Principle:
Principle #10Preliminary action

3Productivity

If congestion window size is increased for high priority flows, then bandwidth allocation is improved, but packet loss may occur during network congestion

Engineering Contradiction:
Improvebandwidth allocation efficiencyVSAvoidpacket loss rate
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent applies local quality by differentiating congestion control parameters for different flows based on their priority levels and contextual characteristics. Instead of uniform congestion control, the system assigns specific bandwidth thresholds and window size adjustment rates to individual flows according to their requirements. This localized approach allows high-priority flows to receive more bandwidth while low-priority flows are throttled appropriately, preventing overall network congestion and packet loss

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The system dynamically changes congestion control parameters including the congestion window size and its adjustment rate based on measured bandwidth consumption and flow priority. The patent modifies these parameters in real-time, increasing the window size for high-priority flows to improve bandwidth utilization while decreasing it for low-priority flows during congestion conditions. This parameter adaptation resolves the contradiction by making bandwidth allocation efficient for priority flows while maintaining network stability through selective parameter modification

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS12495003B2Bandwidth utilization-based congestion control
Publication Date: 2025.12.09 VMWARE INC
  • US12495003B2 patent drawing
  • US12495003B2 patent drawing
  • US12495003B2 patent drawing

AI summary

Some embodiments of the invention provide a method for performing congestion control for a particular packet flow associated with a first machine operating in a network. The method is performed at a first machine executing on a first host computer. The method receives, from multiple machines operating in the network and executing on other host computers, remote state data associated with a first multiplicity of packet flows traversing the multiple machines in the network. The method collects local state data associated with a second multiplicity of packet flows associated with the first machine. Based on the received remote and local state data, the method adjusts an amount of bandwidth allocated to the particular packet flow associated with the first machine.