9.2. Процедуры, проводимые удалённым сервером
К таким процедурам относятся процедура приема NTPv4-сообщения и процедура управления доступом на основе списка управления доступом (access control list — ACL). Последняя не требует каких-либо специальных методов по управлению доступом, хотя существует рекомендация, чтобы прикладные программные NTPv4-модули включали такой способ, который подобен многим другим широко используемым способам.
Проверки формата включают контроль корректности длины и дополнения до 32-битовой границы, доступность номера версии протокола (1…4), а также, при наличии, корректность дополнительных полей расширения.
Не существует какого-либо специального требования к процедуре аутентификации. Однако, если процедура аутентификации имеет место, то тогда среди всех реализованных способов должен быть и способ, основанный на MD5-алгоритме хеширования с использование симметричного криптоключа (RFC-1231).
Для поиска и сравнения IP-адресов и номеров портов транспортного уровня отправителей NTPv4-сообщений существует таблица виртуальных соединений, при этом используется специальный прикладной процесс find_assoc()
. На рис.17 представлена диспетчерская таблица, в которой колонки соответствуют номерам форматов пакетов (NTPv4-сообщений), а строки — режимам функционирования виртуальных соединений. Данная таблица позволяет определить необходимую процедуру обработки. Кодировка процедур следующая:
Режим соединения | Форматы пакетов | |||||
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
Отсутствие соединения | 0 | NEWPS | DSCRD | FXMIT | MANY | NEWBC |
Симметричный активный | 1 | PROC | PROC | DSCRD | DSCRD | DSCRD |
Симметричный пассивный | 2 | PROC | ERR | DSCRD | DSCRD | DSCRD |
Режим клиента | 3 | DSCRD | DSCRD | DSCRD | PROC | DSCRD |
Режим сервера | 4 | DSCRD | DSCRD | DSCRD | DSCRD | DSCRD |
Широковещательный | 5 | DSCRD | DSCRD | DSCRD | DSCRD | DSCRD |
Широковещательный (клиента) | 6 | DSCRD | DSCRD | DSCRD | DSCRD | PROC |
Рис.17. Диспетчерская таблица удалённого сервера времени |