Intelligent Network Adaptor Protocol Offload for Host Resource Reduction
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
High-speed packet-based network communications put a heavy burden on end-host resources due to high packet arrival rates, interrupt rates, and memory bandwidth usage, leading to increased latency and processing demands.
Innovation Solution
An intelligent network adaptor performs direct data placement and adaptive copy avoidance to reduce memory bandwidth usage and notification rates, offloading protocol processing and enabling zero-copy data transfer directly to application buffers, thereby minimizing latency and processing loads.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of operation
If traditional packet processing is used where the host processor handles each packet arrival with interrupts and memory copying, then protocol processing is accurate and complete, but the host processor burden and interrupt rate increase significantly
Solution Approach 1:
The patent extracts protocol processing functions from the host processor and transfers them to the network adaptor. The adaptor independently handles TCP/IP stack processing, packet assembly, and data placement, removing the burden of high-rate interrupt handling and memory copying from the host processor while maintaining accurate protocol processing.
Solution Approach 2:
The network adaptor acts as an intermediary between the network and the host processor. It receives packets, performs protocol processing, and places data directly into application buffers, mediating the interaction and eliminating the need for the host processor to handle each packet arrival with interrupts.
2Reliability
If data is copied from operating system buffers to application buffers for each packet, then data delivery is complete and accurate, but memory bandwidth usage increases
Solution Approach 1:
The patent uses preliminary action by having the application pre-allocate and register buffers with the network adaptor before data arrival. The adaptor places incoming data directly into these pre-prepared buffers, eliminating the need for runtime copying from OS buffers to application buffers and reducing memory bandwidth consumption.
Solution Approach 2:
The patent extracts the intermediate OS buffer copying step from the traditional data path. By implementing direct data placement where the adaptor writes directly to application buffers, it removes the redundant memory copy operation while maintaining complete and accurate data delivery through protocol processing validation.
3Loss of time
If the host processor is notified of every packet arrival using interrupts, then data reception is timely and complete, but interrupt rate and processing overhead increase
Solution Approach 1:
The network adaptor serves as an intermediary that handles notification management independently. It uses ring buffers and descriptors to track data placement status and only notifies the host processor when significant events occur (such as buffer completion or error conditions), rather than generating interrupts for every packet arrival, thus reducing interrupt rate while maintaining timely reception.
Solution Approach 2:
The patent implements periodic or event-driven notification instead of continuous per-packet interrupts. The adaptor notifies the host processor periodically or when specific conditions are met (such as when a buffer is filled or an error occurs), reducing the frequency of interrupts while ensuring timely data reception through efficient buffer management.
4Reliability
If protocol processing is performed by the host operating system for each packet, then protocol compliance is ensured, but communication latency increases
Solution Approach 1:
The patent extracts protocol processing from the host OS and implements it in the network adaptor hardware or firmware. The adaptor independently performs TCP/IP stack processing, including header parsing, checksum validation, and packet assembly, ensuring protocol compliance while eliminating the time delay associated with host OS processing for each packet.
Solution Approach 2:
The network adaptor performs protocol processing in advance as data arrives from the network, before data needs to be delivered to the application. By pre-processing packets and placing validated data directly into application buffers, it ensures protocol compliance is verified early, reducing overall communication latency.
Data Source
AI summary
A host is coupled to a network via an intelligent network adaptor. The host is executing an application configured to receive application data from a peer via the network and the intelligent network adaptor using a stateful connection according to a connection-oriented protocol. The intelligent network adaptor performs protocol processing of the connection. Application data is copied from host memory not configured for access by the application (possibly OS-associated host memory) to host memory associated with the application (application-associated host memory). The application data is received from the peer by the intelligent network adaptor and copied to host memory not configured for access by the application. The operating system selectively provides, to the intelligent network adaptor, information of the memory associated with the application. At least one portion of the application data for the connection is provided directly from the intelligent network adaptor to the memory associated with the application.


