Buffer Compression for Network Latency Reduction

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Bufferbloat in computer networks causes latency issues due to excess buffering of packets, and existing techniques like random early detection can impact performance and user experience by randomly dropping packets.

Innovation Solution

An intermediary device within the network environment compresses a portion of the buffer based on established thresholds without altering packet order or dropping packets, allowing the buffer to be reduced in size without impacting performance or user experience.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If random early detection is used to avoid bufferbloat, then bufferbloat is avoided, but packet drops occur impacting performance and user experience

Engineering Contradiction:
Improvebufferbloat avoidanceVSAvoidpacket drops
Core Design Contradiction:
ReliabilityVSLoss of substance

Solution Approach 1:

The patent changes the physical state of packets from uncompressed to compressed form. By applying compression to packets in the buffer, the system reduces buffer occupancy and avoids bufferbloat without dropping packets. The compression ratio dynamically adjusts based on buffer conditions, transforming the parameter of packet size to resolve the contradiction between avoiding bufferbloat and preventing packet loss.

Inventive Principle:
Principle #35Parameter changes

2Loss of substance

If buffer size is increased to prevent packet drops, then packet loss is reduced, but latency increases due to excess buffering

Engineering Contradiction:
Improvepacket lossVSAvoidlatency
Core Design Contradiction:
Loss of substanceVSLoss of time

Solution Approach 1:

The patent applies compression to transform packets from uncompressed to compressed state, effectively reducing the space they occupy in the buffer. This parameter change allows the system to maintain lower buffer occupancy levels, reducing latency while preventing packet loss. The compressed packets are later decompressed and transmitted, maintaining data integrity while avoiding the latency-packet loss tradeoff.

Inventive Principle:
Principle #35Parameter changes

3Reliability

If compression is applied to buffer packets, then bufferbloat is reduced, but packet order must be maintained

Engineering Contradiction:
Improvebufferbloat reductionVSAvoidpacket order management
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent segments the buffer into different regions: a compression region where packets are compressed, a transmission region where packets are transmitted, and a decompression region where compressed packets are decompressed. This segmentation allows the system to manage packet order complexity by processing packets in distinct stages, maintaining order through structured region-based handling rather than complex global management.

Inventive Principle:
Principle #1Segmentation

Applied Scientific Principles

This section explains which scientific principles are used to turn an abstract innovation direction into a practical engineering solution.

Function Achieved in This Case

This solution effectively reduces bufferbloat by compressing packets between maximum and minimum thresholds, maintaining packet order and ensuring continuous transmission, thereby improving network performance without affecting user experience.

Implementation Method 1

A portion of the buffer can be compressed based on one or more thresholds without changing an order of packet transmission and without dropping packets

Methodology Applied
Scientific EffectData compression: Compression

Data Source

PatentUS10798026B2Bufferbloat recovery and avoidance systems and methods
Publication Date: 2020.10.06 CITRIX SYSTEMS INC
  • US10798026B2 patent drawing
  • US10798026B2 patent drawing
  • US10798026B2 patent drawing

AI summary

Systems and methods for bufferbloat recovery and avoidance are provided herein. A portion of the buffer can be compressed based on one or more thresholds without changing an order of packet transmission and without dropping packets. The method includes storing, by a device, a plurality of packets received by the device to a buffer. The buffer can be configured with a minimum threshold and a maximum threshold. The method includes detecting that a size of the buffer has reached at least the maximum threshold and compressing one or more packets of the plurality of packets stored between the minimum threshold and the maximum threshold while transmitting, during compression, at least a portion of one or more packets of the plurality of packets stored in the buffer below the minimum threshold.