LINUX.ORG.RU

qtcpsocket не срабатывает readyread

 , , ,


0

2

Делаю опрос железа, серверная сторона на плис разрабатывается. По запросу сервер начинает сыпать непрерывный поток данных, читаю через readyread, но в какой-то момент (обычно через 2-3 минуты) перестает срабатывать readyread. Пробовал по таймеру в этот момент опросить bytesAvailable, возвращает 0. Wireshark показывает пакеты от сервера летят - retransmishion. Но почему-то клиент их не видит и не может считать. Подскажите, куда копать, в чем проблема ?

Мне кажется, что проблема в реализации TCP на стороне сервера, копать цепочку TCP пакетов с самого начала на предмет нарушений стандарта

Для подтверждения гипотезы можно сделать простенький тестовый сервер на какой-нибудь скриптоте, посылающий тестовые или случайные данные, которые клиент в состоянии принять

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

Проблема наблюдается на обоих осях: линукс и виндовс. Также другой клиент на python написан, подобное и там. Вот на счет копать tcp цепочку, смотрю wireshark, там идет обмен с ack подтверждением от клиента, потом эти ack пропадают и только от сервера пакеты падают.

dibr0v72 ()
Ответ на: комментарий от dibr0v72

Проблема наблюдается на обоих осях: линукс и виндовс. Также другой клиент на python написан, подобное и там.

Подтвержадет проблему на стороне плис

Вот на счет копать tcp цепочку, смотрю wireshark, там идет обмен с ack подтверждением от клиента, потом эти ack пропадают и только от сервера пакеты падают.

ack посылает ядро, проблема в полученных пакетах. Возможно, что-то не так с window size

annulen ★★★★★ ()