iSCSI Offload Module Network Adapter Host Processor Load

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current software solutions for executing the iSCSI layer in host systems are slow and resource-intensive, particularly for digest generation and data copy operations, and existing host bus adapters do not effectively offload iSCSI functionality, leading to inefficiencies in network data processing.

Innovation Solution

A method and system that offloads iSCSI functionality by using a network adapter with an iSCSI offload module to process SCSI read commands, append PDU headers with digests, and transmit data, thereby reducing host processor load, and includes a RDMA offload module for verifying CRC and copying data to a scatter/gather list.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If iSCSI layer is executed in host system software, then iSCSI functionality is implemented, but processing speed decreases and host processor resources are consumed

Engineering Contradiction:
Improvenetwork data processing efficiencyVSAvoidhost processor time and resources
Core Design Contradiction:
ProductivityVSUse of energy by moving object

Solution Approach 1:

The patent extracts the iSCSI layer processing functionality from the host system software and relocates it to a dedicated network adapter hardware component. This extraction removes the computational burden from the host processor while maintaining iSCSI protocol functionality, directly resolving the contradiction between implementing iSCSI functionality and conserving host processor resources.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent introduces a network adapter as an intermediary device between the host system and the network. This intermediary handles iSCSI layer processing, digest generation, and data transmission tasks, allowing the host system to offload these resource-intensive operations while the network adapter performs them in hardware, thus improving overall processing efficiency without consuming host processor resources.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If digest generation and CRC checking are performed in software, then data integrity is verified, but processing speed decreases

Engineering Contradiction:
Improvedata integrity verificationVSAvoidprocessing speed
Core Design Contradiction:
ReliabilityVSSpeed

Solution Approach 1:

The patent replaces the software-based mechanical processing of digest generation and CRC checking with hardware-based processing in the network adapter. This substitution maintains the reliability of data integrity verification while dramatically improving processing speed, as hardware operations execute faster than software operations on the host processor.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

3Productivity

If typical iSCSI HBAs offload iSCSI functionality, then host system load is reduced, but integration with host system software based iSCSI solutions is poor

Engineering Contradiction:
Improvehost system offloading efficiencyVSAvoidinterface compatibility with host software
Core Design Contradiction:
ProductivityVSAdaptability or versatility

Solution Approach 1:

The patent designs the network adapter with multi-functional capabilities that include both standard HBA offloading functions and RDMA (Remote Direct Memory Access) functionality. This universal design allows the device to work effectively with various host system software configurations and protocols, improving adaptability while maintaining the ability to offload iSCSI processing from the host system.

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

Data Source

PatentUS8387073B1Method and system for processing network packets
Publication Date: 2013.02.26 MARVELL ASIA PTE LTD
  • US8387073B1 patent drawing
  • US8387073B1 patent drawing
  • US8387073B1 patent drawing

AI summary

Method and system for transferring information from a host system is provided. The method includes sending a SCSI read command and a scatter/gather (“S/G”) list from an application executed by a processor for the host system to a iSCSI software layer executed by the processor for the host system; generating an iSCSI protocol data unit (“PDU”) header for a iSCSI PDU for the SCSI read command; sending the iSCSI PDU to a data mover layer executed by the processor for the host system; and sending the iSCSI PDU to an iSCSI offload module in a network adapter operationally coupled to the host system; wherein the iSCSI offload module appends a PDU header digest to the iSCSI PDU header; and transmits the PDU to a PDU destination.