markus.r schrieb:
Mir graut es aber vor der 5.4, denn z.B.
" Ethernet flow control is now disabled by default in the fxp(4) driver, to prevent problems with a system panics or is left in the kernel debugger. [MERGED]"
Erklärung:
fxp(4) ist der Treiber fuer die Intel Pro/100 Adapter und andere Hersteller wie IBM, HP und Compaq, die diese Chips ebenfalls verwenden.
Ethernet Fluss Kontrolle ist in einem "geswitchten" Netzwerk üblich, denn damit regelt Switch und Netzwerkkarte den maximalen Durchfluss der Daten.
Man hat das abgeschaltet um Kernel-Panics vorzubeugen.
Aber was meint "or is left in the kernel debugger" ?
Wenn Flow Control abgeschaltet ist, dann werde bei zu viel Datenstrom Pakete verworfen, die der Switch oder der Rechner nicht mehr verarbeiten kann.
Ich hoffe nur, dass das nicht in 5.4 abgeschaltet bleibt.
markus.r schrieb:
Wenn jetzt schon die fxp(4) nach der em(4) und die xl(4) als Netzwerkkarte unbrauchbar wird, bleibt nichts mehr, oder?
Der
xl(4) Treiber wird bei 3Com905xx Netzwerkkarten benoetigt. Diese entlasten wie die letzen Intel Adapter (i82550) die CPU beim berechnen von IP/TCP/UDP-Checksum. In FreeBSD 5.3 wurde das jedoch beim Senden (TX-SUM) bei allen 3Com 905xx Karten abgeschaltet, da einige davon langsam oder fehlerhaft rechnen.
Da unter Linux das Feature noch vorhanden ist, muessten die doch quasi eine Liste führen, damit das nur bei Fehlerhaften Karten abgeschaltet wird.
3Com lässt sich anscheinend nicht in die "Karten" schauen.
Der
em(4) Treiber ist für die Intel Pro/1000 Karten und ähnliche gedacht.
Zumindest die letzten beiden Generationen der Chips unterstützen Interruptmoderation und Checksum-Offload.
Problematisch ist die Interruptmoderation, die zumindest Chips der 3. Generation unter Linux nicht brauchbar machen.
Unter FreeBSD sieht das genauso aus, denn meine Intel 82544 (3. Generation) verlor schon bei Samba mit 100 MBit/s so viele Pakete, dass die Verbindung zum Client abbrach.
http://www.bsdforen.de/showthread.php?t=8740&highlight=intel+samba
und hier
http://www.bsdforen.de/showthread.php?t=8237&highlight=em+intel
Da Intel sowohl bei den Linux als auch bei den FreeBSD-Treibern die Finger im Spiel hat, ist zu vermuten, dass die 3. Generation Karten auch unter FreeBSD nie richtig laufen werden.
Da bei der 4. Generation die Interrupttiefe stark erhöht (auf 65000) und die Auslösetimer dafür verfeinert wurden, habe ich die Hoffnung, dass die irgendwann mal vernünftig laufen werden.
In Summe habe ich (oder alle) das Problem, dass keine vernünftige Karte mehr einwandfrei läuft.
Die anderen Karten, die mir einfallen von DEC, TI oder AMD haben alle keine Features wie Checksum-Offload oder Interruptmoderation. Wobei DEC-basierende (auch ADMtek, Winbond und Apatec) Probleme mit dem Ringpuffer haben....
Realtek kann man direkt vergessen. Wer wissen will warum, liest mal die Kommentare im Quellcode: z.B.
http://freebsd.active-venture.com/FreeBSD-srctree/newsrc/pci/if_rl.c.html
Ist aber unterhaltsam. :-)
Vielleicht mache ich mir aber auch einfach zu viele Gedanken, denn schliesslich umgeht man unter Windows diese Probleme mindestens genauso rigoros, man merkt es eben nur nicht da es kein Open Source ist.