FCoE Adapter Partial Offload for Network Storage Integration

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional network systems face inefficiencies in processing both network and storage traffic, as they typically require separate NICs and HBAs, leading to complex software code and high costs, especially in implementing Fibre Channel Over Ethernet (FCOE) standards.

Innovation Solution

A hybrid solution using a Fibre Channel over Ethernet (FCOE) adapter that processes both network and storage protocols efficiently, where the host system builds an intelligent I/O control block and the adapter performs packetization, avoiding the expense of a full offload to an adapter and providing better performance than host-executed software solutions.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If separate NICs and HBAs are used to handle network and storage traffic, then protocol handling reliability is improved, but device complexity and cost increase

Engineering Contradiction:
Improveprotocol handling reliabilityVSAvoiddevice complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent combines network protocol (Ethernet) and storage protocol (Fibre Channel) processing capabilities into a single network adapter. The adapter includes both an Ethernet processing module and a Fibre Channel processing module, allowing it to handle both types of traffic simultaneously. This merging eliminates the need for separate NIC and HBA devices, reducing device complexity and cost while maintaining the reliability of protocol handling through dedicated processing modules for each protocol type.

Inventive Principle:
Principle #5Merging (Combining)

2Ease of manufacture

If host system software executes storage protocol functions, then device cost is reduced, but processing performance and productivity deteriorate

Engineering Contradiction:
Improvedevice costVSAvoidprocessing performance
Core Design Contradiction:
Ease of manufactureVSProductivity

Solution Approach 1:

The patent introduces an intermediary storage protocol assist module within the network adapter that bridges the gap between full hardware offload and host software execution. This assist module handles storage protocol packetization and processing functions in hardware, offloading these tasks from the host CPU while maintaining cost-effectiveness. The module works in conjunction with the host driver to provide efficient storage protocol processing without requiring expensive full offload capabilities, thus improving productivity while keeping device costs reasonable.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Productivity

If full offload to adapter is implemented, then processing performance is improved, but device cost increases

Engineering Contradiction:
Improveprocessing performanceVSAvoiddevice cost
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent implements partial offload functionality where the network adapter handles specific storage protocol packetization and processing tasks through its assist module, rather than requiring complete offload of all storage functions. This partial action approach provides sufficient performance improvement for storage protocol handling while avoiding the need for expensive full offload capabilities. The adapter performs the critical packetization function in hardware while leveraging host system resources for other processing tasks, achieving an optimal balance between performance and cost.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS7720064B1Method and system for processing network and storage data
Publication Date: 2010.05.18 MARVELL ASIA PTE LTD
  • US7720064B1 patent drawing
  • US7720064B1 patent drawing
  • US7720064B1 patent drawing

AI summary

Method and system for transmitting data using a network protocol and a storage protocol via an adapter is provided. The method includes receiving an input output control block (IOCB) from a host system for transferring data stored in a host system memory; acquiring data from the host system memory; copying a header template in a local memory of the adapter, wherein the header template is created by a driver executed by the host system; creating a header for the network protocol and a header for the storage protocol; wherein a first module for the adapter creates the network protocol packet header and the first modules uses an assist module to create the storage protocol packet header; and creating a packet to transfer a portion of the acquired data, wherein a packet size is based on a payload size for the storage.