22 comments

[ 1.9 ms ] story [ 60.2 ms ] thread
“sub-nanosecond synchronization”

“typical distances of 10 km between nodes”

Light travels 30cm in a nanosecond. How do they achieve sub-nanosecond accuracy over long distances?

Because they know the speed of light and the distance between nodes so they can account for the propagation delays of light due to distance.

They're not talking of sub millisecond latency in communications.

Indeed. It's exactly the same (albeit on a different scale) as NTP synchronization, where you can frequently (ha!) reach a few ms accuracy over a hundred ms latency network.
Even better, the actual in situ delays are measured and compensated for, and it works independent of the physical connection (and through fiber/copper, switch layers, etc.).
Only over fiber. Copper SFPs are not deterministic enough to precisely synchronize networks.
No, we don't know the distance between nodes (although we could deduce it). But using timestamps, we can know the round-trip time.

See https://www.ohwr.org/project/white-rabbit/uploads/2b9d42b664... (page 9 and later for the principle).

If you want all the details, see https://ohwr.org/project/white-rabbit/uploads/6a357829064b9e...

When synchronizing two nodes A and B, where there is a persistent difference in the travel times A->B and B->A, how do you achieve synchronization when knowing A->B->A or B->A->B?
For a first approximation, you can assume A->B and B->A travel times are equal.

And because optical links are used, the asymmetry is mainly due to the wavelength difference which is known.

you can't. You can only assume that they are equal and attempt to make them as equal as possible. (the same issue arises when measuring the speed of light: it's actually not possible to distinguish if the speed of light is different in one direction to another, we only know accurately the average of each direction)
Delay symmetry is a critical assumption in any two-way time transfer process. White Rabbit goes to extreme lengths to maintain that property.

This includes mandating use of cables that share a single optical fiber, with specific wavelength pairs and fiber types so you can calibrate for unavoidable differences in propagation time.

More info on their wiki:

https://ohwr.org/projects/white-rabbit/wiki/SFP

What happens when the roundtrip time isn't consistent?
The roundtrip time is never consistent. Light travels with different speed in fiber depending on the temperature. This is why you calibrate every second.
It seems that you're implying that nodes cannot be synchronized within the time it takes for light to travel between the nodes.

Images both nodes having their own atomic clocks. Now allow them to timestamp transmitted and received messages with very high precision.

In a white-rabbit network you don't need atomic clocks on each node. One atomic clock is enough, its frequency is distributed over the network.
(comment deleted)
Important and relevant piece of information: IEEE 1588-2019 HA (default profile) is interoperable with White Rabbit. Unfortunately I haven't seen any commercial support for this yet.
Now getting a Gitlab 500 "Whoops, something went wrong on our end" error page on even the root domain