Smart Offload Switching Mechanism for TCP Stack Throughput

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Traditional communication systems are unable to determine when it is more efficient to process packets within the host TCP stack or the offload TCP stack, leading to protocol processing choke points and limitations in connection handling, which restricts system throughput.

Innovation Solution

A method is introduced to dynamically determine whether to offload connections from the host TCP stack to a TCP offload engine (TOE) or keep them within the host stack, using a switching mechanism that assesses system conditions and traffic patterns to optimize protocol processing, allowing for efficient routing of data requests and state information between hardware and software processing stacks.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If connections are offloaded to the TOE, then system throughput increases and host resources are freed, but the TOE becomes a choke point when it cannot accept additional connections

Engineering Contradiction:
Improvesystem throughputVSAvoidconnection handling capacity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent segments the connection handling function by dividing connections into two categories: those handled by the TOE (offloaded connections) and those handled by the host TCP stack (non-offloaded connections). This segmentation allows the system to bypass the TOE connection limit by routing excess connections through the host stack, thereby maintaining high throughput while avoiding the TOE choke point.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a switch mechanism as an intermediary component that dynamically routes connections between the TOE and the host TCP stack. This switch acts as a mediator that monitors TOE connection capacity and redirects connections to the host stack when the TOE is at capacity, ensuring continuous operation without overwhelming the TOE.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Use of energy by moving object

If more connections are offloaded to the TOE, then host processing resources are freed for applications, but hardware costs and TOE design complexity increase

Engineering Contradiction:
Improvehost processing resource utilizationVSAvoidhardware cost
Core Design Contradiction:
Use of energy by moving objectVSEase of manufacture

Solution Approach 1:

The patent implements partial offloading where only a portion of the total connections are offloaded to the TOE at any given time. The switch mechanism dynamically determines which connections to offload based on TOE capacity and system conditions. This partial action approach frees sufficient host resources for applications while avoiding the need for an excessively expensive TOE design that could handle all connections.

Inventive Principle:
Principle #16Partial or excessive action

3Adaptability or versatility

If a switch mechanism is introduced to route connections dynamically, then connection routing flexibility increases, but system complexity increases

Engineering Contradiction:
Improveconnection routing flexibilityVSAvoidsystem architecture complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent extracts the routing decision logic from the core TCP processing path and places it in a separate switch mechanism. This extraction allows the routing functionality to be independently managed and optimized without complicating the fundamental TCP stack operations. The switch handles the complexity of dynamic routing while the TCP stacks maintain their simplified, standardized implementations.

Inventive Principle:
Principle #2Taking out (Extraction)

Data Source

PatentUS7636372B2Method and system for providing smart offload and upload
Publication Date: 2009.12.22 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LTD
  • US7636372B2 patent drawing
  • US7636372B2 patent drawing
  • US7636372B2 patent drawing

AI summary

Provided is a system and method for performing smart offloads between computer applications module and a network interfacing device within a data communications system. The method includes receiving data requests from the computer applications module and determining whether the received data requests require offloading. The received requests are forwarded along a first data path to the network interfacing device if offloading is required. If offloading is not required, the received data requests are forwarded along a secondary data path to a host protocol stack for processing. Next, the protocol processing is performed and the processed data requests are forwarded to the network interfacing device.