2017-03-01 2 views
0

Ich richte einen FTP-Server mit Indy 10.6 und die erste Verbindung vom Client (filezilla) öffnet eine Verbindung mit dem Server und ich bin gut eingeloggt . Wenn ich Dateien vom Server herunterlade, werden zwei weitere Verbindungen geöffnet (OnConnect wird noch zweimal ausgelöst), sodass jetzt drei Verbindungen vom selben Client zum Server bestehen.Warum öffnet Indy 10.6 FTPServer 2 neue Verbindungen zum Übertragen von Dateien

Ist dies erforderlich oder ist etwas nicht richtig im Server eingestellt? Wenn es erforderlich ist, wie viele Verbindungen insgesamt kann ich erwarten, dass ein einzelner Client geöffnet wird?

Antwort

1

TIdFTPServernicht offen 3 Verbindungen für eine einzelne Übertragung, und wird sicherlich nicht das mehrfach für sie OnConnect Ereignis ausgelöst.

Das FTP-Protokoll verwendet nur 2 Verbindungen pro Client-Sitzung - 1 für den Austausch von Befehlen/Antworten und 1 für jede Datenübertragung. Dateien werden sequenziell heruntergeladen, sodass jeweils nur eine Datenverbindung aktiv ist.

Die einzige Möglichkeit, mehrere OnConnect Ereignisse zu erhalten, ist, wenn der Client mehrere Befehlsverbindungen öffnet. Datenverbindungen lösen nicht das Ereignis OnConnect aus (sie lösen stattdessen die Ereignisse OnDataPortBeforeBind und OnDataPortAfterBind aus).

FileZilla hat die Fähigkeit, mehrere Dateien parallel herunterzuladen, und dies erfordert den Aufbau mehrerer FTP-Verbindungen. Sie können diese die Einstellungen in FileZilla begrenzen:

settings

+0

Perfect, dass es tat;) – user7475089

Verwandte Themen