Citrix ADC

HTTP/3-Konfiguration und Statistikzusammenfassung

Um ein HTTP/3-Protokoll für das Senden mehrerer HTTP/3-Datenströme mit QUIC zu konfigurieren, müssen Sie die folgenden Schritte ausführen:

  1. Aktivieren Sie SSL- und Load Balancing-Funktionen.
  2. Fügen Sie Lastenausgleich und Content Switching (optional) virtuelle Server vom Typ HTTP_QUIC hinzu.
  3. Verknüpfen Sie QUIC-Protokollparameter mit dem virtuellen HTTP_QUIC-Server.
  4. Aktivieren Sie HTTP/3 auf dem virtuellen HTTP_QUIC-Server.
  5. Binden Sie ein SSL-Zertifikatschlüsselpaar mit dem virtuellen HTTP_QUIC-Server.
  6. Verknüpfen Sie SSL/TLS-Protokollparameter mit dem virtuellen HTTP_QUIC-Server.

SSL und Load Balancing aktivieren

Bevor Sie beginnen, stellen Sie sicher, dass die SSL- und Load Balancing-Funktionen auf der Appliance aktiviert sind. Geben Sie an der Eingabeaufforderung Folgendes ein:

enable ns feature ssl lb
<!--NeedCopy-->

Fügen Sie Lastenausgleich und Content Switching (optional) virtuelle Server vom Typ HTTP_QUIC für den HTTP/3-Dienst hinzu

Sie fügen einen virtuellen Lastausgleichsserver hinzu, um HTTP/3-Datenverkehr über QUIC zu akzeptieren. Hinweis: Der virtuelle Lastausgleichsserver vom Typ HTTP_QUIC verfügt über integrierte QUIC-, SSL- und HTTP3-Profile. Wenn Sie es vorziehen, benutzerdefinierte Profile zu erstellen, können Sie neue Profile hinzufügen und an den virtuellen Lastenausgleichsserver binden.

add lb vserver <vserver-name> HTTP_QUIC <IP-address> <UDP-listening-port>
add cs vserver <vserver-name> HTTP_QUIC <IP-address> <UDP-listening-port>
<!--NeedCopy-->

Beispiel:

add lb vserver lb-http3 HTTP_QUIC 1.1.1.1 443 add cs vserver cs-http3 HTTP_QUIC 10.10.10.10 443

Verknüpfen Sie QUIC-Protokollparameter mit dem virtuellen HTTP_QUIC-Server

Sie können ein QUIC-Profil erstellen und QUIC-Parameter für den QUIC-Dienst angeben und es dem virtuellen Lastenausgleichsserver zuordnen. Sie müssen entweder ein benutzerdefiniertes Profil erstellen oder das integrierte QUIC-Profil verwenden und das Profil an den virtuellen Load Balancing-Server binden.

Schritt 1: Konfigurieren Sie ein benutzerdefiniertes QUIC-Profil an der Eingabeaufforderung:

set quic profile <profile_name> -transport_param <value>
<!--NeedCopy-->

Beispiel:

set quic profile quic_http3 -ackDelayExponent 10 -activeConnectionIDlimit 4

Die verschiedenen QUIC-Transportparameter lauten wie folgt:

-ackdelayExponent. Ein ganzzahliger Wert, der vom Citrix ADC an den Remote-QUIC-Endpunkt angekündigt wird, der einen Exponenten angibt, den der Remote-QUIC-Endpunkt verwenden sollte, um das Feld ACK Delay in QUIC ACK-Frames zu dekodieren, die vom Citrix ADC gesendet werden.

-ActiveConnectionIdLimit. Ein ganzzahliger Wert, der vom Citrix ADC für den Remote-QUIC-Endpunkt angekündigt wird. Es gibt die maximale Anzahl von QUIC-Verbindungs-IDs vom Remote-QUIC-Endpunkt an, die der Citrix ADC speichern möchte.

-ActiveConnectionMigration. Geben Sie an, ob der Citrix ADC dem Remote-QUIC-Endpunkt erlauben muss, eine aktive QUIC-Verbindungsmigration durchzuführen.

-congestionCtrlAlgorithm. Geben Sie den Algorithmus zur Überlastungssteuerung an, der für QUIC-Verbindungen verwendet werden soll.

-initialMaxData. Ein ganzzahliger Wert, der vom Citrix ADC an den Remote-QUIC-Endpunkt angekündigt wird und den Anfangswert in Byte für die maximale Datenmenge angibt, die über eine QUIC-Verbindung gesendet werden kann.

-initialMaxStreamDataBidilocal. Ein ganzzahliger Wert, der vom Citrix ADC an den Remote-QUIC-Endpunkt angekündigt wird und die anfängliche Flusssteuerungsgrenze in Byte für bidirektionale QUIC-Streams angibt, die vom Citrix ADC initiiert wurden.

-initialMaxStreamDatabidiRemote. Ein ganzzahliger Wert, der vom Citrix ADC für den Remote-QUIC-Endpunkt angekündigt wird und die anfängliche Flusssteuerungsgrenze in Byte für bidirektionale QUIC-Streams angibt, die vom Remote-QUIC-Endpunkt initiiert werden.

-initialMaxStreamDataUni. Ein ganzzahliger Wert, der vom Citrix ADC an den Remote-QUIC-Endpunkt angegeben wird und die anfängliche Flusssteuerungsgrenze in Byte für unidirektionale Streams angibt, die vom Remote-QUIC-Endpunkt initiiert werden.

-initialMaxStreamsBidi. Ein ganzzahliger Wert, der vom Citrix ADC an den Remote-QUIC-Endpunkt angekündigt wird und die anfängliche maximale Anzahl von bidirektionalen Streams angibt, die der Remote-QUIC-Endpunkt initiieren muss.

-initialMaxStreamSuni. Ein ganzzahliger Wert, der vom Citrix ADC an den Remote-QUIC-Endpunkt angekündigt wird und die anfängliche maximale Anzahl von unidirektionalen Streams angibt, die der Remote-QUIC-Endpunkt initiieren muss.

-MaxackDelay. Ein ganzzahliger Wert, der vom Citrix ADC für den Remote-QUIC-Endpunkt angekündigt wird und die maximale Zeitspanne in Millisekunden angibt, um die der Citrix ADC das Senden von Bestätigungen verzögert.

-maxidleTimeout. Ein ganzzahliger Wert, der vom Citrix ADC an den Remote-QUIC-Endpunkt ausgegeben wird und das maximale Leerlauf-Timeout für eine QUIC-Verbindung in Sekunden angibt. Eine QUIC-Verbindung, die länger als das Minimum der vom Citrix ADC und dem Remote-QUIC-Endpunkt angekündigten Zeitüberschreitungswerte im Leerlauf bleibt, und das Dreifache des aktuellen Probe Timeout (PTO), wird vom Citrix ADC stillschweigend verworfen.

-maxudppayLoadSize. Ein ganzzahliger Wert, der vom Citrix ADC für den Remote-QUIC-Endpunkt angekündigt wird und die Größe der größten UDP-Datagramm-Nutzlast in Byte angibt, die der Citrix ADC bereit ist, bei einer QUIC-Verbindung zu empfangen.

-newTokenValidityPeriod. Ein ganzzahliger Wert, der den Gültigkeitszeitraum der vom Citrix ADC gesendeten QUIC NEW_TOKEN-Frames in Sekunden angibt. -RetryTokenValidityPeriod. Ein ganzzahliger Wert, der den Gültigkeitszeitraum der Adressprüfungstoken angibt, die über QUIC Wiederholungspakete ausgegeben werden, die vom Citrix ADC gesendet wurden. -StatelessAddressValidierung. Geben Sie an, ob der Citrix ADC eine zustandslose Adressvalidierung für QUIC-Clients durchführen muss, indem er Token in QUIC-Wiederholungspaketen während des Aufbaus der QUIC-Verbindung sendet und Token in QUIC NEW_TOKEN-Frames nach dem Aufbau der QUIC-Verbindung sendet.

Schritt 2: Ordnen Sie das benutzerdefinierte QUIC-Profil einem virtuellen Lastausgleichsserver vom Typ http_quic zu

Geben Sie an der Eingabeaufforderung Folgendes ein:

set lb vserver <name>@ [-IPAddress <ip_addr|ipv6_addr|*>@]  <serviceName>@] [-persistenceType <persistenceType>] [-quicProfileName <string>]
<!--NeedCopy-->

Beispiel:

set lb vserver lb-http3 -quicProfileName quic_http3

Aktivieren und binden Sie HTTP/3 auf einem virtuellen HTTP_QUIC Server

Um HTTP/3 auf einem virtuellen HTTP_QUIC-Server zu aktivieren, wird der HTTP-Profilkonfiguration eine Reihe von Konfigurationsparametern hinzugefügt. Um die Konfiguration zu erleichtern, ist beim Hinzufügen eines virtuellen HTTP_QUIC-Servers ein neues Standard/integriertes HTTP-Profil auf der Appliance verfügbar. Für das Profil sind die Unterstützungsparameter des HTTP/3-Protokolls auf ENABLED festgelegt und auch an die virtuellen HTTP_QUIC-Server begrenzt (anwendbar, wenn Sie den virtuellen HTTP_QUIC-Server nicht mit einem vom Benutzer hinzugefügten HTTP-Profil verknüpfen möchten). Der Wert der HTTP/3-Parameter im HTTP-Profil entscheidet, ob das HTTP/3-Protokoll ausgewählt und bei der Verarbeitung der Erweiterung TLS ALPN (Application Layer Protocol Negotiation) während des QUIC-Protokoll-Handshake angekündigt werden soll.

Sie können ein HTTP/3-Profil erstellen und HTTP-Parameter für den HTTP/3-Dienst und den virtuellen Lastausgleichsserver angeben. Sie müssen entweder ein benutzerdefiniertes Profil erstellen oder das integrierte HTTP/3-Profil verwenden und das Profil an den virtuellen Lastenausgleichsserver binden.

Schritt 1: Konfigurieren Sie ein benutzerdefiniertes HTTP/3-Profil an der Eingabeaufforderung:

Add ns httpProfile <profile_name> -http3 ENABLED
<!--NeedCopy-->

Beispiel:

add ns httpProfile http3_quic –http3 ENABLED

Schritt 2: Binden Sie das benutzerdefinierte HTTP/3-Profil an einen virtuellen Lastausgleichsserver vom Typ http_quic Geben Sie an der Eingabeaufforderung Folgendes ein:

set lb vserver <name>@ [-IPAddress <ip_addr|ipv6_addr|*>@]  <serviceName>@] [-persistenceType <persistenceType>] [-httpProfileName <string>]
<!--NeedCopy-->

Beispiel:

set lb vserver lb-http3 –httpProfileName http3_quic

Binden Sie SSL-Zertifikatschlüsselpaar mit dem virtuellen HTTP_QUIC Server

Um verschlüsselten Datenverkehr zu verarbeiten, müssen Sie ein SSL-Zertifikatschlüsselpaar hinzufügen und es an den virtuellen HTTP_QUIC-Server binden.

Geben Sie an der Eingabeaufforderung Folgendes ein:

bind ssl vserver <vServerName> -certkeyName <certificate-KeyPairName>

<!--NeedCopy-->

Beispiel:

bind ssl vserver lb-http3 -certkeyName rsa_certkeypair

Weitere Informationen finden Sie unter Thema Bind SSL-Zertifikat .

Binden Sie SSL/TLS-Protokollparameter mit einem virtuellen HTTP_QUIC-Server

Virtuelle Server vom Typ HTTP_QUIC verfügen über eine integrierte TLS 1.3-Serverfunktionalität, da das QUIC-Protokoll TLS 1.3 als obligatorische Sicherheitskomponente verwendet. Um die Konfiguration beim Hinzufügen eines virtuellen HTTP_QUIC-Servers zu erleichtern, wird ein neues Standard- oder integriertes SSL-Profil vom Typ Quic-Frontend hinzugefügt. Das SSL-Profil hat TLS 1.3-Version aktiviert, die mit TLS 1.3-Chiffrier-Suiten (und elliptischen Kurven) konfiguriert ist. Das SSL-Profil muss dann an die neu hinzugefügten virtuellen HTTP_QUIC-Server gebunden sein. Sie können ein SSL-Profil erstellen und SSL-Verschlüsselungsparameter für den TLP 1.1-Dienst und den virtuellen Lastausgleichsserver angeben. Sie müssen entweder ein benutzerdefiniertes Profil erstellen oder das integrierte SSL-Profil verwenden und das Profil an den virtuellen Lastenausgleichsserver binden.

Schritt 1: Konfigurieren Sie ein benutzerdefiniertes SSL-Profil an der Eingabeaufforderung:

add ssl profile <name> -sslprofileType QUIC-FrontEnd
<!--NeedCopy-->

Beispiel:

add ssl profile ssl_profile1 -sslprofileType QUIC-FrontEnd -tls13 ENABLED -tls12 DISABLED -tls11 DISABLED -tls1 DISABLED

Schritt 2: Binden Sie das benutzerdefinierte SSL-Profil an einen virtuellen Lastausgleichsserver vom Typ HTTP_QUIC Geben Sie an der Eingabeaufforderung Folgendes ein:

set lb vserver <name>@ [-IPAddress <ip_addr|ipv6_addr|*>@]  <serviceName>@] [-persistenceType <persistenceType>] [-httpProfileName <string>]
<!--NeedCopy-->

Beispiel:

set ssl vserver lb-http3 -sslprofile ssl_profile1

Aktivieren Sie SSL- und Load Balancing-Funktionen über die grafische Benutzeroberfläche

Führen Sie die folgenden Schritte aus, um SSL- und Load Balancing-Funktionen zu aktivieren:

  1. Erweitern Sie im Navigationsbereich System, und klicken Sie dann auf Einstellungen.
  2. Wählen Sie auf der Seite Basisfunktionen konfigurieren den SSL und den Load Balancingaus.
  3. Klicken Sie auf OKund dann auf Schließen.

GUI für Aktivieren von SSL- und Load Balancing-Funktionen

Fügen Sie Lastenausgleich und Content Switching (optional) virtuelle Server vom Typ HTTP_QUIC mit der GUI hinzu

  1. Navigieren Sie zu Traffic Management > Load Balancing > Virtuelle Server.
  2. Klicken Sie auf Hinzufügen, um einen virtuellen Lastenausgleichsserver vom Typ HTTP_QUIC zu erstellen.
  3. Klicken Sie auf der Seite Virtueller Server für Lastenausgleich auf Profile.
  4. Wählen Sie im Abschnitt Profile den Profiltyp als QUIC aus. Hinweis: QUIC-, HTTP/3- und SSL-Profile sind integrierte Profile.
  5. Klicken Sie auf OK und dann auf Fertig.

Fügen Sie Load Balancing und Content Switching (optional) virtuelle Server hinzu

Verknüpfen Sie QUIC-Protokollparameter mit dem virtuellen HTTP_QUIC-Server über die grafische Benutzeroberfläche

Schritt 1: QUIC-Profil hinzufügen

  1. Navigieren Sie zu System > Profile > QUIC-Profil.
  2. Klicken Sie auf Hinzufügen.
  3. Legen Sie auf der Seite QUIC-Profil die folgenden Parameter fest. Eine ausführliche Beschreibung der einzelnen Parameter finden Sie im Abschnitt “Assoziiertes QUIC-Protokoll CLI”.

    1. Ack Delay Exponent
    2. Limit der aktiven Verbindungs-ID
    3. Aktive Verbindungsmigration
    4. Algorithmus zur Überlastungssteuerung
    5. Anfängliche maximale Daten
    6. Anfängliche maximale Stream-Daten Bidi Local
    7. Anfängliche maximale Stream-Daten Bidi Remote
    8. Anfängliche maximale Stream-Dateneinheit
    9. Initialer maximaler Stream-Bidi
    10. Initialer maximaler Stream-Uni
    11. Maximale Verzögerung bei der Bestätigung
    12. Maximaler Leerlauf-Timeout
    13. Maximale UDP-Daten GramSperBurst
    14. Gültigkeitszeitraum des neuen Tokens
    15. Gültigkeitszeitraum des Tokens wiederholen
    16. Stateless Adressvalidierung

Verknüpfen Sie QUIC-Protokollparameter mit dem virtuellen HTTP_QUIC Server

Schritt 2: Verknüpfen Sie QUIC-Profil mit einem virtuellen Lastenausgleichsserver vom Typ HTTP_QUIC

  1. Wählen Sie im Abschnitt Profile das QUIC-Profil aus. Hinweis: QUIC-, HTTP/3- und SSL-Profile sind integrierte Profile.
  2. Klicken Sie auf OK und dann auf Fertig.

QUIC-Profil

Verknüpfen Sie SSL/TLS-Protokollparameter mit dem virtuellen Server vom Typ SSL über die grafische Benutzeroberfläche

Schritt 1: SSL-Profil hinzufügen

  1. Navigieren Sie zu System > Profile > SSL-Profil.
  2. Klicken Sie auf Hinzufügen.
  3. Legen Sie auf der Seite QUIC-Profil die SSL-Parameter fest. Eine ausführliche Beschreibung finden Sie unter Thema zur SSL-Profilkonfiguration.
  4. Klicken Sie auf OK und schließen.

Verknüpfen Sie SSL/TLS-Protokollparameter mit dem virtuellen Server vom Typ SSL

Schritt 2: Verknüpfen Sie das SSL-Profil mit einem virtuellen Lastenausgleichsserver vom Typ SSL.

  1. Wählen Sie im Abschnitt Profile das SSL-Profil aus.
  2. Klicken Sie auf OK und dann auf Fertig.

Verknüpfen Sie SSL-Profil mit einem virtuellen Lastenausgleichsserver vom Typ SSL

Quic- und HTTP/3-Statistiken anzeigen

Die folgenden Befehle zeigen eine detaillierte Zusammenfassung der QUIC- und HTTP3-Statistiken. Geben Sie an der Eingabeaufforderung Folgendes ein:

> stat quic
> stat quic –detail
<!--NeedCopy-->

Um die Statistikanzeige zu löschen, geben Sie eine der folgenden Optionen ein:

> stat quic -clearstats basic
> stat quic -clearstats full

<!--NeedCopy-->

So zeigen Sie eine detaillierte Zusammenfassung der HTTP/3-Statistiken an:

> stat http3
> stat http3 –detail
<!--NeedCopy-->

Um die Statistikanzeige zu löschen, geben Sie eine der folgenden Optionen ein:

> stat http3 -clearstats basic
> stat http3 -clearstats full
<!--NeedCopy-->