Packet Scheduling Throughput via Lazy QoS Batching

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing QoS processing in data communication networks causes overhead delay, especially during high-throughput periods, leading to a bottleneck that limits maximum packet per second communication rates.

Innovation Solution

Implementing 'lazy' QoS processing by applying it only to a subset of packets based on throughput credits, allowing packets that bypass QoS processing to be immediately forwarded with the same QoS settings as packets of the flow for which QoS processing is applied.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If QoS processing is applied to every packet, then QoS accuracy is improved, but overhead delay increases and throughput decreases

Engineering Contradiction:
ImproveQoS accuracyVSAvoidthroughput
Core Design Contradiction:
Measurement precisionVSProductivity

Solution Approach 1:

The patent applies QoS processing to only a subset of packets (sampling approach) rather than every packet. Throughput credits are accumulated and used to selectively process packets, achieving partial QoS enforcement that maintains acceptable accuracy while dramatically reducing overhead delay and increasing throughput during high-demand periods

Inventive Principle:
Principle #16Partial or excessive action

Solution Approach 2:

The patent segments packets into different processing paths: packets with accumulated throughput credits undergo QoS processing and are placed in QoS queues, while packets without sufficient credits bypass processing and are placed in output transmission buffers. This segmentation allows the system to handle different packet subsets differently, resolving the contradiction between processing accuracy and throughput

Inventive Principle:
Principle #1Segmentation

2Reliability

If QoS processing is applied to every packet, then QoS enforcement is improved, but overhead delay scales with throughput increases

Engineering Contradiction:
ImproveQoS enforcementVSAvoidoverhead delay
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

Instead of enforcing QoS on every packet, the system enforces QoS on a sampled subset of packets based on throughput credit accumulation. This partial enforcement maintains QoS reliability for critical flows while avoiding the proportional overhead delay that would occur with universal packet processing

Inventive Principle:
Principle #16Partial or excessive action

Solution Approach 2:

The system performs preliminary action by accumulating throughput credits for packets before QoS processing decisions are made. This allows the system to pre-identify which packets should undergo QoS processing, reducing the need for real-time inspection of every packet and thereby reducing overhead delay

Inventive Principle:
Principle #10Preliminary action

3Measurement precision

If QoS processing is applied to every packet, then QoS accuracy is maintained, but processing overhead becomes a bottleneck

Engineering Contradiction:
ImproveQoS accuracyVSAvoidprocessing overhead
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The patent implements partial QoS processing by applying inspection and classification only to packets that have accumulated sufficient throughput credits. This reduces the number of packets requiring complex QoS processing, thereby reducing device complexity and processing overhead while maintaining acceptable QoS accuracy through selective enforcement

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS12267245B2Increased packet scheduling throughput and efficiency using über batching
Publication Date: 2025.04.01 CITRIX SYSTEMS INC
  • US12267245B2 patent drawing
  • US12267245B2 patent drawing
  • US12267245B2 patent drawing

AI summary

Described embodiments improve the performance of a computer network via selectively forwarding packets to bypass quality of service (QoS) processing, avoiding processing delays during critical periods of high demand, increasing throughput and efficiency may be increased by sacrificing a small amount of QoS accuracy. QoS processing may be applied to a subset of packets of a flow or connection, referred to herein as “lazy” processing or lazy byte batching. Packets that bypass QoS processing may be immediately forwarded with the same QoS settings as packets of the flow for which QoS processing is applied, resulting in tremendous overhead savings with only minimal decline in accuracy. In case of backlog, packets may be collected together into an aggregated or ‘uber’ packet, with QoS processing applied based on a virtual size of the aggregated packet.