Название: Потеря пакетов UDP Отправлено: Sergey1985 от Ноябрь 26, 2016, 19:18 Доброго времени суток. Вопрос для гуру межсетевого программирования на Qt. Осуществил прием UDP пакетов. На малой скорости все работает замечательно. Но как только пытаюсь осуществить прием с требуемой скоростью (32000 пакетов в секунду по 1044 байт каждый) пакеты начинают теряться. Вместо 32000 прерываний я получаю только около 10-12 тыс. То есть как я понимаю ОС Windows просто не успевает откликаться на каждое прерывание. Может можно как то заставить буферизироваться данные а потом считывать сразу не по 1044 байт а скажем по 10440 и обрабатывать уже такой массив согласно задаче.
Название: Re: Потеря пакетов UDP Отправлено: qate от Ноябрь 26, 2016, 19:59 я думаю надо начать с анализа лога сниффера, действительно ли пакеты приходят
hasPendingDatagrams конечно же используется ? Название: Re: Потеря пакетов UDP Отправлено: Sergey1985 от Ноябрь 27, 2016, 15:30 hasPendingDatagrams - не знаю такой функции если честно. И сниффер это что? Придется погуглить))) понять попробовать... и рассказать что получилось)
Название: Re: Потеря пакетов UDP Отправлено: Bepec от Ноябрь 27, 2016, 16:46 У меня дежавю...
Данный вопрос в данной формулировке с данным изложением уже поднимался на форуме. Аж в двух экземплярах. Только ник ТСса другой :D Название: Re: Потеря пакетов UDP Отправлено: qate от Ноябрь 27, 2016, 17:11 hasPendingDatagrams - не знаю такой функции если честно. И сниффер это что? Придется погуглить))) понять попробовать... и рассказать что получилось) см. http://doc.qt.io/qt-5/qudpsocket.html пример "Example:" Название: Re: Потеря пакетов UDP Отправлено: Sergey1985 от Ноябрь 27, 2016, 17:51 У меня дежавю... Данный вопрос в данной формулировке с данным изложением уже поднимался на форуме. Аж в двух экземплярах. Только ник ТСса другой :D А ссылочки на эти темы ПЛИЗ ::) |