LINUX.ORG.RU

самодельный NTP-сервер

 , ,


0

3

Всех приветствую.

Возникла тут задачка синхронизация времен двух компутеров в одном сегменте локальной сети (просто соединены одним патчкордом без коммутатора). Причем они должны быть синхронизированы от одного высокостабильного (10-9) аппаратного генератора стоящем на одном из компов. Вопрос в том какие есть способы завода синхроимпульсов с этого генератора в комп таким образом чтобы их мог воспринять ntp-сервер.

В свое время настраивал такую штуку для подключенного к компу через usb GPS-приемник и все отлично работало. А вот сейчас есть только генератор на 10МГц. Правда там есть еще плисина и я могу прерывания завести каждые 1 мс, или там регистр который будет тикать с нужной мне частотой и из него брать значения.

Перемещено true_admin из talks

★★★★★

Ты можешь эталонный комп синхронизировать по генератору и объявить его stratum 1. Тогда никак данные в ntp скармливать не нужно. В простейшем случае можно генератор подключить компу через arduino, например.

А вообще, тут _всё_ зависит от того какая точность тебе нужна. Нюансов в этом деле дохерища, можешь посмотреть rfc по ntp. И вообще, ntp не единественный и не лучший вариант: https://en.wikipedia.org/wiki/Clock_synchronization

true_admin ★★★★★
()

там есть еще плисина и я могу прерывания завести каждые 1 мс

Просто и надёжно. Я таким способом фазы ведомых ТВ генераторов подстраивал от эталонной частоты.

quickquest ★★★★★
()
Ответ на: комментарий от true_admin

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

В простейшем случае можно генератор подключить компу через arduino, например.

какие настройки нужно сделать в ntpd чтобы он тики брал от ардуины? Или вы это для красного словца ввернули?

yax123 ★★★★★
() автор топика
Ответ на: комментарий от quickquest

Как синхронизировать два объекта я и так знаю (40нс по радиоканалу). Мне нужно на первый комп завести сигнал с генератора и объявить этот комп стратум1. А второй комп чтобы цеплялся к нему через сеть и синкался уже с этим компом.

И в связи с этим вопрос, какие настройки нужны для ntp чтобы он объявил себя стратум1 и клоки брал с этого внешнего стабильного генератора.

yax123 ★★★★★
() автор топика
Ответ на: комментарий от yax123

какие настройки нужно сделать в ntpd чтобы он тики брал от ардуины?

Надо написать программу которая будет синхронизировать по тикам (через man adjtimex). Я нигде и не писал что ntp будет брать тики напрямую. ntp будет брать системное время и его синхронизировать. Я предложил простой способ завести тики в комп.

true_admin ★★★★★
()
Ответ на: комментарий от true_admin

Надо написать программу которая будет синхронизировать по тикам (через man adjtimex).

Как же тогда ntp тянет из ttyS0 выхлоп GPS-приемника (ладно через gpsd) и раздает его клиентам?

yax123 ★★★★★
() автор топика
Ответ на: комментарий от true_admin

Что-то мне эта задача напоминает... Вы трейдингом занимаетесь?

в широком смысле спутниковой навигацией.

yax123 ★★★★★
() автор топика
Ответ на: комментарий от baka-kun

man PPSAPI

А вот это похоже то что надо! Спасибо.

yax123 ★★★★★
() автор топика
Ответ на: комментарий от yax123

Как же тогда ntp тянет из ttyS0 выхлоп GPS-приемника (ладно через gpsd) и раздает его клиентам?

Я предлагал наколеночными средствами синхронизировать локальные часы. Потом локальное время раздавать через ntpd. Но тут уже подсказали лучшее решение — ppsapi.

true_admin ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.