Проблема с подключением к сокету

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

1.Но мне интересно, использует ли сервер случайные порты для серверов разных клиентов после подключения под капотом, или сервер просто использует один и тот же порт, прослушивая и обслуживая множество клиентских подключений?

2. Если да, то могу ли я выбрать новый порт случайным образом, чтобы установить новый серверный сокет, и сказать клиенту, чтобы он повторно подключился к новому серверному сокету, а прослушивающий серверный сокет просто продолжал прослушивать других клиентов? это значит использовать разные порты для серверов разных клиентов?

3. И в чем преимущество использования одного серверного сокета (порта) для нескольких клиентских серверов? и преимущества использования нескольких серверных сокетов (портов) для серверов разных клиентов?

Спасибо


person Wess Wang    schedule 01.12.2016    source источник


Ответы (1)


Два значения, которые идентифицируют каждую конечную точку, IP-адрес и номер порта, часто называемые сокетом.

  • Серверный сокет прослушивает один порт. Все установленные клиентские подключения на этом сервере связаны с одним и тем же портом прослушивания на стороне сервера. Несколько подключений на одном сервере могут совместно использовать одну и ту же пару IP / Port на стороне сервера, если они связаны с другой стороной клиента. Пары IP / Port, и сервер сможет обрабатывать столько клиентов, сколько позволяют доступные системные ресурсы.

    var express = require('express');
    var app = express(); var server = require('http').createServer(app); var io = require('socket.io')(server); server.listen(4200);

Здесь вы можете подключить свой http-порт с помощью socket.io.

  • с помощью случайного порта на стороне клиента, и в этом случае возможно исчерпание доступных портов, если вы сделаете много подключений за короткий промежуток времени.

для получения более подробной информации посетите этот сайт

person Adiii    schedule 01.12.2016