Selective PNIC Hardware Acceleration for Elephant Flows
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Physical network interface cards (PNICs) have limitations in processing flows using hardware acceleration techniques, and flows that do not benefit significantly from hardware acceleration may not maximize network performance improvement.
Innovation Solution
Classify flows as 'elephant' or 'mice' flows, offloading hardware processing to PNICs only for elephant flows, and use receive side scaling to separate queues for efficient packet processing, avoiding head-of-line blocking delays.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If hardware acceleration techniques are applied to process packets in the PNIC, then network performance is improved, but the number of flows that can be processed is limited
Solution Approach 1:
The patent segments flows into two categories: elephant flows (high throughput, long-lived) and mice flows (low throughput, short-lived). This segmentation allows the system to apply hardware acceleration selectively to elephant flows while maintaining software processing for mice flows, thereby resolving the contradiction between improving network performance and accommodating a large number of flows.
Solution Approach 2:
The patent applies different processing qualities to different flow types. Elephant flows receive hardware acceleration processing (higher quality performance), while mice flows receive software processing (standard quality). This local differentiation optimizes resource allocation and resolves the limitation on the number of flows that can be processed with hardware acceleration.
2Speed
If flows are offloaded to the PNIC for hardware processing, then processing speed is improved, but resource inefficiency occurs when flows do not benefit significantly from hardware acceleration
Solution Approach 1:
The patent applies partial hardware acceleration only to elephant flows that benefit significantly from it, rather than applying it universally to all flows. This partial action approach ensures that hardware resources are used efficiently and not wasted on mice flows that would not benefit from the acceleration, thereby resolving the contradiction between processing speed and resource efficiency.
3Productivity
If all flows are processed using hardware acceleration, then network performance is maximized, but PNIC resource constraints are violated
Solution Approach 1:
By segmenting flows into elephant and mice categories, the patent enables selective hardware acceleration that respects PNIC resource constraints. Elephant flows receive hardware processing to maximize performance for high-value traffic, while mice flows are processed in software to accommodate the limited hardware capacity, thus resolving the contradiction between network performance and PNIC processing capacity.
Solution Approach 2:
The patent changes the processing parameter from uniform hardware acceleration to differentiated processing based on flow characteristics. This parameter change allows the system to optimize the mix of hardware and software processing to match PNIC capacity constraints while maximizing overall network performance.
Data Source
AI summary
In some embodiments, a method receives a packet for a flow associated with a workload. Based on an indicator for the flow, the method determines whether the flow corresponds to one of an elephant flow or a mice flow. Only when the flow is determined to correspond to an elephant flow, the method enables a hardware acceleration operation on the packet. The hardware acceleration operation may include hardware operation offload, receive side scaling, and workload migration.


