Network Interface Controller Segmentation Offload
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing network communication protocols face inefficiencies in segmenting large data units for transmission, leading to potential network delays and overhead, especially when using protocols like TCP or RDMA, due to the need for retransmitting entire packets in case of errors and the inability to handle long packets effectively.
Innovation Solution
A network interface controller (NIC) is configured to generate metadata for segmenting large data units into multiple packets, using a generic protocol-agnostic approach that allows for easy adaptation to various transmission communication protocols, including TCP and RDMA, by rewriting header templates to comply with specific protocol rules, thereby enabling efficient segmentation offload without requiring extensive changes to the NIC's protocol-specific processing.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If segmentation is carried out at the transport layer using TCP or UDP protocols, then reliable transmission and network compatibility are improved, but transmission overhead and processing complexity increase
Solution Approach 1:
The patent introduces a NIC with protocol-agnostic segmentation functionality as an intermediary between the host CPU and the transport layer protocols. The NIC generates metadata describing segments and rewrites header templates to comply with specific protocol rules, mediating between the data unit and protocol-specific processing without requiring the host CPU to handle protocol details directly.
Solution Approach 2:
The patent applies segmentation by dividing a large data unit into multiple smaller segments for transmission. The NIC creates metadata describing each segment and rewrites header templates to generate protocol-compliant headers for each segment, enabling efficient segmentation offload while maintaining protocol compatibility.
2Adaptability or versatility
If a NIC supports segmentation offload for multiple protocols, then protocol versatility is improved, but device complexity and configuration difficulty increase
Solution Approach 1:
The patent implements a universal NIC architecture with protocol-agnostic segmentation functionality that can handle multiple transport layer protocols (TCP, UDP, RDMA, etc.). The NIC uses a common metadata generation and header template rewriting mechanism that adapts to different protocols without requiring separate processing paths, enabling multi-protocol support while maintaining manageable complexity.
Solution Approach 2:
The patent changes parameters dynamically based on the target protocol. The NIC rewrites header templates by modifying header fields according to protocol-specific rules defined in data structures. This allows the same segmentation engine to produce protocol-compliant output for different protocols by changing only the header rewriting parameters, not the core segmentation logic.
3Productivity
If long packets are transmitted over slow network links, then transmission efficiency is improved, but network performance and throughput deteriorate due to link utilization issues
Solution Approach 1:
The patent applies segmentation to divide large data units into smaller segments that can be transmitted more efficiently over network links. By creating multiple smaller packets from a single large data unit, the system improves link utilization and allows better interleaving of multiple transmissions, enhancing overall network performance while maintaining high productivity through batch processing.
Data Source
AI summary
This disclosure describes techniques for a network interface controller (NIC) to communicate over a network according to a specified transmission communication protocol. The NIC receives, from a host processor, an indication of a data unit and an indication of a header template. The NIC generates, independent of the specified transmission communication protocol, metadata for transmitting a segment of the data unit over a network. The NIC generates, at last partly using the metadata, header fields that comply with the specified transmission communication protocol. The NIC processes the header template and the header fields to generate a packet header, and the NIC transmits, over the network, a packet including the packet header and the segment of the data unit.


