Qu’est-ce que l’équilibrage de charge de couche 7 ?
L’équilibrage de charge peut être effectué à différentes couches du modèle de référence OSI (Open Systems Interconnection) pour les réseaux. Nous présentons ici un aperçu de deux options d’équilibrage de charge situées à deux couches différentes du modèle.
Différences entre l’équilibrage de charge de couche 4 et de couche 7
L’équilibrage de charge de couche 4 fonctionne au niveau de la couche intermédiaire de transport qui assure la transmission des messages sans tenir compte de leur contenu. Le protocole TCP (Transmission Control Protocol) est le protocole de couche 4 utilisé pour le trafic HTTP (Hypertext Transfer Protocol) sur Internet. Les équilibreurs de charge de couche 4 se contentent de transférer les paquets réseau vers et depuis le serveur en amont sans en examiner le contenu. Ils peuvent prendre des décisions de routage limitées en examinant les premiers paquets du flux TCP.
L’équilibrage de charge de couche 7 s’effectue au niveau de la couche de haut niveau dite « application », qui traite le contenu réel de chaque message. HTTP est le principal protocole de couche 7 utilisé pour le trafic des sites web sur Internet. Les équilibreurs de charge de couche 7 acheminent le trafic réseau de manière bien plus sophistiquée que ceux de couche 4, notamment pour le trafic basé sur TCP, tel que HTTP. Un équilibreur de charge de couche 7 met fin à la connexion réseau et lit le message qu’elle contient. Il peut prendre une décision d’équilibrage de charge en fonction du contenu du message (l’URL ou le cookie, par exemple). Il établit ensuite une nouvelle connexion TCP avec le serveur en amont sélectionné (ou réutilise une connexion existante au moyen de connexions HTTP persistantes), puis transmet la requête au serveur.
Avantages de l’équilibrage de charge de couche 7
L’équilibrage de charge de couche 7 sollicite davantage le processeur que l’équilibrage de charge de couche 4 basé sur les paquets, mais entraîne rarement une dégradation des performances sur un serveur moderne. L’équilibrage de charge de couche 7 permet au répartiteur de charge de prendre des décisions plus pertinentes en matière de répartition de charge, ainsi que d’appliquer des optimisations et des modifications au contenu (telles que la compression et le chiffrement). Il utilise la mise en mémoire tampon pour décharger les serveurs en amont des connexions lentes, ce qui améliore les performances.
Un dispositif qui effectue un équilibrage de charge de couche 7 est souvent appelé « serveur proxy inverse ».
Exemple d’équilibrage de charge de couche 7
Prenons un exemple simple. Un utilisateur consulte un site web à fort trafic. Au cours de sa session, il peut demander du contenu statique, comme des images ou des vidéos, du contenu dynamique, comme un fil d’actualité, voire des informations transactionnelles, comme le statut d’une commande. L’équilibrage de charge de couche 7 permet à l’équilibreur de charge d’acheminer une requête en fonction des informations qu’elle contient, notamment le type de contenu demandé. Ainsi, une requête portant sur une image ou une vidéo peut être acheminée vers les serveurs qui la stockent et qui sont hautement optimisés pour diffuser du contenu multimédia. Les requêtes portant sur des informations transactionnelles, comme un prix remisé, peuvent être acheminées vers le serveur d’applications chargé de gérer la tarification. Grâce à l’équilibrage de charge de couche 7, les architectes réseau et applicatifs peuvent créer une infrastructure de serveurs hautement ajustée et optimisée, ou un réseau de diffusion d’applications à la fois fiable et capable d’évoluer efficacement pour répondre à la demande.
Comment NGINX peut vous aider
NGINX Plus et NGINX sont des solutions d’équilibrage de charge de premier ordre utilisées par des sites web à fort trafic tels que Dropbox, Netflix et Zynga. Plus de 350 millions de sites web dans le monde font confiance à NGINX Plus et à NGINX Open Source pour diffuser leur contenu rapidement, de manière fiable et sécurisée.
En tant qu’équilibreur de charge logiciel, NGINX Plus est bien moins coûteux que les solutions matérielles offrant des fonctionnalités similaires. Les fonctionnalités complètes d’équilibrage de charge de NGINX Plus vous permettent de créer un réseau de distribution d’applications hautement optimisé.
Lorsque vous placez NGINX Plus comme équilibreur de charge devant votre batterie de serveurs, vous améliorez l’efficacité, les performances, la fiabilité et l’évolutivité de l’ensemble de votre site web. NGINX Plus vous aide à maximiser à la fois la satisfaction de vos clients et le retour sur vos investissements informatiques.

