Network Packet Buffer Descriptor Allocation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Network packet receiving management using array data structures often results in out-of-order issues due to limited storage and resource efficiency, leading to decreased interface utilization efficiency and increased hardware costs.

Innovation Solution

A network packet receiving management method that dynamically allocates and reallocates packet descriptors to free data blocks within a buffer unit, ensuring that packet descriptors are associated with data blocks only when necessary, thereby preventing out-of-order issues and optimizing hardware resource usage.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If array data structure is used for packet storage, then storage space and system resource are reduced, but packet out-of-order issue occurs when packets are replied in different order

Engineering Contradiction:
Improvestorage spaceVSAvoidpacket ordering reliability
Core Design Contradiction:
Quantity of substanceVSReliability

Solution Approach 1:

The buffer is divided into multiple data blocks (first data blocks and second data blocks), each capable of storing packets independently. Packet descriptors are dynamically allocated to these segments, allowing flexible packet management that prevents out-of-order issues while maintaining efficient storage utilization.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements dynamic allocation and reallocation of packet descriptors to data blocks based on actual packet receiving conditions. The system can switch between first data blocks and second data blocks as needed, adapting to varying packet arrival patterns and preventing out-of-order delivery issues.

Inventive Principle:
Principle #15Dynamics

2Reliability

If linked-list data structure is used for packet storage, then packet ordering is maintained, but system resource and storage space increase

Engineering Contradiction:
Improvepacket ordering reliabilityVSAvoidstorage space
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

Instead of using a linked-list structure that requires additional pointers and memory for each packet, the patent segments the buffer into multiple data blocks with direct array indexing. This allows packet ordering to be maintained through the structured array layout rather than through complex pointer chaining, reducing storage overhead.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent changes the data structure parameter from a linked-list based approach to an array-based approach with dynamic descriptor allocation. This parameter change maintains packet ordering capability while significantly reducing the storage space and system resources required for packet management.

Inventive Principle:
Principle #35Parameter changes

3Device complexity

If array data structure is used with fixed packet descriptors, then hardware interface is simplified, but receiving efficiency decreases due to bubble issues

Engineering Contradiction:
Improvehardware interface complexityVSAvoidreceiving efficiency
Core Design Contradiction:
Device complexityVSProductivity

Solution Approach 1:

The patent introduces dynamic allocation and reallocation of packet descriptors to data blocks based on actual packet receiving conditions. This dynamic mechanism prevents bubble issues and maintains high receiving efficiency while keeping the hardware interface simple through direct array indexing and descriptor manipulation.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system uses self-service mechanisms where packet descriptors automatically point to appropriate data blocks based on the receiving sequence. The dynamic reallocation process ensures that packets are always stored in the correct data blocks without requiring complex external management, maintaining both simplicity and efficiency.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS8072997B2Packet receiving management method and network control circuit with packet receiving management functionality
Publication Date: 2011.12.06 JMICRON
  • US8072997B2 patent drawing
  • US8072997B2 patent drawing
  • US8072997B2 patent drawing

AI summary

A method of network packet receiving management includes: providing a buffer unit which includes a plurality of data blocks with a first packet number and a plurality of data blocks with a second number of packets, wherein the data blocks with the first packet number are for storing a plurality of first network packets according to a first array data structure, respectively, the first array data structure has a plurality of first packet descriptors corresponding to the first packet number, and the data blocks with the second number of packets do not correspond to any packet descriptor; and when a first data block corresponding to a first packet descriptor successively receives a first network packet, changing the first packet descriptor corresponding to the first data block to indicate a second data block which does not correspond to any packet descriptor.