Задать вопрос
nuclear_kote
@nuclear_kote

Как реализуется более одного подключения на порт(сокет)?

Имеется ввиду не программная реализация сокетов. И исходя из этого вопрос : сколько максимально может быть подключений на порт одновременно?
На всякий случай речь идёт про вебсокеты на стороне сервера, но наверное это тут не принципиально.
Есть мнение, что подключений не может быть более 65536 отдновременно
  • Вопрос задан
  • 1365 просмотров
Подписаться 2 Средний 1 комментарий
Решения вопроса 1
@alex_ak1
С одного компьютера если подключаться - то да, исчерпаются локальные сокеты.
Если с разных - то разницы особой нет - каждое соединение-же будет с адреса 1.2.3.4:5678, а этих адресов практически бесконечно будет.
Скорее исчерпаются ресурсы системы. К примеру вот обсуждение об увеличении количества TCP-соединений в семерке.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
Wolfnsex
@Wolfnsex
Если не хочешь быть первым - не вставай в очередь!
По мнению некоторых участников дискуссии подключений не может быть более 65536
Насколько я помню - всего TCP-портов 65536 (порт 0 зарезервирован), а максимальное количество соединений на один порт, не припоминаю, что бы чем-то ограничивалось (ну кроме ресурсов машины). Вы же понимаете, как в общей сложности всё это работает? Сервер хранит где-то в недрах памяти информацию по каждому соединению, при этом Вы можете подключаться многократно на один и тот же порт, с одного и того же IP к тому же самому серверу...

Не знаю, с какой именно стороны Вас данный вопрос интересует больше, с теоретической или практической... когда-то давно, возникла проблема "мирового масштаба", под названием C10k, которая впоследствии была успешно решена в ряде программ, в т.ч. Nginx (который создавался в т.ч. с прямым расчётом решения этой проблемы). Если Вы перейдете по последней ссылке, там Вы можете встретить следующую фразу:
По состоянию на середину 2010-х годов серверный аппаратный узел среднего уровня способен обрабатывать до 10 млн соединений
, т.е. 2010-й год, 10млн. соединений, одновременно. Думаю, этой цифры более чем достаточно практически для любого современного и даже очень нагруженного проекта, к тому же, как Вы могли заметить, про ограничения протокола TCP/IP, даже гипотетические - ничего не сказано.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

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