Когда клиент соединяется с сервером с помощью TCP, новый сокет создается для потока TCP. Соединение остается на том же порте, связь была установлена, или это становится измененным на некоторый другой порт?
Новый сокет - это концепция прикладного уровня, введенная потому, что каждому установленному соединению требуется уникальный дескриптор файла (также отличный от дескриптора прослушиваемого файла), который отображается на TCP-сессию, но не является тем же самым. Сам сеанс идентифицируется комбинацией адреса источника и назначения и порта. Порт источника (клиента) обычно выбирается случайным образом, а порт назначения (сервера) является портом прослушивания. Дополнительный порт не выделяется.
Сокет, связанный с новым дескриптором, возвращенным accept
на сервере, будет использовать тот же порт на стороне сервера соединения, что и исходный сокет (предполагая "нормальные" определения, в которых клиент инициирует соединение). Новый сокет будет иметь другой номер клиентского порта (удаленный порт с точки зрения сервера).