Синхронизация времени в сети производится посредством специального протокола передачи данных - NTP (Network Time Protocol). Этот протокол включает в себя набор сложных алгоритмов, которые позволяют с большой точностью синхронизировать время (до тысячных миллисекунд расхождения).
Есть более упрощенная версия этого протокола - SNTP (Simple Network Time Protocol), который используется в сетях, где не требуется высокая точность синхронизации (до 1 сек. расхождения).
Разумеется, для синхронизации времени по сети необходимо иметь источник эталонного времени в этой сети. Если требования к синхронизации не очень жесткие, для этой цели вполне подойдет один из бесплатных серверов времени с доступом через Интернет. А если требуется прецизионная точность? В этом случае для синхронизации времени по сети нужно использовать локальный сервер времени.
Вся модель синхронизации времени NTP выглядит в виде дерева. В "кроне" этого дерева находятся "первичные сервера". Таких серверов во всем мире несколько штук. На них чаще всего установлены атомные часы и другие дорогостоящие хронометры. Синхронизировать время с "первичными" серверами у Вас не получится либо из-за их большой загруженности, либо из-за ограничения самими серверами.
"Вторичные" сервера синхронизируются с серверами первого уровня посредством протокола NTP. Расхождение между ними при синхронизации времени по сети достигает порядка 20 миллисекунд. Таких серверов значительно больше и поэтому целесообразней настраивать синхронизацию именно с ними.
После этого могут идти сервера третьего, четвертого уровня и т. д., к которым чаще всего относятся сервера синхронизации времени различных провайдеров и других IT-компаний.
|