Время Протокол - это сетевой протокол в Internet Protocol Suite, определенный в 1983 г. в RFC 868 Джоном Постелом и К. Харренстайном. Его цель - обеспечить независимую от сайта машиночитаемую дату и время.
Протокол времени может быть реализован через протокол управления передачей (TCP) или протокол дейтаграмм пользователя (UDP). Хост подключается к серверу, который поддерживает протокол времени через порт 37. Затем сервер отправляет время в виде 32-битного целого числа без знака в двоичном формате и в сетевом порядке байтов, представляющем количество секунд с 00 : 00 (полночь) 1 января 19:00 по Гринвичу, и соединение закрывается. Работа через UDP требует отправки любой дейтаграммы на порт сервера, поскольку для UDP не установлено соединение.
Фиксированный 32-битный формат данных означает, что временная метка переносится примерно каждые 136 лет, причем первое такое появление приходится на 7 февраля 2036 года. Программы, использующие протокол времени, должны быть тщательно разработаны для использования контекстно-зависимой информации. чтобы отличить эти даты от дат 1900 года.
Многие Unix-подобные операционные системы использовали протокол времени для отслеживания или синхронизации своих часов с помощью утилиты rdate, но это Функция была заменена Network Time Protocol (NTP) и соответствующей утилитой ntpdate. NTP более сложен во многих отношениях, в том числе в том, что его разрешение меньше одной секунды.
В большинстве UNIX-подобных операционных систем сервер Time Protocol встроен в демон inetd (или xinetd ) . Служба обычно не включена по умолчанию. Его можно включить, добавив следующие строки в файл /etc/inetd.conf и перезагрузив конфигурацию.
поток времени tcp nowait внутреннее время корень dgram udp wait внутренний внутренний