Transport Offload Engine Data Tagging for Memory Management

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The increasing communication speed in networks creates an input/output bottleneck, as processors, designed primarily for computing, cannot keep up with data flow, leading to a need for cost-effective data management and storage using transport offload engines without large, costly buffers.

Innovation Solution

A system and method utilizing a data list object with a sequence object to determine whether incoming data is stored directly in application memory or temporarily in a buffer, allowing for the creation of a tagged data list object that minimizes or eliminates the need for a TOE buffer, enabling direct data storage and reducing processor utilization.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If a large TOE buffer is used to store incoming data, then data can be buffered and data available messages can be generated, but the silicon die area and cost increase significantly

Engineering Contradiction:
Improvedata buffering capabilityVSAvoidsilicon die area
Core Design Contradiction:
ReliabilityVSArea of stationary object

Solution Approach 1:

The patent extracts the buffering function from the TOE buffer and relocates it to the host processor's memory. The TOE buffer is eliminated entirely, and instead, the host processor uses its own memory resources to buffer incoming data, thereby removing the costly on-TOE memory while preserving the data buffering capability.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent introduces a data list object as an intermediary mechanism that bridges the TOE and host processor memory. This data list object enables the TOE to directly reference host processor memory locations for data storage, eliminating the need for a large TOE buffer while maintaining proper data flow control and messaging.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If a large TOE buffer is used to store incoming data, then data can be stored until processed, but processor utilization increases due to data copy operations

Engineering Contradiction:
Improvedata storage capabilityVSAvoidprocessor utilization
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent extracts the data copying function from the TOE buffer and eliminates it by having the TOE write data directly to the host processor's memory through the data list object. This removes the intermediate copy step that was causing processor utilization to increase.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The host processor prepares the data list object in advance, specifying the memory locations where data should be stored. This preliminary preparation allows the TOE to write data directly to the correct locations without requiring subsequent processor intervention or data copying operations.

Inventive Principle:
Principle #10Preliminary action

3Area of stationary object

If no TOE buffer is used to minimize cost, then silicon die area is reduced, but data available messages cannot be generated and data cannot be stored in application memory

Engineering Contradiction:
Improvesilicon die areaVSAvoiddata storage and messaging capability
Core Design Contradiction:
Area of stationary objectVSEase of operation

Solution Approach 1:

The patent introduces the data list object as an intermediary that enables the TOE to communicate with the host processor's memory without requiring a large TOE buffer. This intermediary structure allows the TOE to generate data available messages and store data in application memory while using minimal TOE buffer space.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The host processor's memory serves multiple functions: it acts as the data buffer, stores the data list objects, and provides the destination for data storage. This multi-functional use of existing host memory eliminates the need for dedicated large TOE buffer while preserving all necessary data handling capabilities.

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

Data Source

PatentUS7624198B1Sequence tagging system and method for transport offload engine data lists
Publication Date: 2009.11.24 NVIDIA CORP
  • US7624198B1 patent drawing
  • US7624198B1 patent drawing
  • US7624198B1 patent drawing

AI summary

A system and method are provided for communicating data in a network utilizing a transport offload engine. Included is a data list object that describes how data communicated in a network is to be stored (i.e. placed, etc.) in memory (i.e. application memory). Stored in association (i.e. located, kept together, etc.) with the data list object is a sequence object. Such sequence object identifies a sequence space associated with the data to be stored using the data list object. To this end, the sequence object is used by a transport offload engine to determine whether or not incoming data is to be stored using the data list object.