Langeschwindigkeit im Trunk

  • Hallo Leute,


    ist es möglich, auf einer 453 Pro oder 453 U durch Bündelung der 4 LAN-Ports eine höhere Geschwindigkeit als 1GB/s zu erreichen?
    Ich habe sowohl am Switch (HP 2920) als auch an der NAS 2 Ports getrunked (IEEE 802.3ad), komme aber über 125 MByte/s (was 1Gbit/s entspricht) nicht hinaus.

  • Hast du an deinen Rechner mit dem du auf das NAS zugreifst auch LAN-Trunking? Oder greifst du mit mehreren Rechnern auf den NAS zu? Oder willst du die beiden NAS mit einer höheren Geschwindigkeit verbinden?

  • Ich schreibe Backups auf die NAS von einem Server, der mit 3 Ports getrunkt ist und mit 3 GB/s läuft.


    Wie ist es denn prinzipiell mit der Anzeige auf der NAS unter "Netzwerk": Steht da für gebündelte Ports überhaupt jemals mehr wie 1Gb/s?

  • Hallo zusammen,
    auch hier scheint es das klassische Missverständnis beim Port Trunking zu geben.


    Gemäß dem IEEE Standard darf es beim Port Trunking kein sog. Misordering von Paketen einer Verbindung geben.
    Eine Verbindung i.S. der IEEE ist gekennzeichnet durch eine MAC-Paar von Sender und Empfänger.


    Solange Du also von einem Server Daten auf eine NAS schiebst wirst du IMMER nur eine LAN Leitung verwenden.
    Das ist leider so.
    Selbst im Round Robin werden die Daten nacheinander über die Trunk-leitungen geschickt, aber NIE gleichzeitig.


    Kleine Anmerkung:
    Unter Windows Server 2012R2 kann der virtuelle Hyper-V Switch dazu genutzt werden die Performance zu erhöhen.
    Der Hyper-V Switch nutzt hierbei in Richtung des LANs die Karten in der Trunk Gruppe.
    In Richtung der VMs wird jeder VM nun eine eigene MAC zugeordnet.


    Wenn man nun die Backup-Jobs in verschiedenen VMs laufen hat, werden auch mehrere LAN Verbindungen aufgemacht und somit wirkt Port Trunking....


    Gruß
    S.

  • Hallo Banyo,
    Nach Außen tritt eine Trunk Gruppe immer als eine MAC auf - Das ist aber kein Widerspruch zu meinen Aussagen ;)


    Ich verwende hier gerne den Vergleich der Bahngleise.
    Nehmen wir mal an es gibt einen Server mit 4 LAN Karten, eine QNAP mit 2 LAN Anschlüssen einen Rechner mit 2 Anschlüssen und alle hängen an einem Switch (den vernachlässigen wir mal sonst wirds mächtig komplex).


    Der Server hat die MAC 1 (gibts real nicht, aber mal als Beispiel), die QNAP MAC 2, der Rechner MAC 3.....


    Wenn nun auf dem Server einer sagt "ich will Daten an die NAS schicken" werden nacheinander die Daten auf einzelne Züge gepackt un losgeschickt.
    Jeder Zug weiß woher er kommt (MAC 1) und wohin er muss (MAC 2).
    Jetzt gibts aber einen im "Stellwerk" der die Weichen auf die einzelnen Gleise (LAN Leitungen) stellt und dem hat einer gesagt "hey....die Züge dürfen sich nicht überholen....und pass auf: die Loks können unterschiedlich schnell sein" (die Ursache hierfür ist, dass bei langen Strecken mit Switchen und Routern dazwischen die Pakete tatsächlich nterschiedlich schnell sein könnten ).
    Also sagt der Weichensteller "okay ich nutze imem rnur ein Gleis, denn dann habe ich das sichergestellt".


    Wenn nun Daten vom Server an den Rechner gehen....tja dann nutzt er ein zweites Gleis....


    Ich hoffe ich habs einigermaßen verständlich ausgedrückt.....


    Langer Rede kurzer Sinn.....eine Datenstrum (Zug) geht immer über genau eine LAN Leitung (Gleis).


    Gruß
    S.

  • Hi firefox_i,


    und danke für die "Gleistheorie".
    Wenn ich dieser folge, dann müssen doch 2 gleichzeitiges Uploads von 2 Clients auf die NAS über die 2 getrunkten LAN Ports jeweils die volle Bandbreite haben, also ca. 112 MBit/s pro Client. Jedem steht je dann "ein eigenes Gleis" zur Verfügung.


    Dem ist nicht so, die Geschwindigkeit bricht auf ca. die Hälfte ein.


    Ich vermute eher, die NAS kann nicht mehr wie 1GB/s, egal, wie und was man trunkt.

  • Hallo,
    jupp also wenn von 2 Rechnern Daten zu einer NAS gehen, sollte das über 2 LAN Leitungen gehen.


    Kannst auch prüfen:
    Im QTS gibt es die Ressourcenansicht und schau da die Netzwerkauslastung an (oder bei den Performance Gauges auf dem Main-Screen).
    Werden beide Leitungen benutzt?


    Wenn ja....weitere Suche:
    Was für Platten und wie schnell sind die?
    RAID Level, wieviel Platten ?
    Verschlüsselung ? Virenscanner ?
    Erkennt der Switch die LAG auch ? Da mal im Status schauen ob der Trunk überhaupt etabliert wird.


    Schreib mal von jedem Client aus eine echt große Datei (z.B. ISO Image einer DVD *g*).
    Auf welche echten Werte kommst Du denn (du schreibst "auf die Hälfte..")?
    Wie schnell werden die Daten denn auf die NAS geschrieben wenn nur ein Client pumpt?


    Man darf bei dem ganzen Trunking Thema auch eines nicht vergessen:
    Das beschleunigt nur den Transfer bis zur NAS.
    Beim Schreiben bewegen sich die Plattenköpfe permanent.....das frisst Performance.


    BTW:
    Beim lesenden Zugriff komm ich auf deutlich über 300MB/s.....auf einer 453Pro mit 4xWD Red, 3GB



    Gruß
    S.

  • Hi, also nochmal zur Konfig:


    Switch HP2920 - Layer2, was schon mal recht Gutes und Perfomantes :)
    Statisches Porttrunking mit 2 Ports. In der Portinfo des 2920 wird der Trunk angezeigt.


    NAS 453 Pro mit 4 WD 2000FYYZ Enterprise Drives (auf der QNAP HCL) im Raid5, ohne Hotspare, keine Verschlüsselung, keine Virenschutz
    Portbündelung mit "Balanced-rr" >(aber auch die anderen durchprobiert)


    Schreiben von einem Client (Laptop, W10) mit SSD: 112 MBit/s
    Schreiben auf einen Client mit SSD: 97 Mbit/s.
    ! lesen von der NAS ist langsamer als Scheiben - seltsam.


    Schreiben von einem anderen Client (VM W2012R2 mit IBM-v3700 Storage darunter, per FC 8GB/s angeschlossen): 116 MBit/s
    Schreiben auf einen Client mit SSD: 110 Mbit/s.


    Beide gleichzeitig Scheiben auf NAS: zw. 55 und 75 MBit/s stark schwankend, in der Addition beider Clients aber <120
    Beide gleichzeitig Lesen von der NAS: ~ 100 pro Client, er liest also von beiden Ports!


    In der Resourcenansicht auf der NAS werden mir während gleichzeitigem Schreiben von beiden Clients nur unter "Ethernet 1" eine grüne Linie für "Empfangen" angezeigt, die Ihren Peek so etwa 120 Mbit/s hat. Bei "Ethernet 2" sehe ich nur eine rote Linie für "Senden" von etwa 300kbit/s.



    In der Resourcenansicht auf der NAS werden mir während gleichzeitigem Lesen von beiden Clients beide "Ethernet 1+2" eine rote Linie für "Senden" von etwa 95 MBit/s
    Zusammenfassend:
    - die NAS verwendet *beim Schreiben* nur eine Leitung, selbst wenn 2 Clients simultan senden
    - die NAS verwendet *beim Lesen* beide Leitungen, selbst wenn 2 Clients simultan lesen
    - HDDs bzw. Raid 5 schlie0e ich als Bottleneck derzeit aus

  • Hallo,
    also fangenwir mal vorne an....


    Ich nehm an du meinst überall MByte/s oder ?!?!?


    Platten und RAID schließe ich ehrlich gesagt keineswegs aus.....
    Um eine Datei zu schreiben müssen die Daten auf 4 (!) Platten geschrieben werden.
    Die Köpfe der Platten sind ständig in Bewegung....




    Zitat von "banyoo"

    Statisches Porttrunking

    aus deinem letzten Post und

    Zitat von "banyoo"

    IEEE 802.3ad

    aus dem ersten widersprechen sich.
    Welches hast Du denn?
    Ich persönlich bevorzuge IEEE802.3ad


    Bei round robin weren übrigens die im LAG befindlichen LAN Leitungen nacheinander (!) abwechselnd (!) verwendet.
    Zumindest lt. der IEEE.


    Aber weder beim Schreiben noch beim Lesen scheint sich das geforderer rr Verhalten mit dem tatsächlichen zu decken.


    Deshalb würde ich an Deiner Stelle einmal folgendes machen:
    - Switch und NAS auf 802.3ad umstellen (also LCAP).
    - von 3 (!) Rechnern die Schreib und Lesetests machen und mal mit großen Dateien arbeiten....


    Hast Du die Möglichkeit (ich denke eher nicht) das RAID5 mal aufzubrechen und auf einzelne Platten zu schreiben?
    Denn dann (und NUR dann) hast du die Effekte durch das RAID und die ständige Umpositionierung der Köpfe weg.



    Gruß
    S

  • HI,


    ja, natürlich, Mbyte/s......


    Ich hatte viel rumgespielt auf Switch und NAS-Seite.
    Die letzte Einstellung war balanced-RR auf NAS und Trunk auf Switch.


    Da es einen Test-NAS ist, kann ich das Raid aufbrechen. Ich werde das morgen machen und mit sonst gleichen Einstellungen nochmals testen. Erst dann den Trunk nochmal umkonfigurieren.


    Danke Dir - ich berichte morgen.

  • Hallo Banyoo,
    2 unterschiedliche Einstellungen können zu den wildesten Effekten führen.....
    Also immer (!!!) auf beiden Seiten identisch.


    Ich hatte schon Effekte, dass bei großen Cisco bei nicht gleich eingestellten Trunk-Modi plötzlich Pakete gekreist sind, dupliziert wurden und dann mächtig Blindtraffic entstanden ist.....


    Aber wie gesagt:
    wenn es echt aufbrechen kannst mach mal 3 Platten die rein als Platten angesprochen werden....
    Dann von jedem Client aus immer auf eine andere der Platten schreiben / lesen damit sich diese Zugriffe nie in die Quere kommen.
    Das ganze mit großen Dateien machen....


    Und dann mal schauen.


    Gruß
    S.

  • Trunk ist jetzt eingestellt auf:


    LACP am Switch
    IEEE 802.3ad an der NAS


    Nach wie vor teilen sich mehrere Clients die Bandbreite, d.h. 120 MByte/s beide einem alleine, ~60 MByte/s bei beiden gleichzeitig bei 2 Clients. Im Ressourcenmonitor auf der NAS sehe ich nach wie vor., dass nur eine Port empfängt, der andere ist still.


    Es macht keinen Sinn, das RAID jetzt aufzubrechen, wenn der Ressourcenmonitor zeigt, dass der Traffic nur über einen Port geht.

  • Wenn Du nicht weiter suchen möchtest ist das Deinen Entscheidung.


    Von mir nur eine Anmerkung:
    Das

    Zitat von "banyoo"

    dass der Traffic nur über einen Port geht.


    scheint mir eine Annahme von Dir zu sein zu sein.


    LACP und 802.3ad stellt erstmal sicher, dass der Trunk etabliert wird.
    WIE die Daten auf die Leitungen verteilt werden entscheiden Trunk-Algorithmen der beteiligten Teilnehmer.


    Wenn du den Ressourcenmonitor GENAU anschaust wirst Du definitiv feststellen, dass auch auf dem zweiten Port Daten übertragen werden.
    Beim Schreiben auf die NAS laufen dort mit an Sicherheit grenzender Waxchrscheinlichkeiut Daten an den Client zurück oder liege ich da falsch ?
    Steht da sowohl im Up- als auchim Downstrem 0kb/s?


    Die o.g. Algorithmen verwenden häufig IP Adressen bzw. die MACs der Kommunikationsendpunkte um die Verteilung auf die Ports zu bestimmen.
    Deshalb auch der Vorschlag von mir, mit 3 (!) Teilnehmern das mal zu machen.


    Aber ist nur eine Anregung.



    Meine Vermutung:
    - Bei der Verbindung NAS--> Switch --> 2 Clients beim Lesezugriff der Clients hast Du gesagt Du hättest beide Ports -> HASH Algorithmus der QNAP funktioniert.
    - Schreibzugriff 2 Clients --> Switch --> NAS : nicht volel Bandbreite --> HASH Algorithmus des Switch nutzt nicht alles was er hat


    Kannst Du im HP2920 die HASH Algorithmen umstellen ?


    Wie gesagt:
    An meiner 453Pro läuft das ganze problemlos und nutzt auch die nutzbare Bandbreite.....
    Ich hab allerdings auch einen LANCOM Switch aus dem Enterprise-Sektor.


    S.

  • Hi Sven,


    ich will/kann schon weiter testen, versteh ich nicht falsch bitte.


    Der 2. NAS-Port sehe ich definitiv nur "gesendete Pakete", d.h. nur eine rote Linie, die grüne für "empfangene Pakete" klebt bei oder 1 kB/s. Beim Lesen von der NAS spring1 auf Port 2 die rote Linie hoch auf 120 während sie bei Port 1 auf 0 bleibt. Auf Port 1 springt die grüne Linie auf etwa 2 MB/s, was wohl die Bestätigungsantworten des Tarnsfers sowie meine http-Ansicht sind.
    Beim Senden verhält es sich quasi andersrum. Dabei ist es egal, ob ich 1, 2 oder 3 Clients verwednen.
    Es sieht für mich aus, als ob ein Port zum Senden und einer zum Empfangen verwendet wird. Screenshot anbei, zuerst ein Empfangsvorgang von der NAS, dann ein Sendevorgang an die NAS.


    Gestern hatte ich mit statischem Trunk am HP und balanced-rr tatsächöich beide Ports am Senden, jedoch nur einen am Empfangen. Mit LACP/IEEE802.3ad ist dies nicht mehr der Fall.


    Der HP2920 gehört ebenfalls zur EnterpriseKlasse, wenn auch sicherlich im unteren Segment. Hash lässt sich IMHO nicht umstellen, ich habe zumindest nichts gefunden.
    Am Switch lässt sich der TrunkType auf LACP stellen. Die Zeile "LACP-Status" lässt sich jedoch nicht auf active oder passive stellen -> "Dynamic LACP cannot be activated on manual trunk port".
    Des Weiteren gibt es nur noch die Möglichkeit, das Load-Balancing L3-based oder L4-based zu setzen.


    Der Screenshot mit dem Peak-Wert zeigt die Übertragung auf die NAS von 3 Clients mit jeweils einem ~4GB-iso-Paket (noch im RAID5)

  • Nabend,
    also das hier


    Zitat von "banyoo"

    Gestern hatte ich mit statischem Trunk am HP und balanced-rr tatsächöich beide Ports am Senden, jedoch nur einen am Empfangen. Mit LACP/IEEE802.3ad ist dies nicht mehr der Fall.


    schreit für mich förmlich danach, dass es hier an der Art und Weise liegt, wie die LAN Ports verwendet werden.


    Und das ist (normalerweise) eine reine Einstellungssache.


    Zitat von "banyoo"

    Am Switch lässt sich der TrunkType auf LACP stellen. Die Zeile "LACP-Status" lässt sich jedoch nicht auf active oder passive stellen -> "Dynamic LACP cannot be activated on manual trunk port".


    Hast Du das Ganze mal über die CLI gemacht udn cniht über die GUI?
    Ich hab noch dunkel im Kopf, dass die HPs da mächtig frickelig waren.


    Wie gesagt: ich behaupte es liegt am Switch.


    Wie hast Du die Trunks eingerichtet?
    Wenn ich sowas mache, geh ich immer so vor :
    - erstmal festlegen, welche Ports ich bündeln möchte
    - dann die Netzwerkleitungen aus den Ports ausstecken
    - nur eine (!!) LAn Leitung zwischen den beiden Teilnehmern einstöpseln
    - Dann zuerst auf dem nicht-Switch die portbündelung einrichten
    - Dann erst auf dem Switch die ports entsprechend konfigurieren
    - erst dann (!!) die LAN Leitungen nacheinander einstecken


    Auf dem Switch nachschauen ob die LACP Verbindungen stehen.


    Bisschen Lesestoff:
    http://h20628.www2.hp.com/km-e…ct/emr_na-c04490687-4.pdf
    Und da ab Seite 107.


    Gaaanz wichtiger Satz auf Seite 124 unter Fig. 18 :



    Da ist genau Dein Phänomen beschrieben.....


    S.

  • Hi Sven,


    vielen Dank - ich bin einen Schritt weiter!


    Ich bin nach Deinen Empfehlungen vorgegangen:
    - Trunks beidseitig aufgelöst
    - Kabel bis auf eines abgezogen
    - Trunk IEEE 802.3ad auf NAS eingerichtet mit alle 4 Ports (mit 3 Ports geht leider nicht)
    - Trunk LACP auf HP 2920 per Konsole (Telnet, nicht html GUI) eingerichtet
    - Log auf HP2920 sagt: Trunk active
    - Kabel eines nach dem anderen eingesteckt


    Große Testdatei von 3 Clients auf die NAS kopiert -> Trunk funktioniert teilweise, 2 von den 4 Ports übertragen im 1Gb/s-Bereich (siehe Screenshot)
    Große Testdatei von 2 Clients auf die NAS kopiert -> gleiches wie bei 3 Clients, d.h. 2 Ports arbeiten im Trunk.
    Große Testdatei von 4 Clients auf die NAS kopiert -> gleiches wie bei 3 Clients, d.h. 2 Ports arbeiten im Trunk.


    Beim Lesen von der NAS auf einen Client mit SSD ist übrigens langsamer als das Schreiben auf die NAS im RAID5.


    Verbleibt die Frage, warum bei jetzt funktionierendem Trunk mit 4 Ports nur 2 Ports verwendet werden für das Scheiben, 1 Port die Rückantworten schickt und 1 Port Urlaub macht.

  • Hallo banyoo,
    immer wieder gern.


    Ich finde jetzt in Deinen Messungen nur Infos darüber wenn die Clients Daten auf die NAS schreiben.
    Wie schauts denn umgedreht aus, also Clients lesen, welche Ports werden dann genutzt?


    Zitat von "banyoo"

    Beim Lesen von der NAS auf einen Client mit SSD ist übrigens langsamer als das Schreiben auf die NAS im RAID5.


    Was heißt denn "langsamer"?


    Zitat von "banyoo"

    Verbleibt die Frage, warum bei jetzt funktionierendem Trunk mit 4 Ports nur 2 Ports verwendet werden für das Scheiben, 1 Port die Rückantworten schickt und 1 Port Urlaub macht.


    Tja die Antwort auf die Frage ist recht einfach :
    Wenn ich das Bild des Gleises nochmal bemühe ist der Typ im Stellwerk schuld.
    Der Algorithmus der das Verteilen über die LAN-Ports macht scheint schlichtweg nicht die Bandbreite zu nutzen.
    Das ist aber eine Restriktion die Du nicht ändern kannst.


    Was eventuell noch Verbesserungen bringt:
    Welche IP Adressen haben denn die Clients ?
    Vergib mal IP Adressen die sich in den letzten 5 Bits deutlich unterscheiden.
    GGfs kannst dadurch den HP Algorithmus austricksen.



    Wie gesagt ist beim Thema Port-Trunking viel Erwartungshaltung dabei, die es einfach nicht bietet.
    Nur weil man viele Leitungen hat, wird die Bandbreite nicht multipliziert....


    Gruß
    S.

  • Hi,


    beim Lesen gleiches Verhalten, es werden nur 2 Ports benutzt, jedoch andere gegenüber dem Lesen (genaugenommen ist ein Port ein anderer, der andere ist derselbe wie beim Scheiben).
    Geschwindigkeit beim Lesen ist ca. 15 % niedriger, aber immer noch akzeptabel hoch.


    Die Clients sind Live-Geräte (1 Laptop, 1 phys. Server, 2 virt. Server auf unterschiedlichen Hosts), ein IP-Wechsel ist da leider nicht drin.
    verwendete IPs sind:
    192.168.1.33
    .1.55
    .1.49
    .1.99


    Sie unterscheiden sich schon, etwas.

  • Hallo,
    okay....das scheint dann immer mehr in die Richtung der HASH Algorithmik zu gehen....
    Und da kannste eben echt nichts dran ändern.


    Zum Thema unterschiedlich seh ich es leider etwas anders - sorry:
    33: 00001
    99: 00011
    49: 10001
    55: 10111


    Die 33 und 55 ja, die sind echt deutlich anders.


    33, 49, und 99 aber schon sehr ähnlich.......


    Aber wie gesagt:
    Eventuell bringt dir das L3/L4 Thema noch ein bisschen was.....allerdings glaube ich es nicht.


    Mir drängt sich der Eindruck auf, dass hier HP einfach einen für Dein Umfeld nihct ganz so geeigneten HASH Algorithmus hat.
    Und wenn den nicht ändern kannst...tja dann ist es so.


    Hmm eine Idee am Rande:
    Manchmal kann es auch sinnvoll sein, an der QNAP 2 Trunk-Gruppen zu machen die dann dediziert von verschiedenen Rechnergurppen verwendet werden.
    Oder z.B. auch dedizierte LAN Leitungen.


    Ich hab z.B. an einer Stelle schon mal einen Server der die NAS nur als Backup verwendet so angeschlossen, dass eine LAN Leitung ausschließlich dafür verwendet wird.
    Dazu hab ich den iSCSI Service nur auf diesen Port gebunden....


    Gruß
    S.