Передача данных по TCP

программирование Linux C/C++ socket

Доброго времени суток!

Возможно ли такое в рамках ОДНОГО TCP-СОЕДИНЕНИЯ: клиент неприрывно шлет данные серверу. А сервер, [исходя из получаемых данных] одновременно передает клиенту, в рамках того же соединения, какие-то другие данные, одновременно принимая.

Возможно ли это?
Спасибо!

Примечание:
2 K_AHTOH: Если имеете в виду http, то обычно конкретный документ получается в ответ на запрос.
Меня интересует, возможна ли одновременная передача данных В РАМКАХ ОДНОГО СОЕДИНЕНИЯ, в обоих направлениях ОДНОВРЕМЕННО.
Ответы:
А как это по вашему сейчас работает? :)))
Да. TCP-соединение использует полнодуплексный режим приема/передачи, однако не гарантирует что он на самом деле будет использоваться.
Конешшно.
Делать read() сокета на клиенте, если оттуда что-нибудь пришло, никто не помешает. Равно как и write() туда что-нибудь на сервере, когда захочется.
Но никто не гарантирует мгновенную реакцию на передачу если канал постоянно забит приёмом, в таком раскладе надо очень точно представлять себе опции сокетов и правильно их использовать, потому для игр хреново это.
эм, приятель, http - протокол уравнем выше стека TCP/IP. это я к тому, что рассуждения о запросах и ответах тут не в тему - TCP соедитение состоит из пары IP:Port с одного конца и такойже пары с другого, а что там в пакет сложили - не важно.


14 лет назад

RPI.su - самая большая русскоязычная база вопросов и ответов. Наш проект был реализован как продолжение популярного сервиса otvety.google.ru, который был закрыт и удален 30 апреля 2015 года. Мы решили воскресить полезный сервис Ответы Гугл, чтобы любой человек смог публично узнать ответ на свой вопрос у интернет сообщества.

Все вопросы, добавленные на сайт ответов Google, мы скопировали и сохранили здесь. Имена старых пользователей также отображены в том виде, в котором они существовали ранее. Только нужно заново пройти регистрацию, чтобы иметь возможность задавать вопросы, или отвечать другим.

Чтобы связаться с нами по любому вопросу О САЙТЕ (реклама, сотрудничество, отзыв о сервисе), пишите на почту [email protected]. Только все общие вопросы размещайте на сайте, на них ответ по почте не предоставляется.