Load Balancing für aggregierte Ethernet-Schnittstellen
Der Lastenausgleich erfolgt auf Layer 2 über die Mitgliederverbindungen hinweg, wodurch die Konfiguration ohne Überlastung verbessert wird und die Redundanz erhalten bleibt. In den folgenden Themen wird ein Überblick über Load Balancing, die Konfiguration des Load Balancing basierend auf MAC-Adressen und LAG-Link sowie das Verständnis der Konsistenz durch ausfallsicheres Hashing erläutert.
Load Balancing und Ethernet-Link-Aggregation – Übersicht
Sie können eine Link Aggregation Group (LAG) für eine Gruppe von Ethernet-Ports erstellen. Layer-2-Bridging-Datenverkehr wird über die Mitgliederverbindungen dieser Gruppe verteilt, was die Konfiguration sowohl für Überlastungsprobleme als auch für Redundanz attraktiv macht. Sie können bis zu 128 LAG-Bundles auf Routern der M- und T-Serie und 480 LAG-Bundles auf Routern der MX-Serie und EX9200-Switches konfigurieren. Jedes LAG-Bundle enthält bis zu 16 Links. (Die Plattformunterstützung hängt von der Junos OS-Version in Ihrer Installation ab.)
Bei LAG-Bundles bestimmt der Hashing-Algorithmus, wie der in ein LAG-Bundle eingehende Datenverkehr auf die Mitgliedslinks des Bundles platziert wird. Der Hashing-Algorithmus versucht, die Bandbreite zu verwalten, indem er den gesamten eingehenden Datenverkehr gleichmäßig auf die Mitgliedslinks im Bundle verteilt. Der Hash-Modus des Hashing-Algorithmus ist standardmäßig auf Layer-2-Nutzlast eingestellt. Wenn der Hash-Modus auf Layer-2-Nutzlast eingestellt ist, verwendet das Hashing die IPv4- und IPv6-Nutzlastfelder für das Hashing. Sie können den Load-Balancing-Hash-Schlüssel für Layer-2-Datenverkehr auch so konfigurieren, dass Felder in den Layer-3- und Layer-4-Headern mithilfe der payload
Anweisung verwendet werden. Beachten Sie jedoch, dass das Lastenausgleichsverhalten plattformspezifisch ist und auf entsprechenden Hash-Schlüsselkonfigurationen basiert.
Weitere Informationen finden Sie unter Konfigurieren des Lastenausgleichs für eine LAG-Verbindung. In einem Layer-2-Switch ist eine Verbindung überlastet und andere Verbindungen werden nicht ausgelastet.
Konfigurieren des Load Balancing basierend auf MAC-Adressen
Der Hash-Key-Mechanismus für den Lastenausgleich verwendet Layer-2-MAC-Informationen (Media Access Control), wie z. B. Frame-Quelle und Zieladresse. Um den Datenverkehr basierend auf Layer-2-MAC-Informationen auszugleichen, fügen Sie die multiservice
Anweisung auf der [edit forwarding-options hash-key]
Hierarchieebene or [edit chassis fpc slot number pic PIC number hash-key]
ein:
multiservice { source-mac; destination-mac; payload { ip { layer3-only; layer-3 (source-ip-only | destination-ip-only); layer-4; inner-vlan-id; outer-vlan-id; } } }
Um die MAC-Informationen der Zieladresse in den Hash-Schlüssel aufzunehmen, fügen Sie die destination-mac
Option ein. Um die MAC-Informationen der Quelladresse in den Hash-Schlüssel aufzunehmen, schließen Sie die source-mac
Option ein.
Alle Pakete, die dieselbe Quell- und Zieladresse haben, werden über denselben Pfad gesendet.
Sie können den Lastenausgleich pro Paket konfigurieren, um den EVPN-Datenverkehrsfluss über mehrere Pfade hinweg zu optimieren.
Aggregierte Ethernet-Mitgliederverbindungen verwenden jetzt die physische MAC-Adresse als Quell-MAC-Adresse in 802.3ah OAM-Paketen.
Siehe auch
Konfigurieren des Load Balancing auf einer LAG-Verbindung
Sie können den Load-Balancing-Hash-Schlüssel für Layer-2-Datenverkehr so konfigurieren, dass Felder in den Layer-3- und Layer-4-Headern innerhalb der Frame-Nutzlast für Load-Balancing-Zwecke verwendet werden, indem Sie die payload
Anweisung verwenden. Sie können die Anweisung so konfigurieren, dass sie Layer-3- (und Quell-IP-Only- oder Ziel-IP-Only-Paket-Header-Felder) oder Layer-4-Felder betrachtet. Sie konfigurieren diese Anweisung auf Hierarchieebene[edit forwarding-options hash-key family multiservice]
.
Sie können Layer-3- und/oder Layer-4-Optionen konfigurieren. Die Optionen source-ip-only oder destination-ip-only schließen sich gegenseitig aus. Die layer-3-only
Anweisung ist auf Routern der MX-Serie nicht verfügbar.
Standardmäßig gleicht die Junos-Implementierung von 802.3ad den Datenverkehr über die Mitgliederverbindungen innerhalb eines aggregierten Ethernet-Pakets aus, basierend auf den im Paket enthaltenen Layer-3-Informationen.
Weitere Informationen zur Konfiguration von Link Aggregation Group (LAG) finden Sie in der Junos OS Network Interfaces Library for Routing Devices.
Beispiel: Konfigurieren des Lastenausgleichs auf einer LAG-Verbindung
In diesem Beispiel wird der Load-Balancing-Hash-Schlüssel so konfiguriert, dass die Quell-Layer-3-IP-Adressoption und die Layer-4-Header-Felder sowie die Quell- und Ziel-MAC-Adressen für den Load-Balancing auf einer Link Aggregation Group (LAG)-Verbindung verwendet werden:
[edit] forwarding-options { hash-key { family multiservice { source-mac; destination-mac; payload { ip { layer-3 { source-ip-only; } layer-4; } } } } }
Jede Änderung in der Hashschlüsselkonfiguration erfordert einen Neustart des FPC, damit die Änderungen wirksam werden.
Grundlegendes zum Multicast-Lastausgleich auf aggregierten 10-Gigabit-Verbindungen für gerouteten Multicast-Datenverkehr auf EX8200-Switches
Die Streaming-Video-Technologie wurde 1997 eingeführt. In der Folge wurden Multicast-Protokolle entwickelt, um Datenreplikation und Netzwerküberlastungen zu reduzieren. Mit Multicasting können Server einen einzelnen Datenstrom an eine Gruppe von Empfängern senden, anstatt mehrere Unicastdatenströme zu senden. Während der Einsatz der Streaming-Video-Technologie früher auf gelegentliche Unternehmenspräsentationen beschränkt war, hat Multicasting der Technologie einen Schub verliehen, was dazu geführt hat, dass ein ständiger Strom von Filmen, Echtzeitdaten, Nachrichtenclips und Amateurvideos ununterbrochen auf Computer, Fernseher, Tablets und Telefone fließt. All diese Streams überforderten jedoch schnell die Kapazität der Netzwerkhardware und erhöhten den Bandbreitenbedarf, was zu inakzeptablen Aussetzern und Ruckler bei der Übertragung führte.
Um den wachsenden Bandbreitenanforderungen gerecht zu werden, wurden mehrere Links virtuell zu größeren logischen Punkt-zu-Punkt-Verbindungskanälen für den Datenfluss zusammengefasst. Diese virtuellen Link-Kombinationen werden als Multicast-Schnittstellen bezeichnet, die auch als Link Aggregation Groups (LAGs) bezeichnet werden.
Beim Multicast-Lastenausgleich werden die einzelnen Links in jeder LAG verwaltet, um sicherzustellen, dass jede Verbindung effizient genutzt wird. Hashing-Algorithmen werten den Datenstrom kontinuierlich aus und passen die Datenstromverteilung über die Links in der LAG an, sodass keine Verbindung nicht oder nur unzureichend ausgelastet ist. Multicast Load Balancing ist auf den EX8200 Ethernet-Switches von Juniper Networks standardmäßig aktiviert.
Dieses Thema umfasst:
- Erstellen von LAGs für Multicasting in Schritten von 10 Gigabit
- Wann sollte ich Multicast Load Balancing verwenden?
- Wie funktioniert Multicast Load Balancing?
- Wie implementiere ich Multicast Load Balancing auf einem EX8200-Switch?
Erstellen von LAGs für Multicasting in Schritten von 10 Gigabit
Die maximale Verbindungsgröße auf einem EX8200-Switch beträgt 10 Gigabit. Wenn Sie eine größere Verbindung auf einem EX8200-Switch benötigen, können Sie bis zu zwölf 10-Gigabit-Links kombinieren. In der in Abbildung 1 dargestellten Beispieltopologie wurden vier 10-Gigabit-Links aggregiert, um jede 40-Gigabit-Verbindung zu bilden.
Wann sollte ich Multicast Load Balancing verwenden?
Verwenden Sie eine LAG mit Multicast-Lastenausgleich, wenn Sie eine Downstream-Verbindung mit mehr als 10 Gigabit benötigen. Dieser Bedarf tritt häufig auf, wenn Sie als Dienstanbieter fungieren oder wenn Sie Videos an ein großes Publikum übertragen.
Um Multicast Load Balancing verwenden zu können, benötigen Sie Folgendes:
Ein EX8200-Switch: Standalone-Switches unterstützen Multicast-Lastausgleich, Virtual Chassis hingegen nicht.
Eine Layer-3-geroutete Multicast-Einrichtung: Informationen zur Konfiguration von Multicasting finden Sie im Konfigurationshandbuch für Junos OS-Routingprotokolle.
Aggregierte 10-Gigabit-Verbindungen in einer LAG: Informationen zur Konfiguration von LAGs mit Multicast-Load-Balancing finden Sie unter Konfigurieren des Multicast-Load-Balancings für die Verwendung mit aggregierten 10-Gigabit-Ethernet-Verbindungen auf EX8200-Switches (CLI-Verfahren).
Wie funktioniert Multicast Load Balancing?
Wenn Datenverkehr mehrere Mitgliedslinks verwenden kann, muss sich Datenverkehr, der Teil desselben Streams ist, immer auf derselben Verbindung befinden.
Beim Multicast-Load-Balancing werden einer von sieben verfügbaren Hashing-Algorithmen und eine Technik namens Queue Shuffling (abwechselnd zwischen zwei Warteschlangen) verwendet, um die Daten zu verteilen und auszugleichen, wobei die Ströme über alle verfügbaren aggregierten Links geleitet werden. Sie können einen der sieben Algorithmen auswählen, wenn Sie den Multicast-Lastenausgleich konfigurieren, oder Sie können den Standardalgorithmus crc-sgip verwenden, der einen CRC-Algorithmus (Cyclic Redundancy Check) für die Gruppen-IP-Adresse der Multicastpakete verwendet. Es wird empfohlen, mit der Standardeinstellung crc-sgip zu beginnen und andere Optionen auszuprobieren, wenn dieser Algorithmus den gerouteten Layer-3-Multicastdatenverkehr nicht gleichmäßig verteilt. Sechs der Algorithmen basieren auf dem Hashwert von IP-Adressen (IPv4 oder IPv6) und liefern bei jeder Verwendung das gleiche Ergebnis. Nur die Option "Ausbalanciert" liefert Ergebnisse, die je nach Reihenfolge, in der Streams hinzugefügt werden, variieren. Weitere Informationen finden Sie in Tabelle 1 .
Hashing-Algorithmen |
Basierend auf |
Optimale Verwendung |
---|---|---|
SFB-SGIP |
Zyklische Redundanzprüfung der Quell- und Gruppen-IP-Adresse von Multicast-Paketen |
Standard: Hochleistungsmanagement des IP-Datenverkehrs in einem 10-Gigabit-Ethernet-Netzwerk. Vorhersehbare Zuweisung an denselben Link jedes Mal. Dieser Modus ist komplex, liefert aber einen guten verteilten Hash. |
SFB-GIP |
Zyklische Redundanzprüfung der Gruppen-IP-Adresse von Multicast-Paketen |
Vorhersehbare Zuweisung an denselben Link jedes Mal. Versuchen Sie diesen Modus, wenn crc-sgip den über Layer 3 gerouteten Multicast-Datenverkehr nicht gleichmäßig verteilt und die Gruppen-IP-Adressen variieren. |
CRC-SIP |
Zyklische Redundanzprüfung der Quell-IP-Adresse von Multicast-Paketen |
Vorhersehbare Zuweisung an denselben Link jedes Mal. Versuchen Sie diesen Modus, wenn crc-sgip den über Layer 3 gerouteten Multicast-Datenverkehr nicht gleichmäßig verteilt und die Streamquellen variieren. |
simple-sgip |
XOR-Berechnung der Quell- und Gruppen-IP-Adresse von Multicast-Paketen |
Vorhersehbare Zuweisung an denselben Link jedes Mal. Dies ist eine einfache Hashing-Methode, die möglicherweise nicht so gleichmäßig eine Verteilung ergibt wie crc-sgip ergibt. Versuchen Sie diesen Modus, wenn crc-sgip den über Layer 3 gerouteten Multicast-Datenverkehr nicht gleichmäßig verteilt. |
simple-gip |
XOR-Berechnung der Gruppen-IP-Adresse von Multicast-Paketen |
Vorhersehbare Zuweisung an denselben Link jedes Mal. Dies ist eine einfache Hashing-Methode, die möglicherweise nicht so gleichmäßig eine Verteilung ergibt wie crc-gip ergibt. Versuchen Sie Folgendes, wenn crc-gip den über Layer 3 gerouteten Multicast-Datenverkehr nicht gleichmäßig verteilt und die Gruppen-IP-Adressen variieren. |
Einfacher Schluck |
XOR-Berechnung der Quell-IP-Adresse von Multicast-Paketen |
Vorhersehbare Zuweisung an denselben Link jedes Mal. Dies ist eine einfache Hashing-Methode, die möglicherweise nicht so gleichmäßig verteilt ist wie crc-sip. Versuchen Sie diesen Modus, wenn crc-sip den gerouteten Layer-3-Multicast-Datenverkehr nicht gleichmäßig verteilt und die Stream-Quellen variieren. |
Ausgewogene |
Round-Robin-Berechnungsmethode zur Identifizierung von Multicast-Verbindungen mit dem geringsten Datenverkehrsaufkommen |
Die beste Balance wird erreicht, aber Sie können nicht vorhersagen, welcher Link konsistent verwendet wird, da dies von der Reihenfolge abhängt, in der die Streams online gehen. Verwenden Sie diese Option, wenn nicht nach jedem Neustart eine konsistente Zuweisung erforderlich ist. |
Wie implementiere ich Multicast Load Balancing auf einem EX8200-Switch?
Befolgen Sie die folgenden Empfehlungen, um Multicast-Lastausgleich mit einem optimierten Durchsatz auf einem EX8200-Switch zu implementieren:
Lassen Sie 25 Prozent ungenutzte Bandbreite in der aggregierten Verbindung zu, um dynamische Ungleichgewichte aufgrund von Verbindungsänderungen auszugleichen, die durch die gemeinsame Nutzung von Multicastschnittstellen verursacht werden.
Verwenden Sie für Downstream-Links nach Möglichkeit Multicast-Schnittstellen gleicher Größe. Außerdem wird bei nachgeschalteten aggregierten Links der Durchsatz optimiert, wenn die Mitglieder des aggregierten Links zu denselben Geräten gehören.
Verwenden Sie für aggregierte Upstream-Links nach Möglichkeit einen Layer-3-Link. Außerdem wird bei aggregierten Upstream-Links der Durchsatz optimiert, wenn die Mitglieder des aggregierten Links zu verschiedenen Geräten gehören.
Siehe auch
Beispiel: Konfigurieren von Multicast Load Balancing für die Verwendung mit aggregierten 10-Gigabit-Ethernet-Schnittstellen auf EX8200-Switches
EX8200-Switches unterstützen Multicast Load Balancing für Link Aggregation Groups (LAGs). Beim Multicast-Load-Balancing wird der auf Layer 3 geroutete Multicast-Datenverkehr gleichmäßig auf die LAGs verteilt. Sie können bis zu zwölf 10-Gigabit-Ethernet-Verbindungen zu einer virtuellen 120-Gigabit-Verbindung oder LAG zusammenfassen. Der MAC-Client kann diese virtuelle Verbindung so behandeln, als wäre sie eine einzelne Verbindung, um die Bandbreite zu erhöhen, eine ordnungsgemäße Verschlechterung bei Verbindungsfehlern bereitzustellen und die Verfügbarkeit zu erhöhen. Auf EX8200-Switches ist Multicast-Lastausgleich standardmäßig aktiviert. Wenn es jedoch explizit deaktiviert ist, können Sie es wieder aktivieren. .
Eine Schnittstelle mit einer bereits konfigurierten IP-Adresse kann nicht Teil der LAG sein.
Nur EX8200-Standalone-Switches mit 10-Gigabit-Verbindungen unterstützen Multicast-Lastausgleich. Virtual Chassis unterstützt kein Multicast-Load-Balancing.
Dieses Beispiel zeigt, wie Sie eine LAG konfigurieren und den Multicast-Lastenausgleich erneut aktivieren:
Anforderungen
In diesem Beispiel werden die folgenden Hardware- und Softwarekomponenten verwendet:
Zwei EX8200-Switches, einer als Zugriffs-Switch und einer als Verteiler-Switch
Junos OS Version 12.2 oder höher für Switches der EX-Serie
Bevor Sie beginnen:
Konfigurieren Sie vier 10-Gigabit-Schnittstellen auf dem Distribution-Switch EX8200: xe-0/1/0, xe-1/1/0, xe-2/1/0 und xe-3/1/0. Weitere Informationen finden Sie unter Konfigurieren von Gigabit-Ethernet-Schnittstellen (CLI-Verfahren).
Übersicht und Topologie
Beim Multicast-Load-Balancing wird einer von sieben Hashing-Algorithmen verwendet, um den Datenverkehr zwischen den einzelnen 10-Gigabit-Verbindungen in der LAG auszugleichen. Eine Beschreibung der Hashalgorithmen finden Sie unter multicast-loadbalance. Der Standard-Hashing-Algorithmus ist crc-sgip. Sie können mit den verschiedenen Hashing-Algorithmen experimentieren, bis Sie denjenigen ermittelt haben, der Ihren über Layer 3 gerouteten Multicast-Datenverkehr am besten ausgleicht.
Wenn auf einem EX8200-Switch eine Verbindung benötigt wird, die größer als 10 Gigabit ist, können Sie bis zu zwölf 10-Gigabit-Links kombinieren, um mehr Bandbreite zu schaffen. In diesem Beispiel wird die Link-Aggregationsfunktion verwendet, um vier 10-Gigabit-Links zu einer 40-Gigabit-Verbindung auf dem Distribution-Switch zu kombinieren. Darüber hinaus ist Multicast-Load-Balancing aktiviert, um eine gleichmäßige Verteilung des über Layer 3 gerouteten Multicast-Datenverkehrs auf der 40-Gigabit-Verbindung zu gewährleisten. In der in Abbildung 2 dargestellten Beispieltopologie ist ein EX8200-Switch in der Verteilungsschicht mit einem EX8200-Switch in der Zugriffsschicht verbunden.
Die Verbindungsgeschwindigkeit wird automatisch anhand der Größe der konfigurierten LAG bestimmt. Wenn eine LAG beispielsweise aus vier 10-Gigabit-Verbindungen besteht, beträgt die Verbindungsgeschwindigkeit 40 Gigabit pro Sekunde).
Der Standard-Hashing-Algorithmus crc-sgip umfasst eine zyklische Redundanzprüfung sowohl der Quell- als auch der Gruppen-IP-Adressen des Multicast-Pakets.
Sie konfigurieren eine LAG auf jedem Switch und aktivieren den Multicast-Lastausgleich erneut. Bei erneuter Aktivierung wird der Multicast-Lastenausgleich automatisch auf die LAG angewendet, und die Geschwindigkeit wird für jede Verbindung in der LAG auf 10 Gigabit pro Sekunde festgelegt. Die Verbindungsgeschwindigkeit für die 40-Gigabit-LAG wird automatisch auf 40 Gigabit pro Sekunde festgelegt.
Konfiguration
Verfahren
CLI-Schnellkonfiguration
Um dieses Beispiel schnell zu konfigurieren, kopieren Sie die folgenden Befehle, fügen Sie sie in eine Textdatei ein, entfernen Sie alle Zeilenumbrüche, ändern Sie alle Details, die für Ihre Netzwerkkonfiguration erforderlich sind, und kopieren Sie dann die Befehle und fügen Sie sie in die CLI auf Hierarchieebene [edit]
ein.
set chassis aggregated-devices ethernet device-count 1 set interfaces ae0 aggregated-ether-options minimum-links 1 set interfaces xe-0/1/0 ether-options 802.3ad ae0 set interfaces xe-1/1/0 ether-options 802.3ad ae0 set interfaces xe-2/1/0 ether-options 802.3ad ae0 set interfaces xe-3/1/0 ether-options 802.3ad ae0 set chassis multicast-loadbalance hash-mode crc-gip
Schritt-für-Schritt-Anleitung
So konfigurieren Sie eine LAG und aktivieren den Multicast-Lastenausgleich erneut:
Geben Sie die Anzahl der aggregierten Ethernet-Schnittstellen an, die erstellt werden sollen:
[edit chassis] user@switch#
set aggregated-devices ethernet device-count 1
Geben Sie die Mindestanzahl von Verbindungen für die aggregierte Ethernet-Schnittstelle (aex), d. h. die LAG, an, die gekennzeichnet
up
werden soll:Hinweis:Standardmäßig muss nur ein Link aktiv sein, damit die LAG beschriftet
up
wird.[edit interfaces] user@switch#
set ae0 aggregated-ether-options minimum-links 1
Geben Sie die vier Mitglieder an, die in die LAG aufgenommen werden sollen:
[edit interfaces] user@switch#
set xe-0/1/0 ether-options 802.3ad ae0
user@switch#set xe-1/1/0 ether-options 802.3ad ae0
user@switch#set xe-2/1/0 ether-options 802.3ad ae0
user@switch#set xe-3/1/0 ether-options 802.3ad ae0
Multicast-Load-Balancing erneut aktivieren:
[edit chassis] user@switch# set multicast-loadbalance
Hinweis:Sie müssen die Verbindungsgeschwindigkeit nicht so einstellen wie bei LAGs, die kein Multicast-Load-Balancing verwenden. Die Verbindungsgeschwindigkeit wird bei einer 40-Gigabit-LAG automatisch auf 40 Gigabit pro Sekunde festgelegt.
Sie können optional den Wert der Option in der
hash-mode
multicast-loadbalance-Anweisung ändern, um verschiedene Algorithmen auszuprobieren, bis Sie denjenigen gefunden haben, der Ihren über Layer 3 gerouteten Multicast-Datenverkehr am besten verteilt.Wenn Sie den Hashing-Algorithmus ändern, wenn Multicast-Load-Balancing deaktiviert ist, wird der neue Algorithmus wirksam, nachdem Sie Multicast-Load-Balancing wieder aktiviert haben.
Ergebnisse
Überprüfen Sie die Ergebnisse der Konfiguration:
user@switch> show configuration chassis aggregated-devices { ethernet { device-count 1; } } multicast-loadbalance { hash-mode crc-gip; } interfaces xe-0/1/0 { ether-options { 802.3ad ae0; } } xe-1/1/0 { ether-options { 802.3ad ae0; } } xe-2/1/0 { ether-options { 802.3ad ae0; } } xe-3/1/0 { ether-options { 802.3ad ae0; } } ae0 { aggregated-ether-options { minimum-links 1; } } }
Überprüfung
Um zu bestätigen, dass die Konfiguration ordnungsgemäß funktioniert, führen Sie die folgenden Schritte aus:
Status einer LAG-Schnittstelle überprüfen
Zweck
Stellen Sie sicher, dass auf dem Switch eine Link Aggregation Group (LAG) (ae0) erstellt wurde.
Aktion
Vergewissern Sie sich, dass die ae0-LAG erstellt wurde:
user@switch> show interfaces ae0 terse
Interface Admin Link Proto Local Remote ae0 up up ae0.0 up up inet 10.10.10.2/24
Bedeutung
Der Schnittstellenname aex gibt an, dass es sich um eine LAG handelt. A steht für aggregiert und E für Ethernet. Die Nummer unterscheidet die verschiedenen LAGs.
Überprüfen des Multicast-Lastenausgleichs
Zweck
Stellen Sie sicher, dass der Datenverkehr gleichmäßig auf die Pfade verteilt wird.
Aktion
Überprüfen Sie das Load Balancing über die vier Schnittstellen hinweg:
user@switch> monitor interface traffic
Bytes=b, Clear=c, Delta=d, Packets=p, Quit=q or ESC, Rate=r, Up=^U, Down=^D ibmoem02-re1 Seconds: 3 Time: 16:06:14 Interface Link Input packets (pps) Output packets (pps) xe-0/1/0 Up 2058834 (10) 7345862 (19) xe-1/1/0 Up 2509289 (9) 6740592 (21) xe-2/1/0 Up 8625688 (90) 10558315 (20) xe-3/1/0 Up 2374154 (23) 71494375 (9)
Bedeutung
Die Schnittstellen sollten ungefähr die gleiche Menge an Datenverkehr übertragen.
Dynamischer Lastenausgleich
Load Balancing wird verwendet, um sicherzustellen, dass der Netzwerkverkehr so gleichmäßig wie möglich auf die Mitglieder einer bestimmten ECMP (Equal-cost Multi-Path Routing) oder LAG (Link Aggregation Group) verteilt wird. Im Allgemeinen wird Load Balancing entweder als statisch oder dynamisch klassifiziert. Statischer Lastenausgleich (Static Load Balancing, SLB) berechnet das Hashing ausschließlich auf der Grundlage des Paketinhalts (z. B. Quell-IP, Ziel-IP usw.). Der größte Vorteil von SLB besteht darin, dass die Paketreihenfolge gewährleistet ist, da alle Pakete eines bestimmten Datenstroms denselben Pfad nehmen. Da der SLB-Mechanismus jedoch die Pfad- oder Verbindungslast nicht berücksichtigt, treten im Netzwerk häufig die folgenden Probleme auf:
Schlechte Auslastung der Verbindungsbandbreite
Elephant Flow auf einem einzigen Link lässt Mäuse vollständig darauf fallen.
Dynamic Load Balancing (DLB) ist eine Verbesserung gegenüber SLB.
Für ECMP können Sie DLB global konfigurieren, während Sie es für LAG für jede aggregierte Ethernet-Schnittstelle konfigurieren. Sie können DLB je nach Konfiguration auf ausgewählte Ether-Typen (IPv4, IPv6 und MPLS) anwenden. Wenn Sie keinen Ether-Typ konfigurieren, wird DLB auf alle EtherTypes angewendet. Beachten Sie, dass Sie den DLB-Modus explizit konfigurieren müssen, da es keinen Standardmodus gibt.
-
Ab Junos OS Version 22.3R1-EVO unterstützen QFX5130-32CD-Switches dynamisches Load Balancing sowohl für ECMP als auch für LAG.
-
Ab Junos OS Version 19.4R1 unterstützen QFX5120-32C- und QFX5120-48Y-Switches dynamisches Load Balancing sowohl für ECMP als auch für LAG. Für LAG muss DLB pro aggregierter Ethernet-Schnittstelle konfiguriert werden.
-
Ab Version 19.4R2 von Junos OS evolved unterstützen QFX5220 Switches dynamisches Load Balancing (DLB) für ECMP. Für ECMP muss DLB global konfiguriert werden.
-
Es ist nicht möglich, DLB und ausfallsicheres Hashing gleichzeitig zu konfigurieren. Andernfalls wird ein Commit-Fehler ausgelöst.
-
DLB ist nur für Unicast-Datenverkehr geeignet.
-
DLB wird nicht unterstützt, wenn die LAG eines der ausgehenden ECMP-Mitglieder ist.
-
DLB wird für Remote-LAG-Mitglieder nicht unterstützt.
-
DLB wird auf Virtual Chassis und Virtual Chassis Fabric (VCF) nicht unterstützt.
-
DLB auf LAG und HiGig-trunk werden nicht gleichzeitig unterstützt.
-
QFX5220 Switches unterstützen DLB auf LAG nicht.
Plattform |
DLB-Unterstützung für ECMP |
DLB-Unterstützung für LAG |
---|---|---|
QFX5120-32C |
Ja |
Ja |
QFX5120-48J |
Ja |
Ja |
QFX5220 |
Ja |
Nein |
Sie können die folgenden DLB-Modi verwenden, um den Datenverkehr auszugleichen:
Pro-Paket-Modus
In diesem Modus wird DLB für jedes Paket im Datenstrom initiiert. Dieser Modus stellt sicher, dass das Paket immer dem Mitgliedsport mit der besten Qualität zugewiesen wird. In diesem Modus kann es bei DLB jedoch zu Problemen bei der Neuanordnung von Paketen kommen, die aufgrund von Latenzverzerrungen auftreten können.
Flowlet-Modus
Dieser Modus basiert auf der Zuweisung von Links basierend auf Flowlets anstelle von Flowlets . Der reale Anwendungsdatenverkehr beruht auf Flusssteuerungsmechanismen von Übertragungsprotokollen der oberen Schicht, wie z. B. TCP, die die Übertragungsrate drosseln. Als Ergebnis werden Flowlets erstellt. Sie können sich Flowlets als mehrere Bursts desselben Flows vorstellen, die durch einen Zeitraum der Inaktivität zwischen diesen Bursts getrennt sind – dieser Zeitraum der Inaktivität wird als Inaktivitätsintervall bezeichnet. Das Inaktivitätsintervall dient als Abgrenzungskriterium für die Identifizierung neuer Flowlets und wird als vom Benutzer konfigurierbare Anweisung unter der DLB-Konfiguration angeboten. In diesem Modus wird DLB pro Flowlet initiiert, d. h. sowohl für den neuen Flow als auch für den bestehenden Flow, der über einen ausreichend langen Zeitraum inaktiv war (konfiguriert
inactivity-interval
). Das Problem der Neuanordnung im Modus pro Paket wird in diesem Modus behoben, da alle Pakete in einem Flowlet dieselbe Verbindung verwenden. Wenn der Wert so konfiguriert ist, dass erinactivity-interval
höher als die maximale Latenzabweichung über alle ECMP-Pfade hinweg ist, können Sie die Neuanordnung von Paketen über Flowlets hinweg vermeiden und gleichzeitig die Verbindungsauslastung aller verfügbaren ECMP-Links erhöhen.Zugewiesener Flow-Modus
Sie können den zugewiesenen Flow-Modus verwenden, um das Rebalancing selektiv für einen bestimmten Zeitraum zu deaktivieren, um Problemquellen zu isolieren. Sie können diesen Modus nicht für Echtzeit-DLB verwenden oder die Ausgangsports vorhersagen, die in diesem Modus ausgewählt werden, da der zugewiesene Datenflussmodus die Portlast und die Warteschlangengröße nicht berücksichtigt.
Hier sind einige der wichtigen Verhaltensweisen von DLB:
DLB gilt nur für eingehende EtherTypes.
Aus DLB-Sicht werden sowohl Layer-2- als auch Layer-3-LAG-Bundles (Link Aggregation Group) als gleich betrachtet.
Die Verbindungsauslastung ist nicht optimal, wenn Sie dynamisches Load Balancing in asymmetrischen Bündeln verwenden, d. h. auf ECMP-Verbindungen mit unterschiedlichen Mitgliedskapazitäten.
Mit DLB findet keine Neuzuweisung des Datenstroms statt, wenn pro Paket ein neuer Link hinzugefügt wird und Datenflussmodi zugewiesen werden. Dies kann zu einer suboptimalen Nutzung in Link-Flap-Szenarien führen, in denen ein verwendeter Link möglicherweise nicht verwendet wird, nachdem er einer Klappe unterzogen wurde, wenn kein neuer Fluss oder keine neuen Flowlets nach der Klappe zu sehen sind.
Vorteile
DLB berücksichtigt die Bandbreitenauslastung der Mitglieder zusammen mit dem Paketinhalt für die Mitgliederauswahl. Dadurch erreichen wir eine bessere Link-Auslastung auf Basis von Echtzeit-Link-Loads.
DLB stellt sicher, dass Links, die von Elefantenströmen in Beschlag genommen werden, nicht von Mäusen genutzt werden. Daher vermeiden wir durch die Verwendung von DLB Hash-Kollisionsverluste, die bei SLB auftreten. Das heißt, mit DLB werden die Verbindungen verteilt und somit die Kollision und der daraus resultierende Verlust von Paketen vermieden.
Siehe auch
Konfigurieren des dynamischen Lastenausgleichs
In diesem Thema wird beschrieben, wie Sie Dynamic Load Balancing (DLB) im Flowlet-Modus konfigurieren.
Ab Junos OS Version 19.4R1 unterstützen QFX5120-32C- und QFX5120-48Y-Switches dynamisches Load Balancing sowohl für ECMP als auch für LAG. Für LAG muss DLB pro aggregierter Ethernet-Schnittstelle konfiguriert werden.
Ab Version 19.4R2 von Junos OS evolved unterstützen QFX5220 Switches dynamisches Load Balancing (DLB) für ECMP. Für ECMP muss DLB global konfiguriert werden.
DLB für ECMP konfigurieren (Flowlet-Modus)
So konfigurieren Sie dynamisches Load Balancing für ECMP mit Flowlet-Modus (QFX5120-32C-, QFX5120-48Y- und QFX5220-Switches):
Ebenso können Sie DLB für ECMP im Modus " Pro Paket " oder " Zugewiesener Datenfluss" konfigurieren.
DLB für LAG konfigurieren (Flowlet-Modus)
Bevor Sie beginnen, erstellen Sie ein aggregiertes Ethernet-Paket (AE), indem Sie eine Reihe von Routerschnittstellen als aggregiertes Ethernet und mit einer bestimmten aggregierten Ethernet-Gruppenkennung (AE) konfigurieren.
So konfigurieren Sie den dynamischen Lastenausgleich für LAG im Flowlet-Modus (QFX5120-32C und QFX5120-48Y):
Aktivieren Sie dynamisches Load Balancing mit dem Flowlet-Modus:
[edit interfaces ae-x aggregated-ether-options] user@router# set dlb flowlet
(Optional) Konfigurieren Sie den Wert - minimales Inaktivitätsintervall (in Mikrosekunden) für die erneute Zuweisung von inactivity-interval Links:
[edit interfaces ae-x aggregated-ether-options] user@router# set dlb flowlet inactivity-interval (micro seconds)
(Optional) Konfigurieren Sie dynamisches Load Balancing mit
ether-type
:[edit forwarding-options enhanced-hash-key] user@router# set lag-dlb ether-type mpls
(Optional) Sie können die für den dynamischen Lastenausgleich auf LAG konfigurierten Optionen mit
show forwarding-options enhanced-hash-key
dem Befehl anzeigen.
Auf ähnliche Weise können Sie DLB für LAG im Modus " Pro Paket " oder " Zugewiesener Datenfluss" konfigurieren.
Siehe auch
Beispiel: Konfigurieren des dynamischen Lastenausgleichs
In diesem Beispiel wird gezeigt, wie der dynamische Lastenausgleich konfiguriert wird.
Anforderungen
In diesem Beispiel werden die folgenden Hardware- und Softwarekomponenten verwendet:
Zwei QFX5120-32C- oder QFX5120-48Y-Switches
Junos OS Version 19.4R1 oder höher, das auf allen Geräten ausgeführt wird
Übersicht
Dynamic Load Balancing (DLB) ist eine Verbesserung gegenüber SLB.
Für ECMP können Sie DLB global konfigurieren, während Sie es für LAG für jede aggregierte Ethernet-Schnittstelle konfigurieren. Sie können DLB je nach Konfiguration auf ausgewählte Ether-Typen wie IPv4, IPv6 und MPLS anwenden. Wenn Sie keinen Ether-Typ konfigurieren, wird DLB auf alle EtherTypes angewendet. Beachten Sie, dass Sie den DLB-Modus explizit konfigurieren müssen, da es keinen Standardmodus gibt.
Ab Junos OS Version 19.4R1 unterstützen QFX5120-32C- und QFX5120-48Y-Switches dynamisches Load Balancing sowohl auf ECMP als auch auf LAG.
Es ist nicht möglich, DLB und Resilient Hashing gleichzeitig zu konfigurieren. Andernfalls wird ein Commit-Fehler ausgelöst.
Topologie
In dieser Topologie sind sowohl R0 als auch R1 verbunden.
Dieses Beispiel zeigt die statische Konfiguration. Sie können auch Konfigurationen mit dynamischen Protokollen hinzufügen.
Konfiguration
- CLI-Schnellkonfiguration
- Konfigurieren des dynamischen Lastenausgleichs für LAG (QFX5120-32C und QFX5120-48Y)
- Konfigurieren des dynamischen Lastenausgleichs für ECMP (QFX5120-32C-, QFX5120-48Y- und QFX5220-Switches)
CLI-Schnellkonfiguration
Um dieses Beispiel schnell zu konfigurieren, kopieren Sie die folgenden Befehle, fügen Sie sie in eine Textdatei ein, entfernen Sie alle Zeilenumbrüche, ändern Sie alle Details, die für Ihre Netzwerkkonfiguration erforderlich sind, und kopieren Sie dann die Befehle und fügen Sie sie in die CLI auf Hierarchieebene [edit]
ein.
R0
set interfaces xe-0/0/0 unit 0 family inet address 10.1.0.2/24 set interfaces xe-0/0/10 unit 0 family inet address 10.1.1.2/24 set interfaces xe-0/0/54:0 unit 0 family inet address 10.10.10.2/24 set forwarding-options enhanced-hash-key ecmp-dlb per-packet set policy-options policy-statement loadbal then load-balance per-packet set routing-options static route 20.0.1.0/24 next-hop 10.1.0.3 set routing-options static route 20.0.1.0/24 next-hop 10.1.1.3 set routing-options forwarding-table export loadbal
R1
set interfaces xe-0/0/0 unit 0 family inet address 10.1.0.3/24 set interfaces xe-0/0/10 unit 0 family inet address 10.1.1.3/24 set interfaces xe-0/0/52:0 unit 0 family inet address 20.0.0.2/16
Konfigurieren des dynamischen Lastenausgleichs für LAG (QFX5120-32C und QFX5120-48Y)
Schritt-für-Schritt-Anleitung
Im folgenden Beispiel müssen Sie durch verschiedene Ebenen in der Konfigurationshierarchie navigieren. Weitere Informationen zum Navigieren in der CLI finden Sie unter Verwenden des CLI-Editors im Konfigurationsmodus.
So konfigurieren Sie den R0-Router:
Wiederholen Sie diesen Vorgang für die anderen Router, nachdem Sie die entsprechenden Schnittstellennamen, Adressen und anderen Parameter für jeden Router geändert haben.
Konfigurieren Sie die Link Aggregation Group (LAG).
[edit interfaces]
user@R0# set interfaces xe-0/0/0 ether-options 802.3ad ae0 user@R0# set interfaces xe-0/0/10 ether-options 802.3ad ae0 user@R0# set interfaces ae0 aggregated-ether-options lacp active user@R0# set interfaces ae0 unit 0 family inet address 10.1.0.2/24 user@R0# set routing-options static route 20.0.1.0/24 next-hop 10.1.0.3Führen Sie nach der Konfiguration der LAG im Abschnitt "Überprüfung" die Schritte im Abschnitt Überprüfen der Datenverkehrslast vor der Konfiguration der Funktion "Dynamischer Lastenausgleich für LAG" aus, um die Konfiguration oder die Datenverkehrslast vor der Konfiguration von DLB zu überprüfen.
Konfigurieren Sie den dynamischen Lastenausgleich mit dem Paketmodus für LAG.
[edit]
user@R0# set interfaces ae0 aggregated-ether-options dlb per-packetFühren Sie nach der Konfiguration des DLB im Abschnitt "Überprüfung" die Schritte im Abschnitt Überprüfen der Datenverkehrslast nach der Konfiguration der Funktion "Dynamischer Lastenausgleich für LAG " aus, um die Konfiguration oder die Datenverkehrslast vor der Konfiguration von DLB zu überprüfen.
Konfigurieren des dynamischen Lastenausgleichs für ECMP (QFX5120-32C-, QFX5120-48Y- und QFX5220-Switches)
Schritt-für-Schritt-Anleitung
Im folgenden Beispiel müssen Sie durch verschiedene Ebenen in der Konfigurationshierarchie navigieren. Weitere Informationen zum Navigieren in der CLI finden Sie unter Verwenden des CLI-Editors im Konfigurationsmodus.
So konfigurieren Sie den R0-Router:
Wiederholen Sie diesen Vorgang für die anderen Router, nachdem Sie die entsprechenden Schnittstellennamen, Adressen und anderen Parameter für jeden Router geändert haben.
Konfigurieren Sie die Gigabit-Ethernet-Schnittstellenverbindung, die eine Verbindung von R0 zu R1 herstellt.
[edit interfaces]
user@R0# set interfaces xe-0/0/0 unit 0 family inet address 10.1.0.2/24 user@R0# set interfaces xe-0/0/10 unit 0 family inet address 10.1.1.2/24 user@R0# set interfaces xe-0/0/54:0 unit 0 family inet address 10.10.10.2/24Erstellen Sie die statischen Routen:
[edit interfaces]
user@R0# set routing-options static route 20.0.1.0/24 next-hop 10.1.0.3 user@R0# set routing-options static route 20.0.1.0/24 next-hop 10.1.1.3Wenden Sie die Lastenausgleichsrichtlinie an. Die dynamische Lastausgleichsfunktion erfordert, dass mehrere nächste ECMP-Hops in der Weiterleitungstabelle vorhanden sind.
[edit interfaces]
user@R0# set policy-options policy-statement loadbal then load-balance per-packet user@R0# set routing-options forwarding-table export loadbalKonfigurieren Sie den dynamischen Lastenausgleich im Paketmodus für ECMP.
[edit interfaces]
user@R0# set forwarding-options enhanced-hash-key ecmp-dlb per-packetKonfigurieren Sie auf R1 die Gigabit-Ethernet-Schnittstellenverbindung.
[edit interfaces]
user@R2# set interfaces xe-0/0/0 unit 0 family inet address 10.1.0.3/24 user@R2# set interfaces xe-0/0/10 unit 0 family inet address 10.1.1.3/24 user@R2# set interfaces xe-0/0/52:0 unit 0 family inet address 20.0.0.2/16
Überprüfung
Vergewissern Sie sich, dass die Konfiguration ordnungsgemäß funktioniert.
- Überprüfen Sie die Datenverkehrslast, bevor Sie die dynamische Lastausgleichsfunktion für LAG konfigurieren.
- Überprüfen der Datenverkehrslast nach der Konfiguration der dynamischen Lastenausgleichsfunktion in der LAG
Überprüfen Sie die Datenverkehrslast, bevor Sie die dynamische Lastausgleichsfunktion für LAG konfigurieren.
Zweck
Überprüfen Sie, bevor die DLB-Funktion in der Link Aggregation Group konfiguriert wird.
Aktion
Führen Sie den show interfaces interface-name | match pps
Befehl im Betriebsmodus aus.
user@R0>show interfaces xe-0/0/0 | match pps Input rate : 1240 bps (1 pps) Output rate : 1024616 bps (1000 pps) ## all traffic in one link. user@R0>show interfaces xe-0/0/10 | match pps Input rate : 616 bps (0 pps) Output rate : 1240 bps (1 pps)<< Output rate : 1240 bps (1 pps) ## no traffic
Überprüfen der Datenverkehrslast nach der Konfiguration der dynamischen Lastenausgleichsfunktion in der LAG
Zweck
Stellen Sie sicher, dass für die auf R0 empfangenen Pakete ein Lastenausgleich durchgeführt wird.
Aktion
Führen Sie den show interfaces interface-name
Befehl im Betriebsmodus aus.
user@R0>show interfaces xe-0/0/0 | match pps Input rate : 616 bps (0 pps) Output rate : 519096 bps (506 pps)<< Output rate : 519096 bps (506 pps) ## load equally shared user@R0>show interfaces xe-0/0/10 | match pps Input rate : 1232 bps (1 pps) Output rate : 512616 bps (500 pps)<< Output rate : 512616 bps (500 pps) ## load equally shared
Bedeutung
Dynamisches Load Balancing mit Pro-Paket-Modus funktioniert erfolgreich. Nach dem Anwenden der dynamischen Lastausgleichsfunktion auf LAG wird die Last gleichmäßig im Netzwerk verteilt.
Überprüfung
Vergewissern Sie sich, dass die Konfiguration bei R0 ordnungsgemäß funktioniert.
Überprüfen des dynamischen Lastenausgleichs auf R0
Zweck
Stellen Sie sicher, dass für die auf R0 empfangenen Pakete ein Lastenausgleich durchgeführt wird.
Aktion
Führen Sie den run show route forwarding-table destination destination-address
Befehl im Betriebsmodus aus.
user@R0>show route forwarding-table destination 20.0.1.0/24 inet.0: 178 destinations, 178 routes (178 active, 0 holddown, 0 hidden) + = Active Route, - = Last Active, * = Both 20.0.1.0/24 *[Static/5] 1d 03:35:12 > to 10.1.0.3 via xe-0/0/0.0 to 10.1.1.3 via xe-0/0/10.0 user@R0>show route 20.0.1.0/24 inet.0: 178 destinations, 178 routes (178 active, 0 holddown, 0 hidden) + = Active Route, - = Last Active, * = Both 20.0.1.0/24 *[Static/5] 1d 03:35:12 > to 10.1.0.3 via xe-0/0/0.0 to 10.1.1.3 via xe-0/0/10.0
Bedeutung
Überprüfen des Lastenausgleichs auf R1
Zweck
Vergewissern Sie sich, dass die Konfiguration bei R1 ordnungsgemäß funktioniert.
Aktion
Führen Sie den show route
Befehl im Betriebsmodus aus.
user@R1>show route 20.0.1.25 inet.0: 146 destinations, 146 routes (146 active, 0 holddown, 0 hidden) + = Active Route, - = Last Active, * = Both 20.0.0.0/16 *[Direct/0] 1d 03:37:11 > via xe-0/0/52:0.0
Bedeutung
Dynamisches Load Balancing mit Pro-Paket-Modus funktioniert erfolgreich. Nach der Anwendung der dynamischen Lastausgleichsfunktion auf ECMP wird die Last gleichmäßig im Netzwerk verteilt.
Tabelle "Änderungshistorie"
Die Funktionsunterstützung hängt von der Plattform und der Version ab, die Sie verwenden. Verwenden Sie den Feature-Explorer , um festzustellen, ob ein Feature auf Ihrer Plattform unterstützt wird.
payload
Anweisung verwendet werden.