Network Interface Device Packet Reordering Offload

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional network interface devices require the host to expend extra computing power to reorder network packets, degrading performance due to the need for reordering packets that were received out of sequence.

Innovation Solution

A network interface device with a packet receiving circuit and processing circuit that parses sequence numbers, reorders packets, generates reorder information, and stores it to allow the host to efficiently access and process packets by issuing an interrupt, thereby offloading reordering tasks from the host.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Manufacturing precision

If the host reorders network packets before processing, then packet processing accuracy is improved, but computing power consumption increases and performance degrades

Engineering Contradiction:
Improvepacket processing accuracyVSAvoidcomputing power consumption
Core Design Contradiction:
Manufacturing precisionVSUse of energy by moving object

Solution Approach 1:

The patent extracts the packet reordering function from the host processor and relocates it to the network interface device. The NID includes a reorder buffer that stores received packets and reorders them based on sequence numbers before passing to the host, thereby eliminating the need for the host to perform reordering operations and reducing its computing power consumption.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The network interface device performs packet reordering in advance before the packets are transferred to the host. By using the reorder buffer to hold and resequence packets based on their sequence numbers, the NID ensures that packets arrive at the host in the correct order, eliminating the need for subsequent reordering operations by the host processor.

Inventive Principle:
Principle #10Preliminary action

2Productivity

If the network interface device stores packets in storage circuit before issuing interrupt, then host processing efficiency is improved, but memory usage increases

Engineering Contradiction:
Improvehost processing efficiencyVSAvoidmemory usage
Core Design Contradiction:
ProductivityVSVolume of stationary object

Solution Approach 1:

The patent segments the memory resources by implementing a dedicated reorder buffer within the network interface device's storage circuit, separate from the host's main memory. This reorder buffer is specifically allocated for holding packets temporarily during the reordering process, allowing the host to process packets efficiently without competing for general memory resources.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The reorder buffer acts as an intermediary storage structure between the packet receiving circuit and the host processor. It temporarily holds packets that need reordering, allowing the NID to manage packet sequencing independently while minimizing the memory burden on the host system.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS11757800B2Network interface device, electronic device containing same, and operation method of the network interface device
Publication Date: 2023.09.12 REALTEK SEMICON CORP
  • US11757800B2 patent drawing
  • US11757800B2 patent drawing
  • US11757800B2 patent drawing

AI summary

A network interface device, an electronic device including same, and a method of operating same are provided. The network interface device is coupled to a host including a storage circuit. The network interface device includes a processing circuit and a packet receiving circuit which is used for receiving multiple network packets. The processing circuit performs the following steps: parsing the network packets to obtain multiple sequence numbers of the network packets; reordering the network packets based on the sequence numbers to generate reorder information; appending the reorder information to one of the network packets and generating packet order information, or generating the packet order information containing the reorder information; storing the packet order information in the storage circuit; and issuing an interrupt to the host. The packet receiving circuit or the processing circuit stores the network packets in the storage circuit before the processing circuit issues the interrupt.