Zitat von
DGL-luke:
Hm, das ist im
FTP-Modell eigentlich nicht drin.
D.h. es müsste mindestens auf einen Server zwischengespeichert werden.
Diese Aussage ist ziemlich falsch. Gerade das
FTP-Protokoll gibt das her, weil Kommanodokanal und Datenkanal komplett getrennt sind.
Ein normaler
FTP-Transfer (Download/Upload) funktioniert so: Der Client baut einen Kommandokanal zum Server auf und sagt diesem "Bitte schick die Datei 'hulle' an meine
IP a.b.c.d, Port x". Dann baut der Server eine neue
TCP-Verbinung zum angegebenen Ziel auf und überträgt die Datei.
Man kann dabei dann tricksen: der Client baut zwei Kommandokanäle zu zwei verschiedenen Servern auf (Server 1 mit
IP 1.2.3.4 und Server 2 mit
IP 9.8.7.6). Dann sagt der Client zu Server 2 "Hey, ich schick Dir gleich eine Datei von meiner
IP 1.2.3.4" und der Server sagt "jo, ich horche auf Port x". Dann sagt der Client zu Server 1 "Bitte schick mir die Datei 'hulle' an die
IP 9.8.7.6, Port x". Und schon geht der Transfer direkt von 1 => 2.
Das klappt aber nur, wenn keine Firewalls zwischen den einzelnen Komponenten sind.
Also eigentlich ist FXP standardkonform, aber es mag Firewalls geben, die das blocken.
Ich hoffe, die (etwas umgangssprachliche) Beschreibung hilft Dir weiter, das Prinzip zu verstehen.
Gruß,
SirTwist