NTP

Материал из свободной русской энциклопедии «Традиция»
Перейти к навигации Перейти к поиску
Network Time Protocol
NTP
Уровень:
Прикладной
Семейство:
TCP/IP
Порт:
123 (UDP)
Назначение:
Синхронизация времени
Спецификация:
RFC 1305

Network Time Protocol (NTP) — сетевой протокол для синхронизации внутренних часов компьютера с использованием сетей с переменной латентностью, основанных на коммутации пакетов. Хотя традиционно NTP использует для своей работы протокол UDP, он также способен работать и поверх TCP. Система NTP чрезвычайно устойчива к изменениям латентности среды передачи. NTP использует алгоритм Марзулло (предложен Кейтом Марзулло (Keith Marzullo) из Университета Калифорнии, Сан-Диего), включая такую особенность, как учёт времени передачи. В версии 4 способен достигать точности 10 мс (1/100 с) при работе через Интернет, и до 200 микросекунд (1/5000 с) и лучше внутри локальных сетей. NTP — один из старейших используемых протоколов. NTP разработан Дэвидом Л. Миллсом (David L. Mills) из университета Дэлавера и в настоящее время продолжает совершенствование. Текущая версия — NTP 4. Демон NTP — программа пользовательского уровня, работает постоянно. NTP использует иерархическую систему «часовых уровней», уровень 1 синхронизован с высокоточными часами, например, система GPS или эталоны времени. NTP уровень 2 синхронизируется с одной из машин уровня 1, и так далее. Время, представляется в системе NTP 64-битным числом, состоящим из 32-битного счётчика секунд и 32-битного счётчика долей секунды, позволяя передавать время в диапазоне 232 секунд, с теоретической точностью 2-32 секунды. Поскольку шкала времени в NTP повторяется каждые 232 секунды (136 лет), получатель должен хотя бы примерно знать текущее время (с точностью 50 лет). Более простая реализация этого алгоритма известна как SNTP — простой синхронизирующий сетевой протокол. Используется во встраиваемых системах и устройствах, не требующих высокой точности. Подробная реализация протокола и системы в целом описана в:

  • RFC 778
  • RFC 891
  • RFC 956
  • RFC 958
  • RFC 1305
  • RFC 2030

NTP не следует путать с daytime protocol RFC 867 или time protocol RFC 868.

Смотри также[править | править код]