Was ist ein Application Delivery Controller (ADC)?

Application Delivery Controller (ADC) sind Netzwerk-Appliances, die entwickelt wurden, um die Performance, Sicherheit und Widerstandsfähigkeit von Web-Anwendungen zu erhöhen.

ADCs sind mittlerweile beliebte Tools. Dies liegt daran, dass veraltete Load-Balancing-Appliances heute oft nicht mehr in der Lage sind, alle Anforderungen an die Anwendungsbereitstellung und die Anwendungsperformance zu erfüllen.

Weitere Themen rund um ADCs:

Warum verwenden Unternehmen ADCs?

Anwendungen haben sich über die Jahre deutlich weiterentwickelt. Unter dem Begriff „Bereitstellung“ versteht man allgemein die Übertragung einer Anwendung an den Anwender in Zeiten mobiler Arbeit und Cloud. Geschäftliche Anwendungen in Unternehmen sind nicht länger nur Desktop-Software, die auf einem lokalen Server installiert wurde und auf die von Anwendern im LAN zugegriffen wird. Moderne Anwendungen müssen sich über alle Arten von Netzwerken ausführen lassen, auch außerhalb des physischen Arbeitsplatzes.

Application Delivery Controller sind ein wichtiger Teil der Infrastruktur vieler Unternehmen und sorgen dafür, dass sich Anwendungen an die heute genutzten Netzwerke und Protokolle anpassen. Sie stellen zudem sicher, dass Anwendungen mit optimaler Performance ausgeführt werden, immer verfügbar sind und keine Sicherheitsrisiken für den Anwender oder das Unternehmen darstellen.

Angesichts der Anforderungen immer prävalenterer hybrider Belegschaften ist dies besonders wichtig.

Anwender erwarten heute, dass die Endgeräte und Anwendungen, mit denen sie täglich interagieren, immer funktionieren und dass Informationen nach Bedarf sofort verfügbar sind. Diese Erwartungen übertragen sie auf andere Endgeräte und Anwendungen, die sie verwenden. Um die Mitarbeiter von heute zufriedenzustellen, müssen Unternehmensanwendungen so intuitiv und benutzerfreundlich wie diejenigen sein, die sie für private Aufgaben und zur Unterhaltung nutzen.

Viele Mitarbeiter sind nicht länger auf abgeschottete Endgeräte im Unternehmensbesitz beschränkt, sondern können ihre privaten Endgeräte nutzen, um zu arbeiten, wo immer sie wollen. Da Menschen zu jeder Tages- und Nachtzeit arbeiten können, muss die IT sicherstellen, dass die Server und Anwendungen am Arbeitsplatz rund um die Uhr verfügbar sind. Unternehmen investieren viel Geld in IT-Infrastruktur, mit der sichergestellt wird, dass Mitarbeiter bei Bedarf stets Zugriff auf Anwendungen und Informationen haben.

Server können natürlich aus vielerlei Gründen ausfallen: von mechanischen Problemen bis hin zu Überlastung und Sicherheitsverstößen. Wenn ein Server ausfällt, können Anwendungen, die auf ihm ausgeführt werden, nicht mehr genutzt werden.

IT-Organisationen können sich auf diese Situationen vorbereiten, indem sie ihre Infrastruktur ausfalltolerant auslegen. Zusätzliche Server im Rechenzentrum oder an einem externen Standort einzurichten sind typische Failover-Strategien. ADCs können dabei helfen, mithilfe eines nahtlosen Failovers die Hochverfügbarkeit von Anwendungen sicherzustellen. Dies wird erreicht, indem Anwendungs-Workloads auf ein Cluster aus aktiven Servern an einem oder mehreren Standorten verteilt werden.

Wie funktionieren ADCs?

Ein Application Delivery Controller nutzt Algorithmen und Richtlinien, um zu bestimmen, wie eingehender Anwendungs-Traffic verteilt wird. Das Rundlauf-Verfahren (Round Robin) ist eine ziemlich einfache Form des Load Balancing. Hierbei werden Client-Anfragen nacheinander an die einzelnen Server weitergeleitet. Diese Methode geht davon aus, dass alle Server identisch sind: Sie berücksichtigt weder Zustand noch Reaktionsfähigkeit. Ein Administrator kann zusätzliche Richtlinien einrichten, die Server auf bestimmte Kriterien hin überprüfen, bevor sie entscheiden, an welchen Server die eingehende Anfrage gesendet werden soll. Der Application Delivery Controller kann die Paket-Header nach Stichworten oder angeforderten Dateitypen durchsuchen und die Anfrage anhand dieser Informationen an den geeigneten Server weiterleiten.

Application Delivery Controller werden auch besonders wegen ihrer Monitoring-Funktionen benötigt. Diese Funktionen für die Überwachung des Systemstatus und -zustands eines Servers gehen über den Standard-Ping hinaus. Wenn sich beim Monitoring herausstellt, dass ein Server ein Problem hat oder bestimmte Systemkriterien, die die Zuverlässigkeit eines Servers bescheinigen, nicht erfüllt werden, leitet der ADC den Traffic zu einem alternativen Server um, sodass eine mögliche Unterbrechung vermieden wird.

Application Delivery Controller können zudem Echtzeit- und Verlaufsanalysen für Anwender- und Netzwerk-Traffic bereitstellen, darunter Statistiken für Paketumlaufzeiten, Bandbreitennutzung sowie Rechenzentrums- und WAN-Latenzen (Wide Area Network). Diese Informationen helfen Help-Desk-Mitarbeitern dabei, Zeit bei der Identifizierung einer Problemursache einzusparen und Anwendern eine schnellere Lösung zu bieten.

E-BOOK

Sechs Must-Haves für die Anwendungsbereitstellung in der Cloud

Erfahren Sie mehr über die Must-haves für die Bereitstellung von schnellen, leistungsstarken Anwendungen in der Cloud.

Wie steigern ADCs die Anwendungsperformance?

Optimierung entsprechend den Benutzeranforderungen

Wenn die Performance von Anwendungen den Erwartungen von Anwendern nicht gerecht wird, kann ihre Produktivität signifikant darunter leiden. Ein Application Delivery Controller kann zahlreiche Mechanismen einsetzen, um die Anwendungs-Performance zu verbessern, besonders in mobilen Netzwerken und Netzwerken mit hoher Latenz.

Load Balancing von SQL-Datenbanken ist ein Mechanismus, der zu Performance-Steigerungen führen kann. Das SQL Load Balancing nutzt viele der Techniken, die beim Load Balancing von TCP-Traffic genutzt werden, setzt diese aber auf Datenbankebene um. Für jede SQL-Transaktion wird eine richtlinienbasierte Logik eingesetzt. Dadurch wird die Anzahl der Anfragen und Verbindungen verbessert, die innerhalb des Datenbank-Clusters verarbeitet werden können.

Andere übliche Services zur Optimierung der Anwendungs-Performance, die Application Delivery Controller ermöglichen, sind das Offloading von rechenintensiven Aufgaben, Verbindungs-Multiplexing, Komprimierung und Caching.

SSL und TLS sind Voraussetzungen für geschäftliche Transaktionen über das Internet. Traffic mit neuen Verschlüsselungen zu managen ist sehr rechenintensiv. Application Delivery Controller können besonders hohe Mengen an verschlüsseltem und nicht verschlüsseltem Traffic verarbeiten. Der ADC kümmert sich um Zertifikate und entschlüsselt Traffic, bevor er den Server erreicht.

TCP-Multiplexing ist eine effektive Methode, um große Mengen an eingehenden Server-Anfragen zu verarbeiten. Durch TCP-Multiplexing werden aktive Verbindungen zwischen dem ADC und den Servern aufrechterhalten. Sobald Traffic den ADC erreicht, nutzt dieser diese offenen Kanäle und leitet Anfragen um. Dadurch wird das ineffiziente Öffnen und Schließen jeder Transaktion vermieden, durch das die Server-Performance negativ beeinträchtigt wird.

Optimierung in mobilen Netzwerken

Application Delivery Controller können außerdem Leistungsvorteile in mobilen Netzwerken bieten. Webseiten, die für High-Speed-Internetverbindungen entwickelt wurden, bieten oft nicht denselben Benutzerkomfort auf einem mobilen Endgerät, das sich über ein Netzwerk mit geringer Bandbreite verbindet.

Ein Application Delivery Controller kann mithilfe mehrerer kreativer Mechanismen die Bereitstellung von Webinhalten über mobile Netzwerke optimieren. Ein Beispiel ist das Domain Sharding. Die Optimierung auf der Verbindungsebene wird auf eine einzelne Domain angewandt. Inhalte auf jeder Seite werden in eine Reihe von Subdomains unterteilt, sodass eine größere Anzahl von Kanälen geöffnet werden kann. Dadurch werden die Seitenladezeiten verringert und die Performance verbessert.

Application Delivery Controller haben Einblick in die bereitgestellten Inhalte und können die Bereitstellung von Webseiten mit großen Bilddateien weiter optimieren, indem sie GIF-Dateien in das effizientere PNG-Dateiformat konvertieren.

Andere große Komponenten einer Webseite sind umfassende Skripte und CSS-Dateien (Cascading Style Sheets). ADC können diese komprimieren, indem sie überflüssige Zeichen und Leerzeichen entfernen.

Im komprimierten Zustand werden Dateien deutlich schneller über das Netzwerk übertragen. Dadurch werden Download-Zeiten erheblich reduziert.

Wie steigern ADCs die Anwendungssicherheit?

Die Bereitstellung über das Internet brachte neue Gefahren und Sicherheitslücken mit sich, mit denen sich traditionelle LAN-basierte Anwendungen niemals befassen mussten. Während Mitarbeiter immer mobiler wurden und Remote-Zugriff auf Anwendungen und Daten benötigten, mussten IT-Administratoren strengere Sicherheitsmaßnahmen einführen, um sich vor externen Angriffen und Datenverlust zu schützen.

Application Delivery Controller fungieren als natürliches Tor oder Gateway zum Netzwerk. Sie authentifizieren jeden Anwender, der Zugriff auf eine Anwendung fordert. Wenn die Anwendung SaaS-basiert ist, kann der ADC die Identität eines Anwenders mithilfe eines Active Directory-Datenspeichers im Rechenzentrum validieren. Dadurch müssen Anmeldeinformationen nicht in der Cloud gespeichert werden. Die macht den Prozess nicht nur sicherer sondern verbessert auch den Benutzerkomfort, da ein Single Sign-On für mehrere Anwendungen ermöglicht wird.

SAML, das auf XML basierende Protokoll, wird nun weithin verwendet, um den Anmeldeprozess für Anwendungen zu vereinfachen. Der ADC kann als SAML-Agent agieren und Anwender über Datenspeicher identifizieren und ihnen Berechtigungen erteilen. Einige Anwendungen erlauben die Nutzung von Anmeldedaten über Webseiten wie Facebook oder Google, um die Identität zu validieren, bevor der Zugriff ermöglicht wird. ADC können in dieser Hinsicht als SAML-Identitäts- oder Service Provider agieren.

DDoS-Angriffe (Distributed-Denial-of-Service) haben drastisch zugenommen. Webinhalte von Unternehmen werden besonders häufig angegriffen, mit dem Ziel, ihre Server zu überlasten, sodass der Geschäftsbetrieb zum Stillstand kommt. Der ADC kann Maßnahmen zur Ratenbegrenzung implementieren, um interne Serverressourcen vor diesen speziellen Angriffen zu schützen. Wenn eine ungewöhnlich große Anzahl an eingehenden Anfragen auftritt, kann der ADC diese Anfragen drosseln und die von ihnen verbrauchte verfügbare Bandbreite minimieren oder die Anfragen komplett verwerfen.

Application Delivery Controller vereinen Load Balancing und fortschrittlichen Layer-7-Schutz – Funktionen, die traditionell nur in eigenständigen Lösungen verfügbar waren. Anwendungs-Firewalls können Datenpaket-Header nach verdächtigen Inhalten oder bösartigen Skripten durchsuchen, die von der Netzwerk-Firewall eventuell nicht entdeckt werden.

Ein Application Delivery Controller unterstützt sowohl positive als auch negative Sicherheitsmodelle. Wenn ein ADC in den „Lernmodus“ gesetzt wird, kann er den Datenverkehr analysieren, um Anwendungsmuster einer normalen Verwendung zu bestimmen. Wenn eine böswillige eingehende Anfrage z. B. über SQL Injection oder Cross-Site Scripting gesendet wird, wird diese automatisch vom ADC gekennzeichnet und blockiert. Der ADC kann zudem signaturbasierte Schutzfunktionen durch die Integration von Sicherheitslösungen von Drittanbietern wie Qualys integrieren. Durch die Kombination dieser Schutzmaßnahmen kann der ADC ein umfassendes Hybrid-Sicherheitsmodell für Anwendungen und Anwender ermöglichen.

Wie geht die Entwicklung im ADC-Bereich weiter?

ADC bieten IT-Organisationen bereits erhebliche Vorteile, indem sie die sichere Bereitstellung von Anwendungen und Daten an den Anwender garantieren. Sie werden sich jedoch weiterhin an die immer fortschrittlicheren Anwendungen anpassen. Software-definierte Netzwerke (SDN) stellen hohe Anforderungen und setzen voraus, dass auch ein Application Delivery Controller als Service ablaufen kann. Da Netzwerkprotokolle anwendungsorientierter werden, müssen auch ADC sich anpassen und sich selbst automatisieren, um eine einfache Optimierung und zuverlässigen Schutz für jede Art von Anwendungen zu bieten.

Citrix-Lösungen für die Anwendungsbereitstellung

Citrix ADC geht über herkömmliches Load Balancing hinaus und ermöglicht Ihnen ganzheitliche Einblicke in Multi-Cloud-Umgebungen – für effektive Verwaltung und Überwachung von Zustand, Sicherheit und Performance Ihrer Anwendungen.

Entdecken Sie die Vorteile des erweitertes Load Balancing mit Citrix ADC