Zum Inhalt springen

port aggregation und so (SPAM aus dem BUMP-Thread :))


Protoberance
 Teilen

Empfohlene Beiträge

Alter, ich soll hier mit einem Plastik Klickbunti Alice Home Router einen sicheren !!!!! VNC und SSH Zugang auf ein Demo System realisieren,

ich kann nichtmal ne static Route eintragen und von VLAN oder subnetting ist nur zu träumen. FUFFUFUFUFUFFUFUFU

Notlösung, Solaris Server ;) hoffentlich ist der Kunde zu blöd das zu bedienen.

Bearbeitet von mad.gobbo
Link zu diesem Kommentar
Auf anderen Seiten teilen

OpenIndiana, also luminos Kernel. TCP, 64k socketbuffer, iperf als Test. Bei den Treibern muss ich passen und erstmal nachforschen. Es werden zwar beides CPU zu 80 % belastet ( Xeon E5 2620 ), aber auch da muss ich genauer nachsehen.

edit :

Die NIC ist ein mezzanine board, was nur auf den PCIe Bus der 2. CPU geht, zumindest elektrisch.

Bearbeitet von Protoberance
Link zu diesem Kommentar
Auf anderen Seiten teilen

OpenIndiana, also luminos Kernel. TCP, 64k socketbuffer, iperf als Test. Bei den Treibern muss ich passen und erstmal nachforschen. Es werden zwar beides CPU zu 80 % belastet ( Xeon E5 2620 ), aber auch da muss ich genauer nachsehen.

edit :

Die NIC ist ein mezzanine board, was nur auf den PCIe Bus der 2. CPU geht, zumindest elektrisch.

isses nun ne port aggregation oder ne exotische nic die wirklich 20G pro port kann? wenn es port aggregation ist und keine 10G+ durchgehen würde ich tippen das es nen balancing problem ist (dstmac -> srcmac gleich -> gleicher hash -> gleiches if)

wie sieht denn die interrupt last der zweiten cpu aus? bei jumbo frames sollte die ja nicht so hoch sein. hat der PCIe genügend lanes für die 20G ?

Link zu diesem Kommentar
Auf anderen Seiten teilen

Das Problem könnte wirklich der PCIe Bus sein. Das Mezzanine Board funktioniert z.B. nur, wenn man eine 2. CPU im System hat. Aber die CPU kontrolliert

schon einen HostBusAdapter für externes SAS. Auf der Platine sind 2 10Gbase Anschlüsse. Die habe ich mit Port Aggregation verbunden. Oder liegt es daran, dass die NIC ohne Switch quasi im "Crossover" verbunden sind ? Ich habe auf der NIC die Ports gegeneinander auf 16 Gbit/s gemessen, also mehr oder weniger die Backplane gemessen ;D

Link zu diesem Kommentar
Auf anderen Seiten teilen

Das Problem könnte wirklich der PCIe Bus sein. Das Mezzanine Board funktioniert z.B. nur, wenn man eine 2. CPU im System hat. Aber die CPU kontrolliert

schon einen HostBusAdapter für externes SAS.

gibts sowas wie "/proc/interrupts" ? wenn ja wie schaut denn da die verteilung aus (hab nur wenig plan von solaris, linux-kenntnisse lassen sich nicht immer übertragen).

Auf der Platine sind 2 10Gbase Anschlüsse. Die habe ich mit Port Aggregation verbunden.

ok wie ist die port aggregation geconft? wenn ich das richtig lese ist die einstellung bei illumos "link aggregation policy". wenn die auf l2 oder l3 steht solltest du bei host-to-host immer nur auf <10G kommen, srcmac/dstmac srcip/dstip ist immer gleich, also wird nur ein physical link genutzt.

zum test -> stell mal L4 ein und starte mindestens 2 mal iperf mit unterschiedlichem source/destination port.

zum test2 -> brich den port channel auf, jedes interface ne eigene ip im eigenen subnetz. zwei mal iperf auf jeweils ein interface. damit solltest du zumindest rausbekommen ob du jedes interface einzeln halbwegs auslasten kannst (und somit combined auf 10G+ kommst)

Link zu diesem Kommentar
Auf anderen Seiten teilen

zum test -> stell mal L4 ein und starte mindestens 2 mal iperf mit unterschiedlichem source/destination port.

zum test2 -> brich den port channel auf, jedes interface ne eigene ip im eigenen subnetz. zwei mal iperf auf jeweils ein interface. damit solltest du zumindest rausbekommen ob du jedes interface einzeln halbwegs auslasten kannst (und somit combined auf 10G+ kommst)

Ist auf L2 eingestellt, morgen auf der Arbeit teste ich das mal, danke dir erstmal.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Das ist doch mal nen Fortschritt und klarer Sprung über die 10G Marke. Bei dem 4Lane-System wärst immerhin schon bei 75% PCIe-Auslastung, die Timing-Probleme werden somit nur noch größer werden was sich wiederum nicht gerade Positiv auf TCP auswirkt. Wenn du auf 80-85% kommen würdest, wäre das finde ich schon ein recht guter Wert.

Nun wirds schwer.

1) Schau dir die Socketbuffer an. Hat der illumos kernel TCP-Autotuning? Wenn ja wie sehen die max-werte für die Socketbuffer aus? 64k als initial ist okay, aber nur wenn die Max-Werte gross genug sind.

(vgl Linux

$ cat /proc/sys/net/core/rmem_default

$ cat /proc/sys/net/core/rmem_max

).

Mal das Bandwith-Delay-Product ausgerechnet? Die RTT bei direktverkabelung dürfte zwar weit unter 1msec liegen aber bei 20G Bandbreite kommt da dennoch was zusammen so daß die TCP-Defaults wohl nicht mehr ganz passen werden.

2) Was sagt denn "ifconfig <ethX>" ? Hast du Drops? Overruns? Wie sind die RX-Ring-Parameter der NIC ? (vgl. Linux -> ethtool -g|--show-ring ethX ). Ggf die Ring-Parameter anpassen.

3) Zu guter letzt, wasn das fürn NIC-Chipsatz? Intel? Broadcom oder was interessantes wie Myricom? Nach http://hub.opensolaris.org/bin/view/Project+crossbow/nic sollte der ixgb Treiber für Intel alle interessanten sachen unterstützen -> Stichwort MSI-X, RSS, multiple Hardware RX-Rings.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Ich habe heute leider keine Zeit mehr darauf einzugehen, weil das System morgen verschifft wird und eigentlich nur die Funktionalität der NIC getestet werden sollte.

Die Config wird der Kunde hinterher wohl selber anpassen müssen, weil seine Umgebung eine andere ist. Aber ich habe noch weitere Maschinen mit PCIe 3.0 fähigen Boards und Prozessoren in der Warteschleife, bei denen man sicherlich den PCIe Bus als Bottleneck ausschließen kann.

Die NIC hat einen Intel 82599 Chip, damit könnte ich den Treiber auch ausschließen. TCP Autotuning sollte eigentlich vorhanden sein.

Die übrigen Punkte gehe ich morgen mal durch, wenn nichts dazwischen kommt ;) Vielen Dank erstmal für die Hilfe, so langsam taste ich mich heran.

Link zu diesem Kommentar
Auf anderen Seiten teilen

  • 1 Monat später...

Ich benutze einfach das Zitat hier zur Erklärung, bin zu müde um selber nachzudenken ;)

LACP works by sending frames (LACPDUs) down all links that have the protocol enabled. If it finds a device on the other end of the link that also has LACP enabled, it will also independently send frames along the same links enabling the two units to detect multiple links between themselves and then combine them into a single logical link. LACP can be configured in one of two modes: active or passive. In active mode it will always send frames along the configured links. In passive mode however, it acts as "speak when spoken to", and therefore can be used as a way of controlling accidental loops (as long as the other device is in active mode)

Sollte ich beide "units" auf Active schalten ?

Link zu diesem Kommentar
Auf anderen Seiten teilen

ach soo, ja logisch. passive/passive funzt logischerweise nicht. active/active sollte okay sein, allerdings habe ich dazu auch keine best practices gefunden bzw gründe wieso man nicht active/active machen sollte. den switch auf passive und den client auf active dürfte aber aufs gleiche raus kommen. (in der doku zum linux bonding treiber finde ich z.B. gar keine Info bezüglich passive lacp, denkemal das is dort eh dauer active sofern man den 802.3ad mode nutzt, einzig die rate lässt sich via 'lacp_rate' beeinflussen und das auch nur sehr rudimentär.)

Bearbeitet von Nuwien
Link zu diesem Kommentar
Auf anderen Seiten teilen

Deine Meinung

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Benutzerkonto hast, melde Dich bitte an, um mit Deinem Konto zu schreiben.

Guest
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung jetzt entfernen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

  • Vorschau
 Teilen

×
×
  • Neu erstellen...

Wichtige Information

Um unsere Webseite für Sie optimal zu gestalten und fortlaufend verbessern zu können, verwenden wir Cookies. Durch die weitere Nutzung der Webseite stimmen Sie der Verwendung von Cookies zu. Weitere Informationen zu Cookies erhalten Sie in unserer Datenschutzerklärung.