Я ищу, желательно бесплатный, NTP-сервер для Windows Server 2003/2008. Мы уже опробовали встроенный сервер времени Windows, но наши тесты показали, что он не очень точный, мы видим разницу во времени до 500 мс. Максимальная разница во времени, которую мы можем допустить для нашего приложения, составляет ~ 100 мс.
Теперь мы уже использовали Meinberg NTPd для Windows. Он прекрасно работает, за исключением того, что у нас есть одна большая проблема: если есть проблема с сетевым соединением между клиентом и сервером, сервер ntp находится в состоянии паники. Это не даст клиенту новое время, пока мы не перезапустим службу ntp. Это большая проблема, которая доставила нам некоторые неприятности. Он работал нормально в течение нескольких месяцев, пока не возникла проблема с сетью, которую мы не заметили, мы заметили ее только через неделю, когда разница во времени уже составляла 30 секунд. на клиентов.
Поэтому, пожалуйста, предложите какой-нибудь альтернативный NTP-сервер для Windows. Я сделал Google, но я получаю много несвязанных результатов поиска.
Изменить: До сих пор версия Windows NTDPD была очень точной, и я хотел бы придерживаться ее. Единственная проблема - это «состояние паники» после отключения сети. Может быть, кто-то знает здесь, в чем причина и как это исправить. Кроме того, я забыл упомянуть, что у нас есть настройка сервера / клиента, подобная этой:
Сервер1 -> Сервер2 -> Сервер3 -> Клиент1 -> Клиент2 -> Клиент3
Таким образом, Server2 получает свое время от Server1, Server3 получает свое время от Server2, а клиенты получают свое время от Server3. Также есть клиенты, подключенные напрямую к Server2. Важно, чтобы все серверы и клиенты имели одинаковое время (в течение ~ 100 мс)
Теперь была проблема сети с Server3 и его клиентами. На серверах работает порт ntpd для Windows, который выступает в качестве NTP-сервера и клиента. Клиенты имеют Dimension4 в качестве клиента NTP. После проблемы с сетью сообщение об ошибке в D4 выглядело примерно так (из головы нет точного сообщения об ошибке):
Ответ сервера: сервер находится в состоянии паники (не удалось синхронизировать часы)
Я прочитал документы ntpd, и единственное упоминание о «панике» - это когда разница во времени составляет 10000 секунд, что приведет к выходу с сервера ntpd, но это не так. Также есть ключ командной строки "-g" для отключения выхода из паники, но он уже установлен по умолчанию.
Есть идеи, что может вызвать состояние паники и как избавиться от него в следующий раз?
Мы видим намного лучше, чем 500 мс от W32time, больше похоже на 16 мс, что является разрешением системных таймеров Windows. Это измеряется реальными NTPd-серверами Linux stratum-2 в одной гигабитной локальной сети. Google "инструменты и настройки службы времени Windows" и прочитайте о параметре "updateinteval", который можно изменить с помощью групповой политики или непосредственно в реестре. Сейчас не могу проверить, но я помню, что у нас установлено значение 100 для всех наших серверов, что по умолчанию для контроллеров домена, но не для других членов домена Windows.
Обновлено: у нас фактически установлено значение 100 для всех наших серверов. Подробности настройки UpdateInterval:
Как вы можете видеть, по умолчанию W32time только «управляет» часами каждые 30 000 тиков для контроллеров, не входящих в домен, или, что еще хуже, если они не являются членами домена. Тик на окнах обычно составляет 1/64 секунды в зависимости от оборудования, что означает, что часы настраиваются только один раз каждые 8 минут или около того в конфигурации по умолчанию. Это хорошо для большинства приложений, но не подходит для приложений, чувствительных ко времени.
Дополнительную информацию можно найти здесь: http://technet.microsoft.com/en-us/library/cc773263(v=ws.10).aspx#w2k3tr_times_tools_uhlp
источник
Справочный список всех программ, перечисленных NIST, находится здесь . В прошлом я использовал сервер часов. Я также рекомендую вам изменить топологию синхронизации. server1 должен быть источником для всего времени в сети (с серверами 2 и 3 в качестве резервных копий). Клиенты должны синхронизироваться в одноранговом режиме, только если сервер недоступен.
источник