QoS for Single Stream ICA via Average Priority Filtering
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing methods for providing quality of service (QoS) in data communication networks struggle with managing different priorities of packets within a single transport layer connection, particularly in scenarios where multiple virtual streams are multiplexed, leading to increased latency and bandwidth wastage due to TCP retransmission algorithms that assume constant packet ordering.
Innovation Solution
Implementing a system that uses averaging techniques, such as Finite Impulse Response (FIR) or Infinite Impulse Response (IIR) filters, to dynamically adjust connection priorities based on the average priority of packets, allowing for adaptive bandwidth allocation and reordering of packets within a single TCP stream, while also considering link utilization and packet marking for external QoS devices.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If TCP retransmission algorithms assume constant packet ordering, then reliability is improved, but latency increases and bandwidth is wasted
Solution Approach 1:
The patent applies dynamics by making the retransmission window adaptive rather than static. The retransmission window size is dynamically adjusted based on the observed reordering frequency and packet priority levels. When reordering is detected, the window expands to accommodate out-of-order packets; when reordering is rare, the window contracts to minimize latency. This dynamic adaptation resolves the contradiction by allowing the system to maintain reliability through selective retransmission while reducing unnecessary latency caused by overly conservative constant window sizes.
2Loss of time
If maximum priority is assigned to connection based on highest priority packet, then interactive traffic latency is reduced, but bulk transfer performance deteriorates
Solution Approach 1:
The patent applies local quality by assigning different effective priority levels to different packets within the same connection based on their individual characteristics and current network conditions. Instead of uniformly assigning maximum priority to all packets in a connection, the system evaluates each packet's priority level and applies priority-based scheduling selectively. This allows interactive packets to receive preferential treatment while bulk transfer packets maintain normal scheduling, resolving the contradiction between reducing interactive latency and maintaining bulk transfer productivity.
3Adaptability or versatility
If packet reordering is implemented within single TCP stream, then QoS is improved, but bandwidth is wasted due to retransmissions
Solution Approach 1:
The patent applies feedback by continuously monitoring packet delivery patterns, reordering frequency, and acknowledgment responses to dynamically adjust the retransmission strategy. The system uses feedback from the network environment to determine when out-of-order delivery is safe to implement and when to revert to in-order delivery to avoid unnecessary retransmissions. This feedback mechanism resolves the contradiction by enabling QoS improvements through intelligent packet reordering while minimizing bandwidth waste through adaptive retransmission control based on actual network conditions.
Data Source
Figure 1A
Figure 1B
Figure 1C
AI summary
The present solution is directed to a system for providing quality of service (QoS) for a stream of protocol data units via a single transport layer connection. The system includes a device intermediary to a sender and receiver. The device receives via a single transport layer connection a plurality of packets carrying a plurality of protocol data units. Each protocol data unit of the plurality of protocol data units identifying a priority. One or more of the plurality of protocol data units having a priority different than the priority of other protocol data units of the plurality of protocol data units. The device may include a filter for determining an average priority for a predetermined window of protocol data units of the plurality of protocol data units and an engine for assigning the average priority as a connection priority of the single transport layer connection. The device transmits via the single transport layer connection the plurality of packets carrying those protocol data units within the predetermined window of protocol data units while the connection priority of the single transport layer connection is assigned the average priority for the predetermined window of protocol data units.