Was ist die typische Leistung von Windows File Sharing (SMB) in einem Gigabit-Ethernet-Netzwerk?


10

Ich habe kürzlich die Windows-Dateifreigabe über ein Gigabit-Ethernet-Netzwerk (ich verwende keine Jumbo-Frames) mit einem Samba-Server und einem Windows Vista-Client eingerichtet. Ich habe einige Dateikopien erstellt, aber der maximale Durchsatz, den ich sehe, beträgt 20 MB / s (Megabyte, nicht Megabit), was ungefähr 15% des theoretischen Maximums von 125 MB / s für das Netzwerk entspricht. Der Server verfügt über ein RAID-Array, das ungefähr 75 MB / s verwalten kann (der Engpass ist der PCI-Bus), und der Client kann ungefähr 40 MB / s in einer Disk-to-Disk-Kopie verwalten.

Ich sollte hinzufügen, dass es zu diesem Zeitpunkt keinen anderen Verkehr im Netzwerk gab.

Ich verstehe, dass ich niemals das theoretische Maximum erreichen werde, aber ich dachte nicht, dass es so schlimm sein würde.

Was ist die typische Leistung von Windows File Sharing (SMB) in einem Gigabit-Ethernet-Netzwerk?

Bonuspunkte: Was kann ich einstellen (außer Jumbo-Frames), um dies zu beschleunigen?


2
Ich habe die Leistungsprobleme in meinem Netzwerk behoben: Sie waren eine Kombination aus einer schlechten integrierten Netzwerkkarte auf dem Server und alten Netzwerkkartentreibern auf dem Client. Ich sehe jetzt zwischen 50 MB / s und 80 MB / s auf einigen Massenkopien, die ich zum Testen gemacht habe. Die Übertragungen scheinen jedoch von Zeit zu Zeit einige Sekunden lang unerwartet anzuhalten.
Kaypro II

1
Eine weitere Ursache für meine schlechte Netzwerkleistung war, dass durch die bloße Ausführung eines virtuellen PCs (ohne dass unbedingt Bilder ausgeführt werden müssen) meine Netzwerkkarte auf meinem Vista-Computer auf ~ 100 Mbit / s gedrosselt zu werden scheint.
Kaypro II

Antworten:


8

Die Qualität Ihrer Netzwerkkarten, Switches und Kabel kann sich auswirken. Es kann sich lohnen, nach Überprüfungen der von Ihnen verwendeten Netzwerkkarten und Switches zu suchen, um festzustellen, ob andere Personen sie als nicht besonders leistungsfähig melden. Ich bin der Meinung, dass in das Mottenbrett integrierte Netzwerkkarten schlechter für Gbit-Übertragungen sind, obwohl dies meiner Erfahrung nach keinen großen, wenn überhaupt, Unterschied in meiner Umgebung zu bewirken scheint.

Als Referenz habe ich gerade einen neuen Gbit-Switch in unserem Büro installiert (der alte 100-Mbit-Switches ersetzt), und große SMB-Übertragungen werden zwischen jeder von mir getesteten Maschinenkombination mit einer Geschwindigkeit von fast (aber weniger als) 30 MByte / s ausgeführt. Ich habe gerade einen kurzen Test mit Netcat zwischen zwei der Maschinen durchgeführt und ähnliche Ergebnisse erzielt, sodass ich nicht denke, dass SMB der Engpass ist. Die beiden Maschinen, die ich gerade getestet habe, haben zwei Schalter zwischen sich, die möglicherweise einen Effekt haben, aber ich denke, dieser Effekt ist minimal, wenn man bedenkt, wie nahe die Zahlen an einer SMB-Übertragung auf eine Maschine auf demselben Schalter liegen.

Die beste Übertragungsrate, die ich über ein Gbit-Netzwerk gesehen habe, war etwas weniger als 50 MByte / s am schnellsten. Dies geschah beim Übertragen eines Laufwerksabbilds von einem Computer in eine Datei auf dem anderen (zum Zwecke der Konvertierung in ein virtuelles VMWare-Laufwerk. In diesem Fall wurden die beiden Computer über ein kurzes Überkreuzungskabel und nicht über einen Switch verbunden. Zufällig Eine der fraglichen Maschinen war eine der Maschinen, die ich gerade getestet habe und von denen ich ~ 29 MByte / Sek. habe - der wahrscheinlichste Schuldige für den Hauptengpass in meinem Fall ist wahrscheinlich die 8 Jahre alte Verkabelung im Gebäude, die möglicherweise durchgeführt wurde Ein schneller (und ebenso unwissenschaftlicher) Test in meinem kleinen Heimnetzwerk zeigt Übertragungsraten von eher 35 MByte / Sek. Kopieren einer Datei von einer Samba-Freigabe auf eine Windows-Box und 25 MByte / Sek. in die andere Richtung (I '

Jumbo-Frames werden für Massentransfers einen Unterschied machen. Ich empfehle Ihnen daher, es zu versuchen, wenn alle Ihre Kits sie ordnungsgemäß unterstützen.

Um es kurz zu machen: Nach meiner anekdotischen Erfahrung sind Ihre 20 MByte / Sek. Etwas langsam, aber nicht massiv. Alle meine Windows- und Samba-Installationen sind so gut wie völlig ungestimmt, daher vermute ich, dass Ihre Hardware / Verkabelung den Unterschied zwischen dem, was ich sehe und dem, was Sie sehen, darstellt.

Bearbeiten

Natürlich haben sich Hardware und Software fünf Jahre nach dieser Antwort weiterentwickelt. Ich sehe oft Übertragungen von mehr als 90 MiB / Sek. Auf Computern mit Gbit-Netzwerk, selbst mit billigem Kit. Mein Heimmedium / Backup / anderer Server scheint auf etwas mehr als 60 für Bulk für Übertragungen beschränkt zu sein, aber das scheint Samba zu sein, das auf einem einzelnen Kern der Hardware der Box CPU-gebunden ist.


Die Verkabelung sollte für mich kein Problem sein, der Gigabit-Teil meines Netzwerks ist vollständig CAT6. Ich kann keine Jumbo-Frames verwenden, da mein (Heim-) Netzwerk heterogen ist - ich habe WLAN und ein 100-Mbit-Segment - und ich verstehe, dass Jumbo-Frames nur Gigabit sind. Wenn ich Jumbo-Frames auf bestimmte Hostpaare beschränken könnte, könnte das funktionieren. Das ist ein guter Punkt in Bezug auf die Hardware. Alle von mir sind Verbraucherqualität; Ich muss das untersuchen. Ein anderer Gedanke, den ich hatte, ist, wie die eingebauten Netzwerkkarten verbunden sind, kann ein Problem sein. Wenn man am PCI-Bus ist, könnte das ein Faktor sein.
Kaypro II

1
meinst du nicht "deine 20Mbyte / s sind ein bisschen langsam, aber nicht massiv" (da hat das Ende gegessen)? sonst +1, nette Zusammenfassung.
Quacksalber Quijote

Guter Fang ~ Quacksalber, ordnungsgemäß bearbeitet.
David Spillett

arrrgh. Leider kann ich keine Kommentare bearbeiten, oder ich würde aufhören, das Ende zu essen ...
Quacksalber Quijote

4

Ahh ... hier ist es wichtig, dass ein Server-Typ versteht, was sich unter der Haube befindet. Da dies zwei Jahre alt ist, denke ich, dass er es bereits gelöst hat. Für die Nachwelt oder jemanden mit einem ähnlichen Problem ist dies jedoch wahrscheinlich der Fall

(TCP-Fenstergröße * 8 Bit / RTT in Millisekunden) = Maximaler TCP-Durchsatz in Bit / s

Während Sie möglicherweise über ein Gigabit-Netzwerk verfügen, kann ein einzelner TCP-Fluss wahrscheinlich nicht so hoch werden.

In der folgenden einfachen Tabelle wird davon ausgegangen, dass Sie in Vista die Standardgröße des 65535-Byte-TCP-Fensters haben

RTT 10 ms => TCP-Durchsatz = 52428000 bps = 52 Mbit / s

RTT 20 ms => TCP-Durchsatz = 26214000 bps = 26 Mbit / s

RTT 50 ms => TCP-Durchsatz = 10485600 bps = 10 Mbit / s

RTT 100 ms => TCP-Durchsatz = 5242800 bps = 5,2 Mbit / s

RTT 150 ms => TCP-Durchsatz = 3495200 bps = 4,3 Mbit / s

RTT 200 ms => TCP-Durchsatz = 2621400 bps = 2,5 Mbit / s

RTT 300 ms => TCP-Durchsatz = 1747600 bps = 1,7 Mbit / s

RTT 500 ms => TCP-Durchsatz = 1048560 bps = 1 Mbit / s

Bei 20 MByte / s oder 160 MBit / s liegt Ihre Roundtrip-Latenz wahrscheinlich in der Größenordnung von etwa 3 Millisekunden. Die einzige andere Möglichkeit, dies zu beschleunigen, ist die Verwendung von TCP-Optimierern, die über den Draht de-dupieren oder Fragmente zu größeren Paketen zusammenfügen. Über ein LAN, das Ihnen wahrscheinlich nicht viel für die Kosten bringt. Wenn Sie SoHo-Geräte wie Linksys oder Netgear verwenden, wird Ihre Latenz wahrscheinlich durch das Fehlen gemeinsamer Puffer auf dem Switch verursacht. Wenn es sich um einen größeren Switch wie einen 24-Port handelt, stellen Sie sicher, dass die beiden Geräte an denselben ASIC angeschlossen sind. Dies hilft bei der Serialisierungsverzögerung, aber nicht viel. Wenn Sie es auf 2 ms senken könnten, würden Sie einen Boost von bis zu 31-32 MB / s erhalten. Wenn sie sich auf zwei verschiedenen Switches befinden, können Sie ohne neue Hardware nicht viel tun.


2

Dies hilft Ihnen in diesem Fall nicht, aber Vista / Windows 7, das mit einem Windows 2008-Server kommuniziert, verwendet SMB2, das viel effizienter als normales SMB ist und viel mehr Netzwerkbandbreite nutzt. Siehe Dateiserver Performance - Verbesserungen mit dem SMB2 - Protokoll in Windows Server 2008 und erweiterte Netzwerkleistung mit Microsoft Windows Vista und Windows Server 2008 für weitere Informationen.

SMB2 wird in Samba 4 bearbeitet, aber es sieht so aus, als würde es auf Samba 3.5 zurückportiert .

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.