NTP: различия между версиями

654 байта добавлено ,  4 года назад
Нет описания правки
 
== Структура пакета ==
NTPСтруктура пакетпакета описана в RFC 5905. Пакет состоит из целого числа 32-битных слов.
 
Данные в заголовке будут отличаться для различных режимов работы. Например, клиент в поля ''[[#Часовой слой|часовой слой]]'', ''[[#Идентификатор источника|идентификатор источника]]'', ''[[#Начальное время|начальное время]]'' и ''[[#Время приёма|время приёма]]'' должен записать нули.
=== Заголовок ===
{| class="wikitable" style="margin: 0 auto; text-align: center;"
! 0
| colspan="2"|[[#Индикатор коррекции|ИК]]
| colspan="3"|[[#Номер Версииверсии|Версия]]
| colspan="3"|[[#Режим|Режим]]
| colspan="8"|[[#Часовой слой|Часовой слой]]
|}
 
{{anchor|==== Индикатор коррекции}} ====
;: ИндикаторДлина коррекции (2 бита, от {{lang-en|Leap Indicator}}).
: Целое число, показывающее предупреждение о [[секунда координации|секунде координации]].
:: {| class="wikitable"
|}
 
{{anchor|==== Номер Версии}}версии ====
: Длина — 3 бита, от {{lang-en|Version Number}}.
; Номер версии (3 бита)
: Целое число, представляющее версию протокола. Текущее значение: 4.
 
{{anchor|==== Режим}} ====
;: РежимДлина — (3 бита), от {{lang-en|Mode}}.
: Целое число, представляющее режим. Значения представлены в таблице ниже.
:: {| class="wikitable"
|}
 
{{anchor|==== Часовой слой}} ====
;: ЧасовойДлина слой (8 бит, от {{lang-en|Stratum}}) .
: Целое число, представляющее [[#Часовые слои|часовой слой]].
:: {| class="wikitable"
|}
 
{{anchor|==== Интервал опроса}} ====
;: ИнтервалДлина опроса (8 бит, от {{lang-en|Poll}}) .
: Целое число со знаком, представляющее максимальный интервал между последовательными сообщениями. Значение равно двоичному логарифму секунд. Предлагаемые по умолчанию пределы на минимальные и максимальные опросы - 6 и 10, соответственно.
 
{{anchor|==== Точность}} ====
: Длина — 8 бит, от {{lang-en|Precision}}.
; Точность (8 бит)
: Целое число со знаком, представляющее точность системных часов. Значение равно двоичному логарифму секунд. Например, значению -18 будет соответствовать точность около 1 мкс.
 
{{anchor|==== Задержка}} ====
;: ЗадержкаДлина — (32 бита), от {{lang-en|Root Delay}}.
: Общая время распространения сигнала в обе стороны в [[#Короткий формат|коротком формате NTP]].
 
{{anchor|==== Дисперсия}} ====
;: ДисперсияДлина — (32 бита), от {{lang-en|Root Dispersion}}.
: Общая дисперсия для источника времени в [[#Короткий формат|коротком формате NTP]].
 
{{anchor|==== Идентификатор источника}} ====
;: ИдентификаторДлина источника (32 бита, от {{lang-en|Reference ID}}).
: Код источника синхронизации. Зависит от значения в поле [[#Часовой слой|Часовой слой]].
:: Для ''слоя 0'' - это четыре [[ASCII]] символа, называемые «kiss code», используются для отладки и мониторинга. [[#NTP-сообщение «Kiss-o'-Death»|Смотри ниже]]
:: Для ''слоя 2'' и выше - это идентификатор сервера и может быть использован для фиксирования временных петель. Если используется [[IPv4]], то идентификатор представляет из себя четыре октета IP адреса. Если используется [[IPv6]], то это первые четыре октета [[MD5]] хэша адреса. Стоит отметить, что при использовании IPv6 адресов для сервере с NTPv4 и клиента с NTPv3 идентификатор может принимать случайное значение, из-за чего временные петли могут быть не зафиксированы.
 
{{anchor|==== Время обновления}} ====
: Длина — 64 бита, от {{lang-en|Reference Timestamp}}.
; Время обновления (64 бита)
: Время, когда система последний раз устанавливала или корректировала время. [[#Обычный формат|Формат NTP]].
 
{{anchor|==== Начальное время}} ====
: Длина — 64 бита, от {{lang-en|Origin Timestamp}}.
; Начальное время (64 бита)
: Время клиента, когда запрос отправляется серверу. [[#Обычный формат|Формат NTP]].
 
{{anchor|==== Время приёма}} ====
: Длина — 64 бита, от {{lang-en|Receive Timestamp}}.
; Время приёма (64 бита)
: Время сервера, когда запрос приходит от клиента. [[#Обычный формат|Формат NTP]].
 
{{anchor|==== Время отправки}} ====
: Длина — 64 бита, от {{lang-en|Transmit Timestamp}}.
; Время отправки (64 бита)
: Время сервера, когда запрос отправляется клиенту. [[#Обычный формат|Формат NTP]].