Сохранение времени с помощью протокола сетевого времени
Размещенно от Ричард Уильямс N on Апрель 30th, 2012
Когда дело доходит до синхронизация сети, Протокол сетевого времени (NTP) является наиболее широко используемым программным протоколом. Независимо от того, синхронизируется ли сеть из сотен или тысяч компьютеров или поддерживается ли работа одной машины, NTP предлагает решение. Без NTP и NTP-сервером, многие из задач, которые мы выполняем в Интернете, от покупок до онлайн-банкинга, просто не будут возможны.
Синхронизация имеет жизненно важное значение для сетей, работающих через Интернет. Без синхронизации возникнет хаос. Представьте, что вы получили электронное письмо от кого-то за пять минут до его отправки или передачи денег пользователю, чей компьютер говорит, что деньги остались до его прибытия.
Всемирное координированное время
Чтобы избежать всех этих проблем, в Интернете используется единая универсальная шкала времени, что является тем же самым независимо от того, какой часовой пояс находится на машине. Всемирное координированное время (UTC) регулируется атомными часами, поэтому он очень точен и стабилен.
Чтобы компьютерные сети получали UTC, они используют NTP-серверы, которые получают источник времени из сети GPS (Глобальная система позиционирования), радиопередачи или из самого Интернета. Получив, NTP должен взять основной источник времени и распределить его по сети для обеспечения синхронности.
Объяснение протокола сетевого времени
NTP является одним из самых старых протоколов в области вычислений. Это относится к тому времени, когда интернет все еще находится в зачаточном состоянии, но он был изменен и адаптирован для обеспечения того, что он по-прежнему имеет значение. По сути, NTP - это алгоритм, предназначенный для определения времени на отдельных компьютерах и сравнения их с источником времени UTC. Если NTP находит и расхождений, он настраивает часы на устройстве-нарушителе, чтобы убедиться, что он соответствует. NTP делает это с такой точностью, что сеть из тысячи машин может быть синхронизирована в течение нескольких миллисекунд друг от друга.
NTP использует иерархическую систему. Вместо того, чтобы каждое устройство в сети проверялось с сервером NTP и его источником времени UTC, протокол позволяет тем машинам, ближайшим к серверу, использоваться в качестве ссылки на машины ниже. Это позволяет избежать притока трафика на сервер NTP и позволяет одному устройству поддерживать синхронизацию в сети сотен или даже тысяч устройств.
Leap секунд
Одна из самых больших проблем, с которыми сталкивается NTP при использовании UTC в качестве источника времени, заключается в том, что это универсальное время иногда корректируется, чтобы поддерживать свою корреляцию с вращением Земли. Поскольку планета так медленно замедляется, атомные часы, которые регулируют UTC, являются муаровыми, точными, что сама планета, поэтому случайная секунда добавляется один или два раза в год, чтобы обеспечить отсутствие дрейфа со дня на ночь (хотя такой процесс потребуется миллионы лет).
Эти инкрементные изменения известны как Секунды секунд и идентифицируются в сигналах, отправленных на большинство NTP-серверов. Когда NTP обнаруживает второй прыжок, он автоматически настраивает все устройства в сети, повторяя вторую. Неспособность настроить эти прыжковые секунды приведет к тому, что сеть постепенно выйдет из UTC и перестанет синхронизироваться с остальной частью интернет-сообщества.