Citrix ADC

Configuration HTTP/3 et résumé des statistiques

Pour configurer un protocole HTTP/3 pour envoyer plusieurs flux de données HTTP/3 à l’aide de QUIC, vous devez effectuer les étapes suivantes :

  1. Activez les fonctionnalités SSL et d’équilibrage de charge.
  2. Ajoutez des serveurs virtuels d’équilibrage de charge et de commutation de contenu (facultatif) de type HTTP_QUIC.
  3. Associez les paramètres du protocole QUIC au serveur virtuel HTTP_QUIC.
  4. Activez HTTP/3 sur le serveur virtuel HTTP_QUIC.
  5. Liez la paire de clés de certificat SSL avec le serveur virtuel HTTP_QUIC.
  6. Associez les paramètres du protocole SSL/TLS au serveur virtuel HTTP_QUIC.

Activer SSL et l’équilibrage de charge

Avant de commencer, assurez-vous que les fonctions SSL et d’équilibrage de charge sont activées sur l’appliance. À l’invite de commandes, tapez :

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

Ajout de serveurs virtuels d’équilibrage de charge et de commutation de contenu (facultatif) de type HTTP_QUIC pour le service HTTP/3

Vous ajoutez un serveur virtuel d’équilibrage de charge pour accepter le trafic HTTP/3 via QUIC. Remarque : Le serveur virtuel d’équilibrage de charge de type HTTP_QUIC possède des profils QUIC, SSL et HTTP3 intégrés. Si vous préférez créer des profils définis par l’utilisateur, vous pouvez ajouter de nouveaux profils et les lier au serveur virtuel d’équilibrage de charge.

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-->

Exemple :

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

Associer les paramètres du protocole QUIC au serveur virtuel HTTP_QUIC

Vous pouvez créer un profil QUIC et spécifier des paramètres QUIC pour le service QUIC et l’associer au serveur virtuel d’équilibrage de charge. Vous devez soit créer un profil défini par l’utilisateur, soit utiliser le profil QUIC intégré et lier le profil au serveur virtuel d’équilibrage de charge.

Étape 1 : configurer un profil QUIC défini par l’utilisateur À l’invite de commandes, tapez :

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

Exemple :

set quic profile quic_http3 -ackDelayExponent 10 -activeConnectionIDlimit 4

Les différents paramètres de transport QUIC sont les suivants :

-ackDelayExponent. Valeur entière annoncée par Citrix ADC sur le point de terminaison QUIC distant, indiquant un exposant que le point de terminaison QUIC distant doit utiliser, pour décoder le champ AcK Delay dans les trames QUIC ACK envoyées par Citrix ADC.

-activeConnectionIDlimit. Valeur entière annoncée par Citrix ADC sur le point de terminaison QUIC distant. Il spécifie le nombre maximal d’ID de connexion QUIC à partir du point de terminaison QUIC distant, que Citrix ADC est prêt à stocker.

-activeConnectionMigration. Spécifiez si Citrix ADC doit autoriser le point de terminaison QUIC distant à effectuer une migration de connexion QUIC active.

-congestionCtrlAlgorithm. Spécifiez l’algorithme de contrôle de la congestion à utiliser pour les connexions QUIC.

-initialMaxData. Valeur entière annoncée par Citrix ADC sur le point de terminaison QUIC distant, spécifiant la valeur initiale, en octets, pour la quantité maximale de données pouvant être envoyées sur une connexion QUIC.

-initialMaxStreamDataBidiLocal. Valeur entière annoncée par Citrix ADC sur le point de terminaison QUIC distant, spécifiant la limite de contrôle de flux initiale, en octets, pour les flux QUIC bidirectionnels initiés par Citrix ADC.

-initialMaxStreamDataBidiRemote. Valeur entière annoncée par Citrix ADC sur le point de terminaison QUIC distant, spécifiant la limite de contrôle de flux initiale, en octets, pour les flux QUIC bidirectionnels initiés par le point de terminaison QUIC distant.

-initialMaxStreamDataUni. Valeur entière annoncée par Citrix ADC sur le point de terminaison QUIC distant, spécifiant la limite de contrôle de flux initiale, en octets, pour les flux unidirectionnels initiés par le point de terminaison QUIC distant.

-initialMaxStreamsBidi. Valeur entière annoncée par Citrix ADC sur le point de terminaison QUIC distant, spécifiant le nombre maximal de flux bidirectionnels initiaux que doit initier le point de terminaison QUIC distant.

-initialMaxStreamsUni. Valeur entière annoncée par Citrix ADC sur le point de terminaison QUIC distant, spécifiant le nombre maximal de flux unidirectionnels initiaux que doit initier le point de terminaison QUIC distant.

-maxAckDelay. Valeur entière annoncée par Citrix ADC sur le point de terminaison QUIC distant, spécifiant la durée maximale, en millisecondes, pendant laquelle Citrix ADC retarde l’envoi des accusés de réception.

-maxIdleTimeout. Valeur entière annoncée par Citrix ADC sur le point de terminaison QUIC distant, spécifiant le délai d’inactivité maximal, en secondes, pour une connexion QUIC. Une connexion QUIC qui reste inactive, plus longtemps que le minimum des valeurs de délai d’attente d’inactivité annoncées par Citrix ADC et le point de terminaison QUIC distant, et trois fois le délai d’attente de sonde (PTO) actuel, sera supprimée silencieusement par Citrix ADC.

-maxUDPPayloadSize. Valeur entière annoncée par Citrix ADC sur le point de terminaison QUIC distant, spécifiant la taille de la plus grande charge utile du datagramme UDP, en octets, que Citrix ADC est disposée à recevoir sur une connexion QUIC.

-newTokenValidityPeriod. Valeur entière, spécifiant la période de validité, en secondes, des jetons de validation d’adresse émis via les trames QUIC NEW_TOKEN envoyées par Citrix ADC. -retryTokenValidityPeriod. Valeur entière, spécifiant la période de validité, en secondes, des jetons de validation d’adresse émis via des paquets de nouvelle tentative QUIC envoyés par Citrix ADC. -statelessAddressValidation. Spécifiez si Citrix ADC doit effectuer une validation d’adresse sans état pour les clients QUIC, en envoyant des jetons dans des paquets de nouvelle tentative QUIC lors de l’établissement de la connexion QUIC et en envoyant des jetons dans des trames QUIC NEW_TOKEN après l’établissement de la connexion QUIC.

Étape 2 : Associez le profil QUIC défini par l’utilisateur à un serveur virtuel d’équilibrage de charge de type http_quic

À l’invite de commandes, tapez :

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

Exemple :

set lb vserver lb-http3 -quicProfileName quic_http3

Activer et lier HTTP/3 sur un serveur virtuel HTTP_QUIC

Pour activer HTTP/3 sur un serveur virtuel HTTP_QUIC, un ensemble de paramètres de configuration est ajouté à la configuration du profil HTTP. Pour faciliter la configuration, lorsque vous ajoutez un serveur virtuel HTTP_QUIC, un nouveau profil HTTP par défaut/intégré est disponible sur l’appliance. Les paramètres de prise en charge du protocole HTTP/3 sont définis sur ENABLED et sont également limités aux serveurs virtuels HTTP_QUIC (applicable si vous choisissez de ne pas associer le serveur virtuel HTTP_QUIC à un profil HTTP ajouté par l’utilisateur). La valeur des paramètres HTTP/3 dans le profil HTTP décide de sélectionner le protocole HTTP/3 et de faire de la publicité lors du traitement de l’extension TLS ALPN (Application Layer Protocol Negotiation), pendant la prise de contact du protocole QUIC.

Vous pouvez créer un profil HTTP/3 et spécifier des paramètres HTTP pour le service HTTP/3 et le serveur virtuel d’équilibrage de charge. Vous devez soit créer un profil défini par l’utilisateur, soit utiliser le profil HTTP/3 intégré et lier le profil au serveur virtuel d’équilibrage de charge.

Étape 1 : configurer un profil HTTP/3 défini par l’utilisateur À l’invite de commandes, tapez :

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

Exemple :

add ns httpProfile http3_quic –http3 ENABLED

Étape 2 : Lier le profil HTTP/3 défini par l’utilisateur à un serveur virtuel d’équilibrage de charge de type http_quic À l’invite de commandes, tapez :

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

Exemple :

set lb vserver lb-http3 –httpProfileName http3_quic

Lier la paire de clés de certificat SSL avec le serveur virtuel HTTP_QUIC

Pour traiter le trafic chiffré, vous devez ajouter une paire de clés de certificat SSL et la lier au serveur virtuel HTTP_QUIC.

À l’invite de commandes, tapez :

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

<!--NeedCopy-->

Exemple :

bind ssl vserver lb-http3 -certkeyName rsa_certkeypair

Pour plus d’informations, consultez la rubrique Bind SSL Certificate .

Lier les paramètres du protocole SSL/TLS à un serveur virtuel HTTP_QUIC

Les serveurs virtuels de type HTTP_QUIC ont une fonctionnalité de serveur TLS 1.3 intégrée, car le protocole QUIC utilise TLS 1.3 comme composant de sécurité obligatoire. Pour faciliter la configuration lors de l’ajout d’un serveur virtuel HTTP_QUIC, un nouveau profil SSL par défaut ou intégré de type Quic-Frontend est ajouté. Le profil SSL dispose de la version TLS 1.3 activée avec les suites de chiffrement TLS 1.3 (et les courbes elliptiques) configurées. Le profil SSL doit ensuite être lié aux nouveaux serveurs virtuels HTTP_QUIC ajoutés. Vous pouvez créer un profil SSL et spécifier des paramètres de chiffrement SSL pour le service TLP 1.1 et le serveur virtuel d’équilibrage de charge. Vous devez soit créer un profil défini par l’utilisateur, soit utiliser le profil SSL intégré et lier le profil au serveur virtuel d’équilibrage de charge.

Étape 1 : configurer un profil SSL défini par l’utilisateur À l’invite de commandes, tapez :

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

Exemple :

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

Étape 2 : Lier le profil SSL défini par l’utilisateur à un serveur virtuel d’équilibrage de charge de type HTTP_QUIC À l’invite de commandes, tapez :

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

Exemple :

set ssl vserver lb-http3 -sslprofile ssl_profile1

Activer les fonctionnalités SSL et d’équilibrage de charge à l’aide de l’interface graphique

Procédez comme suit pour activer les fonctionnalités SSL et d’équilibrage de charge :

  1. Dans le volet de navigation, développez Système, puis cliquez sur Paramètres.
  2. Sur la page Configurer les fonctionnalités de base, sélectionnez SSL et équilibrage de charge.
  3. Cliquez sur OK, puis sur Fermer.

Interface graphique pour activer les fonctionnalités SSL et d'équilibrage de charge

Ajoutez des serveurs virtuels d’équilibrage de charge et de commutation de contenu (facultatif) de type HTTP_QUIC à l’aide de l’interface graphique

  1. Accédez à Gestion du trafic > Équilibrage de charge > Serveurs virtuels.
  2. Cliquez sur Ajouter pour créer un serveur virtuel d’équilibrage de charge de type HTTP_QUIC.
  3. Dans la page Serveur virtuel d’équilibrage de charge, cliquez sur Profils.
  4. Dans la section Profils, sélectionnez le type de profil QUIC. Remarque : les profils QUIC, HTTP/3 et SSL sont intégrés.
  5. Cliquez sur OK, puis sur Terminé.

Ajouter des serveurs virtuels d'équilibrage de charge et de commutation de contenu (en option)

Associez les paramètres du protocole QUIC au serveur virtuel HTTP_QUIC à l’aide de l’interface graphique

Étape 1 : Ajouter un profil QUIC

  1. Accédez à Système > Profils > Profil QUIC.
  2. Cliquez sur Ajouter.
  3. Dans la page Profil QUIC, définissez les paramètres suivants. Pour une description détaillée de chaque paramètre, reportez-vous à la section Associate QUIC Protocol CLI.

    1. Ack Delay Exposant
    2. Active Connection ID Limit
    3. Active Connection Migration
    4. Congestion Control Algorithm
    5. Initial Maximum Data
    6. Initial Maximum Stream Data Bidi Local
    7. Initial Maximum Stream Data Bidi Remote
    8. Initial Maximum Stream Data Unit
    9. Initial Maximum Stream bidi
    10. Initial Maximum Stream Uni
    11. Maximum Acknowledgment Delay
    12. Maximum Idle Timeout
    13. Maximum UDP Data GramsperBurst
    14. New Token Validity Period
    15. Retry Token Validity Period
    16. Stateless Address Validation

Associez les paramètres du protocole QUIC au serveur virtuel HTTP_QUIC

Étape 2 : Associer le profil QUIC au serveur virtuel d’équilibrage de charge de type HTTP_QUIC

  1. Dans la section Profils, sélectionnez le profil QUIC. Remarque : les profils QUIC, HTTP/3 et SSL sont intégrés.
  2. Cliquez sur OK, puis sur Terminé.

Profil QUIC

Associez les paramètres du protocole SSL/TLS au serveur virtuel de type SSL à l’aide de l’interface graphique

Étape 1 : Ajouter un profil SSL

  1. Accédez à Système > Profils > Profil SSL.
  2. Cliquez sur Ajouter.
  3. Dans la page Profil QUIC, définissez les paramètres SSL. Pour une description détaillée, reportez-vous à la rubrique Configuration du profil SSL.
  4. Cliquez sur OK et Fermer.

Associer les paramètres du protocole SSL/TLS au serveur virtuel de type SSL

Étape 2 : Associez le profil SSL au serveur virtuel d’équilibrage de charge de type SSL.

  1. Dans la section Profils, sélectionnez le profil SSL.
  2. Cliquez sur OK, puis sur Terminé.

Associer un profil SSL à un serveur virtuel d'équilibrage de charge de type SSL

Afficher les statistiques QUIC et HTTP/3

Les commandes suivantes affichent un résumé détaillé des statistiques QUIC et HTTP3. À l’invite de commandes, tapez ce qui suit :

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

Pour effacer l’affichage des statistiques, tapez l’une des options suivantes :

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

<!--NeedCopy-->

Pour afficher un résumé détaillé des statistiques HTTP/3 :

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

Pour effacer l’affichage des statistiques, tapez l’une des options suivantes :

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