Security ist ein stets aktuelles Thema in der IT. Deshalb widmet sich das ADMIN-Magazin 04/2012 speziell Sicherheitsaspekten und gibt Antworten auf die Fragen: ... (mehr)

Erhöhte Bandbreite

Da 10-GBit-Netzwerkkomponenten noch relativ teuer sind, erscheint die Bündelung von mehreren 1-GBit-Verbindungen zu einer LAG als kostengünstige Alternative, wenn eine hohe Bandbreite gefragt ist. Allerdings bedeuten zwei 1-GBit-Links für eine LAG nicht automatisch, dass damit eine Übertragungskapazität von 2 GBit/s für den Datenaustausch zwischen zwei Rechnern bereitsteht.

Ein einzelnes Ethernet-Frame wird trotz Link Aggregation immer nur über einen einzelnen Link übertragen. Laut dem IEEE-802.1AX-2008-Standard [1] darf die Reihenfolge der Frames einer Konversation zwischen zwei Endgeräten nicht verändert werden. Das ist leicht sicherzustellen, wenn sämtliche Frames einer solchen Konversation ausschließlich über denselben einzelnen Link versendet werden. Sind zwei Server mit einer LAG aus zwei 1-GBit-Verbindungen direkt verbunden, wird das Kopieren einer Datei von einem zum anderen Server aber trotzdem nur mit 1GBit/s stattfinden.

Mehrere parallele Konversationen können aber auf die einzelnen Links einer LAG verteilt werden, hier profitiert man von einer größeren möglichen Summenbandbreite. Diese Methode ermöglicht eine einfache Implementierung in Switches und Servern. Es sind keine zusätzlichen Puffer erforderlich, damit kommt es auch zu keinen erhöhten Latenzen durch Link Aggregation.

Lastverteilung

Wie wählt nun ein Switch oder ein Server einen konkreten Link zur Datenübertragung einer Konversation aus? Der Standard teilt diese Aufgabe einem sogenannten Frame Distributor (Frame-Verteiler) zu. Wie der Frame Distributor die Verteilung genau vornimmt, ist nicht vorgeschrieben. Einzige Vorgabe bleibt die Limitierung einer Konversation auf einen einzelnen Link.

Die meisten Switches und Betriebssysteme verwenden für die Wahl des Links die MAC-Adressen von Sender und Empfänger beziehungsweise deren drei oder sechs untersten Bits (least significant bits). Ein Beispiel einer solchen Auswahl ist im Kasten "MAC-basierte Lastverteilung" zu sehen. Weitere Lastverteilungs-Algorithmen von unterschiedlichen Switches und Betriebssystemen finden sich unter [2] .

MAC-basierte Lastverteilung

In diesem Beispiel mit vier aktiven Links einer LAG werden Daten von der folgenden Quell- zur Ziel-MAC-Adresse übertragen: Quell-MAC-Adresse: 0x0000A4F8B321 – das letzte Byte ist 0x21 (= Binär 00100001) – die letzten drei Bits sind also 001 Ziel-MAC-Adresse: 0x0000A2123456 – das letzte Byte ist 0x56 (= Binär 01010110) – die letzten drei Bits sind also 110. Die Formel zur Auswahl des Links lautet:

{(001 XOR 110) MOD 4}
   001 XOR 110 = 111 (binär) = 7 (dezimal)
   7 MOD 4 (dezimal) = 3 (dezimal)

Es wird also der Link Nummer 3 verwendet.

Kommentare

Teaming mode seit Kernel 3.4

In dem Artikel fehlt der seit Kernel 3.4 existierende Teaming-Mode, der im Gegensatz zum Bonding mehr als zwei Leitungen zusammenfassen kann. Sollte bei einem leidlich aktuellen Artikel nicht fehlen. Userspacetools finden sich hier: https://github.com/jpirko/libteam

comments powered by Disqus
Einmal pro Woche aktuelle News, kostenlose Artikel und nützliche ADMIN-Tipps.
Ich habe die Datenschutzerklärung gelesen und bin einverstanden.

Konfigurationsmanagement

Ich konfiguriere meine Server

  • von Hand
  • mit eigenen Skripts
  • mit Puppet
  • mit Ansible
  • mit Saltstack
  • mit Chef
  • mit CFengine
  • mit dem Nix-System
  • mit Containern
  • mit anderer Konfigurationsmanagement-Software

Ausgabe /2023