пока не будут найдены все
/p>
i
low
if (i ? m - f) break;
if (type = 0) c
endfor;
i
for (each [endpoint, type] from highest) begin
|
/* нахождение верхней границы */
|
i
high
if (i ? m - f) break;
if (type = 0 ) c
endfor;
if (c ? f) break;
|
/* продолжить, пока не будут найдены все ложные кандидаты */
|
endfor;
if (low > high) begin
|
/* завершить, если не найдено ни одного пересечения */
|
sys.peer
exit;
endif;
Заметим, что работа продолжается далее данной точки, только если имеется более m/2 пересечений. Однако возможно, но не слишком вероятно, что в области пересечения окажется менее m/2 кандидатов.
Алгоритм кластеризации
В исходном алгоритме DTS процедура выбора часов прерывается в данной точке с выбором кандидатов из центра области пересечения. Однако это ведет к заметной потере точности и стабильности, так как не учитываются индивидуальные статистические свойства партнеров. Следовательно, в NTP только кандидаты, которые остаются в результате описанного выше отбора, могут участвовать в последующей обработке. Список кандидатов преобразуется к форме [расстояние, индекс], где расстояние вычисляется на основе кода слоя и расстояния синхронизации l партнера. Масштабный коэффициент позволяет реализовать механизм весового учета вкладов от кодов слоя и расстояния. Обычно, код слоя доминирует, если только один или более кандидатов имеют слишком большие расстояния. Список упорядочивается согласно величине расстояния.
m
for (each peer) begin
|
/* обращение ко всем партнерам */
|
if (low ? q ? high) begin
l
|
/* сформировать запись в списке */
|
dist l}
add [dist, peer] to candidate list;
m
endif;
endfor;
sort candidate list by increasing dist;
Последующие шаги служат для того, чтобы отсеять кандидатов со слишком большими дисперсиями. Практика показывает, что число кандидатов здесь может быть достаточно велико. Это может привести к большому числу циклов повторения процедуры отбора, которые не дадут какого-либо улучшения результатов. Длина списка кандидатов ограничивается переменной ntp.maxclock.
Содержание Назад Вперед
Forekc.ru
Рефераты, дипломы, курсовые, выпускные и квалификационные работы, диссертации, учебники, учебные пособия, лекции, методические пособия и рекомендации, программы и курсы обучения, публикации из профильных изданий