ADC

Algorithmes d’équilibrage de charge

L’algorithme d’équilibrage de charge définit les critères que l’appliance NetScaler utilise pour sélectionner le service vers lequel rediriger chaque demande client. Différents algorithmes d’équilibrage de charge utilisent des critères différents. Par exemple, l’algorithme de moindre connexion sélectionne le service avec le moins de connexions actives, tandis que l’algorithme Round Robin gère une file d’attente de services actifs, distribue chaque connexion au service suivant de la file d’attente, puis envoie ce service à la fin de la file d’attente.

Certains algorithmes d’équilibrage de charge sont les mieux adaptés à la gestion du trafic sur les sites Web, d’autres à la gestion du trafic vers les serveurs DNS et d’autres à la gestion d’applications Web complexes utilisées dans le commerce électronique ou sur les réseaux locaux ou WAN de l’entreprise. Le tableau suivant répertorie chaque algorithme d’équilibrage de charge pris en charge par l’appliance NetScaler, avec une brève description du fonctionnement de chacun d’entre eux.

Nom Sélection du serveur basée sur
LEASTCONNECTION Quel service possède actuellement le moins de connexions client ? Il s’agit de l’algorithme d’équilibrage de charge par défaut.
ROUNDROBIN Quel service figure en haut de la liste des services ? Une fois que ce service est sélectionné pour une connexion, il se déplace vers le bas de la liste.
LEASTRESPONSETIME Quel serveur à charge équilibrée présente actuellement le temps de réponse le plus rapide ?
URLHASH Un hachage de l’URL de destination.
DOMAINHASH Un hachage du domaine de destination.
DESTINATIONIPHASH Un hachage de l’adresse IP de destination.
SOURCEIPHASH Un hachage de l’adresse IP source.
SRCIPDESTIPHASH Un hachage des adresses IP source et de destination.
CALLIDHASH Un hachage de l’ID d’appel dans l’en-tête SIP.
SRCIPSRCPORTHASH Un hachage de l’adresse IP et du port du client.
LEASTBANDWIDTH Quel service présente actuellement le moins de contraintes de bande passante ?
LEASTPACKETS Quel service reçoit actuellement le moins de paquets ?
CUSTOMLOAD Données provenant d’un moniteur de charge.
TOKEN Le jeton configuré.
LRTM Le moins de connexions actives et le temps de réponse moyen le plus bas.
Proximité statique Le service qui correspond le mieux aux critères de proximité.
Demande minimale Quel service reçoit actuellement le moins de demandes de clients.
   

En fonction du protocole du service utilisé pour l’équilibrage de charge, l’appliance NetScaler configure chaque connexion entre le client et le serveur pour qu’elle dure pendant un intervalle de temps différent. C’est ce que l’on appelle la granularité d’équilibrage de charge, qui se divise en trois types : granularité basée sur les demandes, basée sur les connexions et basée sur le temps. Le tableau suivant décrit chaque type de granularité et indique quand chacun est utilisé.

Granularité Types de service d’équilibrage de charge Spécifie
Basé sur des demandes HTTP ou HTTPS Un nouveau service est choisi pour chaque requête HTTP, indépendamment des connexions TCP. Comme pour toutes les requêtes HTTP, une fois que le serveur Web répond à la demande, la connexion est fermée.
Basé sur la connexion Protocoles TCP et TCP autres que HTTP Un service est choisi pour chaque nouvelle connexion TCP. La connexion persiste jusqu’à ce que le service ou le client y mette fin.
Basé sur le temps UDP et autres protocoles IP Un nouveau service est choisi pour chaque paquet UDP. Lors de la sélection d’un service, une session est créée entre le service et un client pendant une période spécifiée. Lorsque le temps expire, la session est supprimée et un nouveau service est choisi pour les paquets supplémentaires, même si ces paquets proviennent du même client.

Lors du démarrage d’un serveur virtuel, ou chaque fois que l’état d’un serveur virtuel change, le serveur virtuel peut initialement utiliser la méthode du round robin pour distribuer les demandes des clients entre les serveurs physiques. Ce type de distribution, appelé «  start round robin », permet d’éviter toute charge inutile sur un seul serveur lorsque les demandes initiales sont traitées. Après avoir utilisé la méthode Round Robin au démarrage, le serveur virtuel passe à la méthode d’équilibrage de charge spécifiée sur le serveur virtuel.

Le Startup RR Factor fonctionne de la manière suivante :

  • Si le facteur RR de démarrage est défini sur zéro, l’appliance passe à la méthode d’équilibrage de charge spécifiée en fonction du taux de demandes.
  • Si le facteur RR de démarrage est un nombre autre que zéro, l’appliance utilise la méthode circulaire pour le nombre de demandes spécifié avant de passer à la méthode d’équilibrage de charge spécifiée.
  • Par défaut, le facteur RR de démarrage est défini sur zéro.

Remarque : Vous ne pouvez pas définir le facteur RR de démarrage pour un serveur virtuel individuel. La valeur que vous spécifiez s’applique à tous les serveurs virtuels de l’appliance NetScaler.

Pour définir le facteur de démarrage à l’aide de l’interface de ligne de commande

À l’invite de commandes, tapez :

set lb parameter -startupRRFactor <positive_integer>

Exemple

set lb parameter -startupRRFactor 25000

Pour définir le facteur de démarrage à l’aide de l’interface graphique

  1. Accédez à Gestion du trafic > Équilibrage de charge > Configurer les paramètres d’équilibrage de chargeet définissez le facteur RR de démarrage.
Algorithmes d’équilibrage de charge