khan
Goto Top

GBit-LAN mit sehr schlechter Übertragungsrate

Wie stellt man ein GBit-LAN optimal ein?

Was ich hier gerne besprechen möchte ist die Ursache für den miserablen Datendurchsatz in meinem LAN.
Ich habe das LAN in allen denkbaren Konfigurationen auf Datendurchsatz beobachtet und festgestellt, dass ich bei 1000Mbps nur ca. 40Mbps real erreiche, entschieden zu wenig. Bei 100Mbps full duplex ist der Transfer bei 14Mbps zurück, noch weniger berauschend.
Was ich im Moment gar nicht verstehe ist, dass eine Datei vom Server aus vom PC zum Server kopiert ca. 100Mbps erreicht, vom PC zum Server kopiert aber nur 40 Mbps.

Meine Netzwerkkonfiguration ist klassisch:
  • Switch: HP ProCurve 1800-24G - managed Switch, die 1000er Karten sind auf 1000FDX fest eingestellt und mit Cat5e-Kabel verbunden, alles andere 100Mbps FDX Cat5
  • Router+Switch NETGEAR ProSafe VPN Firewall FVS124G1x 1000Mbps 4 Kanäle - hängt mit 1000Mbps am Switch und ist das Standardgateway
  • Server: Eigenbau mit W2003 Enterprise Server /32 - Asus P5B - Intel Core2Duo - 2GB RAM - SATA-RAID (Spiegel) - onboard mit RTL8168 (PCIe)
  • 1 Workstation : HPxw8400 2xXEON5160 8x1GB RAM XP64SP1 nVidia FX4500 91.36 onboard LAN: Broadcom NetXtreme Gigabit (PCIe), HD an SAS-Raid
  • verschiedene PC mit 100Mbps LAN-Karten am Switch mit 100Mbps FDX, erreichen auch die 14Mbps

Was mit unklar ist, sind die Einstellmöglichkeiten über die Registry, und ob sie den Durchsatz positiv oder negativ beeinflussen.
Gesetzt sind

HKLM\CCS\Services\Tcpip\Parameters
"TcpWindowSize"=dword:009f8580
"GlobalMaxTcpWindowSize"=dword:009f8580
"EnablePMTUDiscovery"=dword:00000001
"EnablePMTUBHDetect"=dword:00000000
"SackOpts"=dword:00000001
"DefaultTTL"=dword:000000ff
"TcpMaxDupAcks"=dword:00000002
"Tcp1323Opts"=dword:00000003

HKLM\CCS\Services\LanmanServer\Parameters
"SizReqBuf"=dword:65535

HKLM\CCS\Services\LanmanWorkstation\Parameters
"MaxCmds"=dword:000000ff
"MaxThreads"=dword:000000ff
"MaxCollectionCount"=dword:0000ffff

Sicherlich stammen einige aus der Optimierung für DSL, die DSL-Verbindung (16000) ist dann auch fast so schnell, wie das LAN, und das darf so nicht bleiben.

Die Treiber der entscheidenden Netzwerkkarten stehen auf
1000 FDX bzw AutoSense (Broadcom),
QOS ist aus
Tx/Rx Checksum
FlowControl Auto
LargeSendOffload Enable (macht die Karte)

TCP/IP ist mit IP/Subnet/SGW/DNS/WINS und Metrik auf 10 fest eingestellt, der Server hat sein loopback als bevorzugten DNS und alternativ die eigene IP, keine Replikation.

Die System- und Anwendungsprotokolle sagen leider nichts dazu, jetzt sind wohl die Spezialisten gefragt, bitte.

TIA Khan

Content-ID: 79744

Url: https://administrator.de/contentid/79744

Ausgedruckt am: 25.11.2024 um 04:11 Uhr

khan
khan 04.02.2008 um 09:14:54 Uhr
Goto Top
Update:
Da der NETGEAR-Router bei der Verbindung ins WAN Probleme gemacht hatte, habe ich ihn aus dem Netz genommen und den Router von t-online (Speedport 500V) aktiviert. Überraschendes Ergebnis:
Laut NetStat Live 2.11
Incoming Max. 40Mbps und
Outgoing Max. 200Mbps,
beides beim Übertragen der gleichen großen Datei (1GB), beides ohne Virenscanner, beides ohne Personal Firewall, beides von meiner Workstation aus betrachtet. Vom Server aus das gleiche, vom Server 40, zum Server 200. Beide Festplatten waren während der Übertragung nicht voll ausgelastet , hier würde ich nicht den Flaschenhals sehen. Aber wo?

Fazit:
Deutlich besser, aber 2 weitere Fragen:
1. Ich habe für ein 1000Mbps-LAN Werte größer 500 als Ziel. Ist das realistisch?
2. Wodurch lässt sich der Unterschied erklären bzw. wo muss ich nach dem Fehler suchen?
aqui
aqui 15.02.2008 um 13:43:50 Uhr
Goto Top
Womit hast du denn den Durchsatz getestet ??? Doch wohl hoffentlich nicht durch dummes Kopieren von großen Dateien über das Windows CIFS Protokoll. Das wäre fatal, da dies ungeeignet ist.
Festplatten, Bussysteme und NIC Chipsätze sind in der Regel die Schlüsselfaktoren für Performance.

Eine verwertbare Messung erreichst du nur mit dafür geeigneten Tools die nicht irgendwelche Platten oder andere PC Komponenten mit beeinflussen oder von diesen beeinflusst werden. Auch sind billige Netzwerkkarten oft ein Problem. Z.B. solche mit Realtek Chipsatz bürden der CPU das gesamte Packet Handling auf und sind deshalb sehr schlecht im Durchsatz. Leider setzt du genau im Server so eine Billig Karte ein was für einen Server mehr als fatal ist die du dringend tauschen solltest gegen einevon Intel oder mit Marvell Chipsatz. In Clients ist das in der Regel nicht so kritisch da dort nicht solche Traffic Volumina zu erwarten sind wie gerade an einem Server.

Besser sind hier Karten mit PCIe, PCIx Bus und ohne CPU Nutzung oder noch besser Adapter die direkt im Chipsatz des Rechners an der North- oder Southbridge hängen. Ein sehr wichtiges Kriterium was du bei deinem Server scheinbar vollkommen ausser Acht gelassen hast ?!
Deine LAN Komponenten sind auch alles Geräte die sich für diese Geschwindigkeit am unteren Preisniveu befinden. Erwarte auch hier nicht allzuviel. Der HP kann kein GiG in Wirespeed und auch der NetGear ist als Consumer Produkt wie der HP kein Geschwindigkeits Protz für den professionellen Einsatz. Das ist dir aber sicher selber bewusst.... ?!

So oder so...um verlässliche vergleichbare Werte zu bekommen solltest du Tools wie IPerf oder NetIO verwenden und so erstmal einen verwertbaren Systemwert des eigentlchen Netzes ohne Abhaengigkeiten von PC Hardware zu bekommen.
Beide Tools lassen sich direkt in der Windows Eingabeaufforderung ausführen und sind einfach zu bedienen.

Hast du diese Werte helfen ggf. diese Infos weiter:

http://www.psc.edu/networking/projects/tcptune/#WindowsXP

http://www.speedguide.net/read_articles.php?id=157
khan
khan 15.02.2008 um 15:03:34 Uhr
Goto Top
Danke erstmal für die Tipps.
Zunächst mal eine Klarstellung: mein Netzwerk ist ein Homeoffice, die Tests beziehen sich darauf, dass nur meine Workstation auf den Server zugreift (Standardfall, die anderen PC's sind meist aus).
Festplatten und BUS würde ich mal ausschließen, der onboard-LAN des Servers läuft mit dem PCIe-Treiber, also nicht ganz schlimm. Da die CPU des Servers (Core2Duo) aber nur wenig anspricht, verstehe ich noch nicht ganz das Problem, es sei denn, es geht nicht um die Auslastung, sondern rein um die Zeit zur Auslagerung der Aufgaben, die eigentlich der NIC-Controller können sollte.

Ich habe auf beiden Geräten den NetStat Live laufen, die Angaben stimmen mehr oder weniger mit iperf überein, trotzdem Dank für den Tipp.
Tests mit iperf:
Server als Server, Workstation als Client, ca. 190 Mbps bei -d dualtest 35 Mbps in beiden Richtungen.
Workstation als Server, Server als Client, ca. 40 Mbps bei -d dualtest 35 Mbps in beiden Richtungen.

Ich frage mich immer noch, wo der Unterschied herkommt, wenn die Workstation Daten sendet.

Der Link zu psc.edu ist sehr hilfreich, ich frage mich allerdings, wie ich zuverlässig die BDP ermitteln kann, das Tutorial ist nicht online.
Das Tool von speedguide (TCPOptimizer) hatte ich verwendet, allerdings sind bandwidth und delay auf DSL bezogen, das hilft mir so noch nicht weiter, ich will mein lokales Netz optimieren. Da vermute ich mal die Bandweite mit 1000Mbps als Ziel und beim Delay steige ich aus. Der ping vom und zum Server läuft mit <1ms, TTL=128/127

TIA Khan