Application Processor Unit Offloads Network Application Layer Processing
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current systems offloading network communication functions from host processors are limited in handling application-level requests, as they do not effectively manage higher OSI layers, which require access to host data and meta-data, leading to inefficient processing and increased host processor load.
Innovation Solution
A pre-processor or co-processor, known as the Application Processor Unit (APU), is introduced to offload application-level requests by processing messages above OSI layer 4, using a cache with a copy of meta-data or data to handle file access and other network operations, thereby reducing host processor load and improving efficiency.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If application-level requests are processed by the host processor, then processing accuracy and access to host data are maintained, but host processor load increases and processing efficiency decreases
Solution Approach 1:
The patent extracts application-level processing functions from the host processor and implements them in a separate network communication device. This extraction removes the burden of handling application protocols (layers 5-7) from the host, allowing it to focus on core computing tasks while the network device handles file access, web requests, and other application-level communications independently.
Solution Approach 2:
The patent segments the network processing functions into distinct layers, with the network communication device handling layers 5-7 (application layer functions) and the host processor focusing on layers 0-4 (transport and lower layers). This segmentation allows each component to specialize in specific protocol handling, improving overall system efficiency and reducing host processor load.
2Device complexity
If network communication functions are offloaded to a separate device, then host processor load is reduced, but handling of application-level requests requiring host data access becomes less effective
Solution Approach 1:
The patent introduces an intermediary mechanism between the network communication device and host processor that enables efficient data access. The network device can request and receive necessary host data through standardized interfaces, maintaining adaptability and versatility while keeping the host processor focused on core tasks. This intermediary layer resolves the contradiction by providing controlled access without requiring the host to directly handle all application-level requests.
3Reliability
If the host processor handles all network communication tasks, then complete control over data processing is maintained, but network communication efficiency and speed decrease
Solution Approach 1:
The patent extracts network communication handling from the host processor and implements it in a dedicated network communication device. This extraction enables parallel processing where the host maintains control over data integrity and security policies, while the network device handles communication protocols and data transmission at higher speeds, resolving the contradiction between control and efficiency.
Solution Approach 2:
The patent segments network communication functions into protocol handling (layers 5-7) performed by the network device and core data processing controlled by the host. This segmentation allows the network device to optimize for communication speed while the host maintains authoritative control over data processing decisions, achieving both efficiency and reliability.
Data Source
AI summary
Offloading application level communication functions from a host processor. The offloading apparatus can be configured as either a pre-processor or as a co-processor. An interface is provided for receiving a network message sent to the host. An engine performs processing of the network message above OSI level 4. In one embodiment, in a fast-path, a response to the message is sent back to the network without any involvement by the host, providing a complete offload. For other messages, certain pre-processing can be performed, such as parsing of a header, message authentication, and look-up of meta-data. The results of the look-up are then passed to the host with the processed header, simplifying the tasks the host needs to perform. The messages and data are transferred to the host using control and data buffers.


