Frage zu Bonding (LAG)

konabi

Renowned Member
Dec 14, 2013
109
4
83
Hallo,

ich habe ein paar allgemeine Verständnisfragen zum Bonding von Netzwerkkarten.
Ich habe drei Proxmox Nodes als Proxmox Cluster konfiguriert.
Ich nutze Ceph als Storage verteilt über die drei Nodes. (das Ganze erst mal als Testsystem)
Für die Anbindung des Ceph Storage nutze ich jeweils zwei 1GB Netzwerkkarten als Bond.

Die allgemeine Meinung sagt dass LACP am stabilsten funktioniert.
Also habe ich auf der Switch LACP konfiguriert:

LAG1 -> Port 3/4 für PVE01
LAG2 -> Port 4/5 für PVE02
LAG3 -> Port 5/6 für PVE03

Auf den Proxmox Nodes habe ich die Bonds auch mit LACP konfiguriert.

Auf der Switch kann ich für LACP verschieden Hash Allgoritmen auswählen:

• SRC MAC
• DST MAC
• SRC MAC + DST MAC:
• SRC IP
• DST IP
• SRC IP + DST IP:

Ich kann aber auch auf den Proxmox Nodes beim Erstellen der Bonds Hash Allgoritmen auswählen.
Wenn ich dort keine Auswahl treffe, wird nach meinem Verständnis Standardmäßig Layer 2 verwendet.
(MAC Adresse des Senders und MAC Adresse des Empfängers XOR) Siehe:
https://www.thomas-krenn.com/de/wiki/Link_Aggregation_Lastverteilungs-Algorithmen

Meine Frage: Wer entscheidet welcher Algoritmus verwendet wird wenn auf der Switch ein anderer Hash Algoritmus als auf der Node eingestellt ist?

Ich habe nun auf den Nodes Layer 2 und auf der Switch SRC MAC + DST MAC eingestellt, also nach meinem Verständnis den gleichen Hash Algoritmus.

Nun zum Test:
Ich erzeuge in einem Gastsystem auf PVE01 welcher an Port 3 und 4 angeschlossen eine 5GB große Datei. Da die Datei auf den OSDs der drei Nodes verteilt wird, würde ich jetzt erwarten dass die Datenübertragung über Port 3 und 4 verteilt wird da ich als Ziel einmal PVE02 und PVE03 habe.

Leider empfängt der Swich Daten nur auf Port 3 was keinen Lastenausgleich bedeutet.
(siehe Screenshot Datei).

LACP bedeutet doch immer ein Port für ein bestimmtest Ziel. Hier habe ich aber zwei verschiedene Ziele.
Würde ein anderer Hash Algoritmus helfen. (Auf den Nodes könnte ich Layer 3+4 einstellen). Ist aber die Frage ob die Swich nicht Ihren Hash Algoritmus durchsetzt.

Kennt jemand einen Online Hash Algoritmus Rechner so dass ich anhand der MAC Adressen einmal berechnen kann welcher Port verwendet werden sollte. Vieleicht habe ich ja auf dem anderen Node nur eine "unglückliche" MAC Adresse so dass bei der XOR Berechnung immer Port 3 in Frage kommt.

Vieleen Dank für Eure Bemühungen meine Fragen zu beantworten.
Sven
 

Attachments

  • 2016-11-07_15h29_20.png
    2016-11-07_15h29_20.png
    71.3 KB · Views: 17
Hi,

generell ist immer 3+4 zu bevorzugen, da bei Layer 2 fast immer das gleiche Interface rauskommt, so wie in deinen Fall.

Meines wissen wenn Switch und Host nicht zusammen passen bekommst du Netzwerkprobleme.
Deswegen immer den gleichen Hash verwenden.
Mache Switches können das aber erkennen welcher Hash verwendet wird und stellen sich danach ein.

Lastenausgleich gibt es nur wenn verschiedenen Ports, source, dest und oder Macs verwendet werden.

wenn du z.B. immer nur ein FTP von A nach B testest wird das immer am gleichen Interface aufschlagen, da Port IP immer gleich sind.
 
Hallo,
einmal vielen Dank für die schnelle Antwort.

Lastenausgleich gibt es nur wenn verschiedenen Ports, source, dest und oder Macs verwendet werden.

wenn du z.B. immer nur ein FTP von A nach B testest wird das immer am gleichen Interface aufschlagen, da Port IP immer gleich sind.

Richtig, da Ceph aber die Daten auf die anderen 2 Nodes verteilt, habe ich ja 2 verschiedene Ziele (Macs)
Kann jemand bestätigen dass bei der Berechnung Quell MAC XOR Dest Mac nur die letzten 3 oder 4 Bits der Mac Adressen zur Berechnung einfließen?

Ich könnte mir ja die MACs Adressen des Bond Interfaces so gestalten dass es passt.?


Die Hasg Allgoritmen der Switch sind:

SRC MAC:
When this option is selected, the Aggregate Arithmetic will apply to the source MAC addresses of the packets.
DST MAC:
When this option is selected, the Aggregate Arithmetic will apply to the destination MAC addresses of the packets.
SRC MAC + DST MAC:
When this option is selected, the Aggregate Arithmetic will apply to the source and destination MAC addresses of the packets.
SRC IP:
When this option is selected, the Aggregate Arithmetic will apply to the source IP addresses of the packets.
DST IP:
When this option is selected, the Aggregate Arithmetic will apply to the destination IP addresses of the packets.
SRC IP + DST IP:
When this option is selected, the Aggregate Arithmetic will apply to the source and destination IP addresses of the packets.


Also würde als gemeinsamer Hash für Nodes und Switch nur SRC MAC + DST MAC in Frage kommen was auf Node Ebene Layer 2 bedeutet.

Viele Grüße
Sven
 

About

The Proxmox community has been around for many years and offers help and support for Proxmox VE, Proxmox Backup Server, and Proxmox Mail Gateway.
We think our community is one of the best thanks to people like you!

Get your subscription!

The Proxmox team works very hard to make sure you are running the best software and getting stable updates and security enhancements, as well as quick enterprise support. Tens of thousands of happy customers have a Proxmox subscription. Get yours easily in our online shop.

Buy now!