Dynamic Sub-Queue Hashing for Head-of-Line Blocking Avoidance

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Network packet forwarding devices face head of line (HOL) blocking issues due to 'bursty' traffic and large packets, which degrade the quality of service for other flows within the same class, potentially violating service agreements and causing application-level problems.

Innovation Solution

Implementing a sub-queuing scheme in switches and routers that dynamically creates sub-queues when a regular queue exceeds a threshold, using a hashing mechanism to distribute packets across these sub-queues, ensuring in-order delivery within flows while minimizing resource usage.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If packets are assigned to queues at the input port based on class of service, then quality of service for different classes is maintained, but head of line blocking occurs within the same class degrading service quality

Engineering Contradiction:
Improvequality of serviceVSAvoidhead of line blocking
Core Design Contradiction:
ReliabilityVSObject-generated harmful factors

Solution Approach 1:

The patent divides a single queue for a class of service into multiple sub-queues. When head of line blocking is detected in one sub-queue, packets from other sub-queues can be transmitted, preventing the blocking effect from affecting the entire class of service. This segmentation allows independent management of packet flows within the same service class.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent dynamically creates and manages sub-queues based on traffic conditions. Sub-queues are activated when needed and can be dynamically assigned to different packet flows, allowing the system to adapt to changing traffic patterns and prevent head of line blocking without permanent structural changes.

Inventive Principle:
Principle #15Dynamics

2Reliability

If multiple queues are used to prevent head of line blocking, then service quality is improved, but device complexity and resource consumption increase

Engineering Contradiction:
Improveservice qualityVSAvoidqueue management complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent merges multiple sub-queues into a single logical queue structure that shares common management resources. The sub-queues use shared data structures and management mechanisms, reducing the overall complexity compared to completely independent queues while still providing the benefits of segmented packet handling.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The patent creates a multi-functional queue system where sub-queues can serve different packet flows within the same class of service. The same queue management infrastructure handles multiple sub-queues, making the system universally applicable to various traffic patterns without requiring separate management systems for each queue.

Inventive Principle:
Principle #6Universality (Multi-functionality)

3Productivity

If sub-queues are dynamically created to handle congested queues, then head of line blocking is reduced, but resource usage increases

Engineering Contradiction:
ImprovethroughputVSAvoidmemory resources
Core Design Contradiction:
ProductivityVSQuantity of substance

Solution Approach 1:

The patent dynamically allocates memory resources for sub-queues based on actual traffic demands. Sub-queues are created and destroyed as needed, allowing the system to optimize memory usage by activating additional queue structures only when traffic patterns require them, rather than maintaining fixed memory allocations.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent recovers memory resources by destroying sub-queues when they are no longer needed. When traffic conditions improve or sub-queues become dormant, their memory allocations are released and made available for other uses, preventing permanent resource consumption while maintaining productivity benefits.

Inventive Principle:
Principle #34Discarding and recovering

Data Source

PatentEP2641362B1Dynamic flow redistribution for head line blocking avoidance
Publication Date: 2014.10.08 CISCO TECHNOLOGY INC
  • EP2641362B1 patent drawingFigure 1
  • EP2641362B1 patent drawingFigure 2
  • EP2641362B1 patent drawingFigure 3

AI summary

An apparatus and related methods are provided to greatly reduce the negative impact of head of line (HOL) blocking. At a device (e.g., switch, router, etc.) configured to forward packets in a network, new packets that are to be forwarded from the device to other devices in the network are stored in a memory of the device. Entries are added to a queue link list for the at least one queue as new packets are added to the at least one queue. A detection is made when the at least one queue exceeds a threshold indicative of head of line blocking. For new packets that are to be added to the at least one queue, entries are added to a sub-queue link list for the plurality of sub-queues such that packets are assigned to different ones of a plurality of sub-queues when the at least one queue exceeds the threshold. Packets are output from the memory for the plurality of sub-queues according to the sub-queue link list.