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.
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?
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.
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)
The roundtrip time is never consistent. Light travels with different speed in fiber depending on the temperature. This is why you calibrate every second.
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.).
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.