Dynamic TCP Push Flag Control for ACK Reduction

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The existing TCP push functionality in network communication results in a significant number of acknowledgement (ACK) messages being sent, which wastes processor cycles and network bandwidth, as many TCP implementations acknowledge every packet with a set TCP push flag, leading to inefficient resource utilization.

Innovation Solution

A network traffic management system dynamically controls the setting of TCP push flags based on monitored network and application characteristics, optimizing the setting of TCP push flags to minimize delay for receiving applications and reduce ACK traffic.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If TCP push flag is set for every packet, then receiving application receives data promptly, but number of ACK messages increases significantly

Engineering Contradiction:
Improvedata delivery speedVSAvoidnumber of ACK messages
Core Design Contradiction:
SpeedVSQuantity of substance

Solution Approach 1:

The patent dynamically adjusts the TCP push flag setting based on real-time monitoring of application data reading speed and network conditions. Instead of statically setting the push flag for every packet, the system adapts the push frequency to match the receiving application's actual data consumption rate, thereby reducing unnecessary ACK messages while maintaining adequate data delivery speed.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent changes the parameter of TCP push flag usage from a fixed state (always set) to a variable state (conditionally set). By monitoring application characteristics and network conditions, the system modifies the push flag setting parameter to optimize the balance between data delivery speed and ACK message reduction.

Inventive Principle:
Principle #35Parameter changes

2Loss of time

If TCP push flag is set for every packet, then data is pushed to receiving application immediately, but processor cycles and power are wasted

Engineering Contradiction:
Improvedata delivery delayVSAvoidprocessor cycles and power
Core Design Contradiction:
Loss of timeVSLoss of energy

Solution Approach 1:

The patent implements a self-service mechanism where the system monitors its own performance characteristics (application data reading speed, network conditions) and automatically adjusts TCP push flag settings accordingly. This self-monitoring and self-adjustment eliminates the need for continuous high-frequency pushing, reducing processor cycles and power consumption while maintaining acceptable data delivery delay.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

Instead of applying TCP push flag to every packet (excessive action), the patent applies it only to select packets based on monitored conditions (partial action). This selective application reduces the frequency of push operations and corresponding ACK messages, thereby conserving processor cycles and power while still meeting the receiving application's data delivery requirements.

Inventive Principle:
Principle #16Partial or excessive action

3Loss of information

If TCP push flag is set for every packet, then receiving application gets real-time data updates, but network bandwidth is consumed by excessive ACKs

Engineering Contradiction:
Improvedata update timelinessVSAvoidnetwork bandwidth
Core Design Contradiction:
Loss of informationVSLoss of substance

Solution Approach 1:

The patent dynamically adjusts the TCP push flag setting based on real-time monitoring of application data reading speed and network conditions. Instead of statically setting the push flag for every packet, the system adapts the push frequency to match the receiving application's actual data consumption rate, thereby reducing unnecessary ACK messages while maintaining adequate data delivery speed.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent implements a feedback mechanism where the system monitors the receiving application's data reading behavior and network conditions, then uses this feedback to adjust future TCP push flag settings. This closed-loop control ensures that push operations are timed to match actual data consumption needs, reducing unnecessary ACK traffic and conserving network bandwidth while maintaining data update timeliness.

Inventive Principle:
Principle #23Feedback

Data Source

PatentEP3886396B1Methods for dynamically controlling transmission control protocol push functionality and devices thereof
Publication Date: 2024.07.17 F5 NETWORKS INC
  • EP3886396B1 patent drawingFigure 1
  • EP3886396B1 patent drawingFigure 2
  • EP3886396B1 patent drawingFigure 3

AI summary

Methods, non-transitory computer readable media, network traffic management apparatuses, and network traffic management systems that monitor one or more messages generated by an application or one or more characteristics of one or more transmission control protocol (TCP) connections with a destination device or a source device. A determination is made when a first TCP push flag should be set for a first packet associated with data based on the monitoring. The data is provided by the application. The first TCP push flag for the first packet is set prior to the first packet being sent to the destination device via a first one of the TCP connections, based on the determination that the first TCP push flag should be set for the first packet. Accordingly, this technology more effectively manages TCP push functionality to reduce acknowledgement messages (ACKs) and thereby improve network bandwidth and device resource utilization.