Der FTP-Standard beschreibt eine Architektur nach dem Client/Server-Prinzip
(Abb. ), deren
zentraler Bestandteil die Trennung von Kontroll-
und Datenverbindung ist.
Eine FTP-Sitzung läuft schematisch folgendermaßen ab: Der Client initiiert den Aufbau einer Kontrollverbindung zum Server und schickt über diese Kontrollverbindung Schematischer Ablauf einer FTP-Sitzung Kommandos an den Server. Der Server antwortet auf die Kommandos des Clients ebenfalls über die Kontrollverbindung. Die Kommandos des Clients legen die Parameter für die Datenübertragung, z.B. Datentyp, Übertragungsmodus, Datenstruktur, und die durchzuführenden Operationen fest, z.B. Speichern, Anfügen, Abholen von Dateien. Ist eine Aktion mit den erforderlichen Parametern festgelegt, findet die Datenübertragung über die Datenverbindung statt.
Im FTP-Protokoll werden Vorkehrungen für viele unterschiedliche Fälle und
Konstellationen getroffen. Es gibt unterschiedliche Datentypen, z.B. ASCII,
EBCDIC, IMAGE, die der Benutzer angeben kann. Auch werden verschiedene
Übertragungsarten, z.B. Stream (Datenstrom ohne Struktur), Block (Daten
werden blockweise übertragen) und Compressed (einfache Datenkompression
bei der Übertragung) berücksichtigt. Theorie und Praxis
Selbst für unterschiedliche Datenstrukturen wie Datei,
Rekord oder Seite werden Vorkehrungen getroffen.
In konkreten Implementierungen werden jedoch meistens nicht
alle Möglichkeiten realisiert. Als
Übertragungsart steht meist nur Stream und als Datenstruktur Datei zur
Verfügung.
Die wichtigsten Kommandos und
Parameter, wie sie sich dem Benutzer darstellen,
werden später an einzelnen Beispielen erläutert.
Die Antworten des Servers bestehen aus einer dreistelligen Zahl und einer kurzen Textnachricht. Die Nachricht ist für den Benutzer gedacht, während die Zahl für die Auswertung durch den Client bestimmt ist. Demgemäß ist die Nachricht nicht zwingend festgelegt, wogegen die drei Ziffern des Antwortcodes xyz nach einem festgelegten System vom Server verwendet werden. Bei vielen FTP-Client-Programmen sind die Antworten des Servers genau in der Form, in der sie in der Norm beschrieben werden, sichtbar. Sie werden hier genauer aufgeschlüsselt. Für die erste Stelle sind die Ziffern 1-5 zulässig mit folgender Bedeutung:
Zum Abschluß dieses Kapitels noch eine etwas ungewöhnliche Einsatzmöglichkeit
von FTP:
Die normale FTP-Anwendung findet zwischen einem Client und einem Server statt.
Eine weitere Betriebsart zeigt Abb. , bei der ein
Benutzer eine Datei zwischen zwei Rechnern austauschen möchte, von denen
keiner der eigene ist. Der Benutzerclient initiiert dabei zwei
Kontrollverbindungen zu den beiden Servern A und B und versetzt anschließend
Rechner A in den Passivzustand. Nun teilt er Rechner B die Adresse von A
als zu nutzende Datenverbindung mit und gibt das Kommando zum Datentransfer.
Nach Vollzugsmeldung beendet der Benutzerclient die Verbindungen.