Текущие семинары
Научный семинар
19.11.2009
Научный семинар
12.11.2009
Последние новости
Стандарты синхронизации времени на рабочих станциях ИКИР.
26.03.2009
Последняя модификация: 07.12.2010
Данный документ описывает основные настройки, которые следует сделать для рабочих станций сети ИКИР, чтобы время на них было максимально точным.
Максимально точное единое время для рабочих станций в сети ИКИР является важной задачей не только для офисных работ, но в первую очередь для автоматизированных систем сбора данных. Технологии синхронизации для Linux и Windows описаны в Бюллетене от 02.09.2002. Этот документ кратко повторяет оттуда основные данные и уточняет необходимые настройки непосредственно для нашей сети.
Основные идеи синхронизации
- Для синхронизации времени компьютеров через сеть Интернет и через локальную сеть созданы программы, которые реализуют NTP (Network Time Protocol).
- В нашей локальной сети есть сервера, которые используются другими компьютерами для синхронизации времени.
- Настройка времени делается по данным с этих серверов скачком при первом запуске программы управления синхронизацией на рабочей станции.
- После начальной синхронизации никаких подстроек времени скачком не делается. В дальнейшем программа синхронизации регулярно опрашивает сервера и подстраивает системный таймер так, чтобы идти в ногу со временем серверов.
- Сами сервера времени получают время из Интернет и/или с GPS, используя тот же NTP-протокол, что и рабочие станции, стараются максимально точно быть синхронизированными с единым мировым временем.
- Сервера времени ИКИР имеют названия ntp0.ikir.ru и ntp1.pt.ikir.ru. В бюллетене я далее буду использовать номера, а не имена: 192.168.100.11 и 192.168.100.220.
Программы синхронизации.
Программы управления временем и их конфиги в Linux и Windows очень близки (для Windows, к счастью, нашёлся сторонний разработчик, который полноценно реализовал ntpd).
В AltLinux должны быть установлены пакет ntp. Он входит в состав дистрибутивов Linux.
Установка делается так:
apt-get install ntp
Чтобы сервис ntpd стартовал при перезагрузке:
chkconfig ntpd on
Чтобы стартовать сервис:
service ntpd restart
В Windows должны быть установлены программы ntp-4.2.4p6@vegas-v2-o-win32-setup.exe и ntp-time-server-monitor-104.exe. Эти программы можно взять с сайта http://www.meinberg.de или с нашего внутреннего NFS-ресурса arc:/CDs/Windows/CD1/INSTALL/NTP. При установке автоматически сервис стартует и в дальнейшем будет делать это после перезагрузки.
В конфигурацонном файле ntp.conf (в Linux он находится в каталоге /etc, а в Windows в C:\Program Files\NTP\etc), должны быть следующие строки:
server 192.168.100.130 minpoll 4 maxpoll 10 iburst
server 192.168.100.11 minpoll 4 maxpoll 10 iburst
server 192.168.100.220 minpoll 4 maxpoll 10 iburst
restrict 192.168.0.0 mask 255.255.0.0
В конфигурацонном файле /etc/ntp/step-tickers должны быть строки
192.168.100.130
192.168.100.11
192.168.100.220
Это сервера, с которыми клиентская программа при старте разово синхронизует время.
Наблюдение за синхронизацией.
В Windows у вас есть визуальная программа-монитор (NTP Time Server Monitor).
В Linux вы можете увидеть состояние синхронизации с помощью программы ntpq.
Запуск на вашем компьютере
ntpq -p
выдаст что-то такое:
remote refid st t when poll reach delay offset jitter
=====================================================
*server.ikir.kam 195.2.64.5 2 u 41 64 377 0.221 -3.714 12.459
arc.pt.ikir.ru 85.28.195.129 4 u 44 64 377 0.243 45.660 17.622
Что означают колонки в этом выводе?
- remote - NTP-сервер, с которым наш хост синхронизуется. Ключ -n при запуске ntpq показывает IP-адрес вместо имёни.
- refid - откуда сервер сам получает время. Это может быть другой хост или запись .GPS., говорящая о том, что на хосте время берётся из GPS-приёмника
- st - Stratum (уровень). Число от 1 до 16, указывающее на точность сервера.
Единица означает максимальную точность, 16 -- сервер недоступен.
Уровень вашего компьютера при использовании кем-то другим будет равен уровню наименее точного удаленного сервера плюс 1. - when -Секунда после последнего обращения к сервреру.
- poll -Интервал между опросами в секундах. Значение будет изменяться между минимальной и максимальной частотой опросов.
Вначале интервал будет минимальным (параметр minpoll при запуске ntpd), чтобы синхронизация происходила побыстрее.
После того, как часы синхронизируются, интервал начинает увеличиваться, чтобы уменьшить трафик и нагрузку на другие сервера времени. - reach - Восьмеричное значение 8-ми бит. Каждый бит - это результат одной попытки соединения с сервером.
Представлен результат последних 8-ми попыток (по числу битов).
Бит равен 1, если был получен ответ от удаленного сервера. - delay - Количество миллисекунд для получения ответа на запрос времени.
- offset - Разница между временем локального и удаленного серверов в миллисекундах. В ходе синхронизации это значение должно понижаться, указывая на то, что часы локальной машины идут все точнее.
- jitter Дисперсия (Jitter) -- дисперсия отклонений от значения смещения (поле offset) по нескольким успешным запросам времени. Меньшее значение дисперсии предпочтительнее.
Знаки перед именами(номерами) серверов означают:
- наш NTP не предпочитает этот сервер.
+ наш NTP предпочитает этот сервер.
x хост не подходит для синхронизации.
* cамый предпочтительный сервер на данный момент.
Устройства для синхронизации.
На момент написания бюллетеня 2 сервера времени получают время из Internet-а, а 1 сервер имеет stratum 1 - получает время от GPS-приёмника.
Примитивная разовая синхронизация в Windows.
Для того, чтобы рабочая станция под Windows при загрузке системы синхронизовала свои часы с сервером времени без использования протокола ntpd, можно использовать возможности SMB-протокола. Следующая команда в Windows синхронизует время с нашим внутренним сервером времени:
net time \\commserv /set /yes
Эту строчку стоит написать в BAT-файле и сам BAT-файл запихнуть в каталог автозагрузки.