Network Interface Message Engine for Low Latency Protocol Processing
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current data processing systems face challenges in achieving low latency upper layer messaging due to the complexity and cost associated with incorporating both TCP offload engines and upper layer protocol accelerators in hardware at network interface devices, which increases processing power and memory requirements, leading to long development times and difficulty in making changes to hardware implementations.
Innovation Solution
A data processing system that includes a host computing device with a network protocol stack and a network interface device equipped with a message engine that performs upper layer protocol processing, allowing it to process upper layer messages before transport protocol processing is complete, without requiring a hardware TCP offload engine, by passing payload data to the message engine for processing and handling transport stream protocol processing at the host computing device.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Loss of time
If both TCP offload engine and upper layer protocol accelerator are incorporated in hardware at network interface device, then upper layer messaging latency is reduced, but device complexity and cost increase significantly
Solution Approach 1:
The patent segments the protocol processing functions by separating TCP offload engine functionality from upper layer protocol accelerator functionality. The TCP offload engine is implemented in hardware at the network interface device, while the upper layer protocol processing is implemented as a software module at the host computing device. This segmentation allows the hardware to handle only TCP protocol processing, reducing hardware complexity while still enabling low-latency upper layer messaging through the software module that can process upper layer protocols without waiting for complete TCP processing.
2Loss of time
If TCP processing is performed at NIC, then upper layer protocol processing can be moved into hardware, but processing power and memory requirements at NIC increase
Solution Approach 1:
The patent extracts the upper layer protocol processing function from the network interface device hardware and relocates it to the host computing device software. The TCP offload engine at the NIC handles only TCP protocol processing, while the upper layer protocol accelerator is implemented as a software module at the host. This extraction reduces the processing power and memory requirements at the NIC while maintaining the ability to process upper layer messages with low latency through the software module that can operate independently of complete TCP processing.
3Loss of time
If hardware TCP and upper layer protocol solution is integrated, then upper layer messaging latency is minimized, but development time increases
Solution Approach 1:
The patent introduces dynamic configurability to the system by implementing the upper layer protocol accelerator as a software module that can be loaded, updated, and reconfigured without changing the hardware. The TCP offload engine at the NIC provides a hardware foundation that can be configured through software, and the upper layer protocol processing module can be dynamically updated to support different protocols or protocol versions. This dynamic approach reduces development time compared to fixed hardware implementations while maintaining low latency performance.
4Productivity
If hardware implementation is used for TCP and upper layer protocol processing, then processing speed increases, but ease of repair and updates decreases
Solution Approach 1:
The patent enables parameter changes and updates by implementing the upper layer protocol accelerator as a software module rather than fixed hardware. The software module can be updated, patched, and reconfigured to fix bugs, add features, or adapt to new protocols without requiring hardware changes. The TCP offload engine at the NIC provides a stable hardware foundation with configurable parameters that can be adjusted through software, combining the speed of hardware processing with the flexibility of software updates.
Data Source
Figure 1~3
AI summary
A data processing system comprising: a host computing device supporting an operating system and a network protocol stack, the network protocol stack being operable to support one or more transport streams by performing transport stream protocol processing of data packets received over the streams; a network interface device arranged to couple the host computing device to a network and operable to receive data packets over a transport stream supported by the network protocol stack; and a message engine configured to perform upper layer protocol processing; wherein the network interface device is configured to, on receiving a data packet over one of a predetermined set of transport streams, pass the payload data of the data packet to the message engine and the message engine is configured to, in response to receiving the payload data, identify and process any upper layer messages in the payload data in accordance with the upper layer protocol.