Я застрял, пытаясь настроить более 65536 исходящих соединений TCP из коробки Linux (RedHat5).
Я уже настроил как исходящие, так и принимающие поля, чтобы разрешить достаточное количество файловых дескрипторов.
Я не верю, что на принимающей стороне есть проблема - у меня есть несколько целевых окон, у каждого из которых несколько IP-адресов, и я использую несколько портов.
Что касается исходящей стороны, я не верю, что достигаю ограничения на один IP-адрес - я использую несколько IP-адресов и портов (я открываю соединения от портов 30 000 - 60 000 для каждого из нескольких IP-адресов).
Я пропускаю какой-нибудь параметр ядра Linux? Или какой-то фундаментальный предел в TCP?
Сбой в том, что мое приложение для открытия соединений висит в вызове connect ().
Спасибо за любую помощь NickB
Ответы:
Вот блог, где кто-то получил> 1 000 000 баллов из коробки.
источник
Протокол TCP использует только 16 бит для порта назначения и порта источника. Не будет возможности открыть более 65536 портов одновременно, даже с Linux.
источник
В этом контексте «единый интерфейс» означает единую сеть, которой назначен один IP-адрес. Каждое исходящее TCP-соединение связано с отдельным портом, поэтому ваш пример невозможен.
источник