Примеры сетевых топологий


Операции сервера SNTP - часть 2


Остальные поля заголовка NTP заполняются следующим образом. Если сервер синхронизован и функционирует правильно, в поле LI заносится 0, а в поле слой - 1 (первичный сервер). Если это не так, в поле слой записывается 0, а в поле LI - 3. В поле точность заносится код, характеризующий точность локальных часов. Для всех практических случаев этот код вычисляется, как отрицательное число бит справа от запятой в формате временной метки NTP. Поля Root Delay и Root Dispersion для первичного сервера делаются равными 0. Поле Root Dispersion опционно может быть сделано равным значению, соответствующему максимальной ожидаемой ошибке радио-часов. В поле Reference Identifier заносится идентификатор первичного эталона времени, как это указано в таблице 4.4.16.4.

Поля временных меток заполняются следующим образом. Если сервер не синхронизован или только что включился, все временные метки устанавливаются равными нулю. Если сервер синхронизован, в поле Reference Timestamp записывается время последней коррекции по радио-часам или модему. В уникастном и эникастном режимах в поля Receive Timestamp и Transmit Timestamp заносится время дня, когда было послано сообщение, а в поле Originate Timestamp записывается неизмененная копия поля Transmit Timestamp из запроса. В мультикастном режиме в поля Originate Timestamp и Receive Timestamp заносится 0, а в Transmit Timestamp время дня, когда послано сообщение. В таблице 4.4.16.7 представлены все перечисленные операции.

Таблица 4.4.16.7

Имя поляУникаст/ЭникастМультикаст
ЗапросОтклик
LIигнорируется0 или 30 или 3
VN1-4копия из запроса4
Режим 32 или 45
Слойигнорируется11
Регистрацияигнорируетсякопия из запросаlog2 периода запросов
Точностьигнорируется-log2 числа значащих бит сервера -log2 числа значащих бит сервера
Root Delayигнорируется00
Root Dispersionигнорируется00
Идентификатор эталонаигнорируетсяИдентификатор эталонаИдентификатор эталона
Reference Timestampигнорируетсявремя последней коррекции по радио-часам время последней коррекции по радио-часам
Originate Timestampигнорируетсякопируется из поля transmit timestamp0
Receive Timestampигнорируетсявремя дня0
Transmit Timestamp(см. текст)время днявремя дня
Аутентификаторопционноопционноопционно

Наиболее важным индикатором неисправности сервера является поле LI, в котором код 3 указывает на отсутствие синхронизации. Когда получено именно это значение, клиент должен проигнорировать сообщение сервера вне зависимости от содержимого других полей.




Начало  Назад  Вперед