Bei einer Gigabit-Verbindung erreicht Teracopy 31 MB / s, bei Windows 8 jedoch ~ 109 MB / s?

13

Ich habe heute meinen ersten Einblick in Gigabit-Netzwerke bekommen, zwischen meinem 2011 MacMini und Windows 8 Pro Desktop, der über Cat.5e mit Linksys WRT320N (sporting dd-WRT) verbunden ist.

Nachdem ich sichergestellt hatte, dass die Leitungsgeschwindigkeit auf beiden Systemen 1 Gbit / s betrug, kopierte ich einen 2,4 GB MP4 vom Mini auf den Win 8-Desktop (SMB-Sharing). Obwohl ich mit den 30-34 MB / s von Teracopy zufrieden bin (was für mich eine deutliche Steigerung von 10 MB / s bedeutet), war ich dennoch neugierig auf diesen massiven Unterschied zwischen der beworbenen und der realen Geschwindigkeit.

2 Stunden von Google ließen mich glauben, dass es andere Faktoren gab, die zu einer geringeren Geschwindigkeit führten, wobei SMB einer war. Nur um das zu tun, habe ich beide Systeme per iPerf überprüft und erraten, was sich daraus ergibt - ungefähr 875 MBit / s auf beiden Systemen!

Ich stieß dann auf diese kleine Information, nach der ich Teracopy ausschaltete und dieselbe Datei über den normalen Windows 8-Kopierer kopierte. 109 MB / s. Geschmolzene Gehirne :)

Was genau verursacht das? Und kann ich solche Geschwindigkeiten über Teracopy aktivieren? Ich werde die zusätzlichen Funktionen, die Teracopy bietet, jetzt sicherlich vermissen: D

Gaurang
quelle
2
Das erste, was mir einfällt, ist: Wie haben Sie per Teracopy kopiert? Zu / von einem Laufwerksbuchstaben? (was serialisiert Dinge und ist langsamer) oder auf einen UNC-Pfad?
Hennes
Ich habe gerade die Ordner auf beiden Computern freigegeben (Rechtsklick> Freigabe> Diesen Ordner freigeben oder Ähnliches). Ich greife auf den Netzwerkcomputer zu, indem ich einfach "Netzwerk" im linken Bereich des Explorers und in OS X öffne, indem ich den Namen des Netzwerkcomputers im linken Bereich des Finders auswähle. Einfach ausgedrückt, ich greife über den Explorer in Win 8 auf die Mac-Dateien zu, kopiere sie mit dem grundlegenden Befehl Strg + C und füge sie lokal auf dem Desktop des PCs ein.
Gaurang
Welche Laufwerke verwenden Sie? Zwei SSDs? Diese Windows 8-Nummern sehen für mich komisch aus.
Apache

Antworten:

16

Bei einer Gigabit-Verbindung erreicht Teracopy 31 MB / s, bei Windows 8 jedoch ~ 109 MB / s?

Was genau verursacht das? Und kann ich solche Geschwindigkeiten über Teracopy aktivieren? Ich werde die zusätzlichen Funktionen, die Teracopy bietet, jetzt sicherlich vermissen: D

Zwei Wörter: Verifikation und Cache

Technische Erklärung

Dies ist die allgemeine Vorgehensweise zum Kopieren einer Datei mit Windows Explorer:

  1. Liest einen Datenblock vom Quelllaufwerk in den Speicher
  2. Senden Sie den Block durch die Systeme
  3. Schreiben Sie den Block auf das Ziellaufwerk
  4. Wenn noch nicht geschehen, kehren Sie zu Schritt 1 zurück

Dies scheint einfach und kurz genug zu sein. Bei diesem Übertragungsalgorithmus wird jedes Byte der Datei nur zweimal verarbeitet: einmal lesen, einmal schreiben.

Darüber hinaus verwendet Windows (wie auch das Laufwerk selbst) Speicher, um einige Daten zwischenzuspeichern. Anstatt zu warten, bis der vorherige Block fertig geschrieben ist, und dann den nächsten Block zu lesen, kann währenddessen ein neuer Block gelesen werden der vorherige noch geschrieben wird. Dies kann natürlich nicht ewig dauern, aber Windows kann den gesamten verbleibenden freien Speicher als temporären Puffer zum Speichern der meisten, wenn nicht der gesamten im Speicher gelesenen Datei verwenden.

Sie können das Zwischenspeichern in Aktion sehen, indem Sie eine große Datei oder einen Ordner mit vielen Dateien von einem Laufwerk auf ein anderes kopieren und die beiden sofort vergleichen. Der Vergleich wird viel sein diesem Zeitpunkt schneller als zu einem späteren Zeitpunkt, da sich die Datei (en) noch im Speicher befinden und daher nicht wirklich von den Laufwerken gelesen werden.

Da der Speicher sehr schnell ist und die Lesegeschwindigkeiten tendenziell etwas höher sind als die Schreibgeschwindigkeiten, wird die endgültige Übertragungsrate letztendlich nur durch die Schreibgeschwindigkeit des Ziellaufwerks begrenzt.

Teracopy kann zwei Dinge tun, die eine Dateiübertragung verlangsamen können, die der Explorer nicht tut:

  • Verzichten Sie auf den Cache und lesen Sie direkt vom Laufwerk

  • Stellen Sie sicher, dass das Ziel richtig geschrieben wurde

Im Gegensatz zu Explorer, der während der Übertragung nur auf grundlegende Fehler überprüft, kann Teracopy tatsächlich überprüfen, ob die Daten korrekt auf das Ziellaufwerk geschrieben wurden, um eine Datenbeschädigung zu vermeiden, die aufgrund von Problemen mit dem Übertragungsmedium (Netzwerk / Laufwerkskabel usw.) auftreten kann. ) oder das Laufwerk selbst (fehlerhafter Sektor usw.) Wenn Sie dies tun, muss die Datei vom Ziel gelesen werden , um sie mit dem Original zu vergleichen.

Abhängig vom verwendeten Algorithmus und der Größe der Datei kann die Überprüfung auf mindestens drei optimiert werden für jede Datei / jeden Datei-Chunk auf Laufwerksoperationen Gegensatz zu den beiden in Explorer: Lesen Sie die Datei aus der Quelle, schreiben Sie die Datei an das Ziel und lesen Sie die Datei vom Ziel.

Sehen Sie sich an, was passiert, wenn Sie eine Datei mit Teracopy (mit einem HDD-optimierten Algorithmus) kopieren:

  1. Lesen Sie einen Block vom Quelllaufwerk
  2. Hash der Block, der vom Quelllaufwerk gelesen wurde
  3. Senden Sie den Block durch die Systeme
  4. Schreiben Sie es auf das Ziellaufwerk
  5. Löschen Sie die Caches
  6. Lesen Sie den Block vom Ziellaufwerk zurück
  7. Hash den Chunk vom Ziellaufwerk
  8. Vergleiche Hashes
  9. Bestimmen Sie den nächsten Schritt
    • Wenn die Hashes nicht übereinstimmen, geben Sie einen Fehler an und fordern Sie den Benutzer zum Handeln auf
    • Wenn die Hashes übereinstimmen und nicht abgeschlossen sind, fahren Sie mit Schritt 1 fort

Das Problem ist, dass, wenn Sie die Dateien während der Übertragung zwischenspeichern, der Vergleich unbrauchbar wird, da Sie nicht die tatsächlichen Daten auf dem Ziellaufwerk lesen, sondern die im Speicher zwischengespeicherte Kopie von der Quelle lesen. Zur ordnungsgemäßen Überprüfung müssen Sie daher den Cache leeren. Dies kann nach jedem Lese- und Schreibvorgang erfolgen (ein zusätzlicher Vorgang, der unzählige Male für Dateien mit einer signifikanten Größe ausgeführt werden würde) oder nur einmal danach die gesamte Datei übertragen wurde.

Gemäß dem folgenden Screenshot führt TeraCopy die Überprüfung nach dem Übertragen der Dateien durch, nicht während. Dies bedeutet, dass stattdessen dieser CPU / RAM-optimierte Übertragungsalgorithmus verwendet wird:

  1. Lesen Sie einen Block vom Quelllaufwerk
  2. Senden Sie den Block durch die Systeme
  3. Schreiben Sie es auf das Ziellaufwerk
  4. Wenn noch nicht geschehen, kehren Sie zu Schritt 1 zurück
  5. Kopieren fertig, also Cache leeren und Verifizieren
  6. Lesen Sie einen Block vom Quelllaufwerk
  7. Hash den Chunk vom Ziellaufwerk
  8. Lesen Sie einen Block vom Ziellaufwerk
  9. Hash den Chunk vom Ziellaufwerk
  10. Vergleiche Hashes
  11. Bestimmen Sie den nächsten Schritt
    • Wenn die Hashes nicht übereinstimmen, geben Sie einen Fehler an und fordern Sie den Benutzer zum Handeln auf
    • Wenn die Hashes übereinstimmen und nicht abgeschlossen sind, fahren Sie mit Schritt 6 fort

Während dieses Algorithmus legt etwas weniger Belastung für die CPU und RAM, auch es viel mehr Belastung für die Festplatte (n) legt , weil jetzt jede Datei verarbeitet wird , hat vier Mal: die gesamte Datei aus der Quelle lesen, schreibt es zum Ziel Lesen Sie es dann erneut von der Quelle und erneut vom Ziel.

(Wenn TeraCopy für Netzwerkübertragungen optimiert wäre, könnte vermieden werden, dass die gesamte Datei ein zweites Mal zur Überprüfung gesendet wird und nur die Hashes gesendet werden, die viel kleiner sind, aber dies scheint derzeit nicht der Fall zu sein, und Netzwerktreiber werden gleich behandelt als lokales Laufwerk, so dass es tatsächlich die Quelle neu liest.)

Standardmäßig überprüft oder verwendet TeraCopy den Cache nicht. Eine Nichtverifizierung würde die Übertragung beschleunigen (oder genauer gesagt nicht verlangsamen ), während eine Nichtverwendung des Cache die Übertragung verlangsamen würde .

Anwendung

Um Ihre spezifischen Geschwindigkeitsergebnisse zu ermitteln, müssen Sie Ihre Einstellungen überprüfen, um festzustellen, ob Sie sie geändert haben. Dann können Sie versuchen, zu schätzen, welche Geschwindigkeiten Sie mit den verschiedenen Einstellungen erhalten würden (beachten Sie, dass diese wahrscheinlich interagieren werden, sodass es nicht einfach ist, sie zu addieren oder zu subtrahieren).

Das heißt, lassen Sie uns eine flüchtige Berechnung mit Ihren Zahlen machen:

  • Lokale Dateiübertragung: 875 Mbit / s (dh Laufwerksgeschwindigkeit)
  • Netzwerkgeschwindigkeit: 1 Gbit / s = 119,21 MBit / s
  • Kopieren Sie über den Windows Explorer: 109 MBit / s
  • Kopieren über TeraCopy: 34 MBit / s

Auf Anhieb stellen wir fest, dass der Dateitransfer des Explorers Ihren Netzwerkdurchsatz nahezu maximiert. Eine 1-Gbit / s-Verbindung entspricht 1.000.000.000 Bits pro Sekunde, was in binären Einheiten von Bytes 119 MBit / s entspricht. Explorer taktet 109MBps, und der restliche 10MBps (was komisch genug , um Ihr vorheriger war max :^Þ ) kann leicht durch Overhead, Hintergrundbelastung und Fragmentierung berücksichtigt werden.

(Da die Übertragungsrate fast der Netzwerkgeschwindigkeit entspricht, können wir davon ausgehen, dass die Dateiübertragung in eine Richtung erfolgt und nur eine einzige Kopie jeder Datei gesendet wird.) Explorer erhält 110 MBit / s für zwei Dateizugriffe pro Datei.

Nun zu TeraCopy. Es scheint, dass TeraCopy fast genau ein Drittel der Geschwindigkeit des Explorers erreicht.

Abhängig davon, ob das Dialogfeld "Einstellungen" den verwendeten Algorithmus genau angibt oder nicht, sendet TeraCopy möglicherweise die gesamte Quelldatei zweimal, damit die Kopie überprüft werden kann. Dies halbiert sofort den Durchsatz. Wenn der Cache eingeschaltet ist, verringert dies ebenfalls die Geschwindigkeit, da auf das Ende jedes Schreibvorgangs gewartet werden muss, bevor ein neuer Block gesendet werden kann. In Kombination mit der Verifizierung kann es das System sogar noch mehr beeinträchtigen.

Ihre Übertragungsrate von 34 MBit / s erscheint angemessen, wenn Sie die Überprüfung aktiviert und die Zwischenspeicherung deaktiviert haben. Wenn Sie die Überprüfung deaktivieren und die Zwischenspeicherung aktivieren, sollten Sie ungefähr das Gleiche wie im Explorer erhalten (je nachdem, wie unterschiedlich der von TeraCopy verwendete Dateiübertragungscode von dem im Explorer verwendeten Code ist, erhalten Sie möglicherweise immer noch etwas weniger oder sogar etwas mehr).

Wenn Sie fast 10 GB übertragen möchten, können Sie auch versuchen, die Einstellungen zu ändern und die Übertragung für jede der vier Permutationen zu wiederholen. Notieren Sie sich die erzielten Geschwindigkeiten Aus zwischen den Läufen:) V+C+, V+C-, V-C+, V-C-.


Screenshot des TeraCopy-Einstellungsdialogs mit den Standardeinstellungen

Synetech
quelle
1
Empfehlen Sie Ihrer Meinung nach, wenn Sie eine SSD verwenden, um den "Use System Write Cache" (Systemschreibcache verwenden) zu aktivieren (aktivieren), wenn Sie nach maximaler Leistung suchen?
Onkel Iroh
1

Ich würde vermuten, dass dies mit der Tatsache zusammenhängt, dass Windows 8 SMB Version 3 verwendet, und ich bezweifle, dass teracopy mit SMB Version 3 kompatibel ist und standardmäßig SMB 2 verwendet. Nur eine Vermutung ...

MDT Guy
quelle
0

Ich kann Ihnen keine 100% ige Antwort auf Ihr Problem geben, aber ich kann weitere hinzufügen, die möglicherweise helfen.
Mein Grund für den Wechsel zu Teracopy war die Art und Weise, wie Windows alles "berechnen" muss, bevor etwas unternommen wird, und diese Berechnung selbst kann manchmal den gesamten Prozess einfrieren. In anderen Beiträgen wurde darauf hingewiesen, dass die Art der zu kopierenden Datei in Windows-Kopien eine Rolle spielt, was ich in Teracopy nicht sicher sagen kann, da ich dies nicht gesehen habe. Aber meine eigenen Versuche haben mich bisher mit weniger zurückgelassen, als Sie auf jeden Fall bekommen. Ich kopiere nur allgemeine Dateitypen, keine Mediendateien (z. B. Foto- / Filmdateien).

Meine Tests gingen von einem 3-TB-NAS von Seagate mit GB-NIC-Zugang in einem 100-GB-Netzwerk zu einem GB-System. Bester Fall, 14 Gbit / s. Der Wechsel von NAS zu System HD unter Windows erreichte 12,4 GBit / s und dauerte etwas länger. Nichts näherte sich Ihren 30-34 Mbit / s, geschweige denn 109 Mbit / s.

Ein Teil davon ist sicherlich auf die Flusskontrolle des NAS zurückzuführen, selbst in einem GB-Netzwerk. Ich würde mich sehr freuen, wenn ich 34 GB / s bekommen könnte, noch glücklicher, wenn ich 109 GB / s bekommen könnte. Wenn Sie einen schnelleren Dateikopierer finden, posten Sie bitte! :)

user1376156
quelle
1
Ich möchte hinzufügen, dass die Einstellung für die Verwendung des System-Schreib-Cache bei Verwendung einen signifikanten Unterschied bei der Echtzeit-Vervollständigung darstellt. Viel schneller.
user1376156
Wie erreichen Sie 14 Gbit / s über das Netzwerk? Selbst SATA III unterstützt solche Geschwindigkeiten nicht.
März Ho
0

Dies half mir bei diesem Problem zwischen Intel-Motherboard-Chipsatz-NICs.

Die TOE (TCP Offload Engine) wurde 2003 in Windows eingeführt. Die schrecklichen Ergebnisse der Broadcom-Netzwerkkarten, die zu dieser Zeit auf den meisten Servern verwendet wurden, führten zu einer Beschädigung der Daten, wenn Sie die Prüfsumme "ausgelagert" haben. Es sieht so aus, als hätten die NIC-Anbieter immer noch kein Recht, und es ist nicht nur Broadcom. Das Netzwerk-Offloading ist fast immer langsamer und anscheinend auch fehleranfälliger als alles in Software. Ich würde in Ihre Adaptereinstellungen gehen und jegliches Hardware-Offloading jeglicher Art deaktivieren.

Glugglug
quelle
2
Wenn dies die Ursache wäre, wäre der gesamte TCP-Netzwerkverkehr langsam. Nicht nur Teracopies-Netzwerk ja eine schnelle Explorer-Kopie.
Hennes
0

Zuvor hatte ich das gleiche Problem mit langsamen Übertragungen über TeraCopy. Celeron J1800 mit eingebauter Realtek Gigabit 8111C LAN-Karte. Ich bekam nicht mehr als 35-45 Megabyte pro Sekunde. Ziemlich frustrierend!

Am Ende war ich ein schlechter LAN-Kartenfahrer.

Installierte Windows von Grund auf mit OEM-Treibern. Ich habe auch folgendes gemacht:

Unter Geräte-Manager / LAN-Karte / Erweiterte Einstellungen / Alles außer FLOW CONTROL deaktivieren.

Deaktivieren Sie unter Windows-Funktionen die differenzielle Remotekomprimierung.

Jetzt liegt die durchschnittliche Geschwindigkeit zwischen 60-70 Mbit / s

Bildbeschreibung hier eingeben

Gi Cakov
quelle
-1

Ich habe auch mehrere Tests mit Teracopy 2.3 final und meiner Synology Diskstation durchgeführt. Tatsächlich ist der Kopiervorgang zu langsam. Ich habe Dateien mit einer Durchschnittsgeschwindigkeit von ca. 40 MB / s kopiert.

Das ursprüngliche Windows 8-Dateikopierprogramm ist schneller als Teracopy!

Momentan probiere ich Ultracopier aus, meine aktuellen Geschwindigkeiten liegen bei ca. 80 MB / s, viel schneller als bei Teracopy. Ich mag Teracopy, aber ich denke, Teracopy hat ein Netzwerkkopieproblem.

Da ich viele Dateien von einem Netzwerklaufwerk auf ein anderes kopiere, muss ich das schnellste Kopierprogramm verwenden, das ich bekommen kann, da der Kopiervorgang immer zu lang ist.

Michael
quelle
1
Ich wollte gerade Ultracopier ausprobieren ... und google hat es durchsucht und Wiki gibt an, dass es sich um Malware handelt, die als Ersatz für Windows Explorer-Dateien getarnt ist ... VORSICHT! IN ACHT NEHMEN! "Ultracopier ist Malware, die sich als Werkzeug tarnt, um die Dateikopierfunktionen von Windows Explorer / File Explorer zu ersetzen." en.wikipedia.org/wiki/Ultracopier
2
Ultracopier ist eine Malware - ich empfehle nicht, sie zu verwenden. ( de.wikipedia.org/wiki/Ultracopier )
Art Gertner
4
Wenn Sie sich tatsächlich die Zeit nehmen, den Artikel zu lesen, der mit dieser Wiki-Seite verlinkt ist, wird Folgendes veröffentlicht: "Um das zu finanzieren, habe ich einen Bitcoin-Miner (der die GPU zu 100% verwendet) oder eine Version ohne diese, jedoch mit einer kleinen Werbung in installiert die kostenlosen Versionen. " Es ist jedoch ein wichtiger Punkt, dass die Software dies auf ihrer Download-Site nicht eindeutig angibt.
Mokubai