Note :
- Ce tutoriel nécessite l'accès à Oracle Cloud. Pour vous inscrire à un compte gratuit, voir Démarrer avec le niveau gratuit d'Oracle Cloud Infrastructure.
- Il utilise des exemples de valeurs pour les données d'identification, la location et les compartiments d'Oracle Cloud Infrastructure. À la fin de votre laboratoire, remplacez ces valeurs par celles qui sont propres à votre environnement en nuage.
Mesurer l'incidence de la latence d'Oracle Cloud Infrastructure Web Application Firewall sur Oracle Cloud Infrastructure Load Balancer
Présentation
Dans ce tutoriel, nous étudions l'incidence sur la performance d'Oracle Cloud Infrastructure Web Application Firewall (OCI WAF) sur un équilibreur de charge OCI à l'aide de Siege, un outil de test de charge HTTP(s) haute performance.
En exécutant des tests de siège sur l'équilibreur de charge OCI avec et sans OCI WAF activé, nous mesurons les mesures clés de performance telles que la latence, le débit, le taux de transaction et l'accès simultané. L'objectif est de comprendre les frais généraux introduits par OCI WAF et de déterminer ses compromis entre sécurité et performance.
Cette analyse comparative permettra de déterminer si l'activation du service WAF pour OCI a une incidence importante sur les temps de réponse et si les avantages d'une sécurité accrue l'emportent sur le coût de la performance dans un environnement à trafic élevé.
Dans ce tutoriel, nous déploierons un équilibreur de charge OCI privé avec un pare-feu d'application Web WAF OCI régional attaché pour analyser son incidence sur la latence. L'architecture se compose de :
-
Équilibreur de charge privé : Fonctionne dans un sous-réseau privé, répartissant le trafic de manière sécurisée entre les serveurs dorsaux.
-
Service WAF régional : Inspecte et filtre le trafic HTTP entrant avant de le transmettre à l'équilibreur de charge OCI.
-
Serveurs dorsaux : Deux ou trois instances Apache Tomcat s'exécutant dans des sous-réseaux privés, servant le trafic Web sur TLS (Transport Layer Security) de bout en bout.
-
Outil de test de charge de siège : Génère le trafic HTTP pour simuler la charge réelle et mesurer l'incidence de la latence.
Pourquoi ce tutoriel est-il essentiel?
La sécurité et la performance sont deux facteurs cruciaux dans les applications en nuage modernes. Alors qu'OCI WAF contribue à la protection contre les cybermenaces, il peut introduire une latence supplémentaire qui a une incidence sur l'expérience utilisateur. Il est essentiel de comprendre l'incidence du service WAF pour OCI sur la performance d'un équilibreur de charge OCI avec TLS de bout en bout pour les architectes et les ingénieurs, afin d'optimiser la sécurité et la réactivité.
Ce tutoriel fournit une approche pratique pour mesurer la latence induite par le service WAF pour OCI. Pour plus d'informations sur le service WAF pour OCI, voir Service WAF pour OCI.
À quoi sert Oracle Cloud Infrastructure Flexible Network Load Balancer?
Un équilibreur de charge flexible dans OCI est un service entièrement géré qui répartit automatiquement le trafic HTTP, HTTPS et TCP sur plusieurs serveurs dorsaux. Il offre une évolutivité, une haute disponibilité et une gestion du trafic sans intervention manuelle. L'équilibreur de charge de réseau flexible OCI peut être facilement configuré avec la terminaison SSL/TLS, l'intégration OCI WAF et les fonctions de routage avancées pour répondre aux besoins des applications modernes. Pour plus d'informations, voir Équilibreur de charge de réseau flexible d'Oracle Cloud Infrastructure Flexible Network Load Balancer.
Architecture
Cette conception architecturale illustre une machine virtuelle client basée sur l'utilitaire de référence Siege HTTPS, qui se connecte à un équilibreur de charge privé qui attachera un pare-feu d'application Web WAF OCI local/région, avec trois serveurs dorsaux Apache Tomcat différents utilisant HTTPS également. Nous allons tester l'équilibreur de charge avec et sans OCI WAF.
Public cible
Ce tutoriel s'adresse aux architectes en nuage, aux ingénieurs DevOps et aux professionnels de la sécurité travaillant avec l'équilibreur de charge OCI et le service WAF pour OCI. Si vous avez besoin d'optimiser la sécurité sans compromettre les performances, vous pouvez utiliser ce tutoriel.
Objectifs
- Évaluez la latence et l'incidence sur la bande passante que le service WAF régional pour OCI introduit dans l'équilibreur de charge de réseau flexible OCI. Tout au long de ce tutoriel, les utilisateurs apprendront à configurer Siege en tant qu'outil d'analyse comparative HTTP(S) et à configurer OCI WAF dans l'équilibreur de charge de réseau flexible OCI.
Préalables
-
Une location OCI active. Vous devez disposer des autorisations nécessaires pour créer et gérer des ressources de réseau dans OCI.
-
Une compréhension de base du système d'exploitation Linux, OCI, Oracle Linux, y compris comment installer et configurer des logiciels dans Linux.
-
Comprendre comment utiliser la console OCI pour créer et gérer des ressources de réseau.
-
Une bonne compréhension de l'utilisation et de la configuration de l'équilibreur de charge de réseau flexible OCI et du service WAF pour OCI.
Tâche 1 : Déployer le composant de réseau (VCN, sous-réseaux, équilibreur de charge OCI et pare-feu d'application Web (WAF) OCI)
-
Déployez un réseau en nuage virtuel (VCN) avec au moins trois sous-réseaux (siège, équilibreur de charge et WebTier) dans votre location, à l'aide d'un bloc CIDR IPv4 CIDR de votre choix ou en suivant l'architecture recommandée. Pour plus d'informations, voir :
-
Déployez un équilibreur de charge de réseau flexible OCI avec WAF dans le sous-réseau de l'équilibreur de charge OCI. Pour plus d'informations, voir :
Pour ce test, nous avons chargé la politique WAF OCI avec au moins 300 règles de protection recommandées comme suit :
Tâche 2 : Déployer les machines virtuelles dans les sous-réseaux à des fins de test
Nous devons déployer l'image Oracle Linux 9 pour installer l'outil de référence HTTP appelé Siege ainsi que Apache Tomcat en tant que serveurs dorsaux plus tard.
Reportez-vous à cette documentation pour créer une machine virtuelle : Déploiement de l'instance OCI
Vous devrez déployer une machine virtuelle pour le siège dans le sous-réseau client.
Tâche 3 : Installer Siege sur Oracle Linux
-
Activer les ensembles supplémentaires pour le référentiel Enterprise Linux (EPEL) dans Oracle Linux. Pour plus d'informations, voir Comment activer le référentiel EPEL sur Oracle Linux 8/9.
-
Exécutez la commande suivante en tant que racine pour installer Siege.
yum install siege
-
Exécutez la commande suivante pour vérifier la version Siege.
siege -v
Vous devriez voir la version Siege actuelle ainsi que d'autres commandes d'aide.
Tâche 4 : Installer Apache Tomcat sur Oracle Linux
À ce stade, nous disposons d'un équilibreur de charge de réseau flexible OCI sans serveurs dorsaux configurés. Maintenant, nous allons installer la version Linux d'Apache Tomcat sur Oracle Linux 8 ou 9.
-
Déployez deux ou trois machines virtuelles linux dans le sous-réseau privé Web. Pour plus d'informations, voir Déploiement de l'instance OCI.
-
Installez le serveur Web Apache dans ces machines virtuelles. Pour plus d'informations, voir Installer le serveur Web Apache et Installation de Tomcat sur Oracle Linux dans Oracle Cloud.
-
Une fois que les serveurs Web Apache sont en cours d'exécution, assurez-vous que le sous-réseau de l'équilibreur de charge OCI peut atteindre le sous-réseau privé Web, ce qui autorise le trafic HTTPS vers le sous-réseau privé Web (port
443
) à partir du sous-réseau de l'équilibreur de charge OCI. Maintenant, pour ajouter les serveurs dorsaux, consultez l'étape 8 de la tâche 3 : Configurer l'équilibreur de charge OCI. -
Allez à la console OCI, naviguez jusqu'à Réseau, Équilibreurs de charge, Équilibreur de charge, Détails de l'équilibreur de charge, Jeux dorsaux, Détails du jeu dorsal et cliquez sur Serveurs dorsaux. Vous devriez voir deux serveurs dorsaux.
Maintenant, testez la performance de l'équilibreur de charge OCI avec et sans le service WAF pour OCI.
Tâche 5 : Analyse de référence du siège – Performance de l'équilibreur de charge OCI avec et sans OCI WAF
Maintenant que l'équilibreur de charge OCI et le service WAF pour OCI sont configurés avec les serveurs dorsaux, nous devons effectuer quelques étapes initiales pour permettre à Siege de travailler sur des connexions HTTPS.
Nous avons utilisé un certificat d'autorité de certification de laboratoire pour signer les certificats de serveur installés sur l'équilibreur de charge OCI et les serveurs dorsaux. Toutefois, nous n'avons besoin de nous concentrer que sur le certificat du serveur de l'équilibreur de charge OCI, car celui-ci mettra fin à la connexion TLS et établira une deuxième connexion TLS aux serveurs dorsaux. Cette deuxième connexion est transparente pour Siege (le client).
Par exemple, votre fichier de certificat AC est appelé my-ca.crt
:
-
Chargez
my-ca.cert
sur votre machine Linux et exécutez la commandesudo cp my-ca.crt /etc/pki/ca-trust/source/anchors/
. L'autorité de certification sera copiée dans le magasin d'autorité de certification approuvé. -
Exécutez la commande suivante pour mettre à jour le magasin d'autorités de certification approuvé.
sudo update-ca-trust extract
ou si vous utilisez Oracle Linux 9,
sudo update-ca-trust
-
Exécutez la commande suivante pour vérifier l'installation.
openssl verify /etc/pki/ca-trust/source/anchors/my-ca.crt
et répertorier tous les certificats approuvés.
trust list | grep "my-ca"
-
Désormais, lorsque Siege se connecte à l'équilibreur de charge OCI au moyen du protocole HTTPS, il peut vérifier le certificat reçu. Nous utilisons
www.fwtest.com
comme nom commun (CN) et nom de remplacement de sujet (SAN).Comme nous n'utilisons pas de DNS privé, il suffit d'ajouter l'entrée suivante à votre fichier Linux
/etc/hosts
:Adresse IP privée LB www.fwtest.com
Par exemple :
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4\ ::1 localhost localhost.localdomain localhost6 localhost6.localdomain6\ 192.168.4.99 linux9-siege-intravcntest-v2.siegesubnet.vcn1inter.oraclevcn.com linux9-siege-intravcntest-v2\ 192.168.6.237 www.fwtest.com <--- Add this entry
-
Pour obtenir l'adresse IP privée de votre équilibreur de charge, naviguez jusqu'à Réseau, Équilibreurs de charge, Équilibreur de charge et cliquez sur Détails de l'équilibreur de charge.
-
Si vous voulez tester la connexion TLS, y compris le certificat du serveur de l'équilibreur de charge OCI que vous avez installé précédemment, exécutez la commande suivante :
openssl s_client -connect www.fwtest.com:443 -tls1_2
Vous obtiendrez quelque chose comme :
-
Faites un premier test avec Siege, 250 clients HTTPS simultanés utilisant des tailles d'en-tête HTTP aléatoires.
siege -c 250 -t1m --header="User-Agent: $(head -c 500 </dev/urandom | base64)" https://www.fwtest.com/request.php
Lifting the server siege...\ Transactions: 237238 hits\ Availability: 100.00 %\ Elapsed time: 60.79 secs\ Data transferred: 192.67 MB\ **Response time: 27.81 ms**\ **Transaction rate: 3902.58 trans/sec**\ **Throughput: 3.17 MB/sec**\ Concurrency: 108.51\ **Successful transactions: 237421**\ Failed transactions: 0\ Longest transaction: 440.00 ms\ Shortest transaction: 0.00 ms\
Maintenant, exécutez la même commande sans OCI WAF.
Lifting the server siege... Transactions: 238843 hits\ Availability: 100.00 %\ Elapsed time: 60.54 secs\ Data transferred: 193.98 MB\ **Response time: 17.97 ms**\ **Transaction rate: 3945.21 trans/sec**\ **Throughput: 3.20 MB/sec**\ Concurrency: 70.88\ **Successful transactions: 239018**\ Failed transactions: 0\ Longest transaction: 540.00 ms\ Shortest transaction: 0.00 ms\
Incidence sur la performance d'OCI WAF (référence de siège)
Comparaison des mesures clés :
Mesure | Avec OCI WAF | Sans OCI WAF | Incidence |
---|---|---|---|
Transactions | 237,238 | 238,843 | -1,605 (-0.67%) |
Disponibilité (%) | 100 | 100 | Aucune modification |
Temps écoulé (s) | 60.79 | 60.54 | +0.25s |
Données transférées (Mo) | 192.67 | 193.98 | -1.31 MO (-0.68%) |
Temps de réponse (ms) | 27.81 | 17.97 | +9.84 ms (+54.8%) |
Taux de transaction (trans/s) | 3,902.58 | 3,945.21 | -42,63 trans/sec (-1,08 %) |
Débit (Mo/s) | 3.17 | 3.2 | -0.03 Mo par seconde (-0.94%) |
Concurrence | 108.51 | 70.88 | +37,63 (53,1 % de plus avec OCI WAF) |
Observations et points à retenir :
-
Temps de réponse accru :
- Le service WAF pour OCI ajoute 9.84ms de latence par demande (augmentation de 54,8 %).
- Il s'agit de l'impact le plus important de l'activation du service de pare-feu d'application Web pour OCI (WAF).
-
Débit légèrement inférieur :
- Avec le service WAF pour OCI : 3,17 Mo/s et sans le service WAF pour OCI : 3,20 Mo/s (diminution de 0,94 %).
- La perte de bande passante due au service de pare-feu d'application Web (WAF) pour OCI est mineure, d'environ 1,31 Mo sur 60 secondes.
-
Accès simultané supérieur avec OCI WAF :
- Les sauts simultanés de 70.88 à 108.51, ce qui signifie que d'autres demandes sont en attente en raison du traitement du service WAF pour OCI.
- Cela correspond à l'augmentation du temps de réponse.
-
Incidence minimale sur le taux de transaction : La baisse des transactions par seconde est seulement de 1,08 %, ce qui est relativement faible.
Conclusion
-
Latence d'ajout du service WAF pour OCI de +9.84ms par demande.
-
Les taux de débit et de transaction présentent des diminutions mineures de l'incidence de ~1 %.
-
La concurrence est beaucoup plus élevée avec le service WAF pour OCI, ce qui signifie que davantage de demandes sont en attente en raison des frais généraux de traitement.
-
Si la sécurité est une priorité, le coût du service WAF pour OCI est justifié. Bien que la désactivation d'OCI WAF puisse fournir une légère amélioration de la latence, l'impact d'OCI est minime et ne doit être pris en compte que dans de rares cas où la latence ultra-faible est absolument critique.
Note: The test results obtained using Siege depend highly on various factors, including network conditions, hardware/software configurations, and software settings specific to your environment. As such, these results may differ significantly from those in other environments. Do not use these results to make any definitive conclusions about the expected performance of your network or equipment. They should be considered as indicative rather than absolute measures of performance.
Liens connexes
Remerciements
- Auteurs - Luis Catalán Hernández (spécialiste du réseau en nuage OCI et multinuage), Par Kansala (spécialiste du réseau en nuage OCI et multinuage), Sachin Sharma (spécialiste du réseau en nuage OCI),
Autres ressources d'apprentissage
Explorez d'autres laboratoires sur le site docs.oracle.com/learn ou accédez à plus de contenu d'apprentissage gratuit sur le canal Oracle Learning YouTube. De plus, visitez education.oracle.com/learning-explorer pour devenir un explorateur Oracle Learning.
Pour obtenir la documentation sur le produit, visitez Oracle Help Center.
Measure Oracle Cloud Infrastructure Web Application Firewall Latency Impact on Oracle Cloud Infrastructure Load Balancer
G31150-02
Copyright ©2025, Oracle and/or its affiliates.