Перейти к содержимому
Калькуляторы

Головоломка, синхронизация времени на асимметрии

Вот ломаю голову, возможно ли.

Предположим, что есть два компа.

Компы соединены двумя симплексными каналами, каналы асимметричны(условная длина каналов отличается, соотв. время прохождения пакета тоже различается и оно неизвестно).

К примеру передача от А к Б "спутник" висящий на неизвестной высоте, и от Б к А передача - оптика (ессно односторонняя).

 

Часы на компах идут четко, но время точное только на одних.

Возможность вносить время в передаваемый пакет есть только на конечных точках.

 

Если синхронизировать время делением RTT/2 - по получаем погрешность часов.

Похоже замерить параметры асимметрии без общего источника синхронизации - никак :-)

Точно засинхронизировать часы через NTP тоже получается невозможно, т.к. сам факт существования асимметрии тоже невозможно доказать.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

имхо, только синхронизация от внешнего источника обоих компов поможет тут. например , с гпс.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Ну или другая третья величина... вот и думаю.

А ведь сейчас в инете везде несимметрия, и часы тоже получается не очень точно идут :-) Вот и вопрос, как сделать их точнее, без особых затрат и вывешивания за окно антенны GPS.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

найти симметричный канал, если Вы вдруг занимаетесь изучением квазаров с разных сторон планеты и Вам критично время :) ?

 

Или если Вы представляете какая задержка на спутнике, уж коли эту цифру нельзя написать в ntp.conf, то сделайте задержку на исход в шейпере для ntp трафика..

 

Еще есть такой вот документ, http://ieeexplore.ieee.org/xpl/freeabs_all.jsp?arnumber=1034915 но мне кажется, что сие теоретические изыскания и не реализовано ни разу..

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Для начала надо понять, что имеется ввиду под "точно засинхронизировать", а то сейчас выяснится, что при необходимой точности будет влиять сила гравитации Земли и теория относительности сделает свое грязное дело. И "спутник" тогда будет наименьшей проблемой 8)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Возможно.

Есть у IEEE такой документ - 10.1109/LCOMM.2008.080824

Чтобы его получить, надо быть подписчиком IEEE.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Alex/AT, этот документ описывает то, что с помощью посылки нескольких блоков и посредством замера увеличения дельты времени между блоками они подсчитывают асимметричность пропускной способности линка. Собственно это расширение IEEE 1588 для вещей типа femtocell, которым лучше знать о таких нюансах.

 

vitalyb - величины достаточно большие, при синхронизации спутник + земля(скажем 100мс до сервера), погрешность составит до 105ms и чуть больше.

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

nuclearcat: суть та же - различное время пропагации. Чтобы понять, применимо или нет - надо почитать - там на 2 странице выдержки виден алгоритм коррекции дрифта, на котором основывается работа. Скорее применимо, по описанию похоже на генерализованную коррекцию путем определения сдвига времени прохождения блоков. Пойдет и для асиметричных по ПС и для асимметричных по ВП линков. Хотя во втором случае погрешность, конечно, будет выше.

Изменено пользователем Alex/AT

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

если какая-то метрология, метеоизмерения, сейсмология, прочие физические измерения, привязанные ко времени - берите от GPS. (Конечно кроме случаев когда GPS физически недоступен =) ну тут уж придётся ковыряться в том, что там CCSDS придумывает на эту тему)

если нет - можно допустить, что у "локальных" часов есть offset, и забить.

 

если асимметрия не слишком велика, и каналов > 3, то в конфиге ntp можно забить 7-8 серверов которые расположены за разными каналами, и он сам найдёт лучший вариант.

кстати у многих видел как ntp берёт время только от одного (!) сервера. bad practice

 

10.1109/LCOMM.2008.080824, похоже, будет работать только на пустом линке. если там гонять данные, то из-за джиттера сходимость алгоритма будет весьма слабой.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

DragonFly BSD хвастались своим ntp демоном. А многим +-10 минут ничего не меняет.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

если какая-то метрология, метеоизмерения, сейсмология, прочие физические измерения, привязанные ко времени - берите от GPS. (Конечно кроме случаев когда GPS физически недоступен =) ну тут уж придётся ковыряться в том, что там CCSDS придумывает на эту тему)

если нет - можно допустить, что у "локальных" часов есть offset, и забить.

 

если асимметрия не слишком велика, и каналов > 3, то в конфиге ntp можно забить 7-8 серверов которые расположены за разными каналами, и он сам найдёт лучший вариант.

кстати у многих видел как ntp берёт время только от одного (!) сервера. bad practice

 

10.1109/LCOMM.2008.080824, похоже, будет работать только на пустом линке. если там гонять данные, то из-за джиттера сходимость алгоритма будет весьма слабой.

Интерес сугубо академический :-)

 

Да оно вообще из другого леса. Со спутником и землей абсолютно бесполезная вещь.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Если синхронизировать время делением RTT/2 - по получаем погрешность часов.Похоже замерить параметры асимметрии без общего источника синхронизации - никак :-)Точно засинхронизировать часы через NTP тоже получается невозможно, т.к. сам факт существования асимметрии тоже невозможно доказать.

 

А время одинаковое должно быть только на этих двух компьютерах, или одинаковое с третьим источником или мировым временем?

 

Если между собой - то второй синхронизируете от первого. Если с третьим, то первый от третьего, а второй от первого... При этом желательно, что бы третий был стратум 1 или 2. Софта море для разных ОС. Есть и бесплатный.

 

Ассиметрию доказывать ненужно. Считается по среднему от нескольких посылок. Как ни странно, но может помочь ВПН между двумя синхронизируемыми системами.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Еще есть такой вот документ, http://ieeexplore.ie...rnumber=1034915 но мне кажется, что сие теоретические изыскания и не реализовано ни разу..

Выглядит интересно, только что-то не скачать.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

А время одинаковое должно быть только на этих двух компьютерах, или одинаковое с третьим источником или мировым временем?

 

Если между собой - то второй синхронизируете от первого. Если с третьим, то первый от третьего, а второй от первого... При этом желательно, что бы третий был стратум 1 или 2. Софта море для разных ОС. Есть и бесплатный.

 

Ассиметрию доказывать ненужно. Считается по среднему от нескольких посылок. Как ни странно, но может помочь ВПН между двумя синхронизируемыми системами.

Бесполезно, если последняя миля прием спутник, а передача земля - все это не поможет.

Еще раз посчитал на бумажке :-)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

но параметры то спутника более менее известны ? Ну так внесите такую же задержку на исход.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Более-менее +-50ms? :-)

А если это один канал через Азию, а другой через Европу?

Интересен сам факт решения проблемы, кроме как общего источника синхронизации.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

+-50 мс разница в полете по спутнику, это +-25мс в погрешности времени на искомой машине, при стабильном наземном. Много это или мало - зависит от задач.

 

В общем случае для точка-точка, заранее не синхронизовав время, найти разницу времени туда и времени оттуда не выйдет. А время мы как раз и хотим синхронизировать. Замкнутый круг. придется или искать более симметричный канал, или находить доверенный источник времени тут. В GPSе по 1 спутнику точное время найти тоже не выйдет, мы же не знаем, как далеко мы от спутника, и сколько там сигнал блуждал.

 

[oftopic]

когда я нервничаю - я потею

Когда я потею - меня моют

Когда меня моют - я нервничаю...

замкнутый круг.

[/oftopic]

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 смайлов.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.