Ich bin auf der Suche nach Hilfe bei einer sicher uralten Frage. Ich habe mich in der Sehnsucht befunden, den Netzwerkdurchsatz besser zu verstehen, aber ich kann scheinbar keine Informationen finden, die ihn zum "Klicken" bringen.
Wir haben einige geografisch verteilte Server, auf denen verschiedene Windows-Versionen ausgeführt werden. Angenommen, wir verwenden immer einen Host (einen Desktop) als Quelle, und beim Kopieren von Daten von diesem Host auf andere Server im ganzen Land stellen wir eine hohe Geschwindigkeitsabweichung fest. In einigen Fällen können wir Daten mit 12 MB / s konsistent kopieren, in anderen sehen wir 0,8 MB / s. Es sollte beachtet werden, dass wir nach dem Testen von 8 Zielen immer zwischen 0,6 und 0,8 MB / s oder zwischen 11 und 12 MB / s zu sein scheinen. In dem Gebäude, um das es uns in erster Linie geht, haben wir eine OC-3-Verbindung zu unserem ISP.
Ich weiß, dass es eine Menge Variablen gibt, aber ich glaube, ich hatte gehofft, dass die Experten hier helfen könnten, ein paar grundlegende Fragen zu beantworten, um mein Verständnis zu verbessern.
1.) Bei älteren Computern, auf denen Windows XP, Server 2003 usw. mit einer 100-Mbit / s-Ethernet-Karte und einer typischen Latenz von 72 ms ausgeführt wird, ist der Klang von 0,8 MB / s überhaupt vernünftig? Oder denkst du, dass das langsam genug ist, um auf ein Problem hinzuweisen?
2.) Die klassische "mathematisch schnellste Geschwindigkeit" von "Durchsatz = TCP-Fenster / Latenz" wird in unserem Fall mit 0,8 MB / s (64 KB / 72 ms) berechnet. Mein Verständnis ist, dass dies eine Obergrenze ist; dass Sie nie erwarten würden, diese Geschwindigkeit zu erreichen (aufgrund von Overhead) oder gar zu übertreffen. In einigen Fällen sehen wir jedoch Geschwindigkeiten von 12,3 MB / s. Es gibt Steelhead-Beschleuniger, die über das Netzwerk verstreut sind. Könnten diese für eine so höhere Übertragungsrate verantwortlich sein?
3.) Es wurde vorgeschlagen, dass die Verwendung von SMB vs. SMB2 die Geschwindigkeitsunterschiede erklären könnte. In der Tat wird bei der Paketerfassung, wie erwartet, beides in Abhängigkeit von den verwendeten Betriebssystemversionen verwendet. Ich verstehe, was die Verwendung von SMB2 bestimmt, aber ich bin gespannt, welchen Leistungszuwachs Sie mit SMB2 erwarten können.
Mein Problem scheint einfach ein Mangel an Erfahrung und vor allem an Perspektive zu sein, was vernünftige Netzwerkgeschwindigkeiten sind und was nicht. Könnte jemand helfen, Kontext / Perspektive zu vermitteln?
Antworten:
Mit der mathematischen Formel, auf die Sie sich beziehen, können Sie die effizientesten Einstellungen für die Übertragungsfenstergröße für TCP ermitteln, nicht die tatsächlich verfügbare Bandbreite. TCP verwendet einen Mechanismus, der als Schiebefenster bezeichnet wird und die Anpassung der Übertragungsgeschwindigkeit an die Netzwerkbedingungen ermöglicht. Die Idee ist, dass ein TCP-Sender immer mehr Daten sendet, ohne dass eine Bestätigung vom Empfänger erforderlich ist. Bei Datenverlust verringert sich die zwischen Bestätigungen gesendete Datenmenge und damit auch die effektive Bandbreite.
Die fragliche Formel bestimmt tatsächlich die ideale Größe dieses TCP-Übertragungsfensters basierend auf der Latenz und der Round-Trip-Latenz zwischen einem gegebenen Paar von Hosts. Die Idee ist, ein Fenster so zu dimensionieren, dass die Datenmenge im Flug dem sogenannten Bandbreitenverzögerungsprodukt entspricht. Wenn Sie beispielsweise 50 Megabit pro Sekunde (6,25 Megabyte) und eine durchschnittliche Roundtrip-Latenz von 100 ms haben, haben Sie 6,25 * 0,1 = 625 Kilobyte Daten. Dies wäre der Wert, den TCP aushandeln würde (wenn er richtig konfiguriert ist). Da die Latenz- und Bandbreitenmerkmale Ihrer Links variieren, ändert sich auch die Fenstergröße.
Was Sie brauchen, ist ein Bandbreiten-Management-Tool wie iperf (kostenlos), das sowohl auf der Quelle als auch auf Ihren verschiedenen Zielen ausgeführt wird. Dies sollte Ihnen eine Vorstellung von der tatsächlichen Menge des möglichen Durchsatzes (unabhängig von anderen Apps) geben und gleichzeitig einen Einblick in die Latenz gewähren. Durch das Ausführen eines erweiterten Pings zwischen Hosts erhalten Sie auch eine allgemeine Vorstellung von den Latenzmerkmalen. Wenn Sie diese Daten haben, haben Sie eine bessere Vorstellung davon, was Sie in Bezug auf den Durchsatz sehen sollten.
Übrigens - Die Verwendung eines LAN-Optimierers umfasst häufig Datenkomprimierung, TCP-Optimierung, Caching usw. Obwohl er praktisch ist, kann er die Art der zugrunde liegenden Links verdecken. Sobald Sie eine Vorstellung von der unformatierten Bandbreite / Verzögerung (und dem potenziellen Paketverlust) haben, können Sie genauer untersuchen, ob Ihre verschiedenen Hosts so eingerichtet sind, dass sie die verfügbare Bandbreite optimal nutzen.
quelle
Versuchen Sie "ping -l 8092" oder FTP oder HTTP, um zu überprüfen, ob es sich um ein SMB-Problem handelt.
Zuallererst: Mit welchen Medien verbinden Sie Computer? Was uns "100mpbs"? Ethernet? Sie können es nicht für "geografisch verteilte" Computer verwenden, oder?
Im Fall von "VPN über Internet" verwenden Router zwischen Ihren Computern möglicherweise unterschiedliche Links: einer ist schnell, der andere nicht. Sie können den Link basierend auf vielen Parametern auswählen.
Bitte beschreiben Sie Ihr Netzwerk.
Das könnte auch ein MTU-Problem sein: Mehrere Links können unterschiedliche MTUs haben.
quelle
Viele Kommentare und Benutzer haben hier großartige Ratschläge gegeben. Einige von ihnen kamen dem, wonach ich suchte, ziemlich nahe, aber ich hatte auch das Glück, einen Network-Veteranen aus unserem Unternehmen zu treffen, der zur Klärung der Dinge beitrug. Ich dachte, ich würde meine Erkenntnisse / Erkenntnisse hier zum Wohle anderer veröffentlichen. Bitte zögern Sie nicht, mich zu korrigieren, wenn eine der folgenden Bedingungen nicht zutrifft:
1.) Der maximale Durchsatz einer einzelnen TCP-Sitzung mit einer Latenz von 72 ms und einem 64-KByte-Fenster liegt bei 0,8 MByte / s. Dies macht diese Geschwindigkeit für einzelne Thread- und Sitzungskopien, wie wir sie mit Robocopy durchgeführt haben, angemessen.
2.) Dieser Geschwindigkeitsunterschied scheint auf die Effektivität der Übertragungsmethode zurückzuführen zu sein. In unserem Fall haben wir Robocopy und Repliweb verwendet. Ich habe festgestellt, dass Robocopy eine einzelne TCP-Sitzung verwendet, während Repliweb mehrere Sitzungen öffnen kann, um Daten zu senden.
3.) Nachforschungen auf der Microsoft-Website haben ergeben, dass SMB2 einen erheblichen Leistungsgewinn gegenüber SMB1 aufweist. In einigen Fällen gab es jedoch Probleme bei der Aushandlung des zu verwendenden Protokolls durch das Betriebssystem. Daher sollte man sich sowohl darüber im Klaren sein, in welchen Fällen SMB2 verwendet werden kann, als auch darüber, ob SMB2 tatsächlich verwendet wird auf Netzwerkaufnahmen.
Derzeit sieht es so aus, als ob Wire-Shark die Verwendung des SMB2-Protokolls bestimmen kann.
Ich hoffe das hilft. Auch hier ist mein Verständnis ziemlich rudimentär, zögern Sie nicht zu erweitern.
quelle