Когда TCP-сервер принимает сокет для порта, он получает новый сокет для работы с этим клиентом.
Принимающий сокет остается действительным для этого порта и может принимать других клиентов через этот порт.
Почему исходная спецификация FTP RFC 959 решила создать как порт управления, так и порт данных?
Будет ли какая-либо причина делать это в аналогичном пользовательском протоколе?
Мне кажется, что это можно было легко указать на одном порту.
Учитывая все проблемы с брандмауэрами и NATS с FTP, кажется, что один порт был бы намного лучше.
Для реализации общего протокола единственная причина, по которой я мог бы подумать, что вы захотите сделать это, - это то, что вы можете обслуживать файлы с другого хоста, чем команды.