Технологии

Решено

Delphi. Сокеты - вопрос №189485

Здравствуйте!

Как можно подключить несколько клиентов к одному серверу.

Когда подключаю просто принимает сообщения только от первого подключившегося 

январь 25, 2012 г.

  • Всего ответов: 1

  • Константин Жук - аватарка

    Константин Жук

    1-й в

    клиентские сокеты должны отличаться адресами и/или портами

    если типовая библиотека не позволяет переопределить клиентский порт и спользуется только один внешний ip — ни как

    upd смотрим вики на всякий случай

    http://ru.wikipedia.org/wiki/%D0%9F%D0%BE%D1%80%D1%82_(TCP/UDP)

    TCP- или UDP-пакеты всегда содержат два поля номера порта: отправителя и получателя. Тип обслуживающей программы определяется портом получателя поступающих запросов, и этот же номер является портом отправителя ответов. «Обратный» порт (порт отправителя запросов, он же порт получателя ответов) при подключении по TCP определяется клиентом произвольно (хотя номера меньше 1024 и уже занятых портов не назначаются), и для пользователя интереса не представляет. Использование обратных номеров портов в UDP зависит от реализации.

    вывод — с одного ip один клиент

    upd2 с другой стороны работают же целыми сетями через один шлюз...

    если подумать

    при подключении по TCP определяется клиентом произвольно (хотя номера меньше 1024 и уже занятых портов не назначаются)

    наоборот значит что как раз приемный порт у сокета стремится быть уникальным..

    как вариант — попробовать из разных процессов, поискать альтернативные реализации сокетов

    январь 25, 2012 г.
    Ответ понравился автору
    Лучший ответ по мнению автора

Похожие вопросы