Proxy-Based TCP Congestion Control for QoS Precedence

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current QoS mechanisms in data communication networks are inadequate for managing bandwidth allocation, especially in scenarios with minimal or no packet backlog and single flows, and are ineffective across networks controlled by third parties, leading to unfairness and inefficiencies in bandwidth distribution.

Innovation Solution

A system and method that employs a proxy to dynamically control bandwidth by allocating and distributing congestion indications based on connection priorities, allowing senders to adjust transmission rates accordingly, ensuring quality of service and adhering to accepted bandwidth limits.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If traditional QoS mechanisms are used for bandwidth allocation, then basic IP functionality is maintained, but QoS bits are ignored by bottleneck gateways in third-party networks leading to unfair bandwidth distribution

Engineering Contradiction:
Improvebandwidth allocation fairnessVSAvoidnetwork control independence
Core Design Contradiction:
ReliabilityVSAdaptability or versatility

Solution Approach 1:

The patent introduces a gateway as an intermediary device that sits between multiple networks and actively manages QoS by distributing congestion events to connections based on priority levels. This gateway mediator enables QoS enforcement in third-party networks where traditional QoS bits would otherwise be ignored, resolving the contradiction between maintaining basic IP functionality and achieving fair bandwidth allocation.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The system changes the parameter of congestion indication distribution by prioritizing certain connections over others based on assigned priority levels. Instead of treating all connections equally or relying on ignored QoS bits, the gateway actively modifies which connections receive congestion events, thereby controlling bandwidth allocation fairness through parameter-based prioritization.

Inventive Principle:
Principle #35Parameter changes

2Reliability

If fair queuing is used to equalize bandwidth between connections, then bandwidth fairness is improved, but the mechanism is dependent on having a backlog of packets which may not exist in single flow scenarios

Engineering Contradiction:
Improvebandwidth fairnessVSAvoidapplicability to single flow
Core Design Contradiction:
ReliabilityVSAdaptability or versatility

Solution Approach 1:

The patent implements a dynamic QoS mechanism that adapts to different network conditions and flow scenarios. The gateway dynamically assigns priority levels to connections and dynamically distributes congestion events based on current network state, allowing the system to function effectively whether there are multiple flows with backlog or single flows without traditional backlog conditions.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The gateway acts as a mediator that creates artificial congestion signals even when natural packet backlog doesn't exist. By injecting congestion events at the gateway level, the system can enforce QoS priorities in single-flow scenarios where traditional fair queuing would have no backlog to manage, thus extending applicability beyond multi-flow backlog scenarios.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Productivity

If TCP uses random losses to control connection speed, then congestion control is achieved, but unfairness occurs between connections with different path lengths and loss rates

Engineering Contradiction:
Improvecongestion control effectivenessVSAvoidbandwidth allocation fairness
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent implements a feedback mechanism where the gateway monitors network conditions and connection priorities, then actively distributes congestion events to appropriate connections based on their priority levels. This feedback loop replaces the random loss mechanism with a controlled, priority-based congestion signal distribution that maintains congestion control effectiveness while eliminating the unfairness inherent in random loss approaches.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The gateway serves as an intermediary that intercepts and redistributes congestion signals. Instead of allowing random losses to occur naturally at different points in the network affecting connections differently, the gateway centralizes congestion control and fairly distributes congestion events according to connection priorities, thereby ensuring both effectiveness and fairness.

Inventive Principle:
Principle #24Intermediary (Mediator)

4Reliability

If a proxy dynamically controls bandwidth by distributing congestion events, then QoS precedence is achieved, but the system complexity increases compared to traditional TCP mechanisms

Engineering Contradiction:
ImproveQoS precedence enforcementVSAvoidbandwidth control mechanism
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent introduces a gateway intermediary that centralizes QoS enforcement functionality. While this adds device complexity, it simplifies the overall system architecture by consolidating congestion control logic in a single point rather than requiring complex modifications to multiple network elements. The gateway's priority-based congestion distribution mechanism provides reliable QoS precedence enforcement through a manageable level of complexity.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS7760642B2Systems and methods for providing quality of service precedence in TCP congestion control
Publication Date: 2010.07.20 CITRIX SYSTEMS INC
  • US7760642B2 patent drawing
  • US7760642B2 patent drawing
  • US7760642B2 patent drawing

AI summary

Systems and methods for dynamically controlling bandwidth of connections are described. In some embodiments, a proxy for one or more connections may allocate, distribute, or generate indications of network congestion via one or more connections in order to induce the senders of the connections to reduce their rates of transmission. The proxy may allocate, distribute, or generate these indications in such a way as to provide quality of service to one or more connections, or to ensure that a number of connections transmit within an accepted bandwidth limit. In other embodiments, a sender of a transport layer connection may have a method for determining a response to congestion indications which accounts for a priority of the connection. In these embodiments, a sender may reduce or increase parameters related to transmission rate at different rates according to a priority of the connection.