RX Queue Status Polling for Low-Latency Packet Handling

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current packet handling systems in communication networks inefficiently utilize multiple queues per core, leading to wasted resources and increased latency due to iterative polling of all queues, regardless of traffic priority or availability.

Innovation Solution

Implementing a method and hardware enhancements to enable selective and priority-based polling of multiple receive (RX) queues by using UMONITOR instructions and a per-core register to track queue statuses, allowing efficient use of all available RX queues.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If iterative polling of all queues is used, then all queues can be serviced, but resource wastage and latency increase

Engineering Contradiction:
Improvequeue servicing completenessVSAvoidresource wastage
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

The patent applies preliminary action by having the packet handling unit proactively provide status indications of RX queues to the processing unit before polling occurs. This allows the processing unit to pre-know which queues have packets waiting, eliminating the need to poll empty queues and thus reducing resource wastage while ensuring all queues with packets are serviced.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent uses a per-core register to store a copy of the RX queue status information. Instead of directly querying the packet handling unit during polling, the processing unit reads from this local register copy, which significantly reduces the polling overhead and resource consumption while maintaining accurate queue status information.

Inventive Principle:
Principle #26Copying

2Reliability

If iterative polling of all queues is used, then all queues can be serviced, but latency increases

Engineering Contradiction:
Improvequeue servicing completenessVSAvoidpolling latency
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The packet handling unit proactively updates the per-core register with queue status information before the processing unit needs to poll. This preliminary action ensures that when the processing unit checks the register, it immediately gets current status without needing to perform iterative polling of all queues, thus reducing latency while maintaining complete queue servicing.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent extracts the queue status information from the packet handling unit and places it in a local per-core register. This extraction allows the processing unit to obtain status information locally without the overhead of iterative polling, reducing latency while ensuring all queues are properly serviced.

Inventive Principle:
Principle #2Taking out (Extraction)

3Productivity

If multiple queues per core are utilized, then throughput increases, but complexity of queue management increases

Engineering Contradiction:
Improvepacket throughputVSAvoidqueue management complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The per-core register serves multiple functions: it stores queue status information, acts as a polling optimization mechanism, and provides a unified interface for the processing unit to monitor multiple RX queues. This multi-functionality reduces the complexity of managing multiple queues per core while maintaining high throughput.

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

Solution Approach 2:

By creating a local copy of queue status in the per-core register, the patent simplifies the interface between the packet handling unit and processing unit. The processing unit interacts with a simple register rather than complex queue management logic, reducing management complexity while enabling efficient utilization of multiple queues for high throughput.

Inventive Principle:
Principle #26Copying

Data Source

PatentUS20260019375A1Processing unit, packet handling unit, arrangement and methods for handling packets
Publication Date: 2026.01.15 TELEFONAKTIEBOLAGET LM ERICSSON (PUBL)
  • US20260019375A1 patent drawing
  • US20260019375A1 patent drawing
  • US20260019375A1 patent drawing

AI summary

Embodiments herein disclose for example a method performed by an arrangement (13) for handling packets in a communication network, wherein the arrangement (13) comprises a packet handling unit (10) comprising two or more RX queues and a processing unit (12). The arrangement (13) provides from the packet handling unit (10), an indication to the processing unit (12), wherein the indication indicates a status of a RX queue out of the two or more RX queues; and selects at the processing unit (12) at least one RX queue out of the two or more RX queues to poll one or more packets from based on the provided indication.