Если в поле 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
, а процесс синхронизации начинает функционировать нормально.