Назад | Перейти на главную страницу

Как я могу измерить точную разницу во времени (смещение) между двумя машинами?

Как можно точно измерить разницу во времени между двумя Linux-машинами? Я слышал, что "Ping" дает RTT с ассоциацией влияний ОС, поэтому неточно на уровне наносекунд? Если да, то что еще нужно для измерения разницы во времени (смещения) между двумя машинами в системе на основе Linux или Raspi?

Это моя попытка измерить точность часов без эталонных часов.

Я выбрал сервер - и сказал, что это моя ссылка - я предпринял некоторые, довольно небольшие усилия, чтобы уменьшить или измерить изменения в «эталонных часах» - эти изменения в конечном итоге должны были сделать его эталонным тактом и записать джиттер. .

Затем я измерил смещение всех других тактовых импульсов от моего назначенного эталона. Я использую NTP для этого, поскольку он пытается исправить ошибку измерения времени прохождения пакета по сети и, я считаю, исправить ошибку из-за времени обработки на обоих концах.

Мне, вероятно, следует провести анализ всех офетов методом наименьших квадратов или, возможно, даже посмотреть, насколько исправляется ссылка или частота, с которой она работает - вместо этого я просто рисую ее, вы можете улучшить это

Итак, у меня было несколько демонов NTP на Linux-боксах (и окнах, маршрутизаторах), все они синхронизировались либо с одним, либо с разными источниками времени, и я хотел увидеть, какие были ошибки.

Чтобы измерить различия, у меня есть одно дополнительное поле с демоном NTP, которое настроено для запроса каждого из других полей, но НЕ выбирает их в качестве источника времени. Я также настроил его на регистрацию статистики, и поэтому он регистрирует смещение от себя до каждого из серверов через определенные промежутки времени.

Я выбрал один NTP-сервер в качестве фактического источника тактовой частоты сервера NTP для стабилизации его тактовой частоты.

Это привело к появлению графиков, которые, по крайней мере, показали мне, что Windows очень плохо отслеживает время, и что другой сервер дисциплинировал часы и стал более стабильным в среднем.

Это верно только для малых десятков мс, за исключением окон, в которых разница составляет 200 мс.

Мой файл конфигурации NTP на мониторной машине выглядит так:

restrict default noquery nopeer nomodify notrap    
restrict -6 default noquery nopeer nomodify notrap    
restrict 127.0.0.1   
restrict -6 ::1  
driftfile "C:\Program Files (x86)\NTP\etc\ntp.drift"  
server time.windows.com
enable stats  
statsdir "C:\Program Files (x86)\NTP\etc\"  
statistics loopstats peerstats
server 1.2.3.4 noselect minpoll 6 maxpoll 6   
server 1.2.3.5 noselect minpoll 6 maxpoll 6   
server 1.2.3.6 noselect minpoll 6 maxpoll 6

Затем я получаю ежедневные файлы «peerstats» в C: \ Program Files (x86) \ NTP \ etc \, в которых есть серверы и смещения с локального компьютера, которые я затем вставляю в SQL и граф

Задержка будет варьироваться в зависимости от характеристик канала (-ов) - например, более высокая задержка может быть вызвана высокой степенью использования каналов.

Я думаю, можно было бы иметь периодический пинг и экспорт / системный журнал, который в систему, которая может отображать текущую задержку для вас, а также прошлые значения для вас.