Как влияет на измерения синхронность часов на агентах? Печать
Автор: Максим   
11.01.2011 14:35

При проведении теста типа U7 (UDP-echo), используются только часы инициирующего агента, при этом измеряются только круговые параметры. Состояние часов на сопряженном агенте с UDP-echo сервисом не влияет на измерения.

Рассмотрим, как рассчитывается круговая задержка при проведении теста между двумя IQM-агентами. Измерение задержки описано в вопросе «Как измеряется круговая задержка?».
Обозначим расхождение показания местных часов на агентах как dT.

  • dT = T2 – T1 (T1, T2 – показания часов на соответствующих агентах)
  • T1s – время отправки тестового пакета первым агентом по его часам
  • T2(s) - время отправки тестового пакета первым агентом по часам второго агента
  • T2r – время доставки пакета на приемный агент по его часам
  • T2s – время отправки встречного тестового пакета вторым агентом по его часам
  • T2(s) – время отправки встречного тестового пакета вторым агентом по часам первого агента
  • SDD – Source to Destination delay, задержка от источника к приемнику
  • DSD – Destination to Source delay, задержка от приемника к источнику
  • sdd, dsd – вычисляемые значения односторонних задержек


На диаграмме ниже проиллюстрирован процесс измерения односторонних задержек, необходимых для вычисления круговых:

 

Времена доставки пакетов T2r и T1r (по местным часам) можно записать следующим образом:
T2r = T2(s) + SDD = T1s +dT + SDD                        (1)
T1r = T1(s) + DSD = T2s – dT + DSD                       (2)


Как показано в вопросе «Как измеряется круговая задержка?», SDD вычисляется как:
sdd = T2r – T1s = (пользуясь (1)) = T1s +dT + SDD - T1s = SDD + dT        (3)
dsd = T1r – T2s = (пользуясь (2)) = T2s – dT + DSD – T2s = DSD – dT       (4)
RTT = sdd + dsd = (пользуясь (3,4)) = SDD + DSD


Как видно, рассинхронизация локальных часов агентов не влияет на вычисления круговой задержки. Однако, накладывается дополнительное условие dsd > 0 && sdd > 0, т.о. для корректной работы агентов рассинхронизация их часов не должна превышать односторонней задержки.



Проиллюстрируем, как рассчитывается вариация задержки, описанная в вопросе «Как измеряется вариация задержки (jitter)?»:


При расчете используется параметр:
Di-1,i = (Ri-1 – Si-1) - (Ri - Si) = (Si – Si-1) – (Ri – Ri-1) = DS – DR
Т.о. в вычислении участвуют лишь относительные времена, из чего можно сделать вывод, что рассинхронизация локальных часов агентов не влияет на вычисления вариации задержки.

Сохраняется условие положительности вычисляемых односторонних задержек dsd > 0 && sdd > 0, т.о. для корректной работы агентов рассинхронизация их часов не должна превышать односторонней задержки.
 

Обновлено 11.01.2011 16:24