hOW IT WORKS

Wprowadzenie | Model FTP


















e-mail:
sikorson@poczta.onet.pl
wakiz@interia.pl

Wprowadzenie:
[top]
Na wstępie objaśnienie kilku dalej użytych terminów:
data connection - kanał danych
Jednokierunkowe połączenie przez które przesyłane są dane, w sprecyzowany wcześniej sposób tzn mode i type. Przesyłaną treścią może być fragment pliku, cały plik lub kilka plików. Połączenie to może być nawiązane między server-DTP i user-DTP, lub między dwoma server-DTP.
data port
Pasywny proces nasłuchiwania na danym porcie na połączenie z aktywnego procesu po to aby zainicjować data connection
server-DTP - server-data transfer process - proces transferu danych
Proces transferu danych, w swoim normalnym trybie "active" ustanawia data connection z słuchającym data port'em , ustawia parametry transferu i transferuje dane na komende o swojego interpretatora protokołu (protocol interpreter). Proces transferu danych może być przestawiony w trub "passive" i wtedy będzie on nasłuchiwał niż inicjował połączenie z data port'em.
server-PI - server- protocol interpreter - interpreter protokołu servera
Interpreter protokołu nasłuchujena porcie X na połączeniez user-PI i ustanawia połączenie Telnet'owe. Blok ten otrzymuje standardowe komendy FP od user-PI, wysyła odpowiedzi oraz zarządza server-DTP.
Telnet connection - połączenie Telnet'owe
Dwukierunkowe ołączenie komunikacyjne pomiędzy user-PI i server-PI.
user-DTP - user-data transfer protocol
Proces transferu danych słuchający na data port za połączeniem od serververa. Jeżeli dwa serwery transferują dane między sobą to user-DTP jest nieaktywny.
user-PI - user-protocol interpreter - interpreter protokołu klienta
Interpreter protokołu inicjuje połączenie Telnet'owe z swojego portu U z serverem, inicjuje komendy FTP oraz zarządza user-DTP jeżeli ten pblok jest związany z transferem

Model FTP:

[top]

Model File Transfer Protocol można przedstawić w następujący sposób:


Zauważmy że:
- kanał data connection może być użyty w obu kierunkach
- kanał data connection nie musi istnieć cały czas


W modelu przedstawionym powyżej, interpreter protokołu użytkownika (user protocol interpreter) inicjuje połączenie z serverem za pośrednictwem protokołu Telnet (Telnet connection). Po nawiązaniu połączenia interpreter protokołu użytkownika generuje standardowe komendy FTP i przesyła je do servera za pośrednictwem telnetu. Server po otrzymaniu tych komend generuje standardowe odpowiedzi i przesyła je do użytkownika jako odpowiedź na wysłane komendy.

Wysyłane komendy określają parametry połączenia dla wymiany danych (data port, transfer mode, representation type, i structure) i rodzaj wykonywanych operacji na plikach (store, retrive, append, delete ...).
Blok użytkownika odpowiedzilny za transfer danych (user data transfer process) powinien zacząć nasłuchiwanie na uzgodnionym data port.
Następnie server inicjuje połączenie z tym data port'em i tworzy kanał danych (data connection) i zaczynając transfer o określonych wcześniej parametrach.
Warto również zauważyć, że uzgodniony data port nie musi dotyczyć Host'a zaczynającego sesje FTP wysyłając komendy do servera przez Telnet. Musi on jednak zapewnić server że data port na innym Host'cie już nasłychuje.
Należy również zwrócić uwage na to, że data connection może być używany w obu kierunkach.

W innej sytuacji użytkownik może chcieć przekopiować dane między innymi dwoma serverami. W tym wypadku jego komputer nawiązuje połączenie przez Telnet z tymi dwoma komputerami tworząc kanał komunikacyjny (control connection) za pośrednictwem którego bedą przesyłane komendy. Po nawiązaniu połączenia z tymi komputerami tworzy kanał danych (data connection) międzi nimi.
W tym przypadku przez komputer użytkownika, a dokładniej interpreter protokołu użytkownika, przechodzą tylko komendy i informacje kontrolene a sam kanał danych przez który przesyłane są dane jest utworzony tylko miedzy serverami.
Można to przedstawić graficznie w następujący sposób:


Standard protokołu wymaga aby połącznie Telnet'owe było przez cały czas trwania transferu między A i B otwarte. Do obowiązku użytkownika aby żądać zamknieci kanału Telnet gdy skończony jest proces komunikacji, gdyż on jest w takiej sytałacji jak gdyby to on by był jednym z tych serverów (zależy to od tego który z którym nawiązał transfer). Nadający server może przestać wysyłać dane gdy połączenie Telnet'owe zostanie przerwane bez użycia komendy.

Copyright © 2002 FTP Serwis
Wszelkie prawa zastrzerzone
All designed by sioux
Made with Macromedia Dreamweaver
[top]