RFC: 5905
Оригинал: Network Time Protocol Version 4: Protocol and Algorithms Specification
Предыдущие версии: RFC 958, RFC 1059, RFC 1119, RFC 1305, RFC 1361, RFC 1769, RFC 2030, RFC 4330
Категория: Предложенный стандарт
Дата публикации:
Авторы: , , , ,
Перевод: Мельников Дмитрий Анатольевич

Если в поле p.flags («Флаги опроса») флаг P_MANY установлен, то такое соединение функционирует многоадресного клиентского соединения. Многоадресные клиентские соединения обеспечивают передачу NTPv4-сообщений в режиме клиента, которые размещаются в IP-пакетах с групповыми адресами, в течении временных интервалов со значением MINPOLL (минимальное экспоненциальное значение интервала опроса). Виртуальное соединение инициализируется со значения TTL, равного единице. Если к моменту времени следующего опроса число удалённых серверов, с которыми установлены виртуальные соединения, окажется меньше значения MINCLOCK, то тогда значение TTL увеличивается на единицу. Если значение TTL достигает своего предельного максимального значения TTLMAX и при этом не найдя минимально необходимое число MINCLOCK удалённых серверов времени, то тогда интервал опроса будет увеличиваться до тех пор, пока он не достигнет предельного значения BEACON, а при достижении этого значения процедура опроса стартует с начала.

Прикладной процесс poll() обладает специфическим свойством, а именно он возвращает значение интервала опроса в первоначальное, если удалённый сервер времени становится недостижимым. Если значение регистра достижимости reach не нулевое, то тогда сервер считается достижимым, а счётчик недостижимых серверов unreach устанавливается в нулевое значение. В противном случае, значение счётчика unreach увеличивается на единицу, причём это увеличение происходит при каждом опросе до максимального значения UNREACH. С этого момента при каждом опросе значение hpoll увеличивается на единицу, что означает удвоение интервала опроса до максимального значения MAXPOLL, которое определяется прикладным процессом poll_update(). Когда удалённый сервер времени вновь становится достижимым, то тогда значение счётчика unreach устанавливается в нулевое значение, значение hpoll переустанавливается в значение системной переменной tc, а процесс синхронизации начинает функционировать нормально.

2007 - 2017 © Русские переводы RFC, IETF, ISOC.