Netzwerkkarte mit eigenem "Prozessor" ?

DaReal

Enthusiast
Thread Starter
Mitglied seit
07.04.2005
Beiträge
8.056
Ort
Greifswald
Welche Netzwerkkarten gibt es da?

Mir sind u.a. die Intel Server-Adapter bekannt sowie die Killer NIC. Welche gibt es noch?
 
Wenn Du diese Anzeige nicht sehen willst, registriere Dich und/oder logge Dich ein.
definiere Prozessor!
Ein drei-Pin Transistor ist auch ein Prozessor.
Auf dem Killer Nic sitzt auch bloß ein Controller drauf...
 
Naja, halt ein Controller/Prozessor der der CPU die Last abnimmt.
 
Ist das nicht der Sinn eines Controllers? Oder anders ausgedrückt: Gibt es einen Controller, der nicht die CPU entlastet?
 
@little skunk
Controller hat ja nichts mit Berechnen zu tun, also der CPU Arbeit abnehmen.
Es gibt einen Haufen(hauptsächlich) Controller die die CPU nicht entlasten.
Beispiel: Der RAID5 Controller ohne eigene XOR Einheit. Dieser verwaltet (control) nur das RAID. Die eigentliche Arbeit (Paritätsberechnungen) wird von der CPU übernommen.

Merke: Ein Controller soll primär kontrollieren und nicht arbeiten. (Gibt ja auch die Arbeitsstelle des Controllers.)

@DaReal
Was soll denn abgenommen werden?
Also was ist DEIN KONKRETES Problem?
TCP/IP OFFLOAD?
iSCSI OFFLOAD?
 
Bei Tranfsers soll die CPU entlastet werden, sowohl beim Zocken alsauch bei der Dateiübertragung.
 
Du suchst also ne TCP Offload engine.
Dies haben eigentlich nur Serveradapter und dann aber durch die Bank.

Also Intel und deren Derivate von HP/DELL/IBM und weiß der Geier.
Marvell und deren Derivate HP/DELL/IBM und weiß der Geier.

EDIT:
Auch so mancher Onboardcontroller kann das. Hängt aber auch oft vom Treiber an. "Prüfsummenberechnung" ist hier das Zauberwort.
 
Zuletzt bearbeitet:
@little skunk
Controller hat ja nichts mit Berechnen zu tun, also der CPU Arbeit abnehmen.
Es gibt einen Haufen(hauptsächlich) Controller die die CPU nicht entlasten.
Beispiel: Der RAID5 Controller ohne eigene XOR Einheit. Dieser verwaltet (control) nur das RAID. Die eigentliche Arbeit (Paritätsberechnungen) wird von der CPU übernommen.

Ich sehe das etwas anders. Die CPU hat ebenfalls Verwaltungsaufgaben. Je weniger Verwaltung die CPU machen muss, um so mehr kann sie berechnen. Somit entlastet jeden Controller die CPU. Einige Controller können nicht mal durch die CPU ersetzt werden aber das spielt keine Rolle. Könnte man sie ersetzen, hätte die CPU wohl kaum weniger zu tun als vorher oder?

Was hat die XOR Einheit damit zu tun? Es gibt noch einige andere logischen Einheiten. Sobald auch nur eine logische Schaltung auf dem Controller vorhanden ist, verarbeitet er Eingangssignale und erzeugt dabei Ausgangssignale. Ob er nun addieren kann oder nicht, spielt doch keine Rolle. Er kann in gewisser Weise Daten verarbeiten auch wenn "Daten" vieleicht nicht das richtige Wort ist.

Ich geb dir aber Recht, dass es bei den Controllern qualitative Unterschiede gibt. Es gibt eben auch Controller, die die CPU mehr entlasten als andere.
 
Das übersiehst du aber einen entscheidenden Fakt.
Ein Controller übernimmt erstmal nur die Verwaltung. Für sämtliche Arbeiten die neben der Verwaltung anstehen nimmt er sich eine Recheneinheit zur Hilfe.
Das ist bei der einfachen NIC genauso wie beim einfachen RAID-Controller (ohne XOR)
Das heißt, sobald du also Netzwerken(oder RAIDen) willst, belastest du die CPU.
Daher belastet der Controller erstmal die CPU und entlastet sie nicht.

Beim Netzwerk ist es das TCP-Load, bei iSCSI das iSCSI-Load und beim RAID5 eben die Paritätsberechnung.
Das heißt also, sobald du einen Controller für eine dieser Funktionen einbaust (ohne gäbe es die Funktion ja nicht) belastest du die CPU.

Wenn man jetzt aber durch die oben genannten Funktionen die CPU entlasten möchte, muß man einen Controller einbauen, der neben der eigentlichen Controlleraufgabe zusätzlich (durch eine Recheneinheit) noch die Rechenarbeit übernehmen kann, die eigentlich die CPU erledigen müßte.

Also TCP-Offload-Engine oder XOR-Engine.

Du machst es dir in der hinsicht etwas einfach.
EVA-Prinzip sollte dir ja bekannt sein.
1.Eingabe
2.Verarbeitung
3.Ausgabe

Ein Controller übernimmt eigentlich nur die Punkte 1 und 3, ein ganz kleiner Teil von Punkt 2 wird durch ihn erledigt. Die eigentliche Verarbeitung der Daten übernimmt die Recheneinheit, bei einfachen Geschichten die CPU.

Wenn also, bei einer einfachen NIC ein Datenpaket reinkommt. Wird das zunächst mal analysiert. Bei der Analyse muß über die Checksumme bestimmt werden, ob denn das Paket OK ist oder nicht. Diese Überprüfung nimmt aber die CPU und nicht die NIC.
Das heißt, der Controller belastet die CPU mit einer Aufgabe, die eigentlich in seinen Aufgabenbereich fällt. Ergo entlastet der Controller die CPU net sondern belastet sie.

RAID-Controller (ohne XOR)
Windows möchte eine Datei auf das Array schreiben. Controller nimmt die Daten an und sagt im gleichen Zuge, die CPU möchte doch bitte die XOR für die Datein berechnen, damit diese in die jeweiligen Paritybereiche eingetragen werden können.
Auch hier belastet der Controller die CPU mit einer Aufgabe die eigentlich in seinen Bereich fällt.

Also kann an dem Satz:
"Gibt es einen Controller, der nicht die CPU entlastet? "
nicht viel dran sein. Ich kann dir aus dem Stehgreif 3 Controller nennen wo das nicht der Fall ist.
 
Zuletzt bearbeitet:
Also kann an dem Satz:
"Gibt es einen Controller, der nicht die CPU entlastet? "
nicht viel dran sein. Ich kann dir aus dem Stehgreif 3 Controller nennen wo das nicht der Fall ist.

Nicht notwendig. Wir meinen das gleiche nur drücken wir es unterschiedlich aus. Ich verstehe dich schon voll und ganz aber was wäre wenn die Netzwerkkarte garkeinen Controller hätte? Dann müsste die CPU eben nicht nur Punkt 2 übernehmen sondern auch Punkt 1 und 3. Wie gesagt spielt es für mich dabei erstmal keine Rolle ob die CPU dazu überhaupt in der Lage ist oder nicht. Es geht mir nur darum was wäre, wenn die CPU auch noch die Verwaltungsaufgaben des Controller übernehmen würde, wenn sie denn könnte.

Noch vor ein paar Jahren waren solche sachen wie Festplattencontroller, North oder Southbridge überhaupt kein Thema. Ich kenne noch Rechner, da hat die CPU wirklich alles berechnet und verwaltet. Jede Verwaltung, die der CPU abgenomme wird, heißt doch mehr Rechenzeit für die restlichen Aufgaben.
 
Aber so richtig relevant ist die CPU-Entlastung nur, wenn man Unmengen von Daten über den LAN-Anschluß schickt (also Gigabit-LAN einigermaßen ausreizt). Bei dem Bischen, was über einen DSL-Anschluß kommen kann, entsteht auch bei einem ganz primitven Netzwerkcontroller (Realtek z. B.) keine nennenswerte CPU-Last - zumindest bei einem halbwegs aktuellen PC.
 
Tja, und genau da ist mir der PC in letzterzeit desöfteren mit nem Bluescreen verreckt :d
Zudem habe ich teilweise echt Probleme mit meinem OnBoard-LAN (Marvell).

Habe mir jetzt ne Dual-Gbit Intel-Serverkarte geschossen :)
 
Ja - mit Marvell-Onboard-Adaptern hatte ich auch öfter mal Probleme. Der aktuelle Treiber von marvell.com hat aber immer geholfen. Die Marvell-Teile sind eigentlich ganz gut - fast so gut wie Intel.
 
Aktuellen Treiber habe ich auch schon probiert, gefühlt gab es damit mehr Probleme als vorher.

War auch immer der Meinung, dass Marvell gute Chipsätze für Netzwerk sind ... nunja, mal schauen wie sich die Intel schlägt.
 
Hardwareluxx setzt keine externen Werbe- und Tracking-Cookies ein. Auf unserer Webseite finden Sie nur noch Cookies nach berechtigtem Interesse (Art. 6 Abs. 1 Satz 1 lit. f DSGVO) oder eigene funktionelle Cookies. Durch die Nutzung unserer Webseite erklären Sie sich damit einverstanden, dass wir diese Cookies setzen. Mehr Informationen und Möglichkeiten zur Einstellung unserer Cookies finden Sie in unserer Datenschutzerklärung.


Zurück
Oben Unten refresh