Load Balancing für Webanwendungen ist unerlässlich, um den Mitarbeitern, Klienten und Kunden ein gutes Anwendungserlebnis zu bieten. Dies gilt unabhängig davon, ob die Webanwendungen intern innerhalb einer Organisation genutzt oder extern für Kunden und Geschäftspartner präsentiert werden.
Bei der Recherche nach Load Balancern stößt man in vielen Artikeln häufig auf die Begriffe Layer 4 Load Balancer und Layer 7 Load Balancer. Aber was bedeuten diese Begriffe und wann sollten Sie Layer 4 vs. Layer 7 verwenden? Sollten Sie beispielsweise immer darauf abzielen, Layer 7 Load Balancing zu implementieren? In diesem Artikel werden wir die Begriffe kurz skizzieren und diese Fragen auf hohem Niveau beantworten.
Bei einer Load Balancing Software werden Client-Zugriffsanfragen an Anwendungen auf einen Pool von Backend- oder Cloud-Servern verteilt. Load Balancing-Software verwendet verschiedene Algorithmen und den Netzwerkstatus, um Anfragen gleichmäßig auf den Serverpool zu verteilen. Load Balancers überwachen auch den Zustand und den Status der Server im Pool, um sicherzustellen, dass Client-Anfragen nicht an Server weitergeleitet werden, die sie nicht bearbeiten können.
Ein weiterer weit verbreiteter Netzwerkstapel ist das TCP/IP-Modell, das vier Schichten umfasst. Wir betrachten das TCP/IP-Modell in diesem Artikel nicht, da die OSI-Schichten 4 und 7 besser für die Aktivitäten geeignet sind, die Load Balancer bieten. Außerdem wird in der breiten IT-Gemeinschaft meist der OSI-Stack verwendet.
Diese Datenpakete enthalten Informationen, die die Quell-IP-Adresse des Netzknotens, die Ziel-IP-Adresse, an die sie gesendet werden, sowie das Protokoll und den Port des Empfängers, der sie beim Empfang verarbeiten soll, angeben. Bei den Protokollen und Ports handelt es sich hauptsächlich um TCP oder UDP.
Load Balancing auf Layer 4 hat keinen Einblick in den Inhalt der Datenpakete, der über die IP-Adresse und die Port-Informationen in der Kopfzeile hinausgeht. Für viele Verwendungszwecke ist dies in Ordnung, und Load Balancing auf Layer 4 ist ausreichend.
Layer 4 Load Balancing kommt in Situationen zum Einsatz, in denen der Inhalt der Datenpakete bei der Entscheidung, wohin im Server-Pool die Anfragen und der Netzwerkverkehr geleitet werden sollen, nicht benötigt wird. Diese Leichtigkeit der Load Balancing Software auf Layer 4 bedeutet, dass die Weiterleitung der Pakete schnell erfolgt, was unter bestimmten Umständen wichtig sein kann. Layer 4 Load Balancing wird bei UDP-basierten Anwendungen wie Video-Streaming, Sprachanrufen und zentralen Internetanwendungen wie DNS, SNMP und DHCP eingesetzt.
Wenn Sie ein schnelles Load Balancing von Paketen benötigen, aber kein Load Balancing auf der Grundlage dieser Art von Daten durchführen müssen, dann ist das Load Balancing auf Schicht 4 wahrscheinlich ausreichend.
Wenn Sie Load Balancing-Entscheidungen auf der Grundlage der Art der Daten treffen müssen, dann ist Load Balancing auf Schicht 7 das Richtige für Sie. Schicht 7 des OSI-Modells wird auch als Anwendungsschicht bezeichnet.
Load Balancing-Algorithmen, die innerhalb der Anwendungsschicht arbeiten, können den Inhalt der im Netz fließenden Datenpakete untersuchen. Damit baut er auf der Transportschicht auf, indem er die Paketweiterleitung auf der Grundlage des Inhalts der Netzwerkpakete hinzufügt. Moderne Load Balancers wie LoadMaster können auch verschlüsselte Netzwerkpakete mit TLS-Funktionalität öffnen, um die Daten zu prüfen, bevor sie für den Weitertransport wieder verschlüsselt werden.
Durch die Bestimmung des in den Paketen enthaltenen Datentyps kann ein Layer 7 Load Balancer Entscheidungen über die Zuweisung von Zugriffsanforderungen treffen. So können beispielsweise Videoanfragen über eine Reihe von Serverknoten, die für das Streaming von Videos optimiert sind, geleitet und Load Balancing betrieben werden. Andere dedizierte Servertypen können ebenfalls Empfänger von Anfragen sein, die auf den Datentypen der Pakete basieren.
Layer-7-Lastenausgleich kann auch die Anwendungssicherheit verbessern. Eine Web Application Firewall (WAF) ist für jede moderne Cybersicherheitsstrategie von entscheidender Bedeutung. WAFs arbeiten auf Layer 7 und können Netzwerkdatenpakete auf ihren Inhalt überprüfen. Diese Fähigkeit, Layer-7-Datenpakete zu überprüfen, bedeutet, dass Load Balancer mit aktivierter WAF zu wichtigen Bestandteilen der Netzwerksicherheitsinfrastruktur werden. Die Pakete können geöffnet und auf bösartige Inhalte überprüft oder als verdächtig identifiziert und daran gehindert werden, Backend-Server zu erreichen, bevor sie Schaden anrichten können.
Auch das Load Balancing auf Schicht 7 kann die Anwendungssicherheit verbessern. Eine Web Application Firewall (WAF) ist für jede moderne Strategie zum Schutz der Cybersicherheit von entscheidender Bedeutung. WAFs arbeiten auf Layer 7 und können Netzwerkdatenpakete untersuchen, um deren Inhalt zu erkennen. Diese Fähigkeit, Layer-7-Datenpakete zu inspizieren, bedeutet, dass Load Balancer mit aktivierter WAF zu wichtigen Bestandteilen der Netzwerksicherheitsinfrastruktur werden. Die Pakete können geöffnet und auf bösartige Inhalte überprüft oder als verdächtig identifiziert und daran gehindert werden, Backend-Server zu erreichen, bevor sie Schaden anrichten können.
Es wird Sie vielleicht nicht überraschen, dass die Antwort auf diese Frage bei den meisten modernen Netzwerk- und Anwendungsbereitstellungsinfrastrukturen eigentlich beides ist! In der Tat benötigen Sie möglicherweise auch einige Load Balancing-Funktionen auf den Schichten 2 und 3 des OSI-Stacks - aber darauf gehen wir später ein.
Wenn Sie sich jedoch entscheiden müssen, gibt es einige wichtige Aspekte zu beachten. Wenn Ihr Load Balancer beispielsweise nichts über die Daten in den Paketen wissen muss und Sie sie so schnell wie möglich zu den Anwendungsservern leiten wollen, dann reichen Load Balancing auf Layer 4 und die Algorithmen, die auf dieser Ebene arbeiten, aus.
Einige Anwendungsfälle sind jedoch komplexer und erfordern Layer 7. Wenn z. B. eingehende Datenpakete an Anwendungsserver weitergeleitet werden müssen, die für die Beantwortung und Verarbeitung bestimmter Datentypen optimiert sind, wie dies beim Videostreaming der Fall ist, ist Schicht 7 eine Notwendigkeit.
Weitere häufige Anwendungsfälle für Load Balancing auf Layer 7 sind die Sitzungspersistenz zwischen einem Endgerät und einem Backend-Einkaufsanwendungsserver, um sicherzustellen, dass der Inhalt des Einkaufswagens eines Kunden während und zwischen den Verbindungssitzungen konsistent ist. Dies wird manchmal auch als Cookie-Persistenz oder Server-Affinität bezeichnet. Load Balancing Softwares der Schicht 7 können auch Daten zwischenspeichern, da sie Zugriff auf den Inhalt von Datenpaketen haben, was zur Beschleunigung einiger Zugriffsanfragen beitragen kann.
LoadMaster unterscheidet zwischen Layer 4 und Layer 7. Wenn Sie auf einem LoadMaster Load Balancer die Optionen Cookie Persistence, TLS Acceleration oder Content Switching aktivieren, wird der Verkehr automatisch zu Layer 7. Die LoadMaster-Dokumentation beschreibt im Abschnitt L7-Konfiguration des LoadMaster-Konfigurationshandbuchs, wie Sie die Layer 7-Funktionalität aktivieren können.
Auf der Progress Kemp Website finden Sie viele Ressourcen, die Ihnen helfen, LoadMaster zu evaluieren und zu entscheiden, ob die Lösung den Anforderungen Ihres Unternehmens entspricht. Die Kemp Difference-Seite ist ein guter Startpunkt für alle, die Antworten auf Fragen wie "Wie wähle ich einen Layer 7 Load Balancer?" suchen. Sie enthält kurze Beschreibungen vieler LoadMaster-Funktionen sowie Links zu detaillierteren Informationen über die einzelnen Funktionen.
Im Header-Menü dieser Seite finden Sie Links zu weiteren Informationen, die Ihnen bei der Bewertung von LoadMaster und anderen wertvollen Assets helfen, wie zum Beispiel: