FTP (File Transfer Protocol) – это один из трех основных протоколов Интернета (mail, www, ftp).
FTP или «Протокол Передачи Файлов» – один из старейших протоколов в Интернет и входит в его стандарты. Обмен данными в FTP проходит по TCP-каналу. Построен обмен по технологии «клиент-сервер».
1.1. Общие сведения о протоколе передачи данных FTP
FTP (File Transfer Protocol) – это один из трех основных протоколов Интернета (mail, www, ftp).
FTP или «Протокол Передачи Файлов» – один из старейших протоколов в Интернет и входит в его стандарты. Обмен данными в FTP проходит по TCP-каналу. Построен обмен по технологии «клиент-сервер».
Protocol – протокол.
Согласованный формат для передачи данных между двумя устройствами. Протокол определяет следующее:
- как будет осуществляться проверка на ошибку;
- метод упаковки данных (если упаковка используется);
- каким образом посылающее устройство сообщает, что оно закончило сообщение;
- каким образом принимающее устройство сообщает, что оно получило сообщение.
Имеется ряд стандартных (эталонных) протоколов, из которых можно выбрать подходящий. Каждый протокол имеет свои преимущества и недостатки (неудобства); например, некоторые более простые, чем другие, некоторые более надежны, и некоторые быстрее.
С точки зрения пользователя, единственное, что его интересует в протоколе, – то, что компьютер или устройство должен поддерживать его (протокол) правильно, если Вы хотите связываться с другими компьютерами. Протокол может быть реализован или в оборудовании или в программном обеспечении.
Модель протокола
FTP – это свод правил, которые указывают на то, как компьютеры могут совместно использовать файлы в Интернете.
Протокол FTP построен таким образом, что различные компьютеры, с различным программным обеспечением и различным «железом» могут эффективно обмениваться любыми файлами.
Сегодня, многие пользователи при слове FTP ассоциируют его с warez, mp3, jpeg и mpeg форматами. Но на самом деле этот протокол используется для передачи любых видов файлов, от обычных текстовых документов, до защищённых программных файлов. FTP протокол широко используется в автоматических системах проведения оплаты через Интернет и для передачи информации со спутников в космосе.
Глобальная сеть Интернет: протоколы, системы доступа
... сетей организован обмен информацией с другими компьютерными сетями по протоколу TCP/IP, эта сеть сама становится частью Интернет. 3. Средства доступа 3.1. Модемы. Модем - это устройство, преобразующее при передачи данных дискретные ... и пользователей в пропускной способности и просто в подключении к локальным и глобальным сетям растут с каждым днем. Для их удовлетворения производителям приходится ...
Пересылка и загрузка файлов в Интернете – столь важные рутинные задачи, что протокол 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 — имя пользователя.
Из таблицы выписываем исходные данные зубчатой передачи число ...
... В нормах плавности работы нормируются требования к точности таких геометрических и кинематических параметров колеса и передач, погрешность которых также влияет на кинематическую точность, но эта погрешность ... зазором. Исходные данные:D=28мм; длина соединения по методическим указаниям принимается равной l=b+5+15=30+5+15=50мм, где b из задачи1, остальные исходные данные выбиваем из таблицы ...
двоеточие — это разделитель для программы между именем пользователя и паролем
password — пароль.
@ — означает разделение между данными о пользователе и адресом.
Дальше идёт непосредственно адрес. Это может быть IP, а может иметь и буквенное значение (как-то ftp.ur.ru).
После адреса опять идёт разделительное двоеточие, которое разделяет адрес, и номер порта к которому следует подключаться. По умолчанию этим портом является 21, но может быть любая цифра, обозначенная администратором сервера.
Адрес может выглядеть и так:
ftp://127.0.0.1
Это будет означать, что имя пользователя anonymous, паролем является E-mail адрес, а порт 21-й.
Соединение с двумя разными серверами и передача данных между ними
1.3. Программное обеспечение для осуществления соединения с помощью протокола FTP
Для получения файлов необходим FTP-client, программа, которая сегодня поставляется как составляющая часть всех современных броузеров. А вот с предоставлением доступа к вашим файлам немного сложнее, для этого необходим выход в Интернет, предпочтительно (но необязательно) с фиксированным (статичным) IP-адресом и постоянным соединением, и FTP-daemon — программа, выполняющая функции FTP-сервера.
Качество FTP-сервера определяется его способностью управлять доступом в соответствии с типами пользователей и файлов. Если вы располагаете общедоступными файлами, то вы захотите иметь возможность предоставлять анонимный FTP-доступ к конкретным каталогам. Администратору FTP-узла необходим исчерпывающий протокол регистрации доступа. И все это требует интуитивно понятного, работоспособного пользовательского интерфейса.
Существует множество FTP-демонов, под все операционные системы, но не все так удобны и функциональны. На мой взгляд, наиболее удобным и не менее функциональным является Gene 6 BulletproofFTPServer. Рассмотрим более подробно этот FTP-сервер ниже.
1.4. Службы архивов FTP
FTP-архивы являются одними из основных информационных ресурсов Internet. Фактически, это распределенный депозитарий текстов, программ, фотографий и прочей информации, хранящейся в виде файлов на различных компьютерах во всем мире.
Информация в FTP-архивах разделена, в основном, на три категории:
— Защищенная информация, режим доступа к которой определяется ее владельцами и разрешается по специальному соглашению с потребителем. К этому виду ресурсов относятся коммерческие архивы (к примеру, коммерческие версии программ в архивах ftp.microsoft.com), закрытые национальные и международные некоммерческие ресурсы (например, работы по международным проектам CES или IAEA), частная некоммерческая информация со специальными режимами доступа (например, частные благотворительные фонды).
- Информационные ресурсы ограниченного использования, к которым относятся, например, программы класса shareware. В данный класс могут входить ресурсы ограниченного времени использования или ограниченного времени действия.
— Свободно распространяемые информационные ресурсы или freeware, если речь идет о программном обеспечении. К этим ресурсам относится все, что можно свободно получить по сети без специальной регистрации. Это может быть документация, программы или что-либо еще. Следует отметить, что свободно распространяемое программное обеспечение не имеет сертификата качества, но его разработчики открыты для обмена опытом.
Организация корпоративного сервера на базе Linux
... операционная система. Сервер – в информационных сетях – компьютер или программная система, предоставляющая удаленный доступ к своим службам или ресурсам с целью обмена информацией. Операционная система – это комплекс программ, направленных на работу и функционирование компьютера и позволяющих пользователю ...
Из выше перечисленных ресурсов наиболее интересными являются две последних категории, которые, как правило, оформлены в виде FTP-архивов.
Gene 6 BulletproofFTPServer
BPFTP Сервер – это FTP-сервер, который полностью соответствует спецификации RFC-959, а также имеет множество других опций, таких как:
- поддержка скачивания/закачивания;
- просмотр активности сервера в реальном времени;
- бан (автоматический запрет доступа для определённого IP адреса);
- инициированный отказ определенным пользователям;
- коэффициент обмена файлами;
- установка квот на количество пользователей и скорость скачивания/закачивания данных;
- менеджер событий;
- генератор статистики в реальном времени;
- рейтинг пользователей ТОР10;
- виртуальные директории;
- чат.
Если вы хотите иметь полный контроль над пользователями вашего сервера, то эта программа для вас.
Эта программа протестирована под Win9x\NT\W2K\XP. Существуют также версии по *nix системы.
BPFTP Сервер предлагает опции для полного контроля, который вы хотели бы иметь над вашими пользователями, такие как:
- Real time взаимодействие;
- Real time администрирование;
- Real time «шпион»;
- Real time статус аккаунтов ваших пользователей;
- Real time мониторинг подключенных пользователей.
2.1.
Общийинтерфейспрограммы
В верхней части окна находятся так называемые Hotkeys, они же «горячие кнопки». Т.е. кнопки быстрого доступа к нужным функциям программы. Здесь находятся такие функции как:
- старт/остановка FTP-сервера;
- доступ к настройкам программы;
- настройка событий на действия;
- доступ к списку пользователей и групп пользователей;
- доступ к статистической информации.
В окне отображается информация в текстовом виде о текущих соединениях и действиях подключённых пользователей.
В нижней части окна программы находится следующая информация:
- количество подключённых пользователей;
- статус FTP-сервера, а также информация о том, какой порт открыт для доступа IP-адресов на сервер;
- скорость передачи информации (в байтах/сек);
- краткая информация о последнем действий пользователя FTP-сервера.
В данном окне настройки программы настраиваются общие функции. Такие как:
- название FTP-сервера;
- максимальное количество пользователей сервера, которые могут находится на сервере в одно время;
- загрузочные опции сервера, которые активируется вместе с запуском ОС;
- назначение порта, на котором будет прослушиваться фтп.
2.3. Опциональные настройки программы
Технологии баз данных для интернет
... базами данных для персональных компьютеров. Она предоставляет разработчикам комбинацию мощных современных технологий и развитых средств для создания прикладных программ ... Базы данных хранились во внешней памяти центральной ЭВМ, пользователями этих баз данных ... интернет-технологий и систем управления удаленными базами данных однозначно показало высокую эффективность создания корпоративных баз данных, ...
В данных настройках настраиваются опциональные возможности программы. Такие важные настройки как:
- возможность ограничения доступа к директории и поддиректориям, где расположен FTP-сервер;
- шифрование паролей эккаунтов пользователей;
- ограничение проверки эккаунта пользователя и его пароля до n-раз, затем автоматическая установка его в бан либо просто выкидывание с сервера;
- настройка ограничения доступа с IP-адресов.
2.4.
Дополнительные настройки программ
В данном окне настраиваются технические возможности программы, оптимизирующие быстродействие её и системы в целом. Это такие настройки как:
- настройка принимающего буфера (в байтах), полезно для медленных или загруженных сетевых решений;
- основное предназначение сервера (закачивание/скачивание, только скачивание, только закачивание);
- приоритет FTP-сервера в общем списке процессов ОС;
- блокирование передачи с сервера на сервер;
- анти-хаммеринг система (слишком частые попытки зайти на сервер без каких-либо на то причин).
2.5.
Настройки кэширования программы
Данные настройки позволяют оптимизировать кэширующие способности программы. Это позволяет хранить FTP-серверу в памяти список директорий, к которым осуществлялся доступ, в течение заданного времени, что увеличивает реакцию доступа к ним, если в течение заданного времени были ещё попытки получить доступ к директориям, находящимся в оперативной памяти компьютера.
2.7. Генератор статистики
Данное окно позволяет настроить периодичность обновления статистики, тип собираемой статистики, а так же, для каких пользователей собирать статистику.
Эта опция полезна тем, что наглядно видно загрузку сервера и наиболее популярные ресурсы, что позволяет оптимизировать время работы сервера и более точно настроить кэширующие свойства программы (п. 2.5).
2.7. Планировщик и настройка динамических IP адресов
В данных настройках настраиваются такие функции как:
- старт/остановка FTP-сервера по расписанию;
- выполнение стандартных системных функций ОС по расписанию;
- слежение за динамическим изменением определённых IP-адресов.
Последнее позволяет пользователям с динамическим IP-адресом находится в базе пользователей без каких-либо ограничений. BulletproofFTP-сервер сам будет отслеживать изменение IP-адреса и прописывать его в базе, как дополнительный для данного пользователя.
2.8. Настройка MULTIIP-адресов и визуализация программы
Особенности использования сетевых технологий для обработки данных
... сетевые технологии обработки данных и приводятся примеры наиболее распространённых технологий. ... способы хранения, передачи и защиты ... задач. Структура работы. Работа состоит ... содержащие данные и команды программ, ... дипломных проектов начинались тогда со слов «Устройство сопряжения...». В середине 80-х годов положение дел в локальных сетях стало кардинально меняться. Утвердились стандартные технологии ...
Данные опции позволяют настроить мульти IP-адреса (пользователи могут иметь одинаковые логины и пароли на разных «виртуальных» FTP-серверах), а также визуализацию программы (отображение иконки активности сервера в systemtray, отображение статуса передачи файла, автоматическая проверка обновлений программы, удаление файлов в корзину ОС или непосредственно в DEV\NULL (физическое удаление)).
2.9. Настройка ведения лог-файлов (отчётов.
В данном окне существует возможность настройки ведения подробнейшего файла отчёта, без которого не может обойтись не один серьёзный FTP-сервер.
2.10. Настройка реакций программы на события
Эта функция, на мой взгляд, наиболее полезна на web-сайтах, где располагается данный FTP-сервер. На каждое действие или отклик сервера, можно настроить определённую реакцию, такие как вывод сообщения, запуск определённого файла или выполнение системной функции. Т.о. эффективность web-сайтов повышается в несколько раз, а взаимодействие с активным пользователем, вообще, поднимается на недосягаемую до этого высоту.
2.11. Настройка прав и полномочий пользователей
Данные настройки можно произвести через закладку USERACCOUNTS. Здесь можно прописать следующие полномочия:
- задать определённый список пользователей и прописать для каждого из них свои полномочия;
- задать список директорий, к которым пользователь может получить доступ, а также атрибуты доступа для каждой из них;
- настройка дополнительных настроек;
- настройка квотирования и ограничения скорости;
- возможность задать список разрешённых/запрещённых IP-адресов;
- подробный общий статус за весь период работы сервера.
FTP серверы могут работать в двух режимах: активном и пассивном. В активном режиме, когда начинается передача данных, клиент начинает прослушивание TCP порта и сообщает серверу, какой порт он прослушивает, после чего сервер открывает TCP соединение с порта 20 на порт, указанный клиентом. Затем данные передаются через это соединение. В пассивном режиме, клиент сообщает серверу, что он готов к передаче данных и сервер начинает прослушивать неспециальный TCP порт и сообщает клиенту, который именно. Затем клиент открывает TCP соединение на порт указанный сервером и обмен данными происходит через это соединение.
Проблема этих вспомогательных соединений в том, что существующая спецификация FTP протокола не предусматривает какого-либо метода проверки того, что клиент или сервер, который установил соединение это именно тот, кто запросил это соединение в управляющем сеансе. Это, в сочетании с фактом того, что многие операционные системы назначают TCP порты последовательно в возрастающем порядке, означает, что в результате в FTP протоколе создаются условия позволяющие атакующей стороне перехватить данные, которые передает кто-либо другой, либо подменить данные. Эти атаки слегка отличаются в активном и пассивном режиме. Когда передача данных осуществляется в активном режиме, атакующая сторона угадывает номер TCP порта, на котором конечный клиент ожидает соединения. Затем атакующий непрерывно посылает FTP серверу, к которому подключен клиент, команды PORT ip,of,client,machine,port,port RETR filename или STOR filename. Используя RETR, если надо подменить данные, передаваемые клиенту или STOR, если надо перехватить данные от клиента к серверу. Или, атакующий может использовать атаки, основанные на знании TCP sequence number и подменить сеанс связи от сервера к клиенту. Правда, используя этот тип атак невозможно перехватить данные, можно только подменить их своими.
Техника передач и ловли мяча на х баскетбола
... и своевременные передачи – ключ к успеху в игре. Изучение техники передач мяча на уроках баскетбола входит в программу по физической культуре общеобразовательных школ. Упражнения на развитие, Упражнения в парах: ... перемещения занимающихся нарастает постепенно. Игры развивающие технику передач и ловлю мяча 1.Игра «У кого меньше мячей». Две команды располагаются на своих половинах площадки. У ...
Команды управления контролем передачи данных, которыми обмениваются «Интерпретатор протокола сервера» и «Интерпретатор протокола пользователя», можно разделить на три большие группы:
1. Команды управления доступом к системе.
2. Команды управления потоком данных.
3. Команды FTP-сервиса.
Рассмотрим несколько наиболее характерных команд из каждой группы. Среди команд управления доступом к системе следует отметить следующие:
USER. Как правило, эта команда открывает сессию FTP между клиентом и сервером. Аргументом команды является имя (идентификатор) пользователя для работы с файловой системой. Эта команда может подаваться не только в начале, но и в середине сессии, если, например, пользователь желает изменить идентификатор, от имени которого будут проводиться действия. При этом все переменные, относящиеся к старому идентификатору, освобождаются. Если во время изменения идентификатора происходит обмен данными, обмен завершается со старым идентификатором пользователя.
PASS. Данная команда подается после ввода идентификатора пользователя и, в качестве аргумента содержит пароль пользователя. Напомним, что данные аутентификации FTP передаются по сети открытым текстом, поэтому для обеспечения защищенности канала пользователю необходимо предпринимать дополнительные меры.
CWD. Команда позволяет пользователям работать с различными каталогами удаленной файловой системы. Аргументом команды является строка, указывающая путь каталога удаленной файловой системы, в котором желает работать пользователь.
REIN. Команда реинициализации. Эта команда очищает все переменные текущего пользователя, сбрасывает параметры соединения. Если в момент подачи команды происходит передача данных, передача продолжается и завершается с прежними параметрами.
QUIT. Команда закрывает управляющий канал. Если в момент подачи команды происходит передача данных, канал закрывается после окончания передачи данных.
Команды управления потоком устанавливают параметры передачи данных. Все параметры, описываемые этими командами имеют значение по умолчанию, поэтому команды управления потоком используются только тогда, когда необходимо изменить значение параметров передачи, используемых по умолчанию. Команды управления потоком могут подаваться в любом порядке, но все они должны предшествовать командам FTP-сервиса. Из команд управления потоком данных следует выделить следующие:
Технология беспроводной передачи информации на примере технологии Bluetooth
... аналогичных технологий. Мое мнение, что такая технология как Bluetooth заслуживает внимания. Глава 1. Концепция и технические принципы беспроводной передачи информации. 1.1. Концепция беспроводной передачи информации . В целом, технологии беспроводной передачи данных, как ...
PORT. Команда назначает адрес и порт хоста, который будет использоваться как активный участник соединения по каналу передачи данных. Аргументами команды являются 32-битный IP адрес и 16-битный номер порта соединения. Эти значения разбиты на шесть 8-битных полей и представлены в десятичном виде: h1, h2, h3, h4, p1, p2, где hN — байты адреса (от старшего к младшему), а pN — байты порта (от старшего к младшему).
PASV. Эта команда отправляется модулю, который будет играть пассивную роль, в передаче данных («слушать» соединение).
Ответом на данную команду должна быть строка, содержащая адрес и порт хоста, находящиеся в режиме ожидания соединения в формате команды PORT – «h1, h2, h3, h4, p1, p2».
Команды TYPE, STRU, MODE определяют, соответственно, тип передаваемых данных (ASCII, Image и другие), структуру или формат передачи данных (File, Record, Page), способ передачи (Stream, Block и другие).
Использование этих команд очень важно при построении взаимодействия в гетерогенных средах и весьма отличающихся операционных и файловых систем взаимодействующих хостов.
Команды FTP-сервиса определяют действия, которые необходимо произвести с указанными файлами. Как правило, аргументом команд этой группы является путь к файлу. Синтаксис указанного пути должен удовлетворять требованиям формата файловой системы обработчика команды. Из команд FTP-сервиса можно выделить следующие:
RETR. Эта команда указывает модулю «Программа передачи данных сервера» передать копию файла, заданного параметром этой команды, модулю передачи данных на другом конце соединения.
STOR. Команда указывает модулю «Программа передачи данных сервера» принять данные по каналу передачи данных и сохранить их как файл, имя которого задано параметром этой команды. Если такой файл уже существует, он будет замещен новым, если нет, будет создан новый.
Команды RNFR и RNTO должны следовать одна за другой. Первая команда содержит в качестве аргумента старое имя файла, вторая — новое. Последовательное применение этих команд переименовывает файл.
ABOR. Команда предписывает серверу прервать выполнение предшествующей сервисной команды (например, передачу файла) и закрыть канал передачи данных.
Команда DELE удаляет указанный файл.
Команды MKD и RMD , соответственно, создают и удаляют указанный в аргументе каталог.
При помощи команд LIST и NLST можно получить список файлов в указанном каталоге.
Все команды FTP-протокола отправляются «Интерпретатором протокола пользователя» в текстовом виде — по одной команде в строке. Каждая строка команды — идентификатор и аргументы — заканчиваются символами <CRLF>. Имя команды отделяется от аргумента символом пробела — <SP>.
Обработчик команд возвращает код обработки каждой команды, состоящий из трех цифр. Коды обработки составляют определенную иерархическую структуру и, как правило, определенная команда может возвратить только определенный набор кодов. За кодом обработки команды следует символ пробела — <SP>, затем следует текст пояснения. Например, строка успешного завершения операции выглядит следующим образом: «200 Command okay».
Ниже приведен пример работы с FTP-протокола. Обозначения: S — сервер, U — пользователь.
Технические средства передачи информации
... объединяются в JIBC с помощью звездообразного соединения. Показатели трех типовых сред для передачи приведены в таблице. Показатели Среда передачи данных Двух жильный кабель - витая пара Коаксиальный ... уже существующего компьютерного парка и программного комплекса отвечающего современным научно-техническим требованиям с учетом возрастающих потребностей и возможностью дальнейшего постепенного ...
S: 220 Service ready for new user
U: USER Gluk
> S: 331 User name okay, need password
U: PASS murmur
S: 230 User logged in, proceed
U: RETR test.txt
S: 150 File status okay; about to open data connection
<Идетпередачафайла …>
S: 226 Closing data connection, file transfer successful
U: TYPE I
S: 200 Command okay
U: STOR /home/images/first.my
S: 550 Access denied
U: QUIT
4.1. Протоколы TFTP и SFTP
FTP-протокол имеет двух «младших братьев»: SFTP – Simple FTP и TFTP – Trivial FTP.
TFTP
Поскольку передача данных осуществляется поверх UDP, протокол TFTP реализует собственные методы надежной доставки данных — пакеты подтверждения, нумерация блоков данных и пакетов подтверждения и т.п. Все очень похоже на упрощенный вариант эмуляции протокола TCP.
TFTP работает лишь пятью командами:
1. Readrequest (RRQ) — запрос на чтение.
2. Writerequest (WRQ) — запрос на запись.
3. Data (DATA) — пакет данных.
4. Acknowledgment (ACK) — подтверждение.
5. Error (ERROR) — ошибка.
Процесс передачи данных начинается с поступления от клиента TFTP на сервер запроса на чтение или запись файла. Соединение устанавливается после получения подтверждения готовности на один из запросов, либо на запись, либо на чтение.
При открытии соединения, каждая из сторон выбирает (случайным образом) уникальный идентификатор — TID, который используется и UDP как порт соединения. Каждый пересылаемый пакет ассоциирован с двумя TID, соответствующими каждой стороне соединения. Первоначальный запрос отправляется инициатором TFTP-соединения на UDP-порт 69 (порт инициализации), в котором указывается порт соединения. Дальнейший обмен уже происходит через порты, выбранные участниками передачи данных.
Если сервер разрешает запрос, обмен открывается, и указанный файл передается (блоками по 512 байт).
Каждый пакет передаваемых данных содержит один блок (512 байт) и номер блока в передаваемом потоке. Поступление каждого блока на хост назначения должно быть подтверждено пакетом ACK (подтверждение), с номером поступившего блока. Только после получения пакета подтверждения будет отправлен следующий пакет данных.
Если длина пакета менее 512 байт — это служит сигналом для закрытия канала связи. В случае потери пакета при передаче, через некоторый промежуток времени сервер отправит этот пакет данных повторно.
Три типа ситуаций порождают отправку ошибочных пакетов:
1. Не подтвержденный запрос, например, не был найден файл, нет прав доступа и др.
2. Неправильный формат пакета, например, произошла ошибка коммутации.
3. Потеря доступа к требуемому ресурсу.
При большом количестве сообщений об ошибках соединение может быть закрыто по инициативе одной из сторон.
SFTP-протокол
SFTP поддерживает механизмы идентификации пользователя, передачу файлов, просмотр каталогов, изменение текущего каталога, переименование и удаление файлов. В большинстве операций, которые пользователь проводит с удаленным FTP-сервером, этого сервиса вполне достаточно. SFTP может передавать 8-битный поток данных и использует, как TFTP, только один канал соединения — как для команд, так и для данных. В отличие от TFTP, SFTP работает поверх TCP, порт 115.
Команда SFTP имеют почти тот же синтаксис и предназначение, что и аналогичные команды FTP.
SFTP вполне удовлетворяет работе с одним пользователем и одним сервером, кроме того, его легко использовать и программировать.
ФТП протокол, несомненно, играет огромную роль в глобальной сети Интернет (и не только в ней).
Этот удобный, действительно многофункциональный, а, главное, давно стандартизированный протокол является доминирующим и безоговорочным лидером в Интернете. На его базе построено множество файловых архивов, без которых техническая работа была бы не столь эффективна. Автоматизация и защищённость этого протокола, также не вызывает нареканий, что позволяет использовать его в государственных структурах.
В последнее время ФТП-серверы стали заводить многие пользователи сети Интернет, у которых есть хоть какой-то контент, которым они хотят поделиться. И это оказалось очень удобным, что говорит о том, что данный протокол ещё и относительно лёгок в настройке и поддержании.
ФТП-протокол практически не подвержен вирусным атакам, что лишний раз подтверждает его безопасность.
Данные размышления приводят меня к одному единственному выводу. Данный протокол универсальный, гибкий, надёжный, быстрый, несложен в освоении, абсолютно бесплатен и доступен для масс, что и делает его настолько популярным и предпочитаемым, в данное время.
1. Поисковая система Google. www.google.com.ru
2. Образовательный портал «Кирилл и Мефодий». www.km.ru
3. Специализированный форум по программному обеспечению iXBT. forum . ixbt . ru
4. Официальный www сервер FTP-сервера Gene 6 Bulletproof. http://www.bpftpserver.com/