Re[2]: epoll и reassembled TCP segments
От: lnkuser  
Дата: 18.04.15 17:40
Оценка:
Здравствуйте, Pzz, Вы писали:

Pzz>Здравствуйте, lnkuser, Вы писали:


L>>Тестил в Firefox, все отлично, запустил на Webkit-подобном движке и...

L>>Обнаружил что tcp пакет с хедером и контент с json идут в разных tcp пакетах! (суммарный размер прмиерно 300 байт и оно почему -то разбивает на 2 пакета!)
L>>В Firefox, опять таки, такого нет. Один пакет.

Pzz>Любая программа, работающая с TCP, должна быть готова к тому, что данные могут прийти произвольно нарезанными порциями.


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



Прикол в том, что после считывания первого пакета на сокете пусто, повторный read будет блокирующим.

Можно ли как-то принудительно ждать, пока сегменты соберуться? Ничего путного в поиске я не нашел...
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.