Packet Data Processing via Header Extraction on PCIe Links
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The existing CPU systems, such as X86 CPUs, face inefficiencies in network data processing due to the lack of hardware acceleration, leading to high bandwidth requirements and low packet data transmission efficiency over PCIe links, as they often transmit entire packet data sets, including both necessary and unnecessary information.
Innovation Solution
A method where only the necessary packet data information, specifically the header, is sent to a second processing apparatus for processing, while the rest is stored locally, thereby reducing the burden on the PCIe link by minimizing data transmission through it.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If entire packet data is transmitted through PCIe link for processing, then data processing can be performed, but transmission efficiency is low and bandwidth requirement is high
Solution Approach 1:
The patent extracts only the necessary header information from the complete packet data and transmits it through the PCIe link for processing. The payload data is retained locally in the first processing apparatus, eliminating the need to transmit the entire packet. This extraction approach directly reduces transmission volume while maintaining processing capability for essential packet metadata.
Solution Approach 2:
The patent segments packet data into two distinct parts: the header (first packet data information) that needs to be transmitted for processing, and the payload (second packet data) that remains locally stored. This segmentation allows selective transmission of only the necessary portion, improving transmission efficiency without compromising the ability to process packet information.
2Productivity
If more coprocessor chips are added to enhance processing capability, then network data processing performance improves, but system complexity and cost increase
Solution Approach 1:
The first processing apparatus performs packet data processing functions autonomously by utilizing its existing processing capabilities and local storage. Instead of relying on additional coprocessor chips for all processing tasks, the system serves itself by executing processing operations locally, thereby avoiding the complexity and cost of adding more hardware components.
Solution Approach 2:
The first processing apparatus is designed to perform multiple functions including packet data reception, local storage of payload data, and execution of processing operations. This multi-functional design eliminates the need for separate dedicated coprocessor chips, reducing system complexity while maintaining processing performance.
3Quantity of substance
If PCIe link bandwidth is increased to accommodate more data transmission, then data transmission capacity improves, but cost and complexity of the link increase
Solution Approach 1:
By extracting and transmitting only the header information rather than complete packet data, the patent significantly reduces the data volume transmitted through the PCIe link. This approach allows the use of existing bandwidth capacity without requiring upgrades to higher bandwidth links, thereby avoiding increased complexity and cost.
Solution Approach 2:
The patent applies partial action by transmitting only the necessary portion (header) of the data rather than the complete packet. This partial transmission approach is sufficient for processing purposes while avoiding the excessive data transmission that would require higher bandwidth capacity and more complex link infrastructure.
Data Source
Figure 1~2
Figure 3
Figure 4~5
AI summary
The present invention discloses a packet data processing method, apparatus, and system, which relate to the field of communications technologies, and are invented in order to improve packet data transmission efficiency. The method is executed by a first processing apparatus, and includes: acquiring packet data that needs to be processed, where the packet data that needs to be processed includes first packet data information and second packet data, and the first packet data information includes a header of the packet data that needs to be processed and a storage address of the packet data that needs to be processed in the first processing apparatus; sending the first packet data information to a second processing apparatus, so that the second processing apparatus processes the first packet data information; and receiving first packet data information (includes an updated header after being processed and the storage address) processed by the second processing apparatus, and generating finished packet data by using the first packet data information processed by the second processing apparatus and the second packet data. The present invention may be applied to data processing technologies.