close

Вход

Забыли?

вход по аккаунту

?

File Transfer Protocol

код для вставкиСкачать
File Transfer Protocol
• Сетевой протокол, предназначенный для передачи файлов
в компьютерных сетях, позволяет просматривать
содержимое каталогов и загружать файлы с сервера или на
сервер, кроме того возможен режим передачи файлов между
серверами (FXP).
• Один из старейших прикладных протоколов - 1971 г.
• Уязвим к перехвату сетевых пакетов (нет шифрования,
пароль передаётся открытым текстом).
• Используются два соединения (два порта): для передачи
команд (control connection) и для передачи данных (data
connection)
RFC 959 (1985 г.)
Rev. 1.01 / 14.11.2007
Петрозаводский госуниверситет, А. В. Соловьев, 2007
СЕТЕВЫЕ ТЕХНОЛОГИИ
FTP и OSI RM
FTP
APPLICATION
TCP
IP
Physical
PRESENTATION
SESSION
TRANSPORT
NETWORK
DATA LINK
PHYSICAL
TCP/IP
Петрозаводский госуниверситет, А. В. Соловьев, 2007
Layer 7
Layer 6
Layer 5
Layer 4
Layer 3
Layer 2
Layer 1
OSI/RM
СЕТЕВЫЕ ТЕХНОЛОГИИ
Схема взаимодействия по FTP
FTP-сервер
FTP-клиент
TELNET
ИП сервера
FTP-Команды
user interface
ИП клиента
FTP-отклики
ППД сервера
ФС
Данные
не обязательно
существует во
время всего сеанса
ППД клиента
ФС
ИП – интерпретатор протокола
ППД – процесс передачи данных
ФС – файловая система
Петрозаводский госуниверситет, А. В. Соловьев, 2007
СЕТЕВЫЕ ТЕХНОЛОГИИ
Active mode
192.168.1.1
FTP-сервер
connect 192.168.1.13:33002
ППД
ИП
TCP:20
L
accept
TCP:21
192.168.1.13
FTP-клиент
connect
ИП
ППД
TCP:33001
L
accept
TCP:33002
Петрозаводский госуниверситет, А. В. Соловьев, 2007
СЕТЕВЫЕ ТЕХНОЛОГИИ
Passive mode
192.168.1.1
FTP-сервер
ППД
L
ИП
L
accept
TCP:35001
accept
TCP:21
192.168.1.13
FTP-клиент
ИП
ППД
connect
TCP:33001
connect 192.168.1.1:35001
TCP:33002
Петрозаводский госуниверситет, А. В. Соловьев, 2007
СЕТЕВЫЕ ТЕХНОЛОГИИ
Режим FXP (File eXchange Prot.)
192.168.1.1
FTP-сервер A
ППД
L
ИП
L
accept
TCP: 35001
accept
TCP:21
192.168.1.13
FTP-клиент
connect
ИП
ИП
33001, 33002
ППД
192.168.1.2
FTP-сервер B
ППД
ИП
L
connect 192.168.1.1:35001
TCP: 20
accept
TCP:21
Петрозаводский госуниверситет, А. В. Соловьев, 2007
СЕТЕВЫЕ ТЕХНОЛОГИИ
Команды FTP
USER username
Идентификация пользователя
PASS password
Аутентификация пользователя
PORT a1,a2,a3,a4,p1,p2
Адрес ППД клиента для активного режима
PASV
Запрос адреса ППД сервера для пассивного режима
RETR pathname
Загрузка файла с сервера
STOR pathname
Передача файла на сервер
LIST [pathname]
Получение списка файлов на сервере
CWD pathname
Смена каталога на сервере
PWD
Получение имени текущего каталога на сервере
TYPE, MODE, STRU
Параметры канала передачи данных
NOOP
Пустая операция
SYST
Информация о системе
HELP
Помощь (список команд сервера)
QUIT
Выход
Петрозаводский госуниверситет, А. В. Соловьев, 2007
СЕТЕВЫЕ ТЕХНОЛОГИИ
Отклики FTP
1хх – Позитивный предварительный ответ (запрошенное действие начато, следует
ожидать ещё одного отклика, прежде чем выдать новую команду).
2хх – Позитивный ответ о завершении (запрошенное действие успешно выполнено,
можно выдавать новую команду).
3хх – Позитивный промежуточный ответ (команда принята, но действие не начато,
ожидается другая команда с дополнительной информацией).
4хх – Временный негативный ответ (команда не принята, но ошибочная ситуация
временна, запрошенное действие можно попытаться выполнить позднее).
5хх – Постоянный негативный ответ (команда не принята, пользовательскому
процессу не следует выдавать эту же команду снова).
Примеры:
150 – Успешный статус, открывается канал данных
200 – Команда принята
220 – Сервис готов для нового пользователя (при установлении соединения)
226 – Канал данных закрыт, операция закончена
227 – Установка пассивного режима (сообщаются IP и порт)
230 – Пользователь авторизован
331 – Пользователь идентифицирован, требуется аутентификация
426 – Канал данных разорван, операция прервана
500, 501 – Синтаксическая ошибка
Петрозаводский госуниверситет, А. В. Соловьев, 2007
СЕТЕВЫЕ ТЕХНОЛОГИИ
Параметры канала данных
Тип данных (TYPE): ASCII, IMAGE, (EBCDIC, LOCAL)
ASCII – передача 8-битных текстовых данных (TELNET), строки должны
заканчиваться <CR><LF>
EBCDIC – передача 8-битных текстовых данных в кодировке EBCDIC, строки
заканчиваются символом <NL>
IMAGE – передача 8-битных бинарных данных
LOCAL – передача бинарных данных с указанной длиной байта в битах
Структура данных (STRU): FILE, RECORD, PAGE
FILE – непрерывная последовательность байт
RECORD – последовательная совокупность записей
PAGE – нумерованная совокупность независимых страниц
Способ передачи данных (MODE): STREAM, BLOCK, COMPRESSED
STREAM – поток байт
BLOCK – серия блоков данных, предварённых заголовком
COMPRESSED – поток данных с комбинациями, управляющими сжатием типа RLE
Петрозаводский госуниверситет, А. В. Соловьев, 2007
СЕТЕВЫЕ ТЕХНОЛОГИИ
Пример FTP-сеанса
220 (vsFTPd 2.0.3)
USER anonymous
331 Please specify the password.
S:(192.168.1.1:20) → C:(192.168.1.13:3084)
PASS ftp@localhost
-rwxr-xr-x 1 1000 1000 14757 a.out
230 Login successful.
-rwxr-xr-x 1 1000 1000 14098 client
SYST
-rw-r--r-- 1 1000 1000
782 example_fork.c
-rw-r--r-1
1000
1000
1399
example_ghbn.c
215 UNIX Type: L8
...
PORT 192,168,1,13,12,12
200 PORT command successful.
C:(192.168.1.1:xxx) → S:(192.168.1.1:39511)
LIST
#include <signal.h>
#include <unistd.h>
150 Here comes the directory listing.
#include <stdio.h>
226 Directory send OK.
...
PASV
227 Entering Passive Mode (192,168,1,1,154,87)
RETR example_racecond.c
150 Opening BINARY mode data connection for example_racecond.c
226 File send OK.
QUIT
221 Goodbye.
3084=12*256+12, 39511=154*256+87
Петрозаводский госуниверситет, А. В. Соловьев, 2007
СЕТЕВЫЕ ТЕХНОЛОГИИ
Документ
Категория
Презентации по информатике
Просмотров
7
Размер файла
113 Кб
Теги
1/--страниц
Пожаловаться на содержимое документа