SmartNIC Processing Units for Latency Measurement

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing latency measurement techniques in cloud data centers, such as Pingmesh, rely on host-generated ping requests and responses, which consume CPU resources and introduce inaccuracies due to kernel network stack latencies, DMA transfers, and other nondeterministic timing factors.

Innovation Solution

A SmartNIC-based edge services platform with a processing unit that snoops on existing data traffic to determine latency between servers by analyzing forward and reverse packets, eliminating the need for host-generated ping requests and responses, thereby reducing resource consumption and improving accuracy.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If host-generated ping requests and responses are used for latency measurement, then latency can be determined, but CPU resources are consumed and inaccuracies are introduced due to kernel network stack latencies and DMA transfers

Engineering Contradiction:
Improvelatency measurement accuracyVSAvoidCPU resource consumption
Core Design Contradiction:
Measurement precisionVSUse of energy by moving object

Solution Approach 1:

The patent introduces a SmartNIC as an intermediary device between the host CPU and the network. The SmartNIC's processing unit captures packet timestamps directly at the network interface level, before packets enter the host's kernel network stack. This intermediary approach eliminates the need for CPU-generated ping requests while providing accurate latency measurements by measuring time at the network boundary rather than at the application layer.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent replaces the software-based ping mechanism (which requires CPU execution, kernel processing, and DMA operations) with a hardware-based timestamping mechanism in the SmartNIC. The processing unit in the SmartNIC directly captures ingress and egress packet timestamps using hardware timers, substituting the complex software/mechanical sequence with a direct hardware measurement that bypasses the kernel network stack entirely.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

2Measurement precision

If host-generated ping requests and responses are used for latency measurement, then latency can be determined, but inaccuracies are introduced due to kernel network stack latencies, DMA transfers, and other nondeterministic timing factors

Engineering Contradiction:
Improvelatency measurement accuracyVSAvoidtiming determinism
Core Design Contradiction:
Measurement precisionVSReliability

Solution Approach 1:

The SmartNIC acts as an intermediary that isolates the latency measurement process from the variable kernel network stack. By capturing timestamps at the SmartNIC level rather than in the host OS, the measurement is taken at a point where timing is deterministic and controlled by hardware rather than software, eliminating the nondeterministic factors introduced by kernel processing, interrupt handling, and memory management.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent replaces the software-based ping mechanism with a hardware-based timestamping system. The SmartNIC's processing unit uses hardware timers to record packet timestamps directly at the network interface, bypassing the software kernel network stack that introduces nondeterministic delays. This hardware-level measurement provides consistent, repeatable timing that is not affected by OS scheduling, interrupt latency, or memory allocation variability.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

3Productivity

If SmartNIC processing units are used to determine latency by snooping on existing data traffic, then resource consumption is reduced and accuracy is improved, but additional processing complexity is introduced at the NIC level

Engineering Contradiction:
Improvelatency measurement efficiencyVSAvoidNIC processing complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The SmartNIC's processing unit is designed to perform multiple functions: it handles traditional network interface tasks (packet reception, transmission, filtering) and simultaneously performs latency measurement by snooping on data traffic. The same processing unit that manages packet forwarding also captures timestamps and calculates latencies, eliminating the need for separate measurement hardware and reducing overall system complexity despite the added functionality.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Data Source

PatentEP4113949A1Using network interface cards having processing units to determine latency
Publication Date: 2023.01.04 JUNIPER NETWORKS INC
  • EP4113949A1 patent drawingFigure 1
  • EP4113949A1 patent drawingFigure 2
  • EP4113949A1 patent drawingFigure 3

AI summary

A system is configured to compute a latency between a first computing device and a second computing device. The system includes a network interface card (NIC) of a first computing device. The NIC includes a set of interfaces configured to receive one or more packets and send one or more packets. The processing unit is configured to identify information indicative of a forward packet, compute, based on a first time corresponding to the forward packet and a second time corresponding to a reverse packet associated with the forward packet, a latency between the first computing device and a second computing device, wherein the second computing device includes a destination of the forward packet and a source of the reverse packet, and output information indicative of the latency between the first computing device and the second computing device.