RDMA Clock Synchronization Using NIC Timestamps for Low-Noise OWD
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing methods for synchronizing machine clocks in networked systems face limitations due to noise introduction by the OS stack, inaccurate timestamp calculations, and inefficient network overhead, leading to biased processing and potential data corruption.
Innovation Solution
Utilizing RDMA to directly access system software timestamps and inject compressed timestamps into metadata fields of RDMA application-level messages for precise clock synchronization, reducing noise and overhead.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If timestamps are included in packet headers or payloads at the application layer, then clock synchronization can be achieved, but packet size increases and network latency increases
Solution Approach 1:
The patent extracts the timestamp function from the application layer message content and implements it at the NIC hardware level. The NIC independently generates and attaches timestamps to packets without requiring application layer involvement, thereby eliminating the need to embed timestamps in packet payloads or headers while still achieving precise clock synchronization.
Solution Approach 2:
The patent introduces the NIC as an intermediary component between the application layer and the network layer. The NIC acts as a mediator that handles timestamp generation and attachment, freeing the application layer from this function and preventing timestamp data from increasing application message size.
2Measurement precision
If timestamps are transmitted out-of-band separately, then timestamp data can be provided, but network overhead increases and timely arrival is not guaranteed
Solution Approach 1:
The patent merges the timestamp data with the actual data packets by having the NIC attach timestamps directly to the packet headers or metadata. This combination ensures that timestamps travel with their associated data, eliminating the need for separate out-of-band transmission and reducing overall network overhead.
Solution Approach 2:
The patent performs timestamp generation and attachment as a preliminary action at the point of packet creation by the NIC. By preparing the timestamp before the packet enters the network, the system ensures timely availability of timestamp data without requiring additional transmission steps.
3Measurement precision
If OS stack is used for timestamp transmission, then system clock can be accessed, but noise is introduced in one-way delay measurements
Solution Approach 1:
The patent extracts the timestamping function from the OS stack and implements it directly in the NIC hardware. This extraction eliminates the intermediate processing steps through the OS kernel that introduce variability and noise, providing direct hardware-level timestamps that are more reliable for one-way delay measurements.
Solution Approach 2:
The patent replaces the software-based OS stack timestamping mechanism with a hardware-based NIC timestamping mechanism. This substitution eliminates the complexities and variations introduced by software processing, providing more consistent and noise-free timestamp measurements.
Data Source
AI summary
An application captures, by a sender host, timestamp of a system clock of the sender host. The application writes, by the sender host, the system clock timestamp to memory of the system host. The application reads, directly from the memory, by a component of the sender host, the timestamp. The application transmits, from the component of the sender host to a component of a receiver host, the timestamp over a Remote Direct Memory Access (RDMA) network. The application writes, by the component of the receiver host, the timestamp to memory of the receiver host. The application calculates, by the receiver host, a one-way delay (OWD) between the sender host and the receiver host using the timestamp, and outputs a control signal based on the one-way delay.


