Wie funktioniert die Datenübertragung per FTP?

Um Daten von einem Gerät auf ein anderes innerhalb eines Netzwerks übertragen zu können, wird ein geeignetes Protokoll benötigt, das die Kommunikation zwischen Sender und Empfänger regelt. Mittels FTP können Dateien zwischen mehreren Computern übertragen werden. Wie die Datenübertragung mit diesem Netzwerkprotokoll funktioniert, ist Gegenstand des folgenden Beitrags.

Was ist FTP?

FTP steht für File Transfer Protocol und ist ein auf der Anwendungsschicht arbeitendes Netzwerkprotokoll, welches für die Übertragung von Dateien in IP-Netzwerken konzipiert ist. Erstmals wurde es im RFC (Reqest for Comments) 542 im Jahr 1973 von Abhay Bhushan beschrieben. Damals handelte es sich noch um ein Netzwerkprotokoll, welches für den Vorgänger des heutigen Internets, dem ARPANET, entwickelt wurde.
Später wurde FTP in verschiedenen RFCs spezifiziert und verbessert. Inzwischen hat es sich zum Standardprotokoll für die Datenübertragung zwischen mehreren Geräten entwickelt.

Dabei ist die Funktionsweise recht simpel. Die Daten, die auf einem Server hinterlegt werden, können mittels eines FTP-Clients abgefragt und heruntergeladen werden. Zudem ist der Dateien-Upload sowie die Verwaltung der Verzeichnisstruktur des Servers über den Client möglich.

Die Funktionsweise im Detail

1. Verbindungsaufbau

Damit der FTP-Client Zugang zum Server bekommt und die Datenübertragung initiieren kann, muss zunächst eine Verbindung zu diesem hergestellt werden. Hierfür stehen die Ports 20 (für die Datenübertragung) und 21 (für die Befehlskommunikation) zur Verfügung.

Dabei sind zwei verschiedene Arten von Verbindungsmodi zu unterscheiden:

  • aktiver Modus: Hierbei lauscht der Server auf Port 20, wobei der Client einen zufälligen Port für die Datenübertragung verwendet.
  • passiver Modus: In diesem Modus öffnet der Server einen zufälligen Port, mit dem sich der Client verbindet.

2. Authentifizierung

Nachdem eine Verbindung zwischen den zwei Geräten hergestellt ist, muss sich der Client beim Server anmelden. Dies geschieht meist durch die Eingabe von Zugangsdaten, die aus einem Benutzernamen und einem Passwort bestehen. Manche FTP-Server erlauben aber auch anonyme Anmeldungen.

3. Interaktion mit dem Server

Nach erfolgreicher Authentifizierung befindet sich der Nutzer im Stammverzeichnis des FTP-Servers. Hier kann er durch die Verzeichnisse und Dateien navigieren, neue erstellen, bestehende bearbeiten oder löschen. Zudem können Daten vom Server heruntergeladen werden oder vom Desktop-PC auf den Server.

Um eine Datei auf den Server zu transferieren, sendet der Client den Befehl „PUT“ oder „STOR“ mit dem dazugehörigen Dateipfad. Der Server prüft dann die Berechtigung des Nutzers und die vorhandene Speicherkapazität. Anschließend wird die Datei an den Server gesendet und dort gespeichert.

Um eine Datei vom Server herunterzuladen, werden die Befehle „Get“ oder „RETR“ verwendet. Nachdem der Server die Berechtigung des Nutzers verifiziert hat, sendet er die Datei an den entsprechenden Dateipfad des Endgeräts.

4. Beenden der Verbindung

Nachdem die Datenübertragung abgeschlossen ist, können Nutzer die Verbindung zum Server schließen. Dies erfolgt durch den Befehl „QUIT“. Der Server bestätigt den Verbindungsabbau und die Sitzung endet.

Anwendungsbeispiele für FTP

Das File Transfer Protocol hat sich in der Welt des Internets fest etabliert. FTP ist das Standardprotokoll für viele Nutzer, die eine Datenübertragung zwischen zwei Geräten realisieren wollen.

Die folgenden Anwendungsbeispiele zeigen, wie flexibel das Protokoll eingesetzt werden kann:

  • Webentwicklung: Häufig verwenden Webentwickler FTP, um Dateien auf Server hochzuladen und ihre Websites zu bearbeiten.
  • Datenarchivierung: Unternehmen oder Organisationen nutzen das File Transfer Protocol, um Dateien auf externe Server zu übertragen und so dort zu sichern.
  • Serveradministration: Administratoren nutzen das Protokoll, um Sicherungskopien, Patches oder Konfigurationsdateien auf ihre Server zu laden. Gleichzeitig können sie Backups vom Server herunterladen und an einem anderen Ort sichern.