LINUX.ORG.RU

Negative latency между хостами

 ,


0

1

Помогите локализовать проблему пожалуйста. Суть такова:

На хосте 1 процесс берет свой таймстемп через gettimeofday и засылает в сеть по UDP multicast, на хосте 2 процесс получает эти пакеты, берет свой gettimeofday и выводит разницу. Если рейт небольшой, то разница адекватна, но если слать через 10 микросекунд и быстрее, то разница получается отрицательной. регулярно достигает тысяч микросов со знаком минус.

ничего особо не меняется, если на приёмнике получать таймстемп через SO_TIMESTAMP.

правильно ли я понимаю, что ntp можно полностью исключить (т.к. разница становится отрицательной только при больших рейтах)?

куда ещё нужно смотреть?

сиистема - rhel 7.

только долбоеб(ы) сравнивает(ют) так дельту (с) Кеп

погуглите как это по нормальному делается, мне уже отвечать расхотелось

anonymous
()
Ответ на: комментарий от post-factum

досталась мне такая система, в ней таким образом измеряется лейтенси :) стало интересно почему на ровном месте оно уходит в минус.

BreadFan ★★
() автор топика
Ответ на: комментарий от BreadFan

ЕМНИП gettimeofday работает читая значение из страницы зашаренной между всеми процессами и ядром, а ядро периодически обновляет там таймстемп. Вероятно когда пакеты приходят пачкой, они обрабатываются разом, ядро не получает управления и не успевает обновить время. Можно попробовать использовать другой источник времени, типа CLOCK_REALTIME_PRECISE. clock_gettime(2):

     The clock IDs CLOCK_REALTIME_FAST, CLOCK_MONOTONIC_FAST,
     CLOCK_UPTIME_FAST are analogs of corresponding IDs without _FAST suffix
     but do not perform a full time counter query, so their accuracy is one
     timer tick.  Similarly, CLOCK_REALTIME_PRECISE, CLOCK_MONOTONIC_PRECISE,
     CLOCK_UPTIME_PRECISE are used to get the most exact value as possible, at
     the expense of execution time.
slovazap ★★★★★
()
Ответ на: комментарий от slovazap

о, спасибо, попробую завтра. хотел еще через SOF_TIMESTAMPING_RX_HARDWARE получить таймстемп, но на той системе оно недоступно

BreadFan ★★
() автор топика
Ответ на: комментарий от BreadFan

Тебе бы PTP для начала, а потом да, аппаратный таймстемпинг.

post-factum ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.