FTP клиент

Автор: Пользователь скрыл имя, 11 Ноября 2010 в 19:37, курсовая работа

Описание работы

Информационная сеть — сеть, предназначенная для обработки, хранения и передачи данных. Информационная сеть состоит из:

- абонентских и административных систем;

- связывающей их коммуникационной сети.
В зависимости от расстояния между абонентскими системами, информационные сети подразделяются на глобальные, территориальные и локальные. Различают универсальные и специализированные информационные сети.
Одной из самых часто используемых в повседневной жизни программ продвинутого пользователя – FTP-клиент. Закачать html-странички на сервер, слить warez с сервака, качнуть фильмов в локалке – работа FTP клиента.

Содержание

ВВЕДЕНИЕ………………………………………………………..3

1.ТЕОРЕТИЧЕСКИЙ АНАЛИЗ И ПРОЕКТИРОВАНИЕ……….4

1.1.ПОСТАНОВКА ЗАДАЧИ…………………………………….4

1.2.АРХИТЕКТУРА СИСТЕМЫ…………………………………4

1.3.ПРОТОКОЛ ПРИКЛАДНОГО УРОВНЯ……………………5

1.4.ПРОТОКОЛ ТРАНСПОРТНОГО УРОВНЯ………………....7

1.5.АКТИВЫЙ И ПАССИВНЫЙ РЕЖИМЫ……………………7

1.6.МОДЕЛЬ ПРОТОКОЛА………………………………………8

2.ПРОГРАММНАЯ РЕЛИЗАЦИЯ…………………………………9

2.1.ВЫБОР КОМПОНЕНТОВ……………………………………9

2.2.ПРОЦЕДУРЫ ПОДКЛЮЧЕНИЯ К СЕРВЕРУ И УДАЛЕНИЯ ФАЙЛА/ПАПКИ…………….………………..10

2.3.ОПИСАНИЕ ИНТЕРФЕЙСА…………………...…………. .11

3.ВЫВОДЫ…………………………………………………………12

СПИСОК ЛИТЕРАТУРЫ…………………………………...…..13

Работа содержит 1 файл

Пояснительная записка по КР по сетям.doc

— 115.00 Кб (Скачать)

RETR. Эта команда указывает модулю «Программа передачи данных сервера» передать копию файла, заданного параметром этой команды, модулю передачи данных на другом конце соединения.

STOR. Команда указывает модулю «Программа передачи данных сервера» принять данные по каналу передачи данных и сохранить их как файл, имя которого задано параметром этой команды. Если такой файл уже существует, он будет замещен новым, если нет, будет создан новый.

Команды RNFR и RNTO должны следовать одна за другой. Первая команда содержит в качестве аргумента старое имя файла, вторая - новое. Последовательное применение этих команд переименовывает файл.

ABOR. Команда предписывает серверу прервать выполнение предшествующей сервисной команды (например, передачу файла) и закрыть канал передачи данных.

Команда DELE удаляет указанный файл.

Команды MKD и RMD, соответственно, создают и удаляют указанный в аргументе каталог.

При помощи команд LIST и NLST можно получить список файлов в указанном каталоге. 

1.4.Протокол  транспортного уровня. 

   Транспортный  уровень (англ. Transport layer) — 4-й уровень сетевой модели OSI предназначен для доставки данных без ошибок, потерь и дублирования в той последовательности, как они были переданы. При этом не важно, какие данные передаются, откуда и куда, то есть он предоставляет сам механизм передачи.

   Transmission Control Protocol (TCP) (протокол управления передачей) — один из основных сетевых протоколов Интернета, предназначенный для управления передачей данных в сетях и подсетях TCP/IP.

   TCP — это транспортный механизм, предоставляющий поток данных, с предварительной установкой соединения, за счёт этого дающий уверенность в достоверности получаемых данных, осуществляет повторный запрос данных в случае потери данных и устраняет дублирование при получении двух копий одного пакета (см. также T/TCP). В отличие от UDP гарантирует, что приложение получит данные точно в такой же последовательности, в какой они были отправлены, и без потерь.

   Реализация  TCP, как правило, встроена в ядро системы, хотя есть и реализации TCP в контексте приложения. 

1.5.Активный  и пассивный режимы. 

   В активном режиме FTP клиент соединяется с произвольного  непривилегированного порта (N > 1024) к FTP серверному командному порту 21. Затем, клиент начинает слушать порт N+1 и  посылать FTP команду PORT N+1 на FTP сервер. В ответ, сервер соединяется с указанным портом данных клиента из своего локального порта данных 20.

     

   В пассивном  режиме FTP клиент инициирует оба соединения с сервером, решая проблему с файрволами, которые фильтруют входящий порт данных клиента. При открытии FTP соединения, клиент локально открывает два непривилегированных порта (N > 1024 и N+1). Первый порт контактирует с сервером на порт 21, но вместо того, чтобы затем выдать команду PORT и позволить серверу в ответ соединиться с его портом данных, клиент выдает команду PASV. В результате сервер открывает произвольный непривилегированный порт (P > 1024) и посылает клиенту команду PORT P. Затем, для передачи данных, клиент инициирует соединение от порта N+1 к порту P на сервере. 

     

1.6.Модель  протокола.

    

     

2.Программная  реализация. 

2.1.Выбор  компонентов. 

   Программа разработана на языке программирования Delphi. 

   Главным компонентом, используемым в моей программе  является компонент библиотеки Indy IdFTP.Он предназначен для работы с протоколом FTP, с помощью которого реализуется FTP клиент. 

2.2.Процедуры подключения к серверу и удаления файла/папки 

procedure TForm1.ConnectButtonClick(Sender: TObject);//подключение к серверу

begin

  if IdFTP1.Connected

  then

  try

    if TransferData

    then IdFTP1.Abort;

    IdFTP1.Quit;

  finally

    ListBox1.Items.Clear;

    ConnectButton.Caption:='Connect';

    EditChangeDir.Text:='';

  end

  else

  with IdFTP1 do try

    Username:=EditUserName.Text;

    Password:=EditPassword.Text;

    Host:=EditFTPServName.Text;

    Connect;

    ChangeDir(EditChangeDir.Text);

  finally

    if Connected

    then

    begin

      ConnectButton.Caption:='Disconnect';

    end;

  end;

end; 

procedure TForm1.DeleteButtonClick(Sender: TObject); //удаление файла/папки

var

  Name: string;

begin

  if not IdFTP1.Connected

  then Exit;

  Name:=IdFTP1.DirectoryListing.Items[ListBox1.ItemIndex].FileName;

  if IdFTP1.DirectoryListing.Items[ListBox1.ItemIndex].ItemType=ditDirectory

  then try

    idftp1.RemoveDir(Name);

    ChangeDir(idftp1.RetrieveCurrentDir);

  finally

  end

  else

  try

    idftp1.Delete(Name);

    ChangeDir(idftp1.RetrieveCurrentDir);

  finally

  end;

end; 

2.3.Описание интерфейса. 

 

   Чтобы начать работу, нужно ввести адрес  ftp сервера, имя пользователя и пароль. Возможно включение пассивного соединения. После нажатия на кнопку  Connect произойдёт подключение к серверу, после повторного нажатия – отключение от сервера. 
 

3.Выводы. 

   В своей  курсовой работе я разработал FTP клиент, реализовав следующие задачи:

   - Подключение  к FTP серверу, используя имя пользователя и пароль;

   - Может скачивать, загружать, удалять файлы с сервера;

   - Позволяет  создавать и удалять новые  директории. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Список  литературы. 

1.Фаронов В.В. Delphi.Программирование на языке высокого уровня – СПб:.Питер,2008-640с.

2 .Свободная энциклопедия  http://ru.wikipedia.org/.

Информация о работе FTP клиент