Deutsch

Grundlagen von Windows NIC-Teaming & Linux NIC-Bonding

Aktualisierung: 13. Apr 2020 by
10.3k

Angenommen, Sie haben von verschiedenen Anbietern von NIC-Teaming (NIC: Network Interface Card) oder NIC-Bonding gehört. Sie haben mehrere physische NICs zu einer virtuellen Netzwerkkarte verbunden, die nach außen hin eine einzige sichtbare MAC-Adresse präsentiert. Ihr Endziel ist höhere Leistung und bessere Redundanz. In diesem Leitfaden wird ein Überblick über das Windows NIC-Teaming bzw. Linux NIC-Bonding gegeben: zwei Methoden zur Verbesserung der Lastverteilung und Ausfallsicherheit.

 

NIC-Teaming auf Windows

Was ist Windows NIC-Teaming?

NIC-Teaming, in der Microsoft-Welt auch als Load Balancing/Failover (LBFO) bekannt, ist ein Mechanismus, der es ermöglicht, mehrere physische Netzwerkadapterkarten in demselben physischen Host/Server zusammen zu binden und in Form einer einzigen logischen NIC in ein "Team" zu platzieren. Die verbundenen Netzwerkadapter, die als ein oder mehrere virtuelle Adapter (auch Team-NICs, "tNICs" oder Team-Schnittstellen genannt) zum Windows-Betriebssystem dargestellt werden, teilen sich dieselbe IP.

Wie viele Modi gibt es beim Windows NIC-Teaming?

Eine Vielzahl von Netzwerkadaptern ist auf dem Markt erhältlich, wobei die Intel NIC die am häufigsten verwendete unter den Mainstream-Lösungen ist. Intel NIC-Teaming kann in verschiedene Teaming-Modi eingeteilt werden:

Adapter Fault Tolerance (AFT) bietet automatische Redundanz für die Netzwerkverbindung eines Servers. Der Backup-Adapter übernimmt die Aufgabe, wenn der primäre Adapter ausfällt.

Anforderungen und Einschränkungen: funktioniert mit beliebigen Switches; alle Teammitglieder müssen an dasselbe Subnetz angeschlossen sein. 2-8 Netzwerkadapter pro Team.

Switch Fault Tolerance (SFT) bietet eine Ausfallsicherung zwischen zwei Netzwerkadapterkarten, wenn jeder Adapter an einen separaten Switch angeschlossen ist.

Anforderungen und Einschränkungen: arbeitet mit getrennten Switches; alle Teammitglieder müssen an dasselbe Subnetz angeschlossen sein. Das Spanning-Tree-Protokoll (STP) muss bei der Erstellung eines SFT-Teams aktiviert werden. 2 Netzwerkadapter pro Team.

Adaptive Load Balancing (ALB) bietet erhöhten Lastausgleich und Adapter-Fehlertoleranz. Der Empfangslastenausgleich (RLB) kann in ALB-Teams aktiviert und deaktiviert werden, was standardmäßig aktiviert ist.

Anforderungen und Einschränkungen: funktioniert mit beliebigen Switches.

Virtual Machine Load Balancing (VMLB) bietet eine Lastverteilung des Sende- und Empfangsverkehrs über VMs (Virtuelle Maschinen), die an die Team-Schnittstelle gebunden sind, sowie Fehlertoleranz im Falle eines Ausfalls von Switch-Ports, Kabeln oder Netzwerkkarten.

Anforderungen und Einschränkungen: funktioniert mit beliebigen Switches.

Fast EtherChannel/Link Aggregation (FEC) bietet eine Fehlertoleranz des Lastausgleichsadapters (nur bei gerouteten Protokollen) und hilft, den Sende- und Empfangsdurchsatz zu erhöhen.

Anforderungen und Einschränkungen: erfordert einen Switch mit Link Aggregation der FEC-Fähigkeit. 2-8 Netzwerkadapter pro Team.

Gigabit EtherChannel/Link Aggregation (GEC) ist eine Gigabit-Erweiterung von FEC/Link Aggregation/802.3ad.

Anforderungen und Einschränkungen: Alle Teammitglieder müssen mit Gigabit-Geschwindigkeit arbeiten.

Static Link Aggregation (SLA) hat die beiden Vorgänger FEC und GEC ersetzt.

Anforderungen und Einschränkungen: Die Netzwerkadapter im statischen Modus sollten alle mit der gleichen Geschwindigkeit laufen und an einen Switch mit statischer Link-Aggregationsfähigkeit angeschlossen werden. Die Geschwindigkeit des Teams hängt vom kleinsten gemeinsamen Nenner ab, wenn die Geschwindigkeit der Netzwerkkarten variiert. 2-8 Netzwerkadapter pro Team.

Dynamic Link Aggregation (IEEE 802.3ad) erstellt ein oder mehrere Teams durch die Verwendung dynamischer Link-Aggregation mit Netzwerkadaptern mit gemischter Geschwindigkeit, die Fehlertoleranz bietet und zur Erhöhung des Sende- und Empfangsdurchsatzes beiträgt.

Anforderungen und Einschränkungen: erfordert einen Switch, der den IEEE 802.3ad-Standard vollständig unterstützt.

Multi-vendor Teaming (MVT) ermöglicht die Zusammenarbeit von Netzwerkadaptern verschiedener Hersteller in einem Team.

 

NIC-Bonding auf Linux

Was ist Linux NIC-Bonding?

In Linux-Betriebssystemen bezieht sich NIC-Bonding auf einen Prozess, bei dem mehrere Netzwerkschnittstellen zu einer einzigen logischen "gebundenen" Schnittstelle zusammengeführt werden. Das heißt, zwei oder mehr Netzwerkkarten werden kombiniert und miteinander verbunden, wobei sie wie eine einzige fungieren. Beachten Sie, dass eine der Voraussetzungen für die Konfiguration eines Bonding ein Netzwerk-Switch ist, der EtherChannel unterstützt (was bei fast allen Switches zutrifft).

Wie viele Modi gibt es beim Linux NIC-Bonding?

Das Verhalten der gebundenen NICs hängt von der Art des Bindungsmodus ab. Im Allgemeinen können Modi Fehlertoleranz- und/oder Lastausgleichsdienste bereitstellen. Die folgende Tabelle enthält detaillierte Erläuterungen zu den sieben Modi.

Modus Bezeichnung Fault
Tolerance
Load
Balancing
Features und Beschreibungen
mode=0
(balance-rr)
Round-robin Y Y Der Standardmodus.
Beim Round-Robin-Verfahren werden die Pakete nacheinander vom ersten bis
zum letzten verfügbaren Slave gesendet/empfangen.
mode=1
(active-backup)
Active-backup Y N NUR EIN Sklave ist aktiv, während ein anderer im Ruhezustand ist. Diese Standby-NIC agiert, wenn die aktive NIC ausfällt. Vorausgesetzt, dass es N*Schnittstellen gibt, beträgt die Ressourcennutzungsrate 1/N.
mode=2
(balance-xor)
XOR (Exclusive OR) Y Y Überträgt auf der Grundlage der XOR-Formel. Sobald die Verbindung zwischen der Netzwerkkarte und dem angepassten Gerät hergestellt ist, wird dieselbe Netzwerkkarte zum Senden/Empfangen für die Ziel-MAC verwendet, um sicherzustellen, dass die MAC-Adresse gleich bleibt.
mode=3
(broadcast)
Broadcast Y N Alle Pakete werden auf Kosten der Ressourcennutzung an alle Slave-Schnittstellen gesendet.
Gewöhnlich werden sie für bestimmte Zwecke verwendet, z.B. in der Finanzindustrie, die ein äußerst zuverlässiges Netzwerk benötigt.
mode=4
(802.3ad)
IEEE 802.3ad Dynamic Link Aggregation Y Y Erstellen Sie Aggregationsgruppen, die die gleichen Geschwindigkeits- und Duplexeinstellungen haben.
Erfordert einen Switch, der IEEE 802.3ad Dynamic Link Aggregation unterstützt.
mode=5
(balance-tlb)
Adaptive Transmit Load Balancing (TLB) Y Y Der abgehende Verkehr wird entsprechend der aktuellen Last auf jeder Slave-Schnittstelle verteilt und der eingehende Verkehr wird vom aktuellen Slave empfangen.
Sie benötigen keine spezielle Switch-Unterstützung.
mode=6
(balance-alb)
Adaptive Load Balancing (ALB) Y Y Fügt eine Empfangs-Lastausgleichsfunktion im Vergleich zum vorherigen Modus=5 hinzu. Und der Empfangs-Lastausgleich wird durch ARP-Verhandlungen (Address Resolution Protocol) erreicht.
Sie benötigen keine spezielle Switch-Unterstützung.
HINWEIS:
1. Eine Bonding-Schnittstelle kann nur einen Modus angeben.
2. mode=0, mode=2 und mode=3 erfordert theoretisch eine statische Aggregation.
3. mode=4 muss 802.3ad unterstützen.
4. mode=1, mode=5 und mode=6 erfordern keine Konfigurationen am Switch.
5. Die Wahl des Modus hängt von der Netztopologie, den Anforderungen an das Bonding-Verhalten und den Eigenschaften der Slave-Geräte ab.
Normalerweise werden die folgenden Modi für Einzelschalter-Topologien verwendet: mode=0 (balance-rr); mode=2 (balance-xor); mode=4 (802.3ad); mode=5 (balance-tlb); mode=6 (balance-alb). Und die beiden verbleibenden Modi – mode=1 (active-backup) und mode=3 (Broadcast) – werden für die Mehrfachschalter-Topologie verwendet.
 

FAQs

Wird die Bandbreite der Server-Switch-Verbindung durch die Teaming oder Bonding von NICs verbessert?

Viele glauben vielleicht, dass Link Aggregation die Bandbreite erhöhen wird. Beispielsweise laufen drei NICs mit jeweils 1Gbps, und das NIC-Team hat eine aufgelistete Geschwindigkeit von 3Gbps, was darauf hindeutet, dass sich die Geschwindigkeit verdreifacht hat? Nein! Es ist weithin bekannt, dass allgemein 1Gbps und 10Gbps Ethernet verwendet werden. Aber es gibt keinen definierten 3Gbps-Standard. Wie können wir also eine 3Gbps-Verbindung realisieren? Die Wahrheit ist, dass wir nicht wirklich eine 3Gbps-Verbindung haben. Stattdessen haben wir drei separate 1Gbps-Links.

Wichtiger ist, dass man die Link-Aggregation eher im Hinblick auf die Belastbarkeit der Netzwerkverbindung als auf den verfügbaren Gesamtdurchsatz betrachten sollte. Wenn zum Beispiel eine Datei von einem PC zu einem anderen über eine aggregierte 2-Gbit/s-Verbindung übertragen wird, kann die maximale Gesamtübertragungsrate nur bis zu 1 Gbit/s betragen. Die Vorteile der aggregierten Bandbreite zeigen sich jedoch bei der Übertragung von zwei Dateien. Das heißt, die Link-Aggregation erhöht die Anzahl der "Spuren" statt der Geschwindigkeitsbegrenzung.

Wie werden NIC-Teaming und NIC-Bonding den Benutzern zugute kommen?

Die Antwort lautet kurz gesagt: Lastausgleich und Fehlertoleranz.

Lastausgleich - Ausgehender Verkehr wird automatisch auf der Grundlage der Zieladresse zwischen den verfügbaren physischen NICs ausgeglichen. Eingehender Datenverkehr wird durch den Switch gesteuert, der den Datenverkehr zum Server weiterleitet, während der Host/Server nicht in der Lage ist, den physischen NIC-Datenverkehr zu kontrollieren.

Fehlertoleranz - Wenn eine der zugrunde liegenden physischen Netzwerkkarten defekt ist oder ihr Kabel abgezogen wird, erkennt der Host/Server den Fehlerzustand und leitet den Datenverkehr automatisch zu einer anderen Netzwerkkarte im Verbund um, wodurch die Situation eines Gesamtausfalls der Netzwerkverbindung durch einen einzigen Fehlerpunkt vermieden wird.

Load balancing & fault tolerance.jpg

Abbildung 1: Lastausgleich und Fehlertoleranz

Unter Ausnutzung der Vorteile des Lastausgleichs und der Fehlertoleranz arbeiten die einzelnen Komponenten des NIC-Teams gemeinsam an der Optimierung der Bandbreite und der Vermeidung von Konnektivitätsverlusten bei Ausfall eines oder mehrerer Netzwerkadapter.

Das könnte Sie auch interessieren

Kenntnisse
Kenntnisse
See profile for Jason.
Jason
Die Vorteile und Nachteile der Glasfaserkabel
07. Aug 2020
85.3k
Kenntnisse
Kenntnisse
See profile for Sheldon.
Sheldon
TCPIP vs. OSI: Was ist der Unterschied?
06. Jul 2022
72.1k
Kenntnisse
See profile for Sheldon.
Sheldon
Das ABC von PON: OLT, ONU, ONT und ODN
19. Aug 2020
27.2k
Kenntnisse
Kenntnisse
See profile for Sheldon.
Sheldon
Grundlagen von optischen Verteilern (ODF)
02. Apr 2019
3.9k
Kenntnisse
See profile for Sheldon.
Sheldon
LACP vs. PAGP: Was ist der Unterschied?
06. Jun 2022
6.5k
Kenntnisse
See profile for Vincent.
Vincent
Einführung zu BiDi-Transceivern
26. Jun 2020
9.7k
Kenntnisse
See profile for Moris.
Moris
Simplex- vs. Duplex-Glasfaserkabel
10. Jun 2021
39.0k