В общем виде синхронизация времени в умных устройствах работает так: 2
- Устройство посылает запрос на сервер синхронизации и запоминает время, когда ушёл запрос. 2 Запрос идёт по протоколу NTP (Network Time Protocol). 2
- Сервер получает запрос, и, если всё в порядке, — записывает, когда он его получил, и отправляет данные с точным временем на сервере. 2
- Устройство получает ответ от сервера и записывает, во сколько оно его получило. 2
- Зная время отправки и получения запроса и точное время на сервере, можно рассчитать глобальное время (но с какой-то точностью). 2 Это всё повторяется с какой-то периодичностью — раз в час, раз в день или с любым другим интервалом. 2
Также для синхронизации времени в современных смартфонах может использоваться программный алгоритм на основе MEMS-гироскопов. 4 Для этого достаточно взять смартфоны в одну руку и немного покрутить их, а всё остальное — обработку данных и вычисления для синхронизации часов — сделает программа. 4