Azure Load Balancer-Algorithmus

Azure Load Balancer ist der leistungsfähigste Lastenausgleich in Azure mit äußerst kurzen Wartezeiten. Weitere Informationen zu Azure Load Balancer finden Sie unter Was versteht man unter Azure Load Balancer? oder Azure Load Balancer-Komponenten.

Azure Load Balancer verwendet ein Tupel-basiertes Hashing als Algorithmus für den Lastausgleich.

Lastenausgleichsalgorithmus

Durch die Erstellung einer Lastausgleichsregel können Sie eingehende Verkehrsströme vom Frontend eines Lastausgleichers auf dessen Backend-Pools verteilen. Wenn die Integritätsprüfung des Lastenausgleichs einen intakten Back-End-Endpunkt anzeigt, sind die Back-End-Instanzen für den Empfang neuer Datenströme verfügbar.

Fünf-Tupel-Flowverteilung

Standardmäßig verwendet Azure Load Balancer einen Fünf-Tupel-Hash, um eingehende Flows zu verteilen, anstatt einzelne Bytes. Die fünf Felder sind:

  • Quell-IP-Adresse
  • Quellport
  • Ziel-IP-Adresse
  • Zielport
  • IP-Protokoll

Für weitere Verteilungsmodi und weitere Details zum Algorithmus siehe Hash-basierte Verteilung.

Sie können auch den Verteilungsmodus für Sitzungsaffinität verwenden, die einen Lastausgleich auf der Basis von zwei oder drei Tupeln vorsieht.

Layer-4- und TLS-Verhalten

Azure Load Balancer arbeitet auf Schicht 4 und unterstützt TCP- und UDP-Anwendungen. Es schließt oder initiiert keine Flows, inspiziert keine Anwendungsnutzlasten, schreibt keine HTTP- oder HTTPS-Header um, stellt keine Gateway-Funktionalität auf Anwendungsebene bereit und entlastet auch keine TLS. Es schreibt TCP- und UDP-Flussheader um, wenn der Datenverkehr an Backend-Instanzen geleitet wird, während Protokoll- und TLS-Handshakes direkt zwischen dem Client und der ausgewählten Backend-Instanz stattfinden. Das Beenden von TLS in den Backend-VMs ermöglicht es, die TLS-Sessionskapazität mit dem Typ und der Anzahl der VMs im Backend-Pool zu skalieren.

Erhaltung der Quell-IP-Adresse

Eine Backend-VM erzeugt eine Antwort auf einen eingehenden Flow, und die ursprüngliche Quell-IP-Adresse bleibt erhalten, wenn der Flow diese VM erreicht. Zum Beispiel wird ein TCP-Handshake zwischen dem Client und der ausgewählten Back-End-VM durchgeführt. Die erfolgreiche Validierung der Konnektivität zu einem Frontend bestätigt somit die Verbindung zu mindestens einer Backend-VM.

Nächste Schritte