SmartNIC SLA Enforcement via Datapath Offload
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Cloud data centers face challenges in efficiently monitoring and managing network and application performance due to the distributed nature of cloud native applications, leading to underutilization of network capabilities and increased costs, with existing solutions limited in their ability to enforce policies within the datacenter and respond to real-time issues.
Innovation Solution
A closed-loop framework utilizing SmartNICs (Data Processing Units) for application-aware network services, which includes dynamic policy enforcement, SLA management, and real-time monitoring and remediation, leveraging machine learning to optimize packet processing and security functions.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of operation
If datapath processing is performed by host CPU, then basic packet forwarding functionality is achieved, but CPU resources are shared by applications and datapath processing reducing application performance
Solution Approach 1:
The patent extracts datapath processing functionality from the host CPU and relocates it to a separate network interface card with dedicated processing unit. This separation allows the host CPU to be fully dedicated to application processing while the NIC handles packet processing, policing and forwarding operations independently.
Solution Approach 2:
The system segments processing responsibilities between the host CPU and NIC processing unit. The host CPU handles application-layer tasks while the NIC processing unit handles network-layer datapath tasks, creating distinct functional segments that operate independently without resource contention.
2Ease of operation
If SmartNIC with augmented datapath processing is used, then datapath processing is offloaded from host CPU, but device complexity increases
Solution Approach 1:
The NIC processing unit is designed to perform multiple functions including packet processing, policing, forwarding, and security operations. This multi-functional design consolidates what would otherwise require separate hardware components into a single integrated unit, reducing overall system complexity while maintaining advanced capabilities.
3Loss of information
If network monitoring tools are used with SNMP, then network telemetry data can be collected, but the tools have limited impact on packet flows due to restricted telemetry data
Solution Approach 1:
The system implements a feedback mechanism where the NIC processing unit continuously monitors packet flow characteristics and automatically adjusts policing rates and forwarding decisions based on real-time network conditions and SLA requirements, enabling dynamic response to network issues without external intervention.
Solution Approach 2:
The NIC processing unit performs preliminary actions by pre-configuring policing rates and forwarding rules based on anticipated network conditions and SLA requirements. This allows the system to proactively manage packet flows before problems occur, rather than merely reacting to detected issues.
4Measurement precision
If application monitoring with complex software or sidecars is implemented, then application performance can be monitored, but system resources are heavily consumed
Solution Approach 1:
The NIC processing unit acts as an intermediary that monitors application performance by observing network packet characteristics rather than directly instrumenting application code. This indirect monitoring approach provides accurate performance data without requiring complex software agents within the application, thereby minimizing resource consumption.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
Example systems, methods, and storage media are described. An example network system includes processing circuitry and one or more memories coupled to the processing circuitry. The one or more memories are configured to store instructions which, when executed by the processing circuitry, cause the network system to obtain telemetry data. The instructions cause the network system to determine, based on the telemetry data, that an application running on server processing circuitry does not meet at least one service level agreement (SLA) requirement, the server processing circuitry not including processing circuitry resident on a network interface card (NIC). The instructions cause the network system to, based on the application not meeting the at least one SLA requirement, determine to offload at least one component of the application from the server processing circuitry to the processing circuitry resident on the NIC.