FTP-протокол. Общие сведения и особенности

реферат

1.2. Технические процессы осуществления соединения с помощью протокола FTP

В FTP соединение инициируется интерпретатором протокола пользователя. Управление обменом осуществляется по каналу управления в стандарте протокола TELNET. Команды FTP генерируются интерпретатором протокола пользователя и передаются на сервер. Ответы сервера отправляются пользователю также по каналу управления. В общем случае пользователь имеет возможность установить контакт с интерпретатором протокола сервера и отличными от интерпретатора пользователя средствами.

Команды FTP определяют параметры канала передачи данных и самого процесса передачи. Они также определяют и характер работы с удаленной и локальной файловыми системами.

FTP отличается от других приложений тем, что он использует два TCP соединения для передачи файла.

Управляющее соединение устанавливается как обычное соединение клиент-сервер. Сервер осуществляет пассивное открытие на заранее известный порт FTP (21) и ожидает запроса на соединение от клиента. Клиент осуществляет активное открытие на TCP порт 21, чтобы установить управляющее соединение. Управляющее соединение существует все время, пока клиент общается с сервером. Это соединение используется для передачи команд от клиента к серверу и для передачи откликов от сервера. Тип IP сервиса для управляющего соединения устанавливается для получения «минимальной задержки», так как команды обычно вводятся пользователем.

Соединение данных открывается каждый раз, когда осуществляется передача файла между клиентом и сервером. (Оно также открывается и в другие моменты, как мы увидим позже.) Тип сервиса IP для соединения данных должен быть «максимальная пропускная способность», так как это соединение используется для передачи файлов.

Сессия управления инициализирует канал передачи данных. При организации канала передачи данных последовательность действий другая, отличная от организации канала управления. В этом случае сервер инициирует обмен данными в соответствии с параметрами, согласованными в сессии управления.

Канал данных устанавливается для того же hostа, что и канал управления, через который ведется настройка канала данных. Канал данных может быть использован как для приема, так и для передачи данных.

Возможна ситуация, когда данные могут передаваться на третью машину. В этом случае пользователь организует канал управления с двумя серверами и организует прямой канал данных между ними. Команды управления идут через пользователя, а данные напрямую между серверами .

Канал управления должен быть открыт при передаче данных между машинами. В случае его закрытия передача данных прекращается.

FTP адрес выглядит примерно так:

ftp://user:password@127.0.0.1:21/

user - имя пользователя.

двоеточие - это разделитель для программы между именем пользователя и паролем

password - пароль.

@ - означает разделение между данными о пользователе и адресом.

Дальше идёт непосредственно адрес. Это может быть IP, а может иметь и буквенное значение (как-то ftp.ur.ru). После адреса опять идёт разделительное двоеточие, которое разделяет адрес, и номер порта к которому следует подключаться. По умолчанию этим портом является 21, но может быть любая цифра, обозначенная администратором сервера.

Адрес может выглядеть и так:

ftp://127.0.0.1

Это будет означать, что имя пользователя anonymous, паролем является E-mail адрес, а порт 21-й.

Соединение с двумя разными серверами и передача данных между ними

Делись добром ;)