Distribution des flux et classement des paquets
Cette rubrique décrit la répartition des charges et l’ordre des paquets sur les équipements SRX5000 Line.
Comprendre la répartition de la charge dans les équipements de la ligne SRX5000
L’algorithme de répartition de la charge, pris en charge sur les appareils SRX5800, SRX5600 et SRX5400, est ajusté en fonction de la capacité de session et de la puissance de traitement. (La prise en charge réelle de la plate-forme dépend de la version de Junos OS dans votre installation.)
La distribution de session basée sur le hachage utilise une table de hachage. La table de pondération de session SPU est utilisée pour attribuer un ID SPU à chaque index de hachage de la table de hachage de distribution de session. De cette façon, le nombre de sessions créées sur chaque SPU à l'aide de la distribution basée sur le hachage est proportionnel au poids du SPU dans le tableau de pondération des sessions SPU. Chaque NPU conserve également une table de pondération de session SPU et une table de hachage de distribution de session identiques qu’elle utilise pour sélectionner une SPU afin de transférer les paquets qui ne correspondent pas à une session NPU.
En cas de défaillance d’une SPU, le moteur de routage réinitialise toutes les cartes du plan de données, y compris les IOC et les NPC, afin de maintenir la cohérence de la table de hachage pour la distribution des sessions.
Dans la distribution de session basée sur le hachage, les pondérations sont basées sur la capacité de session. Nous recommandons le mode de distribution de session de hachage lorsqu’une capacité de session élevée est requise.
La répartition de la charge sur les appareils de la gamme SRX5000 est toujours basée sur le hachage.
L’insertion et la suppression de SPC entraînent un nouveau calcul de la table de pondération de session SPU au moment d’initialisation du point central, car le châssis doit redémarrer après l’insertion.
Les améliorations apportées à l’architecture du point central empêchent les paquets de données de passer par le point central en déchargeant la gestion du trafic sur les SPU. La capacité de session système est étendue, car la limite de session sur le point central est supprimée.
- Calcul de l’ID SPU
- Transfert basé sur le hachage sur les SRX5K-MPC, SRX5K-MPC3-40G10G (IOC3) et SRX5K-MPC3-100G10G (IOC3)
Calcul de l’ID SPU
L’ID SPU d’un équipement équipé d’une carte de traitement des services (SPC) SRX3K-SPC-1-10-40, SRX5K-SPC-2-10-40 ou SRX5K-SPC3 est calculé comme suit :
SPU ID = (FPC ID X 4) + PIC ID
Les modèles SRX5K-SPC-2-10-40 et SRX5K-SPC3 contiennent respectivement deux PIC par carte, quatre PIC par carte (FPC) et deux PIC par carte. Par exemple, un équipement contient 2 cartes dans l’emplacement 1 (FPC ID 0) et l’emplacement 2 (FPC ID 1), les ID SPU attendus sont les suivants :
Pour SPC1 : (0, 1) et (4, 5), totalisez 4 SPU dans 2 cartes.
Pour SPC2 : (0, 1, 2, 3) et (4, 5, 6, 7), totalisez 8 SPU dans 2 cartes.
Pour SPC3 : (0, 1) et (4, 5), totalisez 4 SPU dans 2 cartes.
Pour FPC1 (la deuxième carte) et PIC1 (le deuxième PIC de la carte), l’ID SPU est calculé comme suit :
SPU ID = (FPC ID X 4) + PIC ID
= (1 X 4) + 1
= 4 + 1
= 5
Utilisez cette convention lorsque vous vous référez à l’ID SPU pour la CLI et le SNMP.
Transfert basé sur le hachage sur les SRX5K-MPC, SRX5K-MPC3-40G10G (IOC3) et SRX5K-MPC3-100G10G (IOC3)
Sur ces pare-feu SRX Series, un paquet passe par une série d’événements impliquant différents composants au fur et à mesure qu’il progresse du traitement d’entrée à la sortie. La fonctionnalité de transfert de paquets datapath vous permet d’acheminer rapidement le trafic d’E/S sur la gamme d’équipements SRX 5000.
Les cartes d’interface SRX5K-MPC, SRX5K-MPC3-40G10G (IOC3) et SRX5K-MPC3-100G10G (IOC3) sont prises en charge sur les périphériques SRX5400, SRX5600 et SRX5800. Le concentrateur de ports modulaires (MPC) fournit des services d’équilibrage de charge pour les unités de traitement de services (SPU) à l’aide de la méthode de transfert basée sur le hachage.
Dans le transfert basé sur le hachage, le paquet peut être transféré par la MPC à une SPU (DCP) sélectionnée au lieu du point central. Cette approche améliore l’évolutivité des sessions et évite la surcharge du point central.
Le calcul de la valeur de hachage implique les étapes suivantes :
Pour les paquets IPv4, le module de transfert basé sur le hachage génère la valeur de hachage en fonction des informations de couche 3 et de couche 4, en fonction des différents types de protocoles de couche 4.
Pour les protocoles Stream Control Transmission Protocol (SCTP), TCP, UDP, Authentication Header (AH), Edge Service Provider (ESP) et Internet Control Message Protocol (ICMP), le module de hachage utilise des informations de couche 4 pour générer la valeur de hachage. Pour tous les autres protocoles, seules les informations de couche 3 sont utilisées dans la génération de hachage.
Pour les paquets de fragments IPv4, la valeur de hachage est calculée à l’aide des seules informations de couche 3. Cela s’applique également au premier fragment du paquet.
Pour les paquets non IP, le module de transfert basé sur le hachage utilise les informations de couche 2 pour calculer la valeur de hachage.
Une fois qu'une valeur de hachage est calculée en fonction des informations de couche 2, de couche 3 ou de couche 4 du paquet, un ID SPU est affecté à chaque index de hachage dans la table de hachage de distribution de session.
SRX5K-MPC (IOC2), SRX5K-MPC3-40G10G (IOC3) et SRX5K-MPC3-100G10G (IOC3) ne peuvent être utilisés que sur les équipements SRX5400, SRX5600 et SRX5800 configurés pour la distribution de sessions basée sur le hachage.
Lorsque le mode de distribution de session basé sur le hachage est activé, le système change son comportement en mode basé sur la capacité de session élevée lorsque SRX5K-MPC, SRX5K-MPC3-40G10G (IOC3) et SRX5K-MPC3-100G10G (IOC3) sont installés sur l’appareil.
Sur les équipements de la gamme SRX5000 sur lesquels un SRX5K-MPC, SRX5K-MPC3-40G10G (IOC3) ou SRX5K-MPC3-100G10G (IOC3) est installé, lors d’un redémarrage du système ou d’une SPU, lorsque le mode de distribution de session basé sur le hachage est activé, le trafic ne passe que lorsque toutes les SPU sont actives après le redémarrage.
Les MPC de l’IOC3 fournissent des services d’équilibrage de charge pour les SPU en effectuant un transfert de paquets de chemin de données basé sur le hachage pour s’interconnecter avec tous les IOC et SPC existants.
L’IOC3 traite les paquets entrants et sortants. L’IOC3 analyse le paquet entrant et l’envoie à la SPU pour un traitement de sécurité ultérieur, y compris la recherche de session de flux, la vérification de zone et de stratégie, VPN, ALG, etc.
L’IOC3 gère les files d’attente des paquets, des données, de la mémoire et de la structure pour les fonctions de recherche et d’encapsulation des paquets.
L’IOC3 met en place une table de flux de sécurité (IPv4 et IPv6) comprenant une clé, une table de résultats et une mémoire de paquets.
Les fonctions suivantes sont fournies avec la table de flux :
Recherche de flux
Insertion et suppression de flux
Flux de sécurité vieillissant
Statistiques de flux de sécurité
Comprendre la fonction de classement des paquets sur les équipements de ligne SRX5000
La fonction de commande de paquets, qui est prise en charge sur les périphériques SRX5400, SRX5600 et SRX5800 et sur le pare-feu virtuel vSRX, améliore les performances du périphérique en activant la fonction de commande de paquets intégrée du moteur de commande de paquets sur le processeur XLP du point central de l’application.
Deux types de modes d’ordre des paquets sont pris en charge : matériel et logiciel.
Si la fonction de classement des paquets est définie sur matériel, le thread d’équilibrage de charge (LBT) et le thread de classement des paquets (POT) sont déchargés vers le moteur de commande de paquets et les ressources sont libérées pour effectuer le traitement des paquets. Si la fonction de classement des paquets est définie sur logiciel, le thread d’équilibrage de charge (LBT) et le thread de classement des paquets (POT) sont en cours d’exécution sur le SPU. Par défaut, le mode de commande de paquets à l’aide du moteur de commande de paquets (matériel) est activé sur l’appareil. Vous pouvez le désactiver avec un changement de configuration qui nécessite un redémarrage.
Le thread de flux reçoit les paquets, les traite et les envoie ou les abandonne. Pour les paquets qui ne nécessitent aucun ordre, le thread de flux informe la sortie du moteur d’accélération du réseau (NAE) d’envoyer ou de supprimer les paquets. Pour les paquets qui nécessitent un ordre, le thread de flux informe le moteur de commande de paquets de retirer les paquets de la liste de commande et d’envoyer ou de supprimer les paquets dans l’ordre.
Modification du mode de commande des paquets sur les équipements de ligne SRX5000
La fonctionnalité de commande de paquets à l’aide du moteur de commande de paquets est prise en charge sur les équipements SRX5400, SRX5800 et SRX5600 avec des SPC de nouvelle génération. (La prise en charge de la plate-forme dépend de la version de Junos OS dans votre installation.) Par défaut, le mode de tri des paquets à l’aide du moteur de tri des paquets est activé. Pour désactiver la fonctionnalité de tri des paquets à l’aide du moteur de tri des paquets, vous devez mettre à jour le mode de tri des paquets sur l’appareil.
Les modes de classement des paquets suivants sont pris en charge :
logiciel : désactive le mode de classement des paquets à l’aide du moteur de tri des paquets.
hardware : active le mode de commande des paquets à l’aide du moteur de commande de paquets. Il s’agit de l’option par défaut.
Pour désactiver le mode de classement des paquets à l’aide du moteur de tri des paquets :
Entrez la commande suivante à l’invite de configuration de la CLI pour spécifier le mode de classement des paquets.
[edit] user@host# set security forwarding-process application-services packet-ordering-mode software
Utilisez la
show security forwarding-processcommande pour revoir votre configuration.[edit] user@host# show security forwarding-process application-services{ packet-ordering-mode software; }Vérifiez vos modifications de la configuration avant de valider.
[edit] user@host# commit check
warning: System packet ordering mode changed, reboot is required to take effect. If you have deployed a cluster, be sure to reboot all nodes. configuration check succeeds
Validez la configuration.
[edit] user@host# commit
warning: System packet ordering mode changed, reboot is required to take effect. If you have deployed a cluster, be sure to reboot all nodes. commit complete
Redémarrez l’appareil au moment approprié.
Utilisez la
show security flow statuscommande pour vérifier le mode de classement des paquets.user@host> show security flow statusFlow forwarding mode: Inet forwarding mode: flow based Inet6 forwarding mode: drop MPLS forwarding mode: drop ISO forwarding mode: drop Flow trace status Flow tracing status: off Flow session distribution Distribution mode: RR-based Flow packet orderingOrdering mode: Software (reboot needed to change to Software)
Comprendre la distribution des sessions sur les équipements de ligne SRX5000 en mode adaptatif
À partir de Junos OS version 15.1X49-D30 et de Junos OS version 17.3R1, la distribution des sessions en mode adaptatif a été remplacée par des améliorations de l’architecture de point central.
La distribution de session en mode adaptatif est mise en œuvre sur les équipements de la gamme SRX5000 fonctionnant en mode mixte avant Junos OS version 15.1X49-D30 et Junos OS version 17.1R1. La distribution de session en mode adaptatif optimise l’utilisation des ressources système en tenant compte de la capacité d’une unité de traitement des services (SPU) et de ses ressources disponibles. Elle est activée uniquement sur les équipements de la gamme SRX5000 fonctionnant en mode mixte XLR/XLP, c’est-à-dire dans les déploiements de châssis dans lesquels différents types de SPU sont utilisés dans différentes combinaisons. Si un équipement SRX5800, SRX5600 ou SRX5400 contient une combinaison de cartes SPC (Services Processing Cards) de nouvelle génération et de SPC existants, la distribution de session en mode adaptatif est utilisée par défaut. Pour les équipements de la gamme SRX5000 qui ne fonctionnent pas en mode mixte, l’équilibrage de charge basé sur le hachage est la valeur par défaut.
Une carte de traitement de services (SPC) contient une ou plusieurs SPU, chacune d’entre elles traitant les paquets d’un flux en fonction des fonctionnalités de sécurité et des autres services configurés pour les sessions qui lui sont distribuées par le point central (CP). La charge CPU d’une SPU change de temps en temps. Pour exploiter pleinement l’évolution de la capacité disponible et adapter la distribution des sessions en conséquence, le système attribue dynamiquement une pondération à toutes les SPU en mode adaptatif. C’est le poids des SPU qui détermine la distribution des sessions.
Chaque SPU envoie périodiquement ses informations d’utilisation du processeur au point central (CP). Le point central vérifie ces valeurs, calcule le poids toutes les 1 seconde et répartit les sessions de manière à maximiser les performances globales du système. En d’autres termes, en mode adaptatif, la distribution des sessions est basée sur un système d’affectation pondérée dynamique qui est calculé en temps réel, permettant d’utiliser pleinement la capacité des CPU de tous les SPU, quel que soit leur type.
C’est le calcul dynamique des pondérations qui distingue la distribution des sessions en mode adaptatif de la distribution des sessions en mode Round-Robin pondéré (WRR). Alors que WRR différencie les SPU et leur capacité CPU en calculant et en attribuant des poids aux différents types de SPU, le calcul et l’affectation sont statiques, c’est-à-dire qu’ils ne sont effectués qu’une seule fois, à l’initialisation. Le mode adaptatif améliore le processus de distribution de sessions à ratio fixe de WRR. Le WRR entraîne une sous-utilisation des ressources système, car les limites de traitement des sessions sont définies uniquement en fonction du type de SPU et de sa capacité CPU, sans tenir compte de sa puissance de traitement disponible.
Pour la distribution de session en mode adaptatif, la formule suivante est utilisée pour calculer la pondération attribuée à une SPU :
wi = somme(W1-n)*Ci*Si/somme(C1-n*S1-n)
Où :
Wi— poids attribué à l’UPS.Sum(W1-n)— Poids total du système. Ces valeurs sont constantes.n: nombre total de SPU.Ci: puissance de calcul CPU disponible du SPU.Si: capacité de session disponible de l’USP.
En mode adaptatif, lorsque l’utilisation du processeur sur une SPU est élevée, moins de sessions sont distribuées à cette SPU. Les exemples suivants expliquent le calcul.
Prenons l’exemple d’un appareil équipé de deux SPU. La capacité de chaque unité de session est de 1 million.
Pendant un certain temps :
Lorsque SPU1 a 500 000 sessions, son utilisation CPU est de 10 % :
Capacité CPU disponible de SPU1 (C1) = 1-10 % = 90 (pourcentage).
Capacité de session disponible de SPU1 (S1) = 1-500 000/1 M = 50 (pourcentage).
Lorsque SPU2 a 400 000 sessions, son utilisation CPU est de 20 % :
Capacité disponible de SPU2 (C2) = 1-20 % = 80 (pourcentage).
Capacité de session disponible de SPU2 (S2) = 1-400 000/1 M = 60 (pourcentage).
Si le poids de l’ensemble du système est de 100, les valeurs de poids distinctes pour chaque SPU sont :
Poids de SPU1 (W1) = 100*90*50/(50*90+80*60) = 48
Poids de SPU2 (W2) = 100*80*60/(50*90+80*60) = 52
Pour les sessions entrantes, 48 % des sessions sont allouées à SPU1 tandis que 52 % des paquets sont alloués à SPU2.
Les nombres pondérés peuvent prendre effet sur le système dans un court laps de temps avant que le point central ne vérifie les informations d’utilisation du runtime et ajuste les pondérations à une nouvelle valeur.
Tableau de l’historique des modifications
La prise en charge des fonctionnalités est déterminée par la plateforme et la version que vous utilisez. Utilisez l’explorateur de fonctionnalités pour déterminer si une fonctionnalité est prise en charge sur votre plateforme.