Citrix ADC

Content Switching

Auf den komplexen Websites von heute möchten Sie möglicherweise verschiedenen Benutzern unterschiedliche Inhalte präsentieren. Beispielsweise möchten Sie möglicherweise Benutzern aus dem IP-Bereich eines Kunden oder Partners den Zugriff auf ein spezielles Webportal ermöglichen. Möglicherweise möchten Sie Benutzern aus diesem Bereich Inhalte präsentieren, die für ein bestimmtes geografisches Gebiet relevant sind. Vielleicht möchten Sie den Sprechern dieser Sprachen Inhalte in verschiedenen Sprachen präsentieren. Vielleicht möchten Sie ihnen, die die Geräte verwenden, Inhalte präsentieren, die auf bestimmte Geräte wie Smartphones zugeschnitten sind. Die Citrix ADC Content Switching-Funktion ermöglicht es der Appliance, Clientanfragen auf mehrere Server zu verteilen, basierend auf bestimmten Inhalten, die Sie diesen Benutzern präsentieren möchten.

Um Content Switching zu konfigurieren, erstellen Sie zunächst ein grundlegendes Content Switching-Setup, und passen Sie es dann an Ihre Anforderungen an. Dies beinhaltet die Aktivierung der Content Switchings, das Einrichten des Lastenausgleichs für den Server oder die Server, die jede Version des zu wechselnden Inhalts hosten, das Erstellen eines virtuellen Content Switching-Servers, das Erstellen von Richtlinien zur Auswahl, welche Anforderungen an den virtuellen Lastausgleichsserver gerichtet werden, und Bindung der Richtlinien an den virtuelle Content Switching-Server. Anschließend können Sie das Setup an Ihre Anforderungen anpassen, indem Sie Vorrang für Ihre Richtlinien festlegen, Ihr Setup schützen, indem Sie einen virtuellen Backupserver konfigurieren und die Leistung Ihres Setups verbessern, indem Sie Anforderungen an einen Cache umleiten.

Funktionsweise von Content Switching

Content Switching ermöglicht es der Citrix ADC Appliance, Anforderungen, die an denselben Webhost gesendet werden, an verschiedene Server mit unterschiedlichen Inhalten weiterzuleiten. Beispielsweise können Sie die Appliance so konfigurieren, dass Anforderungen für dynamischen Inhalt (z. B. URLs mit dem Suffix .asp, .dll oder .exe) an einen Server und Anforderungen für statische Inhalte an einen anderen Server weitergeleitet werden. Sie können die Appliance so konfigurieren, dass Content Switching basierend auf TCP/IP-Headern und Nutzlast durchgeführt wird.

Sie können Content Switching auch verwenden, um die Appliance so zu konfigurieren, dass Anfragen basierend auf verschiedenen Clientattributen an verschiedene Server mit unterschiedlichen Inhalten weitergeleitet werden. Einige dieser Client-Attribute sind:

  • Gerätetyp. Die Appliance untersucht den Benutzeragenten oder benutzerdefinierten HTTP-Header in der Clientanforderung auf den Gerätetyp, von dem die Anforderung stammt. Basierend auf dem Gerätetyp leitet es die Anforderung an einen bestimmten Webserver. Wenn die Anfrage beispielsweise von einem Mobiltelefon stammt, wird die Anfrage an einen Server weitergeleitet, der Inhalte bereitstellen kann, die der Benutzer auf dem Mobiltelefon anzeigen kann. Eine Anfrage von einem Computer wird an einen anderen Server weitergeleitet, der Inhalte bereitstellen kann, die für einen Computerbildschirm entwickelt wurden.
  • Sprache. Die Appliance untersucht den Accept-Language HTTP-Header in der Clientanforderung und bestimmt die Sprache, die vom Browser des Clients verwendet wird. Die Appliance sendet die Anforderung dann an einen Server, der Inhalte in dieser Sprache bereitstellt. Beispielsweise kann die Appliance mit sprachbasiertem Content Switching jemanden, dessen Browser so konfiguriert ist, Inhalte auf Französisch an einen Server mit der französischen Version einer Zeitung angefordert werden. Es kann eine andere Person senden, deren Browser so konfiguriert ist, Inhalte in englischer Sprache an einen Server mit der englischen Version anzufordern.
  • Keks. Die Appliance untersucht die HTTP-Anforderungsheader auf ein Cookie, das der Server zuvor gesetzt hat. Wenn es das Cookie findet, leitet es Anfragen an den entsprechenden Server, der benutzerdefinierte Inhalte hostet. Wenn beispielsweise ein Cookie gefunden wird, das angibt, dass der Client Mitglied eines Kundenbindungsprogramms ist, wird die Anfrage an einen schnelleren Server oder einen mit speziellen Inhalten weitergeleitet. Wenn es kein Cookie findet oder wenn das Cookie anzeigt, dass der Benutzer kein Mitglied ist, wird die Anfrage an einen Server für die breite Öffentlichkeit weitergeleitet.
  • HTTP-Methode. Die Appliance untersucht den HTTP-Header auf die verwendete Methode und sendet die Clientanforderung an den richtigen Server. Beispielsweise können GET-Anforderungen für Bilder an einen Image-Server geleitet werden, während POST-Anforderungen an einen schnelleren Server weitergeleitet werden können, der dynamische Inhalte verarbeitet.
  • Layer 3/4 Daten. Die Appliance prüft Anforderungen für die Quell- oder Ziel-IP, den Quell- oder Zielport oder alle anderen Informationen, die in den TCP- oder UDP-Headern vorhanden sind, und leitet die Clientanforderung an den richtigen Server weiter. Beispielsweise können Anfragen von Quell-IPs, die Kunden gehören, an ein benutzerdefiniertes Webportal auf einem schnelleren Server oder eines mit speziellen Inhalten weitergeleitet werden.

Eine typische Content Switching-Bereitstellung besteht aus den im folgenden Diagramm beschriebenen Entitäten.

Abbildung 1. Content Switching-Architektur

Content Switching-Architektur

Eine Content Switching-Konfiguration besteht aus einem virtuellen Content Switching-Server, einem Load Balancing-Setup, bestehend aus virtuellen Servern und Diensten für den Lastenausgleich und Richtlinien für Content Switching. Um Content Switching zu konfigurieren, müssen Sie einen virtuellen Content Switching-Server konfigurieren und ihn mit Richtlinien und virtuellen Lastausgleichsservern verknüpfen. Dieser Prozess erstellt eine Content-Gruppe—* eine Gruppe aller virtuellen Server und Richtlinien, die an einer bestimmten Content Switching-Konfiguration beteiligt sind.

Content Switching kann mit HTTP-, HTTPS-, TCP- und UDP-Verbindungen verwendet werden. Für HTTPS müssen Sie SSL-Offload aktivieren.

Wenn eine Anforderung den virtuellen Content Switching-Server erreicht, wendet der virtuelle Server die zugeordneten Content Switching-Richtlinien auf diese Anforderung an. Die Priorität der Richtlinie definiert die Reihenfolge, in der die Richtlinien ausgewertet werden, die an den virtuellen Content Switching-Server gebunden sind. Wenn Sie Standard-Syntaxrichtlinien verwenden und eine Richtlinie an den virtuellen Content Switching-Server binden, müssen Sie dieser Richtlinie eine Priorität zuweisen. Wenn Sie klassische Citrix ADC Richtlinien verwenden, können Sie Ihren Richtlinien eine Priorität zuweisen, sind dies jedoch nicht erforderlich. Wenn Sie Prioritäten zuweisen, werden die Richtlinien in der von Ihnen festgelegten Reihenfolge ausgewertet. Andernfalls wertet die Citrix ADC Appliance Ihre Richtlinien in der Reihenfolge aus, in der sie erstellt wurden.

Zusätzlich zum Konfigurieren von Richtlinienprioritäten können Sie die Reihenfolge der Richtlinienbewertung mithilfe von Goto-Ausdrücken und Policy-Bank-Aufrufen ändern. Weitere Einzelheiten zur Konfiguration der Standard-Syntaxrichtlinie finden Sie unter Standard-Syntaxrichtlinien konfigurieren.

Nachdem die Richtlinien ausgewertet wurden, leitet der virtuelle Content Switching-Server die Anforderung an den entsprechenden virtuellen Lastausgleichsserver weiter, der sie an den entsprechenden Dienst sendet.

Virtuelle Content Switching-Server können nur Anforderungen an andere virtuelle Server senden. Wenn Sie einen externen Load Balancer verwenden, müssen Sie einen virtuellen Lastausgleichsserver für diesen erstellen und den virtuellen Server als Dienst an den virtuellen Content Switching-Server binden.

Content Switching