Dynamic WAN Latency Weighting for Bufferbloat Reduction

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing techniques fail to effectively improve network performance when a network device has multiple WANs, as they are unable to adequately address the issue of bufferbloat and resulting latency in such multi-WAN environments.

Innovation Solution

The method involves establishing multiple connections between network devices, determining non-congesting latency for each connection, assigning weightings based on latency, and dynamically adjusting these weightings when connection performance deteriorates, thereby optimizing data packet routing across WANs.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If multiple WAN connections are used to send data packets, then network bandwidth and throughput are improved, but network latency increases due to bufferbloat and congestion on individual connections

Engineering Contradiction:
Improvenetwork throughputVSAvoidnetwork latency
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The system dynamically adjusts the weighting of each WAN connection based on real-time latency measurements. The weighting factors are continuously updated to reflect current network conditions, allowing the system to adapt to changing congestion levels and minimize latency while utilizing multiple WAN connections for throughput.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system changes the parameter of weighting assignment from static to dynamic based on latency performance. By monitoring latency metrics and adjusting weighting parameters accordingly, the system optimizes the distribution of data packets across multiple WAN connections to balance throughput and latency.

Inventive Principle:
Principle #35Parameter changes

2Reliability

If buffer sizes are increased to handle congestion, then data packet loss is reduced, but latency increases significantly

Engineering Contradiction:
Improvepacket delivery reliabilityVSAvoidqueuing latency
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system segments the network traffic distribution across multiple WAN connections rather than relying on a single large buffer. By dividing traffic flow and dynamically routing packets through multiple paths based on latency-weighted decisions, the system avoids the latency penalty of large buffers while maintaining reliable packet delivery.

Inventive Principle:
Principle #1Segmentation

3Device complexity

If static weighting is assigned to multiple WAN connections, then system complexity is reduced, but network performance cannot be optimized under varying congestion conditions

Engineering Contradiction:
Improveweighting management complexityVSAvoidnetwork performance
Core Design Contradiction:
Device complexityVSProductivity

Solution Approach 1:

The system implements feedback by continuously measuring latency on each WAN connection and using this information to adjust weighting assignments. This closed-loop control enables the system to automatically optimize network performance across multiple WANs without manual intervention, balancing complexity and adaptability.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS12273272B2Method and systems for reducing network latency
Publication Date: 2025.04.08 PISMO LABS TECH
  • US12273272B2 patent drawing
  • US12273272B2 patent drawing
  • US12273272B2 patent drawing

AI summary

The present invention discloses methods and systems for reducing network latency. A first network device establishes a plurality of connections with a second network device. After that, determining non-congesting latency of each of the plurality of connections. Assigning a weighting to each of the plurality of connections. Decreasing the weighting of a connection when the performance of the connection deteriorated according to a first criteria. The first network device may perform weight decreasing again after a time interval. Last, sending data packets through the plurality of connections according to the weightings.