Як працює ntpstat?


3

Я встановив ntp на деяких мережевих машинах, над якими працюю. Перевіряючи ntpstat, я бачу, що він говорить, що годинники синхронізуються з деякими мс, як правило, від 12 до 70 мс.

Мої запитання:

  • Як NTP дізнається вищевказані значення?
  • Якщо він знає ці значення, чому він не виправляє себе?
  • Ці значення є позитивними чи негативними?

Відповіді:


2

Як NTP дізнається вищевказані значення?

Протокол NTP дозволяє кожному комп'ютеру обчислювати ефект затримки в мережі (час, який вимагає тимчасовий пакет, щоб перейти з одного комп'ютера на інший), а також будь-яку різницю в часі.

Якщо він знає ці значення, чому він не виправляє себе?

Так, але, намагаючись зробити це плавно, мережеве тремтіння може зробити часові різниці, коли вони цього не змінюються.

Ці значення є позитивними чи негативними?

Зазвичай вони відображаються ntpq -pзнаком «-» у від’ємному значенні.


2

Я ніколи не використовував ntpstat(це не стандартна установка на debian / ubuntu), але я використовував ntp протягом багатьох років і, як правило, дивлюся на вихід ntpq -nc peerабо ntpq -npякий, ймовірно, показує подібну інформацію. Результат ntpqпоказує позитивні та негативні значення.

В основному, якщо ntp (stat) каже, що він синхронізований (або вихід ntpq позначає сервер з '*'), то він максимально близький, але може продовжувати намагатися і вдосконалюватись.

Спрощене пояснення роботи NTP полягає в тому, що він регулярно надсилає пакети на сервери часу, що містять часову позначку часу, який місцева машина вважає, що це. Потім сервер додає свою часову позначку і повертає пакет на локальну машину. Як тільки він прибуде, місцева машина має 3-ю мітку часу, час прибуття. Якщо припустити, що пакет потрапив на сервер і повернувся назад, NTP може розробити час локальної машини, коли сервер додав часові позначки і, отже, може обчислити різницю та здійснити коригування.

Мережеві пакети зазвичай займають кілька десятків мілісекунд, щоб дістатися до сервера і повернутися. Через різницю мережевого трафіку вихідний та вхідний час транзиту можуть бути не однаковими, але немає можливості визначити це, отже, NTP повинен вважати, що вони однакові. Як результат, NTP ніколи не може наблизитись до декількох мілісекунд до точної синхронізації і оголосить синхронізацію, коли часові позначки відправки та прийому закріплюють часову мітку сервера.

Навіть при синхронізації NTP продовжить обмінюватися пакетами і намагатиметься регулювати час, щоб мінімізувати різниці в часі. Це робиться шляхом невеликих налаштувань (насправді, незначно збільшуючи або зменшуючи кількість "тиків" за секунду), щоб не було раптових стрибків і щоб уникнути проблем через аномалії мережі.

Тож, коли ntpstatкажуть, що це синхронізація, це приблизно настільки ж близько, наскільки це може бути, але це дає найкращу оцінку того, наскільки далеко це може бути.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.