создание простого ftp с использованием Java - PullRequest
0 голосов
/ 16 ноября 2010

Недавно я разрабатывал простой ftp. Когда клиент подключается к серверу, сервер создает специальный сокет для этого подключения:

Socket clientSocket = listenSocket.accept();

Я хочу использовать этот сокет для отправки команд на сервер и создания нового для отправки данных. Итак, у меня есть два вопроса.

  1. Должен ли я создать новый сокет для данных только один раз и запомнить ссылку или создать его всякий раз, когда мне нужно?
  2. Как именно я могу его создать? На стороне сервера создайте новый Socket и через clientSocket отправьте клиенту номер порта, чтобы он знал, какой порт ему следует использовать для отправки / получения данных.

Ценю Ваш совет!

1 Ответ

0 голосов
/ 17 ноября 2010

Вы можете посмотреть спецификацию FTP здесь: http://tools.ietf.org/html/rfc959 В частности, проверьте страницу 3. Вы увидите, что FTP имеет пассивный порт данных, который ожидает соединения в дополнение к управляющему соединению.Кроме того, на странице 7 приведена схема, поясняющая типичный подход FTP.Воспроизведение этого будет, безусловно, жизнеспособной стратегией.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...