Dynamic Network Function Offloading Between Smart NIC and Host CPU
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In servers equipped with smart NICs, the communication processing load can exceed the CPU resources, leading to increased processing delays and decreased network performance, especially when the number of communications increases, making it difficult to statically determine how to share network functions effectively across the server and smart NIC.
Innovation Solution
An information processing apparatus that records communication information for each application, compares the load on network functions, and switches the execution position of the network function with the smallest load from the smart NIC to the host CPU, using a PCIe switch to manage flow rules and optimize resource utilization based on communication statistics and load coefficients.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Use of energy by moving object
If network functions are offloaded to smart NIC to reduce server CPU load, then server CPU utilization is improved, but smart NIC CPU may become overloaded leading to processing delays
Solution Approach 1:
The system dynamically adjusts the execution location of network functions between server CPU and smart NIC CPU based on real-time load conditions. When smart NIC CPU load exceeds threshold, the system switches affected network functions from smart NIC execution to server execution, and vice versa, making the system adaptable to changing workload conditions
Solution Approach 2:
The system changes the operational parameters by monitoring CPU utilization rates and dynamically switching network function execution locations based on load thresholds. This parameter-based control allows optimization of processing speed by routing to the processor with sufficient capacity
2Speed
If network functions are executed on smart NIC to improve network processing speed, then network performance is improved, but resource allocation becomes complex and difficult to manage
Solution Approach 1:
The system implements continuous monitoring of CPU utilization rates on both server and smart NIC, using this feedback to automatically determine optimal network function placement. This closed-loop control simplifies management by replacing complex static allocation with automated dynamic adjustment based on actual system state
Solution Approach 2:
The system performs self-optimization by automatically monitoring its own load conditions and making decisions about network function placement without external intervention. The intelligent NIC autonomously identifies when to switch functions between server and NIC based on its own performance metrics
3Ease of operation
If network functions are statically assigned to smart NIC to simplify management, then ease of operation is improved, but adaptability to changing communication loads is reduced
Solution Approach 1:
The system transitions from static to dynamic network function allocation by continuously monitoring CPU load and automatically switching execution locations. This maintains operational simplicity while achieving adaptability through automated responses to changing communication demands
Data Source
AI summary
An information processing apparatus equipped with a network interface card, the network interface card comprising: a network switch; and a first processor configured to perform processing, the processing including: recording, for each application, communication information to each application executed in the computer; comparing, in a case where a use rate of the processor is overloaded, a load on each network function that processes communication to each application based on a flow rule of the network switch, based on a record of the communication information; selecting a network function having the smallest load on each network function; and switching an execution position of the selected network function to a network function of the computer to change the flow rule of the network switch.


