Можно ли в клиент-серверном приложении на клиенте подключиться к другому клиенту? Суть вопроса вот в чем. Клиент подключается к серверу и сервер запоминает подключившегося клиента (объект типа сокет в List). Как мне организовать работу и что передавать обратно с сервера на клиент, если мне надо, чтобы передача именно данных происходила только между клиентами (в обход сервера)?!
Да, в клиент-серверном приложении можно организовать прямое подключение между клиентами, обходя сервер. Один из способов это сделать - использовать технологию peer-to-peer (P2P) коммуникации.
Для этого клиенты должны иметь возможность обмениваться информацией о своих IP адресах и портах, чтобы они могли напрямую устанавливать соединение друг с другом.
Сервер может использоваться для передачи такой информации между клиентами, но данные сами по себе передаются только между клиентами.
В такой схеме сервер может выступать в роли посредника, который помогает клиентам найти друг друга, но не участвует в обмене данных между клиентами.
Да, в клиент-серверном приложении можно организовать прямое подключение между клиентами, обходя сервер. Один из способов это сделать - использовать технологию peer-to-peer (P2P) коммуникации.
Для этого клиенты должны иметь возможность обмениваться информацией о своих IP адресах и портах, чтобы они могли напрямую устанавливать соединение друг с другом.
Сервер может использоваться для передачи такой информации между клиентами, но данные сами по себе передаются только между клиентами.
В такой схеме сервер может выступать в роли посредника, который помогает клиентам найти друг друга, но не участвует в обмене данных между клиентами.