Shared Receive Queue Pointer Management for Multi-QP Network Nodes

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The challenge of efficiently managing shared receive queues (SRQs) in network nodes to ensure high processing performance when multiple queue pairs (QPs) share a single SRQ, leading to storage space waste and inefficient data buffer management.

Innovation Solution

Implement a queue management method and apparatus that utilize production and consumption pointers to manage and consume shared receive queue elements (SRQEs) in an orderly manner, using index rings and prefetch mechanisms to optimize SRQ performance.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of substance

If a shared receive queue (SRQ) is used to reduce storage space waste, then storage efficiency is improved, but managing multiple queue pairs (QPs) sharing the same SRQ becomes complex and processing performance deteriorates

Engineering Contradiction:
Improvestorage space wasteVSAvoidprocessing performance
Core Design Contradiction:
Loss of substanceVSProductivity

Solution Approach 1:

The SRQ is segmented into multiple SRQEs (Shared Receive Queue Elements), each capable of storing data packets. This segmentation allows multiple QPs to share the same SRQ while maintaining individual data storage spaces, thus reducing overall storage waste while enabling efficient parallel processing for multiple QPs.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The host pre-allocates and initializes multiple SRQEs in advance, preparing them for future data packet storage. This preliminary action ensures that when data packets arrive for multiple QPs, pre-prepared storage spaces are immediately available, eliminating the need for dynamic allocation during processing and maintaining high processing performance.

Inventive Principle:
Principle #10Preliminary action

2Loss of substance

If multiple QPs share a single SRQ, then storage space is optimized, but the complexity of managing SRQE allocation and consumption increases

Engineering Contradiction:
Improvestorage spaceVSAvoidSRQ management complexity
Core Design Contradiction:
Loss of substanceVSDevice complexity

Solution Approach 1:

The patent introduces an intermediary mechanism where the host acts as a mediator between multiple QPs and the shared SRQ. The host manages SRQE allocation and consumption on behalf of multiple QPs, using a unified management approach that simplifies the complexity compared to each QP managing its own queue separately.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The SRQ is designed with universal functionality to serve multiple QPs simultaneously. The same SRQ structure and management mechanisms are used for all QPs sharing the queue, creating a universal solution that reduces complexity compared to having separate management systems for each QP.

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

3Ease of operation

If SRQEs are managed without orderly production and consumption pointers, then access flexibility increases, but data packet processing order and reliability are compromised

Engineering Contradiction:
ImproveSRQE access flexibilityVSAvoiddata packet processing reliability
Core Design Contradiction:
Ease of operationVSReliability

Solution Approach 1:

The patent implements dynamic production and consumption pointers that automatically advance as SRQEs are allocated and consumed. This dynamic mechanism maintains flexibility in SRQE access while ensuring reliable ordered processing, as the pointers adapt to the current state of the queue and guide subsequent operations.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The production and consumption pointers provide feedback mechanisms that track the state of SRQE usage. This feedback ensures that data packets are processed in the correct order and that the system maintains reliability by knowing exactly which SRQEs are available, occupied, or consumed.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS20250328398A1Queue Management Method and Apparatus, and Network Node
Publication Date: 2025.10.23 HUAWEI TECH CO LTD
  • US20250328398A1 patent drawing
  • US20250328398A1 patent drawing
  • US20250328398A1 patent drawing

AI summary

A network node includes a host and a network interface card. The host includes a shared receive queue (SRQ) and a plurality of queue pairs (QPs) that share the SRQ. The network interface card receives a data packet of a first QP, where the first QP corresponds to a first queue pair context (QPC) that includes validity information. When the validity information in the first QPC indicates that there is no available shared receive queue element (SRQE), and the production pointer and the consumption pointer that are in a share receive queue context (SRQC) are different, the network interface card obtains the SRQE corresponding to the consumption pointer in the SRQC based on the consumption pointer and the network interface card stores the data packet based on the obtained SRQE.