TCP Segmentation Offloading via Packet Header Parameter Extraction

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Traditional TCP segmentation offloading mechanisms increase system bus usage and decrease memory efficiency, and are not suitable for network interface devices without direct memory access, such as those using USB with Remote NDIS, as they require changes to the descriptor architecture.

Innovation Solution

A method and device for offloading packet segmentations that retrieve a packet segmentation offloading parameter and segment the packet into sub-packets without altering the descriptor architecture, using a packet parser, header buffer controller, extractor, and segmentation module to consider the packet segmentation offloading parameter, allowing for efficient segmentation without changing the packet length or descriptor structure.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If traditional TCP segmentation offloading mechanisms are used to segment packets, then segmentation functionality is achieved, but system bus usage increases and memory efficiency decreases

Engineering Contradiction:
Improvesegmentation functionalityVSAvoidsystem bus usage
Core Design Contradiction:
ProductivityVSLoss of energy

Solution Approach 1:

The patent extracts the packet segmentation offloading parameter from the descriptor architecture and places it directly in the packet header. This separation removes the burden from the descriptor structure, allowing segmentation to occur without requiring descriptor modifications, thereby reducing system bus usage and improving memory efficiency while maintaining segmentation functionality.

Inventive Principle:
Principle #2Taking out (Extraction)

2Productivity

If descriptor architecture is changed to carry packet segmentation offloading parameter, then segmentation offloading is enabled, but device complexity increases

Engineering Contradiction:
Improvesegmentation offloadingVSAvoiddescriptor architecture
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent extracts the segmentation parameter from the descriptor and embeds it in the packet header instead. This approach enables segmentation offloading without modifying the descriptor architecture, keeping the network interface device compatible with existing descriptor structures and reducing device complexity.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The packet header serves as an intermediary structure that carries the segmentation parameter. By using the existing packet header as the mediator for parameter storage, the patent avoids the need to modify descriptor architecture while still enabling segmentation offloading functionality.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Quantity of substance

If packet length is increased to carry segmentation parameter, then parameter storage is achieved, but memory efficiency decreases

Engineering Contradiction:
Improveparameter storage capacityVSAvoidmemory efficiency
Core Design Contradiction:
Quantity of substanceVSLoss of energy

Solution Approach 1:

The patent utilizes the packet header as a multi-functional structure that serves both its traditional purpose of carrying packet control information and the additional function of storing the segmentation parameter. This approach provides parameter storage capacity without increasing packet length, thereby maintaining memory efficiency.

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

4Ease of operation

If descriptor architecture is modified to sequentially store pointers and parameters, then parameter access is simplified, but system bus usage increases

Engineering Contradiction:
Improveparameter accessVSAvoidsystem bus usage
Core Design Contradiction:
Ease of operationVSLoss of energy

Solution Approach 1:

The patent extracts the segmentation parameter from the descriptor structure and places it in the packet header. This allows the network interface device to access the parameter directly from the packet during reception, simplifying parameter access without requiring sequential descriptor accesses that increase system bus usage.

Inventive Principle:
Principle #2Taking out (Extraction)

5Adaptability or versatility

If TCP segmentation offloading is implemented for bus slaves without direct memory access, then USB compatibility is improved, but segmentation functionality is lost

Engineering Contradiction:
ImproveUSB compatibilityVSAvoidsegmentation functionality
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The packet header acts as an intermediary that carries the segmentation parameter to the network interface device. This approach enables bus slaves without direct memory access to receive the segmentation information needed to perform segmentation, maintaining both USB compatibility and segmentation functionality.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The segmentation parameter is embedded in the packet header before the packet is transmitted to the network interface device. This preliminary action ensures that the device has all necessary segmentation information available upon packet reception, enabling segmentation functionality even for devices without direct memory access capabilities.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS9247032B2Method for offloading packet segmentations and device using the same
Publication Date: 2016.01.26 MEDIATEK INC
  • US9247032B2 patent drawing
  • US9247032B2 patent drawing
  • US9247032B2 patent drawing

AI summary

A method for offloading packet segmentations includes the steps of retrieving a packet segmentation offloading parameter in a packet and segmenting the packet into a plurality of sub-packets by taking consideration the packet segmentation offloading parameter. A device for offloading packet segmentations includes a packet parser configured to receive a packet to be transmitted, a header buffer controller configured to retrieve a header of the packet and connected to a buffer to access the header, an extractor configured to retrieve a packet segmentation offloading parameter in the packet, and a segmentation module configured to segment the packet into a plurality of sub-packets by taking consideration the header and the packet segmentation offloading parameter.