RFC: 5905
Оригинал: Network Time Protocol Version 4: Protocol and Algorithms Specification
Предыдущие версии: RFC 958, RFC 1059, RFC 1119, RFC 1305, RFC 1361, RFC 1769, RFC 2030, RFC 4330
Категория: Предложенный стандарт
Дата публикации:
Авторы: , , , ,
Перевод: Мельников Дмитрий Анатольевич

RFC 5905, Страница 37 из 51

11.2.2. Процедура (алгоритм) кластеризации

Кандидаты из группы основных источников синхронизации помещаются в списке оставшихся претендентов v в форме наборов параметров (p, θp , ψp , λp ), в котором p — идентификатор виртуального соединения, θp , ψp , stratump — текущие значения сдвига, джиттера и номера «слоя» р-го виртуального соединения, соответственно, а λp — весовой коэффициент равный выражению stratump × MAXDIST + λ , где λ — корневое расстояние синхронизации для р-го виртуального соединения. Перечень основных источников синхронизации обрабатывается процедурой (алгоритмом) кластеризации, в этой обработке принимает участие вторая часть прикладного процесса clock_select() :

  1. Пусть набор p, θp , ψp , λp определяет кандидат из списка основных источников синхронизации.

  2. Классифицируем кандидатов с учётом возрастания λp . Пусть n — число кандидатов, а параметр NMIN определяет минимально необходимое число кандидатов в списке основных источников синхронизации.

  3. Для каждого кандидата определяется селективный джиттер ψs :

         +-----             -----+1/2
         |        n-1            |
         |        ---            |
         |   1    \              |
    ψs
     = | ---- * /  (θs
     - θj
    )2
      |
         |  n-1   ---            |
         |        j=1            |
         +-----             -----+
  4. Выбираем кандидата с максимальным значением ψs и обозначаем ψmax .

  5. Выбираем кандидата с минимальным значением ψp и обозначаем ψmin .

  6. Проверяем неравенства ψmax < ψmin или n ≤ NMIN . Если они выполняются, то тогда процедура считается выполненной, а оставшиеся кандидаты в списке основных источников синхронизации ранжируются в порядке предпочтения. Первая запись в списке определяет системный удалённый сервер времени, а его переменные в дальнейшем используются для обновления системных переменных. Если неравенства не выполняются, то тогда претендент со значением ψmax удаляется из списка, значение n уменьшается на единицу, а процедура переходит на третью итерацию (λ ).

Данная процедура (алгоритм) функционирует циклически, и при каждом цикле удаляет из списка основных источников синхронизации одного из кандидатов, имеющего максимальный селективный джиттер ψs . Однако, если значение ψs меньше минимального значения джиттера удалённого сервера времени ψp , то тогда добиться улучшения качества синхронизации путём удаления «бракуемых» серверов времени не возможно. В противном случае (ψs > ψp ), определяется минимальный состав основных источников синхронизации, что позволяет корректно завершить процедуру. После её завершения регистрируется финальное значение ψmax , так как оно в последующем используется в качестве системного селективного джиттера Ψs .

Страница 37 из 51

2007 - 2022 © Русские переводы RFC, IETF, ISOC.