мой вопрос достаточно ясен, я думаю. Если два приложения используют разные протоколы транспортного уровня (например, TCP и UDP или что-то еще), могут ли они открыть один и тот же номер порта?

Как ОС выполняет мультиплексирование, если это так?

Сколько транспортных протоколов может быть в сетевом стеке ОС? Если количество различных протоколов не ограничено, значит ли это, что компьютер может иметь неограниченные открытые порты для связи?

1 ответ1

2

Да, порты TCP и порты UDP - это совершенно разные наборы портов, хотя они оба являются UInt16 и управляются одинаково.

Вы можете создать свой собственный транспортный протокол и дать ему столько бит, сколько вы хотите, чтобы ваш транспортный эквивалент номера порта, и никогда не заканчиваться номерами портов. Вы также можете создать что-то порядка 256 транспортных протоколов (хотя некоторые уже заняты) и определить огромные целые числа как переменную номера порта для всех них.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .