Intelligent Network Adaptor Protocol Offload for Host Resource Reduction

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

High-speed packet-based network communications put a heavy burden on end-host resources due to high packet arrival rates, interrupt rates, and memory bandwidth usage, leading to increased latency and processing demands.

Innovation Solution

An intelligent network adaptor performs direct data placement and adaptive copy avoidance to reduce memory bandwidth usage and notification rates, offloading protocol processing and enabling zero-copy data transfer directly to application buffers, thereby minimizing latency and processing loads.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If traditional packet processing is used where the host processor handles each packet arrival with interrupts and memory copying, then protocol processing is accurate and complete, but the host processor burden and interrupt rate increase significantly

Engineering Contradiction:
Improvehost processor burdenVSAvoidpacket processing throughput
Core Design Contradiction:
Ease of operationVSProductivity

Solution Approach 1:

The patent extracts protocol processing functions from the host processor and transfers them to the network adaptor. The adaptor independently handles TCP/IP stack processing, packet assembly, and data placement, removing the burden of high-rate interrupt handling and memory copying from the host processor while maintaining accurate protocol processing.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The network adaptor acts as an intermediary between the network and the host processor. It receives packets, performs protocol processing, and places data directly into application buffers, mediating the interaction and eliminating the need for the host processor to handle each packet arrival with interrupts.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If data is copied from operating system buffers to application buffers for each packet, then data delivery is complete and accurate, but memory bandwidth usage increases

Engineering Contradiction:
Improvedata delivery accuracyVSAvoidmemory bandwidth usage
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

The patent uses preliminary action by having the application pre-allocate and register buffers with the network adaptor before data arrival. The adaptor places incoming data directly into these pre-prepared buffers, eliminating the need for runtime copying from OS buffers to application buffers and reducing memory bandwidth consumption.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent extracts the intermediate OS buffer copying step from the traditional data path. By implementing direct data placement where the adaptor writes directly to application buffers, it removes the redundant memory copy operation while maintaining complete and accurate data delivery through protocol processing validation.

Inventive Principle:
Principle #2Taking out (Extraction)

3Loss of time

If the host processor is notified of every packet arrival using interrupts, then data reception is timely and complete, but interrupt rate and processing overhead increase

Engineering Contradiction:
Improvedata reception latencyVSAvoidinterrupt handling complexity
Core Design Contradiction:
Loss of timeVSDevice complexity

Solution Approach 1:

The network adaptor serves as an intermediary that handles notification management independently. It uses ring buffers and descriptors to track data placement status and only notifies the host processor when significant events occur (such as buffer completion or error conditions), rather than generating interrupts for every packet arrival, thus reducing interrupt rate while maintaining timely reception.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent implements periodic or event-driven notification instead of continuous per-packet interrupts. The adaptor notifies the host processor periodically or when specific conditions are met (such as when a buffer is filled or an error occurs), reducing the frequency of interrupts while ensuring timely data reception through efficient buffer management.

Inventive Principle:
Principle #19Periodic action

4Reliability

If protocol processing is performed by the host operating system for each packet, then protocol compliance is ensured, but communication latency increases

Engineering Contradiction:
Improveprotocol complianceVSAvoidcommunication latency
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent extracts protocol processing from the host OS and implements it in the network adaptor hardware or firmware. The adaptor independently performs TCP/IP stack processing, including header parsing, checksum validation, and packet assembly, ensuring protocol compliance while eliminating the time delay associated with host OS processing for each packet.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The network adaptor performs protocol processing in advance as data arrives from the network, before data needs to be delivered to the application. By pre-processing packets and placing validated data directly into application buffers, it ensures protocol compliance is verified early, reducing overall communication latency.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS8589587B1Protocol offload in intelligent network adaptor, including application level signalling
Publication Date: 2013.11.19 SPEEDNIC LLC
  • US8589587B1 patent drawing
  • US8589587B1 patent drawing
  • US8589587B1 patent drawing

AI summary

A host is coupled to a network via an intelligent network adaptor. The host is executing an application configured to receive application data from a peer via the network and the intelligent network adaptor using a stateful connection according to a connection-oriented protocol. The intelligent network adaptor performs protocol processing of the connection. Application data is copied from host memory not configured for access by the application (possibly OS-associated host memory) to host memory associated with the application (application-associated host memory). The application data is received from the peer by the intelligent network adaptor and copied to host memory not configured for access by the application. The operating system selectively provides, to the intelligent network adaptor, information of the memory associated with the application. At least one portion of the application data for the connection is provided directly from the intelligent network adaptor to the memory associated with the application.