Client Keep-Alive

La fonctionnalité Keep-alive du client permet d’envoyer plusieurs requêtes client sur une seule connexion client. Cette fonctionnalité aide dans un environnement de gestion des transactions où généralement le serveur ferme la connexion client après avoir servi la réponse. Le client ouvre ensuite une nouvelle connexion pour chaque requête et passe plus de temps sur la transaction.

Client keep-alive résout ce problème en gardant ouverte la connexion entre le client et l’appliance (connexion côté client) même après que le serveur ferme la connexion avec l’appliance. Cela permet d’envoyer plusieurs demandes client à l’aide d’une seule connexion et d’enregistrer les allers-retours associés à l’ouverture et à la fermeture d’une connexion. Le client Keep-alive est le plus bénéfique dans les sessions SSL.

Le client Keep-alive est également utile dans l’une ou l’autre des conditions suivantes :

  • Lorsque le serveur ne prend pas en charge le client keep-alive.
  • Lorsque le serveur prend en charge le client keep-alive mais qu’une application sur le serveur ne prend pas en charge le client keep-alive.

Remarque Client keep-alive est applicable pour le trafic HTTP et SSL. Client-Keep alive peut être configuré globalement pour pouvoir gérer tout le trafic. Il peut également être configuré pour être actif uniquement sur des services spécifiques.

Dans l’environnement client keep-alive, les services configurés interceptent le trafic client et la demande client est dirigée vers le serveur d’origine. Le serveur envoie la réponse et ferme la connexion entre le serveur et l’appliance. Si un en-tête “Connection: Close” est présent dans la réponse du serveur, l’appliance corrompt cet en-tête dans la réponse côté client et la connexion côté client est maintenue ouverte. Par conséquent, le client n’a pas besoin d’ouvrir une nouvelle connexion pour la requête suivante ; au lieu de cela, la connexion au serveur est rouverte.

Remarque Si un serveur renvoie deux en-têtes “Connection: Close”, un seul est édité. Cela entraîne des retards importants dans le rendu client de l’objet, car un client ne suppose pas que l’objet a été livré complètement jusqu’à ce que la connexion soit effectivement fermée.

Configurer le client Keep-alive

Le client Keep-alive, par défaut, est désactivé sur Citrix ADC, à la fois globalement et au niveau du service. Par conséquent, vous devez activer la fonction à l’étendue requise.

Remarque Si vous activez le client Keep-alive globalement, il est activé pour tous les services, que vous l’activez ou non au niveau du service. En outre, si nécessaire, vous pouvez configurer certains paramètres HTTP pour spécifier le nombre maximal de connexions HTTP conservées dans le pool de réutilisation des connexions, activer le multiplexage des connexions et activer la persistance Etag. Remarque Lorsque ETag persistant est activé, l’en-tête ETag inclut des informations sur le serveur qui a servi le contenu. Cela garantit que les demandes conditionnelles de validation du cache ou les demandes de navigateur, pour ce contenu, atteignent toujours le même serveur.

Pour configurer le client keep-alive à l’aide de l’interface de ligne de commande :

À l’invite de commandes, procédez comme suit :

  1. Activez le client Keep-alive sur Citrix ADC.

    • Au niveau global

      enable ns mode cka

    • Au niveau du service

      set service <name> -CKA YES

    Remarque :

    Le client keep-alive ne peut être activé que pour les services HTTP et SSL.

  2. Configurez les paramètres HTTP requis sur le profil HTTP lié au ou aux services.

    set ns httpProfile <name> -maxReusePool <value> -conMultiplex ENABLED -persistentETag ENABLED
    

Remarque :

Configurez ces paramètres sur le profil nshttp_default _profile HTTP pour les rendre disponibles globalement.

Pour configurer le client keep-alive à l’aide de l’interface graphique :

  1. Activez le client Keep-alive sur Citrix ADC.

    • Au niveau global

      Accédez à Système > Paramètres, cliquez sur Configurer les modes et sélectionnez Keep Alive côté client.

    • Au niveau du service

      Accédez à Gestion du trafic > Équilibrage de charge > Services, puis sélectionnez le service requis. Dans le groupe Paramètres, activez Client Keep-Alive.

  2. Configurez les paramètres HTTP requis sur le profil HTTP lié au ou aux services.

  3. Accédez à Système > Profils, puis sous l’onglet Profils HTTP, sélectionnez le profil requis et mettez à jour les paramètres HTTP requis.

Client Keep-Alive