Qu'est-ce qu'un contrôleur de mise à disposition d’applications (ADC) ?

Télécharger au format PDF  

Les ADC ont fait de nombreux adeptes ces dix dernières années, en grande partie du fait d’une demande accrue en appliances de répartition de charge, destinées à gérer des besoins de mise à disposition d’applications plus complexes et à améliorer les performances applicatives.

Les contrôleurs de mise à disposition d’applications sont des appliances réseau spécialisées dont la fonction est d’améliorer les performances, la sécurité et la résilience des applications délivrées via le Web.

Mise à disposition d’applications

Au fil des années, les applications ont évolué de façon très significative. Le terme de mise à disposition recouvre désormais l’ensemble des moyens permettant de délivrer une application à l’utilisateur dans notre nouvelle ère de la mobilité et du cloud. Au sein de l’entreprise, les applications professionnelles ne sont plus des logiciels attachés à un poste de travail, installés sur un serveur local et accessibles aux utilisateurs via un réseau local. Les applications modernes doivent fonctionner sur tous les types de réseaux et dans des endroits situés bien au-delà des limites physiques de l’entreprise.

Les contrôleurs de mise à disposition d’applications, désormais largement déployés en entreprise où ils jouent un rôle clé, aident les applications à s’adapter aux réseaux et protocoles utilisés actuellement. Ils permettent en outre de s’assurer que les applications bénéficient de performances optimales, sont en permanence disponibles et ne présentent aucun risque en termes de sécurité, que ce soit pour l’utilisateur ou pour l’entreprise.

Disponibilité applicative

Le consommateur moyen attend des périphériques et des applications avec lesquels il interagit quotidiennement qu’ils fonctionnent en permanence, et exige que les informations soient disponibles instantanément et à la demande. Ces attentes se sont reportées sur les types de périphériques et d’applications qu’ils adoptent. Pour satisfaire les travailleurs modernes, les applications professionnelles doivent être aussi intuitives et simples d’emploi que les applications grand public qu’ils utilisent pour leurs loisirs et à titre privé.

Bon nombre d’employés ne sont plus obligés d’utiliser des équipements d’entreprise verrouillés et peuvent désormais travailler sur leurs périphériques personnels, quand ils le veulent. Les utilisateurs travaillant dorénavant à n’importe quelle heure du jour ou de la nuit, les directions informatiques doivent s’assurer que leurs serveurs et leurs applications demeurent bien disponibles 24 heures sur 24. Les entreprises investissent lourdement dans les infrastructures informatiques afin de s’assurer que leurs employés bénéficient en permanence d’un accès aux applications et aux données quand ils en ont besoin.

Bien sûr, les serveurs peuvent connaître des défaillances pour de nombreuses raisons : problèmes mécaniques, sur-utilisation, violations de sécurité, etc. Lorsqu’un serveur connaît une défaillance, les applications qu’il héberge deviennent inutilisables ou inaccessibles.

Les directions informatiques peuvent éviter ces désagréments en intégrant la tolérance de panne à leurs environnements. Le déploiement de serveurs supplémentaires au sein du datacenter ou d’un site de secours constitue la stratégie de basculement type. Les ADC peuvent contribuer à garantir la haute disponibilité des applications en assurant un basculement transparent. Pour ce faire, ils répartissent les charges applicatives entre les différents serveurs d’un cluster de serveurs actifs, implantés dans un ou plusieurs sites.

L’utilité de la répartition de charge serveur

La répartition de la charge serveur aide à répartir le trafic entre les différents serveurs d’un cluster afin d’optimiser l’utilisation, d’améliorer la réactivité et de renforcer la disponibilité.

Un contrôleur de mise à disposition d’applications s’appuie sur des algorithmes et des stratégies pour déterminer de quelle manière le trafic applicatif entrant doit être réparti. « Round robin », qui reroute les requêtes client à chaque serveur à tour de rôle, constitue une forme assez sommaire de répartition de charge. Cette méthode considère les serveurs comme étant tous identiques : elle ne prend pas en compte leur état ou leur réactivité. Un administrateur peut mettre en œuvre des stratégies supplémentaires et demander à un ADC de vérifier un certain nombre de critères avant de déterminer vers quel serveur envoyer une requête entrante. Le contrôleur de mise à disposition d’applications peut inspecter les en-têtes de paquets, à la recherche de mots clés ou de types de fichiers demandés, et diriger la requête vers le serveur approprié en fonction de cette information.

Figure 1 : ADC effectue un suivi actif destiné à vérifier que les requêtes sont transmises à des serveurs disponibles

Les contrôleurs de mise à disposition d’applications sont également beaucoup utilisés pour leurs fonctionnalités de suivi. Ils peuvent vérifier l’état et l’opérabilité d’un serveur bien au-delà du simple ping standard. Si le contrôle indique qu’un serveur connaît un problème ou que les critères d’état spécifiques nécessaires à la garantie de fiabilité d’un serveur ne sont pas respectés, l’ADC dirigera le trafic vers un serveur de substitution, évitant ainsi des perturbations potentielles (voir Figure 1).

Les contrôleurs de mise à disposition d’applications peuvent également fournir des analyses historiques et en temps réel de tout le trafic réseau et utilisateur, incluant des mesures de temps d’aller-retour, des indicateurs d’utilisation de la bande passante et des latences impactant le WAN ou le datacenter. Ces données peuvent aider le personnel de support technique en minimisant le temps alloué à l’identification des causes d’un problème, et aider les utilisateurs en leur garantissant une résolution plus rapide.

La répartition de charge serveur sur de multiples sites

La répartition des charges est un service essentiel pour tout datacenter à trafic élevé, mais un contrôleur de mise à disposition d’applications peut également rediriger le trafic vers un cluster de serveurs implanté dans un datacenter totalement distinct. On parle alors de répartition de charge globale. Les serveurs de l’autre datacenter peuvent être épaulés en amont par un autre ADC, qui travaille en tandem avec la première appliance. Ces sites peuvent au choix être configurés en mode actif-passif ou actif-actif. Dans ce dernier cas, les deux sites prennent en charge de façon active le trafic entrant. Chaque contrôleur de mise à disposition d’applications détecte le datacenter le plus proche d’un utilisateur donné et dirige la requête client vers un serveur de ce datacenter. Ce processus réduit les latences et le temps d’aller-retour des requêtes et garantit une meilleure expérience aux utilisateurs.

Cette configuration garantit en outre la continuité d’activité en cas de défaillance d’un datacenter. Lorsque le trafic est dirigé vers ce datacenter, l’ADC le déroute vers un autre ADC disponible dans un site distinct, qui le dirige alors vers une ressource serveur viable.

Performance applicative

Si les performances des applications ne sont pas conformes aux attentes des utilisateurs, la productivité de ces derniers peut être gravement compromise. Un contrôleur de mise à disposition d’applications peut employer un large éventail de mécanismes pour améliorer les performances applicatives, tout particulièrement sur les réseaux mobiles à latences élevées.

La répartition de charges de bases de données SQL est l’un des mécanismes permettant de générer des gains de performances. La répartition de charges SQL s’appuie sur bon nombre de techniques déjà utilisées pour la répartition des charges de trafic TCP, mais applique cette intelligence au niveau de la base de données. Elle utilise une logique à base de stratégies pour chaque transaction SQL, améliorant ainsi le nombre de requêtes et de connexions prises en charge au sein du cluster de la base de données.

Parmi les autres services d’optimisation des performances couramment offerts par les contrôleurs de mise à disposition d’applications, citons le délestage serveur des tâches intensives, le multiplexage de connexion, la compression et la mise en cache.

En matière de commerce sur le Web, SSL et TLS sont deux protocoles incontournables. La gestion du trafic chiffré via les nouveaux algorithmes de chiffrement est une tâche extrêmement gourmande en ressources processeur. Les contrôleurs de mise à disposition d’applications peuvent prendre en charge des volumes extraordinairement élevés de trafic chiffré ou non. L’ADC gère les certificats et déchiffre le trafic avant qu’il n’atteigne le serveur.

Le multiplexage TCP est une méthode efficace de traitement des gros volumes de requêtes serveur entrantes. Le multiplexage TCP maintient des connexions actives entre l’ADC et les serveurs. Lorsque le trafic atteint l’ADC, celui-ci dirige les requêtes via ces canaux ouverts, ce qui supprime les inefficaces processus « d’ouverture-fermeture » pour chaque transaction, susceptibles de dégrader les performances du serveur.

Optimisation des performances sur réseaux mobiles

Les contrôleurs de mise à disposition d’applications peuvent également améliorer les performances sur les réseaux mobiles. Les pages Web conçues pour les liaisons Internet à haut débit sont souvent incapables de garantir aux utilisateurs la même expérience sur un périphérique mobile se connectant via un réseau limité à bande passante limitée.

Plusieurs mécanismes particulièrement créatifs permettent aux contrôleurs de mise à disposition d’applications d’optimiser la mise à disposition de contenu Web via les réseaux mobiles. Par exemple, le fractionnement de domaine. Une optimisation de la couche de connexion est appliquée à un domaine unique. Le contenu de chaque page est fractionné en une séquence de sous-domaines permettant l’ouverture simultanée d’un plus grand nombre de canaux, ce qui réduit le temps de chargement des pages et améliore les performances.

Les contrôleurs de mise à disposition d’applications bénéficient d’une visibilité sur le contenu délivré et peuvent encore optimiser la mise à disposition des pages Web contenant de grosses images en convertissant les fichiers GIF au format PNG, plus efficace.

Les scripts étendus et les fichiers CCS (cascading style sheet) sont d’autres composants lourds des pages Web que les ADC sont capables de compresser en retirant les caractères et les espaces blancs inutiles.

Une fois compressés, les fichiers traversent le réseau bien plus rapidement. Les temps de téléchargement sont donc significativement réduits.

Sécurité des applications et des utilisateurs

La mise à disposition via le Web a introduit de nouvelles menaces et vulnérabilités que les applications traditionnelles de réseau local n’avaient pas à gérer. Les travailleurs devenant plus mobiles et exigeant un accès distant à leurs applications et données, les directions informatiques doivent concevoir des protections plus rigoureuses contre les attaques externes et les fuites de données.

Les contrôleurs de mise à disposition d’applications servent de point d’entrée naturel ou de passerelle vers le réseau. Ils authentifient chaque utilisateur tentant d’accéder à une application. Si l’application est une application SaaS, l’ADC peut valider l’identité d’un utilisateur grâce à une librairie de données Active Directory sur site rendant inutile le stockage d’authentifiants dans le cloud. Ce processus est non seulement plus sécurisé, mais il améliore en outre l’expérience utilisateur en fournissant une fonctionnalité SSO sur de multiples applications.

SAML, le protocole basé sur XML, est désormais largement utilisé pour simplifier le processus de connexion à une application. L’ADC peut agir comme un agent SAML, en autorisant les utilisateurs via n’importe quelle librairie de données susceptible de confirmer leur identité. Certaines applications permettent l’utilisation d’authentifiants provenant de sites comme Facebook ou Google+ pour valider les identités avant d’accorder l’accès. Les ADC peuvent dans ce contexte servir de fournisseur de services ou d’identité SAML.

Les attaques DDoS se sont généralisées. Les propriétés Web d’entreprise sont plus particulièrement ciblées dans le but d’inonder leurs serveurs et d’interrompre leur capacité à conduire leurs opérations. L’ADC peut mettre en œuvre des mesures de limitation de débit afin de protéger les ressources serveur internes contre ces attaques spécifiques. Lorsqu’une quantité inhabituellement massive de requêtes entrantes est détectée, l’ADC peut freiner ces requêtes et limiter la bande passante qu’elles peuvent consommer, ou bien tout simplement refuser la requête.

Les contrôleurs de mise à disposition d’applications ont permis de regrouper la répartition des charges et la protection avancée de la couche 7, jusqu’alors uniquement disponibles sous forme de solutions autonomes. Les pare-feu applicatifs peuvent inspecter les en-têtes de paquets de données pour détecter tout contenu suspect ou script malveillant qui n’aurait pas été détecté par le pare-feu réseau (voir Figure 2).

Figure 2. Une protection de la couche 7 qui dépasse les capacités d’un simple pare-feu réseau

1 Jonathan Keane. Les attaques DDoS ont connu un record au second trimestre 2015. Digital Trends. 19 août 2015. http://www.digitaltrends.com/computing/ddos-attacks-hit-record-numbers-in-q2-2015/

Un contrôleur de mise à disposition d’applications est capable de prendre en charge à la fois les modèles de sécurité positifs et négatifs. Lorsqu’un ADC est placé en mode « apprentissage », il peut analyser le trafic pour détecter les schémas d’utilisation synonymes de comportement normal. Si une requête entrante malveillante est envoyée (via injection SQL ou cross-site scripting, par exemple), il étiquettera automatiquement cette requête et la bloquera. Il peut également utiliser des mécanismes de protection basés sur la signature via l’intégration de produits de sécurité tiers tels que ceux proposés par Qualys. L’association de ces différentes méthodes de protection permet à l’ADC de s’appuyer sur un modèle complet de sécurité hybride au profit des applications et des utilisateurs.

Quel avenir pour les ADC ?

Les ADC offrent déjà d’énormes avantages aux directions informatiques en garantissant la mise à disposition sécurisée des applications et des données au profit de l’utilisateur. Cependant, ils devraient encore progresser et évoluer, au gré de l’évolution des applications. Le réseau logiciel impose des exigences accrues pour les contrôleurs de mise à disposition d’applications à qui l’on demande désormais de fonctionner « en tant que service ». Les protocoles réseau devenant de plus en plus orientés applications, les ADC doivent eux aussi s’adapter et devenir plus automatisés pour fournir une optimisation et une protection transparentes à chaque type d’applications.

Prochaine étape