Packet Queuing Memory Space with Hash Entry Segmentation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Communication networks face challenges in efficiently queuing packets due to hash collisions, where multiple flows are mapped onto the same hash value, leading to degraded throughput and latency, especially when the number of hash values is less than the number of packet queues.

Innovation Solution

Implementing a packet queuing memory space with more hash entries than packet queues, where each hash entry points to a packet queue, and using a round-robin scheduler to manage available queues, thereby reducing hash collision probability and preventing queue saturation.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If the number of hash values is increased to match the number of packet queues, then hash collision probability decreases, but memory space requirements increase

Engineering Contradiction:
Improvehash collision probabilityVSAvoidmemory space
Core Design Contradiction:
ReliabilityVSVolume of stationary object

Solution Approach 1:

The patent divides the hash entry space into multiple regions, where each region can be independently managed. This segmentation allows the system to optimize memory usage by only allocating hash entries for active flows rather than pre-allocating entries for all possible queues, thus reducing memory space while maintaining low collision probability through dynamic expansion.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements dynamic hash entry allocation where the number of hash entries is not fixed but adapts based on the number of active flows. When flows are added or removed, the hash entry space is dynamically resized, allowing the system to maintain optimal collision probability without permanently allocating excessive memory space for peak conditions that may never occur.

Inventive Principle:
Principle #15Dynamics

2Productivity

If more packet queues are created to handle more flows, then packet queuing capacity increases, but queue saturation and management complexity increase

Engineering Contradiction:
Improvepacket queuing capacityVSAvoidqueue management complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent makes hash entries universal by allowing each hash entry to dynamically point to any packet queue in the system. Rather than dedicating specific hash entries to specific queues, the same hash entry can be reassigned to different queues as flows are added or removed. This multi-functionality reduces the total number of queues needed while maintaining the ability to handle any number of flows, thereby reducing management complexity.

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

Solution Approach 2:

The patent implements self-service mechanisms where the hash entry space automatically manages its own allocation and assignment to queues without external intervention. The system autonomously handles hash entry creation, deletion, and reassignment based on flow patterns, reducing the operational complexity of queue management while maintaining high packet queuing capacity.

Inventive Principle:
Principle #25Self-service

3Reliability

If hash entries are dynamically reassigned to available queues, then packet loss is prevented, but processing overhead increases

Engineering Contradiction:
Improvepacket loss preventionVSAvoidprocessing overhead
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent maintains a pool of pre-configured packet queues that are ready to be assigned to hash entries when needed. Rather than creating queues on-demand which would require complex setup procedures, the system pre-creates queues and keeps them in an available state, allowing rapid assignment to hash entries when new flows arrive or existing flows are reassigned, thus preventing packet loss with minimal processing overhead.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent implements a recycling mechanism where hash entries that become unused (when their associated flows are removed) are not permanently deleted but are instead recovered and made available for reassignment to new flows. This discarding and recovering process allows the system to rapidly reassign existing hash entries and queues without the overhead of creating entirely new entries and queues, preventing packet loss while minimizing processing time.

Inventive Principle:
Principle #34Discarding and recovering

Data Source

PatentUS11240169B2Packet queuing
Publication Date: 2022.02.01 NOKIA SOLUTIONS & NETWORKS OY
  • US11240169B2 patent drawing
  • US11240169B2 patent drawing
  • US11240169B2 patent drawing

AI summary

Various example embodiments relate generally to supporting queuing of packets in a communication network. Various example embodiments for supporting queuing of packets in a communication network may be configured to support queueing of packets based on a packet queuing memory space including a hash entry space configured to maintain a set of H hash entries and a packet queue space configured to maintain a set of Q packet queues, wherein H is greater than Q. Various example embodiments for supporting queuing of packets in a communication network may be configured to support queueing of packets in a manner for handling packet events (e.g., packet arrival events, packet departure events, or the like) while preventing or mitigating queue collisions of hash entries (where a queue collision occurs when multiple hash entries, and the respective network flows of those hash entries, are associated with a single packet queue).