Re: Странные задержки
От: netch80 Украина http://netch80.dreamwidth.org/
Дата: 20.09.10 18:57
Оценка:
Здравствуйте, metacoder, Вы писали:

M>Привет всем! Поднимаю проект годовой давности, который пришлось заморозить из за странных глюков. Попытаюсь описать все как можно подробнее.


M>Есть две машины под управлением Windows связаны гигабитной сетью Ethernet. Программа на C# синхронно пишет и читает аудио трафик с переодичностью 8мс. Сниффер показывает, что все пакеты доставляются через сеть вовремя. Размер пакета ~512байт, время пересылки меньше 1мс. Тест встроенный в саму программу показывает задержки с неравным периодом примерно на 10-20мс, а иногда даже 200мс. После чего пакеты приходят все вместе (неактуальные программа отбрасывает). Локальный трафик (loopback) при этом проигрывается без задержек, что может свидетельствовать о то, что сам процесс не тормозит. Пробовали протоколы UDP и RTP. Результат идентичен.


RTP обычно бегает поверх UDP (я не учитываю неживой на винде SCTP и отчаянные попытки спасти неизвестно что передачей RTP по TCP), так что его можно было не вспоминать.

Локальный трафик сразу доставляется в сокет получателя с пинком соответствующей задачи, поэтому это тоже ничего не значит, хотя может служить намёком на то, что проблема связана с внешней сетью. А вот тут начинаются интересности. Если сниффер всё показывает вовремя, то проблема по пути от сетевого драйвера до IP стека и далее до сокета получателя. Может, какой антивирус вмешивается или сверхумный файрволл с анализом трафика?

M>Резюмируя можно сказать, что сам процесс не тормозит, трафик доставляется на машину вовремя, а вот в программу поступает с непонятными задержками. При этом звук искажается через каждые ~30 секунд. Искажение длится тоже ~30 секунд (становится как-бы электронным), а затем опять становится нормальным. Что бы это могло быть?
The God is real, unless declared integer.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.