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