Протоколы Internet

         

Процедура коррекции показания часов вызывается


if (not valid header) exit;











peer.leap < pkt.leap;



/* Копирование переменных пакета */



peer.stratum ;

peer.precision ;

peer.rootdelay ;

peer.rootdispersion ;

peer.refid ;

peer.reftime ;











if (valid data) call clock-filter(q, d, e);



/* обработка данных */



end packet procedure;

Процедура коррекции показаний часов

Процедура коррекции показания часов вызывается процедурой приема, когда процедура фильтрации определила корректные значения смещения задержки и дисперсии для данного партнера.

begin clock-update procedure











call clock-select;



/* Выбор базовых часов */



if (sys.peer ? peer) exit;

Может так случиться, что локальные часы оказались сброшены. В этом случае вызывается процедура очистки (clear procedure) для каждого из партнеров, чтобы возвратить в исходное состояние фильтр часов, период рассылки и, если необходимо, осуществить выбор нового источника синхронизации.

Процедура расстояния вычисляет базовую (root) задержку d, базовую дисперсию e и базовое расстояние синхронизации l. ЭВМ не будет синхронизовать выбранного партнера, если расстояние больше чем ntp.maxdistance.











l andistance(peer);



/* обновление системных переменных */



if (l ? ntp.maxdistance) exit;

sys.leap

sys.stratum

sys.refid

call local-clock;











if (local clock reset) begin



/* если сброс, очистить системные переменные */



sys.leap 2;

for (all peers) call clear;

endif

else begin











sys.peer



/* если нет, то подстроить локальные часы */



sys.rootdelay d;

sys.rootdispersion e + max (ex

+ |t|, ntp.mindisperse);

endif

sys.reftime

end clock-update procedure;

В некоторых конфигурациях системы прецизионный источник временной информации доступен в виде последовательности синхронизующих импульсов, следующих с периодом в одну секунду. Обычно это является дополнением к базовому источнику времязадающей информации, такому как радио-часы или даже сам протокол NTP, для того чтобы обеспечить подсчет секунд, минут, часов и дней. В этих конфигурациях системные переменные устанавливаются с учетом источника, от которого поступают такие импульсы. Для конфигураций, которые поддерживают первичные эталонные источники, такие как радио-часы или калиброванные атомные часы код слоя устанавливается равным 1, поскольку именно он является действительным источником синхронизации.


Содержание  Назад  Вперед







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