Я знаю, что когда HTTP-запрос сделан, пакеты отправляются из кажущегося случайного порта с высоким номером (например, 4575) на клиенте на порт 80 на сервере. Затем сервер отправляет ответ на тот же самый высокий номер порта, который маршрутизатор знает, чтобы перенаправить его на клиентский компьютер, и все завершено.
Мой вопрос: Как определяется порт возврата (4575 в этом примере)? Является ли он случайным? Если да, то в каком диапазоне? Существуют ли какие-либо ограничения на это? Что происходит, например, если два компьютера в локальной сети отправляют HTTP-запросы с одним и тем же исходным портом на один и тот же веб-сайт? Каким образом маршрутизатор знает, какой из них будет маршрутизироваться на какой компьютер? Или, может быть, такая ситуация достаточно редка, что никто не мешал ей защищаться?