Я понимаю, что когда TCP-клиент подключается к серверу, он автоматически использует неиспользуемый локальный порт, если это не указано явно. На стороне сервера у нас есть сокет прослушивания, который создает новый сокет всякий раз, когда принимается новое соединение.
Но все сокеты сервера используют один и тот же локальный порт (я проверил это с помощью netstat). Мой вопрос: как пакет, отправленный клиентом, достигает определенного сокета на сервере, когда все сокеты на стороне сервера обмениваются данными через один и тот же IP-адрес и локальный порт?
Ниже приведен снимок telnet, показывающий, что мой эхо-сервер tcp / ip использует один и тот же адрес и порт для двух разных соединений.