10Gbit Netzwerk Datentransfer langsam

HaiFisch1599

Cadet 3rd Year
Registriert
Dez. 2010
Beiträge
53
Hallo zusammen,

ich hoffe die Frage passt in diesem Unterforum und würde mich über Hilfe freuen.

Ich habe einen Heimserver für meine Fotos und die Übertragungsgeschwindigkeit sinkt beim Kopieren von z.B. 100 GB Fotos von 300MB/s auf 80MB/s, ohne einem für mich ersichtlichen Grund.

Kurzer Überblick Konfiguration:

Windows Server 2012 R2
Supermicro Board wegen IPMI
Asus XG-C100C 10G Netzwerkkarte
Daten SSD
7x6TB im Raid6 am Broadcom Controller

Switch
Netgear GS110MX

PC
Windows 10
Core i7
Asus XG-C100C 10G Netzwerkkarte
NVME SSD

transfer_langsam neu.jpg



In schwarz sieht man den Desktop meines PCs. Der obere angehaltene Transfer geht vom PC auf das Raid 6 vom Server von 300MB/s auf 80MB/s runter.

Der untere angehaltene Transfer geht vom PC auf die Daten SSD auf dem Server. Ob beide laufen oder nur einer, ändert nichts an der Geschwindigkeit. (Hintereinander gestartet und abwechselnd gestoppt und wieder gestartet.)

Rechts sieht man den Desktop vom Server. Dort wird der gleiche Bilder Ordner intern von der Daten SSD auf das Raid6 kopiert mit ca. 250MB/s und einer Laufwerksauslastung von ca. 50%. 250MB/s und 50% passt zusammen. Die SSD ist mit 500MB/s Lesen angegeben und mit ATTO Disk Benchmark kommt das Raid6 auf 500MB/s Schreibgeschwindigkeit. Hier könnte man die Frage stellen, wieso die Laufwerke hier nur bei 50% Auslastung laufen.

Aber vor allem nervt mich, dass die Transfers vom PC auf den Server einbrechen und ich keinen Grund dafür finde. Am Netzwerk kann es irgendwie nicht liegen, da es keine Rolle spielt ob einer läuft oder beide. Und den Laufwerken kann es irgendwie auch nicht liegen, das sich die langweilen und deutlich schneller könnten.

Habt ihr eine Idee woran es dann liegt?

Viele Grüße
Christoph

transfer langsam 2.PNG
 
Zuletzt bearbeitet:
Viele Dateien bei gleichzeitig "geringer" Dateigrößen = Langsamer Datentransfer, auch bei SSDs oder Raid

eine Datei mit 1 GB ist wesentlich schneller transferiert als 1024 Dateien mit 1 MB Dateigröße.
 
Was passiert den bei einer großen Datei?
Das die Datenrate absinkt bei vielen kleinen Fotos ist für mich erstmal logisch.
 
bau dir eine GRosse Datei zB mit WinRAR über die Kompressionsstufe "speichern" also nicht packen oder so, und transferier diese Datei mal und schau wie da die Datenraten sind.
 
Teures Vergnügen fürn paar Bilder :p

Aber die vielen, relativ kleinen Dateien sind nicht schneller zu transferieren. 80 MB/s ist da noch ganz gut. Kann je nach Größe und Hardware auch mal auf ein Viertel davon einbrechen.
 
Der Verwaltungsaufwand für Windows ist wesentlich größer als bei einer Datei.

Nach jeder Datei wird das Verzeichnis aktualisiert.
 
Hallo zusammen, vielen Dank schon mal!

Die Bilder haben zwischen 20MB und 40MB. Auf dem Screenshot sieht man, dass ich den Test mit dem ATTO Benchmark mit 24MB gemacht habe. Dass es bei wirklich kleinen Dateien langsam wird, auch bei SSDs, ist mir klar. Nur so klein sind die ja nicht.

Außerdem hält das Raid die Geschwindigkeit, wenn ich intern die Fotos kopiere, mit denen es übers Netzwerk langsamer wird.

Mit größeren Dateien (1 bis 4 GB), hier ein paar Videos von der Kamera, wirds schneller, bis zu 560MB/s. In dem Fall gerade waren es 430MB/s.
transfer große Datei.PNG
 
20-40 MB ist zwar nicht ganz klein, aber schon deutlich kleiner als 1 GB und mehr. Nicht nur die Festplatten werden dann mehr belastet sondern auch alle anderen Teile. In diesem Fall kann es gut sein, dass einer der Netzwerkadapter dabei in die Knie geht.
 
An eine Überhitzung der Netzwerkadapter habe ich auch schon gedacht. Aber das ist irgendwie auch nicht logisch, da sich die beiden Transfers nicht beeinflussen. Die landen beide bei 80MB/s. Und wenn ich einen ausschalte geht der andere trotzdem nicht schneller. Ich habe auch schon überlegt, PC und Server mal ohne switch zusammenzuhängen. Vorher wollte ich aber gerne noch Eure Meinungen hören. Jumboframes mit 4088byte sind an, Unterschied habe ich aber keinen gemerkt. Wenn ich den ATTO vom PC auf dem Netzlaufwerk laufen lasse, auch mit 32GB großer Testdatei, läuft es ebenfalls schneller.
 
Erstmal iperf laufen lassen und checken ob das Netzwerk ueberhaupt passt, danach ins Thema einlesen, Stichwort 9k jumboframes usw, dann dein IO subsystem prüfen. Danach mit der Hexerei die hier manche vorschlagen anfangen.
 
Schau dir doch Mal beim "langsamen" Schreiben die Latenz und IOPS auf dem Volumen /Speicherpool auf dem NAS an.

Lg
 
Für mich hört sich das so an das der Prozessor vom Server mit vielen kleineren Dateien einfach nicht hinterher kommt den mit großen Datein hast du ja keine Probleme. Von daher ist davon auszugehen das dir der CPU Core der für die Empfangenen Daten zuständig ist einfach voll läuft und einfach nicht hinter her kommt. Denn hier gibt es leider keine Multicore Unterstützung.
 
HaiFisch1599 schrieb:
Nur so klein sind die ja nicht.

Für die von dir angestrebten Geschwindigkeiten ist das schon klein. Alles was unter einer Sekunde zur Übertragung benötigt ist eine kleine Datei. Je kleiner schlimmer für die Geschwindigkeit.

anhand deiner Zip siehst du ja, das die Geschwindigkeiten problemlos machbar sind
 
Hallo zusammen,

hier 2 screenshots vom Kopieren eines 200Gb großen Ordners mit ca. 30MB großen Fotos vom PC übers Netzwerk auf das Raid 6 des Servers.

Zu Beginn wurde mit ca. 300MB/s kopiert, und nach den ersten 100GB lag die Übertragungsrate noch bei ca. 200MB/s: (6014 Elemente und 3105 verbleibend)

transfer 100GB besser.PNG


Später waren es nur noch 45MB/s (6014 Elemente und 563 verbleibend)

transfer runter bis 45MB pro s.PNG


Die Beobachtung ist also, je mehr Dateien schon im Ordner sind, desto langsamer wird übers Netzwerk in diesen Ordner kopiert.

Kopiere ich serverintern in einen gleich gefüllten Ordner mit über 5000 Elementen von der SSD auf das Raid6, geschieht das mit der üblichen Geschwindigkeit, ca. 330 MB/s: (Die Ordner heißen unterschiedlich, weil ich die Tests mehrfach gemacht habe, aber die Bilder sind immer die gleichen. Ich habe nur bei ersten Mal nicht alle Screenshots passend erstellt.)
transfer intern in gleichen ordner.PNG



Letzter Versuch um die Beobachtung zu verifizieren. Kopieren von 1079 Bildern übers Netzwerk in den oben erwähnten vollen Ordner des Servers auf dem Raid6 mit ca. 50MB/s.
transfer in vollen ordner.PNG


Dann Anhalten dieses Transfers und Kopieren der gleichen 1079 Bilder in einen leeren Ordner des Servers auf dem Raid6 mit 200 bis 300MB/s.
transfer in leeren ordner.PNG



Also die Frage:
Wisst ihr, wieso es über das Netzwerk eine Rolle spielt, wie viele Dateien schon in dem Ordner sind, in den kopiert wird?

(Serverintern spielt es für die Kopiergeschwindigkeit keine Rolle, wie viele Dateien schon in dem Ordner sind.)
 
HaiFisch1599 schrieb:
Wisst ihr, wieso es über das Netzwerk eine Rolle spielt, wie viele Dateien schon in dem Ordner sind, in den kopiert wird?

eigentlich spielt dann nur die Dauer eine Rolle, denn dir wird die Durchschnittsgeschwindigkeit über einen gewissen Zeitraum angezeigt. Ist dieser kurz, erhöhen hohen Zwischenspeichergeschwindigkeiten die Durchschnittsgeschwindigkeit. Je länger der Vorgang aber dann dauert, desto näher kommst du an die reale Kopiegeschwindigkeit

HaiFisch1599 schrieb:
(Serverintern spielt es für die Kopiergeschwindigkeit keine Rolle, wie viele Dateien schon in dem Ordner sind.)

Das macht dann wohl entwerder der Raidcontroller mit Caching oder wird nur anders angezeit. Windows macht sowas auch gerne. Als ich noch Festplatten im Rechner hatte konnte ich das gut sehen. Habe eine Datei mit 1 GB von einer Festplatte auf eine andere kopiert. Datei wurde mir innerhalb von 0,1 sek rüberkopiert. An der Festplattenaktivität konnte man aber schön sehen, wie in den nächsten 10 - 20 sek die für 2 - 3 sek immer wieder hohe Aktivität da war, da wurde die Datei im Hintergrund kopiert.
 
Klingt für mich ein wenig nach einem SMB Problem, das mit einer großen Anzahl von Dateien nicht skaliert. Ich erinnere mich an ähnliche Probleme.

Dementsprechend wär es mal interessant zu verifizieren ob es evtl. daran liegt. Folgenden Test könntest du machen, falls du ihn noch nicht gemacht hast:
Kopieren 2000 Dateien in einen Ordner, in dem sich bereits 5000 Dateien befinden. Vergleiche den Verlauf mit dem Kopieren von 2000 Dateien in einen leeren Ordner.

Falls es hier keine Unterschiede gibt, so gibt es leider noch die Möglichkeit, dass sich das Problem erst im Laufe einer größeren Kopier Operation aufbaut, weil das Kopieren mehrer Dateien ab >1k nicht skaliert. Ich habe teilweise auch schon Probleme beim Laden von Ordnern mit > 1000 Items
Ergänzung ()

Wie sieht denn dein Hardware Setup aus? Wo steckt denn dein Raid Controller drin? PCie x1? PCI? Und wo ist deine Netzwerkkarte drin?

Ich hatte mal ein ähnliches Problem, da meine 2. Netzwerkkarte am PCI lag, während ich eine SATA Karte ebenfalls auf PCI hatte. Hier kam schlichtweg der PCI Bus an seine Grenzen. Allerdings lagen hier dann die Transferraten anstelle von 100 mb/s bei so 1 mb/s. Das ist bei dir ja nicht ganz so krass, aber evtl. greifen hier schon die nächsten Bus Limits.
 
Hi Sebbi,

der Controller hat 2 GB RAM und der Server hat 4 GB RAM, wovon nur 1,5 belegt sind. Natürlich nimmt das Betriebssystem und auch der Controller Daten in den Cache bevor auf sie auf die Platten kommen, nur wird das Ganze ja nach 100GB langsam, da können maximal 6 GB RAM (eher werden aber 3 GB genutzt) keine große Rolle spielen. Von den 100GB sind zum Zeitpunkt des einen Screenshots sicher 94 GB wirklich auf das Raid geschrieben.

An PCIE 3.0 Slots sollte es auch nicht liegen, da ich mit Ram Disks und großen Dateien noch höhere Raten erreiche, sowohl übers Netzwerk als auch über den Controller.

Hier nochmal ein 50 GB großer Ordner mit Video Dateien übers Netzwerk auf das Raid6:
transfer 50GB großer Video Ordner.PNG


Schneller ist die SSD, von der die Videos gelesen wurden nicht.
 
Der toxic scheint mit den Windows Netzwerk Protokoll SMB Recht gehabt zu haben. Man findet auch ein paar Einträge dazu im Internet.

Test mit 300GB Fotos in einem Ordner, kopiert über ftp und FileZilla. Logfile und Stoppuhr: 23 Minuten, ergibt einen Durchschnitt von 220MB/s. Also kein Einbruch der Geschwindigkeit vorhanden. Scheinbar hat das Netzwerkprotokoll von Windows beim Scheiben Probleme wenn sich in den Ordnern mehr als 1000 Dateien befinden.

transfer ftp schneller.PNG


Auf dem Screenshot sieht man 6400 erfolgreiche Übertragungen in den Ordner und eine Momentanübertragungsrate von 322MB/s. Die Auslastung von Netzwerk und der Datenträger passen auch dazu.

Hat jemand Tipps zum Konfigurieren des Windowsnetzwerkes, so dass es den Geschwindigkeitseinbruch nicht erleidet?
 
Moin,
du kannst auch mal versuchen die Übertragung mit einen anderem Tool wie z.B. dem Total Commander durchzuführen. Die Windows Bordmittel sind wie du schon festgestellt hast, nicht immer gut geeignet.

Grüße
 
Zurück
Oben