Les trois caractéristiques clés d’un proxy d’applications moderne

Écosystème F5 | 14 septembre 2015

Gardez le côté chaud au chaud et le côté froid au froid.

Vous vous souvenez peut-être (si vous avez l’âge requis — et non, rassurez-vous, je ne vous demanderai pas de lever la main) d’une campagne lancée il y a des années par McDonald’s pour promouvoir des emballages destinés à certains de ses produits, qui permettaient de « garder le côté chaud bien chaud et le côté froid bien froid ».

côté chaud au chaud, côté froid au froid

Le concept était en réalité assez simple : séparer le chaud du froid tout en les conservant dans un seul contenant pour faciliter le transport.

Cette notion de séparation au sein d’un même « conteneur » est véritablement ce qui fait d’un proxy d’application… un proxy. Le côté client reste côté client, et le côté application… côté application.

Bon, finalement, ça ne se traduit peut-être pas aussi bien que je l’aurais voulu.

Cela dit, le concept reste valable et il est important pour comprendre le fonctionnement d’un proxy d’application.

Fondamentalement, un proxy est un logiciel qui se situe logiquement entre deux participants à un échange de communications. Un proxy d’application se place entre une application et un client. Cependant, tous les proxy ne sont pas des proxy complets Un proxy complet nécessite une séparation interne des deux côtés ; en substance, un proxy complet comporte deux piles réseau indépendantes au sein d’un même appareil : le côté client (le côté exposé) et le côté application (le côté protégé).

côté client, côté application

Je sais, l’analogie ne fonctionne vraiment pas très bien, n’est-ce pas ? Faites un effort, c’est tout ce que j’ai pour l’instant.

La raison pour laquelle il s’agit (ou devrait s’agir) d’une exigence pour un proxy applicatif est que cela lui permet de participer aux échanges entre le client et le serveur. C’est indispensable pour proposer des fonctionnalités telles que la minification (qui améliore les performances de l’application), des fonctions de sécurité (comme le nettoyage des données) et le multiplexage TCP (optimisation), ainsi qu’un large éventail d’autres services.

C’est dans cet « espace » interne entre le côté client et le côté application que la magie opère. C’est là que toutes sortes de services — du simple équilibrage de charge au pare-feu applicatif avancé, en passant par le contrôle d’accès aux applications — entrent en jeu. Les requêtes sont effectivement interrompues côté client du proxy applicatif. S’ensuit alors un processus très proche du chaînage de services, à ceci près que tout se déroule en interne, à la vitesse du bus interne et du processeur (presque toujours supérieure à celle du réseau). Les inspections sont effectuées. Les politiques sont appliquées. Les transformations ont lieu. Les décisions sont prises. Une connexion distincte est établie entre le proxy et l’application, puis la requête poursuit son chemin.

Lorsque cette requête revient au proxy, le processus inverse se produit. Une inspection est effectuée. Les données sont nettoyées. Les politiques sont appliquées. La réponse revient ensuite côté client, d’où elle peut être retransmise au client.

Et tout cela s’effectue en moins d’une seconde, car tout se passe au sein même du proxy.

Puisque le rôle d’un proxy applicatif est de fournir un large éventail de services applicatifs — disponibilité, sécurité, mobilité, gestion des identités et des accès, et performances — il devrait véritablement s’agir d’un proxy complet. Seul un proxy complet est conçu pour intervenir dans chaque requête et chaque réponse. Les proxys simples (qui sont en réalité des proxys sans état, si l’on veut entrer dans les détails) n’interviennent que lors de l’échange initial, au moment où la connexion entre le client et l’application est établie. Leur rôle consiste à sélectionner une instance de l’application, puis à « raccorder » les deux extrémités de la connexion. Ensuite, le proxy n’intervient plus. Il voit un « flux » (une construction TCP de couche 4 dont vous avez peut-être entendu parler dans le cadre du SDN, mais c’est encore un autre sujet que nous aborderons une autre fois) et se contente de transférer les paquets dans les deux sens, mélangeant indistinctement le chaud et le froid. (Vous voyez ? Je savais bien que cette analogie finirait par fonctionner.)

Cela étant dit, un proxy applicatif moderne (et évolutif) doit être un proxy complet et présenter trois caractéristiques essentielles : la programmabilité, les performances et la prise en charge des protocoles.

La programmabilité est essentielle dans les centres de données modernes et le cloud pour prendre en charge l’automatisation, l’orchestration et la standardisation. Elle joue également un rôle clé dans le chemin des données en permettant la mise en œuvre de fonctions de sécurité et de services qui apportent une valeur unique aux activités et aux opérations, ainsi que la prise en charge de protocoles personnalisés et l’enrichissement des protocoles existants. Les performances peuvent sembler simples à assurer, mais ce n’est pas le cas. Puisqu’un proxy applicatif intervient dans chaque requête, il doit être non seulement rapide, mais extrêmement rapide. Il doit accomplir sa tâche sans délai, sans ajouter aux échanges une latence qui nuirait à l’expérience applicative. C’est loin d’être aussi simple qu’il n’y paraît, surtout compte tenu de la forte tendance à utiliser des ressources de calcul à usage général comme base de déploiement.

Enfin, les protocoles sont importants. La première chose qui nous vient à l’esprit lorsque nous parlons d’« application », c’est probablement HTTP. Rien d’étonnant à cela : HTTP est le nouveau TCP et la lingua franca d’Internet. Mais ce n’est pas le seul protocole utilisé, surtout à l’ère des communications via Internet. Il y a aussi SIP et UDP. Sans oublier SMTP (vous envoyez toujours des e-mails, n’est-ce pas ?) et LDAP. Et qu’en est-il de SSL et TLS ? Alors que l’accent est mis de façon croissante (et urgente) sur le déploiement de SSL Everywhere, partout, il est plus impératif que jamais qu’un proxy applicatif maîtrise SSL/TLS — et le maîtrise parfaitement. Sans quoi, cette exigence de performances risque de ne pas être satisfaite.

Un proxy applicatif peut fournir la plateforme dont les centres de données modernes ont besoin pour relever les défis liés à la sécurité et aux performances, automatiser et orchestrer leurs opérations afin de réduire les coûts d’exploitation, et garantir une expérience applicative optimale aux particuliers comme aux entreprises. Mais il doit s’agir d’un proxy applicatif complet, offrant des capacités de programmation, des performances élevées et la prise en charge des protocoles nécessaires pour qu’aucune application ne soit laissée de côté.

Partager
Mots-clés : 2015

À propos de l’auteur

Lori Mac Vittie
Lori Mac VittieIngénieur émérite et évangéliste en chef | F5

Lori MacVittie est ingénieure émérite et évangéliste en chef au sein du bureau du directeur technique de F5. Elle possède une expertise approfondie dans la fourniture d’applications, les stratégies d’automatisation et les infrastructures. Elle est réputée pour sa capacité à rendre la complexité intelligible, qu’elle définisse des garde-fous pour les agents d’IA, analyse des architectures multicloud fragiles ou explore les limites des systèmes évolutifs. Elle cumule plus de trente ans d’expérience dans le secteur, couvrant le développement d’applications, l’architecture informatique ainsi que l’exploitation des réseaux et des systèmes. Avant de rejoindre F5, elle a été rédactrice spécialisée dans les technologies et a reçu plusieurs distinctions. MacVittie est titulaire d’un master en informatique et est une autrice prolifique dont les publications couvrent la sécurité, le cloud et l’architecture d’entreprise. Elle est également une passionnée de jeux de société et de jeux vidéo, et assume pleinement ses avis bien tranchés sur le fromage.

Autres articles de Lori Mac Vittie

Articles de blog associés

F5 NGINXaaS pour Google Cloud : des applications résilientes et évolutives
Écosystème F5 | 08/09/2025

F5 NGINXaaS pour Google Cloud : des applications résilientes et évolutives

Découvrez comment NGINXaaS s’intègre à Google Cloud pour renforcer les performances et la sécurité, et préparer vos applications critiques à un avenir propulsé par l’IA.

L’intégration de F5 Web Application Firewall (WAF) à AWS est disponible dès aujourd’hui
Écosystème F5 | 24/04/2023

L’intégration de F5 Web Application Firewall (WAF) à AWS est disponible dès aujourd’hui

En faisant appel à un partenaire de déploiement AWS WAF tel que F5, vous pouvez renforcer la sécurité de vos applications web grâce à des règles personnalisées qui bloquent les schémas d’attaque courants, comme les injections SQL ou les attaques par scripts intersites (XSS).

Appliquer le principe de Peter Parker à l’inspection TLS
Écosystème F5 | 09/12/2019

Appliquer le principe de Peter Parker à l’inspection TLS

« Un grand pouvoir implique de grandes responsabilités. » Si l’on en trouve des échos chez Voltaire et Churchill, cette citation est surtout connue grâce aux bandes dessinées Spider-Man, où elle est attribuée à l’oncle Ben. Bien entendu, si cette phrase est si répandue dans la culture populaire, c’est notamment parce qu’elle peut s’appliquer à une multitude de situations et de sujets, y compris à l’inspection TLS.

Le NetOps a besoin de défenseurs, pas d’adversaires
Écosystème F5 | 13/12/2018

Le NetOps a besoin de défenseurs, pas d’adversaires

Il est important de reconnaître que les équipes NetOps ne sont pas toujours celles qui font obstacle au déploiement de la dernière nouveauté, application ou service. Les freins à la rapidité sont souvent dus au fait que les organisations n’adoptent pas tous les principes du DevOps lorsqu’elles cherchent à transformer leurs opérations informatiques.

Mise à jour des services applicatifs : sécurité, rapidité et visiteurs suspects
Écosystème F5 | 01/03/2018

Mise à jour des services applicatifs : sécurité, rapidité et visiteurs suspects

Il est de nouveau temps de nous pencher sur les services applicatifs que les entreprises utilisent réellement pour rendre leurs applications plus rapides et plus sûres. On constate notamment une hausse du recours aux services de protection contre les bots, ainsi que la progression lente mais régulière de HTTP/2. Bien qu’il ne s’agisse pas d’une application…

Les templates prennent le contrôle du cloud
Écosystème F5 | 02/02/2017

Les templates prennent le contrôle du cloud

Les modèles s’imposent dans le cloud. Lisez le blog de F5 pour découvrir comment l’infrastructure en tant que code et les API déclaratives automatisent la mise à disposition des applications.