NTP | |
---|---|
Название | Network Time Protocol |
Уровень (по модели OSI) | Прикладной |
Семейство | TCP/IP |
Создан в | 1985 |
Порт/ID | 123/UDP |
Назначение протокола | Синхронизация часов |
Спецификация | RFC 5905 |
NTP (англ. Network Time Protocol — протокол сетевого времени) — сетевой протокол для синхронизации внутренних часов компьютера с использованием сетей с переменной латентностью. Протокол был разработан Дэвидом Л. Миллсом[англ.], профессором Делавэрского университета, в 1985 году. Версия на 2015 год — NTPv4[1].
NTP, основанный на алгоритме Марзулло, использует для своей работы протокол UDP и учитывает время передачи. Система NTP чрезвычайно устойчива к изменениям латентности среды передачи. В версии 4 способен достигать точности 10 мс (1/100 с) при работе через Интернет, и до 0,2 мс (1/5000 с) и лучше внутри локальных сетей[2].
Наиболее широкое применение протокол NTP находит для синхронизации серверов точного времени. Для достижения максимальной точности предпочтительна постоянная работа программного обеспечения NTP в режиме системной службы. В семействе операционных систем Microsoft Windows — это служба W32Time[3], в UNIX-подобных системах — демон Ntpd[4] или chronyd.
Более простая реализация этого алгоритма известна как SNTP — простой протокол сетевого времени. Используется во встраиваемых системах и устройствах, не требующих высокой точности, а также в пользовательских программах точного времени[5].