Facebook has announced a public time-keeping service that relies on a combination of satellite data & its own servers.
FB said on its official blog that the service had “improved the accuracy of time telling” from 10 milliseconds to 100 microseconds.
Explaining the need for this, FB said:
Almost all of the billions of devices connected to the internet have onboard clocks, which need to be accurate to properly perform their functions. Many clocks contain inaccurate internal oscillators, which can cause seconds of inaccuracy per day and need to be periodically corrected. Incorrect time can lead to issues, such as missing an important reminder or failing a spacecraft launch. Devices all over the world rely on Network Time Protocol (NTP) to stay synchronized to a more accurate clock over packet-switched, variable-latency data networks.
Facebook NTP service is designed in 4 layers:
- Stratum 0 is a layer of satellites with extremely precise atomic clocks from a global navigation satellite system (GNSS), such as GPS, GLONASS, or Galileo.
- Stratum 1 is Facebook atomic clock synchronizing with a GNSS.
- Stratum 2 is a pool of NTP servers synchronizing to Stratum 1 devices. Leap-second smearing is happening at this stage.
- Stratum 3 is a tier of servers configured for a larger scale. They receive smeared time and are ignorant of leap seconds.