Surveillance des ressources pour la gestion des abonnés et les services
Surveillance des ressources pour la gestion des abonnés et la présentation des services
Junos OS prend en charge une fonctionnalité de surveillance des ressources à l’aide de requêtes MIB CLI et SNMP. Cet utilitaire vous permet de provisionner une marge de manœuvre suffisante (limites d’espace mémoire pour l’application ou le routeur virtuel) afin de garantir la stabilité du système, en particulier l’intégrité et l’efficacité opérationnelle des cartes de ligne basées sur I-chip et des FPC basés sur Trio sur les routeurs MX Series.
Lorsque l’utilisation de la mémoire, qu’il s’agisse de la mémoire ukernel ou de la mémoire ASIC, atteint un certain seuil, les opérations système compromettent l’intégrité et la stabilité de la gestion du trafic de la carte de ligne. Un tel compromis sur les performances du système peut s’avérer préjudiciable pour la prise en charge du trafic et des protocoles en direct.
Outre la possibilité de configurer un seuil pour déclencher des journaux d’erreurs lorsqu’une valeur seuil spécifique de ressources est dépassée, vous pouvez également surveiller les valeurs seuils et l’utilisation des ressources à l’aide de requêtes MIB SNMP.
Les sections suivantes décrivent les types de surveillance des ressources disponibles avec Junos OS :
- Utilisation de filigranes pour la surveillance des ressources de carte de ligne
- Limitation de la charge abonné en fonction de la capacité des ressources CoS
- Examen de l’utilisation des régions de ressources mémoire à l’aide des commandes show
- Limitation de charge pour réduire les délais de traitement
- Limitation des abonnés à l’aide de Resource Monitor
- Historique des modifications relatives à la surveillance des ressources pour la gestion et les services des abonnés
- Surveillance des ressources spécifiques à la plate-forme pour la gestion des abonnés et le comportement des services
Utilisation de filigranes pour la surveillance des ressources de carte de ligne
Vous pouvez configurer des valeurs de filigrane ou de point de contrôle pour les ressources de la carte de ligne, telles que la mémoire ukern (heap), la mémoire de saut suivant (NH) et la mémoire de pare-feu ou de filtre, afin qu’elles soient uniformes pour les cartes de ligne basées sur Trio et sur I-chip. Le filigrane de mémoire NH ne s’applique qu’à la mémoire d’encapsulation (mémoire RAM statique WAN de sortie). La mémoire d’encapsulation est spécifique aux puces I et ne s’applique pas aux puces basées sur Trio. Lorsque le filigrane configuré est dépassé, des journaux d’erreurs sont déclenchés. Si la ressource a été utilisée au-delà d’un certain seuil, des messages de journal système d’avertissement sont générés pour signaler le dépassement de la valeur de seuil. En fonction de vos besoins réseau, vous pouvez ensuite déterminer si vous souhaitez résilier les abonnés et les services existants afin d’éviter que le système ne soit surchargé et n’entraîne une panne.
Cette fonctionnalité recueille les données de chacune des cartes de ligne et transfère ces détails statistiques au processus du moteur de routage à l’aide d’un port interne bien connu. Ces informations sont analysées par le démon sur le moteur de routine et, à l’aide de l’espace mémoire partagé intégré à la base de données de session, des messages d’avertissement sont générés en cas de dépassement de seuil.
Vous pouvez configurer les paramètres suivants au niveau de la [edit system services]
hiérarchie pour spécifier la valeur de seuil élevé commune à tous les espaces ou régions mémoire et les valeurs de filigrane pour les différents blocs de mémoire sur les DPC et MPC :
-
Valeur seuil élevée, au-delà de laquelle les avertissements ou les journaux d’erreurs sont générés, pour toutes les régions de la mémoire, telles que le tas ou ukernel, le saut suivant et l’encapsulation, et la mémoire du filtre de pare-feu, à l’aide de l’instruction
resource-monitor high-threshold value
. -
Pourcentage d’espace mémoire disponible utilisé pour les sauts suivants à surveiller avec une valeur de filigrane à l’aide de l’instruction
resource-monitor free-nh-memory-watermark percentage
. -
Pourcentage d’espace mémoire disponible utilisé pour ukernel ou la mémoire de tas à surveiller avec une valeur de filigrane à l’aide de l’instruction
resource-monitor free-heap-memory-watermark percentage
. -
Pourcentage d’espace mémoire disponible utilisé pour la mémoire du pare-feu et du filtre à surveiller avec une valeur de filigrane à l’aide de l’instruction
resource-monitor free-fw-memory-watermark percentage
. Cette fonctionnalité est activée par défaut et vous ne pouvez pas la désactiver manuellement. La valeur par défaut et la valeur configurée de la valeur de filigrane pour le pourcentage de mémoire de saut suivant disponible s’appliquent également à la mémoire d’encapsulation.
Les valeurs de filigrane par défaut pour le pourcentage de mémoire ukernel ou de tas libre, de mémoire de saut suivant et de mémoire de filtre de pare-feu sont les suivantes :
-
filigrane de mémoire de tas gratuit : 20
-
filigrane de mémoire nh gratuit : 20
-
filigrane de mémoire fw gratuit : 20
Limitation de la charge abonné en fonction de la capacité des ressources CoS
Les critères de classe de service (CoS) sont intégrés dans la décision de limitation de l’accès des abonnés. Les informations sur la disponibilité des ressources CoS, à savoir la capacité de file d’attente, sont collectées à partir des cartes de ligne. Lors de la connexion de l’abonné, en supposant que l’abonné a besoin de ressources CoS, les fiches de ligne indiquent l’utilisation de la file d’attente CoS sous la forme d’un pourcentage de ressources liées à une hiérarchie de planification et qui ne sont pas libres d’être liées à une nouvelle hiérarchie de planification. L’instruction high-cos-queue-threshold
au niveau de la [edit system services]
hiérarchie peut être comprise entre 0 % et 90 %, séparément pour chaque emplacement FPC. Lorsque l'utilisation de la file d'attente CoS sur un FPC donné atteint le niveau de seuil configuré par ce FPC, les connexions d'abonnés supplémentaires sur ce FPC ne sont pas autorisées. Ce mécanisme de surveillance des ressources fournit des marges de sécurité réglables afin d'éviter d'épuiser de manière proactive les ressources de file d'attente CoS disponibles de chaque FPC. Reportez-vous à la section high-cos-queue-threshold
. Cette fonctionnalité n’est disponible que lorsque vous activez la gestion des abonnés. Pour plus d’informations sur l’activation de la gestion des abonnés, reportez-vous à la section Configuration de Junos OS Enhanced Subscriber Management.
Examen de l’utilisation des régions de ressources mémoire à l’aide des commandes show
Vous pouvez utiliser la show system resource-monitor fpc
commande pour surveiller l’utilisation des ressources mémoire sur les moteurs de transfert de paquets d’un FPC. La mémoire de filtre indique la mémoire du compteur de filtres utilisée pour les compteurs de filtres du pare-feu. L’astérisque (*) affiché en regard de chacune des régions de mémoire indique celles pour lesquelles le seuil configuré est actuellement dépassé. Les commandes de surveillance des ressources affichent les valeurs configurées de filigrane pour les mémoires des différentes applications de carte de ligne à surveiller. Les mesures statistiques affichées sont basées sur le calcul effectué de l’utilisation actuelle de la mémoire des cartes de ligne individuelles. La mémoire ukern est générique à travers les différents types de cartes de ligne et signifie les tampons de mémoire du tas. Étant donné qu’une carte de ligne ou un FPC dans un emplacement donné peut contenir plusieurs complexes du moteur de transfert de paquets, la mémoire utilisée sur les circuits intégrés spécifiques à l’application (ASIC) est spécifique à un complexe PFE particulier. En raison des différents modèles d’architecture pour les différentes variantes de cartes de ligne prises en charge, le pourcentage d’utilisation de la mémoire spécifique à l’ASIC (mémoire next-hop et mémoire de pare-feu ou de filtre) peut être interprété différemment.
Limitation de charge pour réduire les délais de traitement
Le moteur de routage peut utiliser la surveillance des ressources pour évaluer et réduire la charge de traitement sur le moteur de transfert de paquets d’une carte de ligne. Il est possible que le moteur de routage envoie du travail à une vitesse supérieure à celle que le moteur de transfert de paquets peut traiter. C’est ce qu’on appelle parfois la surcharge de la carte de ligne ou du moteur de transfert de paquets. Lorsque la charge de travail sur le moteur de transfert de paquets est trop élevée, cela peut entraîner des retards notables dans le traitement des paquets.
La surveillance des ressources permet au moteur de routage d’évaluer la charge en évaluant le délai d’aller-retour des paquets qu’il envoie au moteur de transfert de paquets. Un temps d’aller-retour plus long indique une charge plus élevée et donc un plus grand risque de retards de traitement sur le moteur de transfert de paquets. Le cas échéant, le moteur de routage réduit le pourcentage de sessions d’abonnés (client et service) autorisées à se terminer.
C’est ce qu’on appelle la limitation de charge ou la limitation de charge à temps aller-retour. La limitation empêche le moteur de routage de surcharger les cartes de ligne au point que les retards de traitement deviennent visibles pour les opérateurs et les systèmes de back-office. Cela fonctionne comme ceci :
Pour surveiller les retards, le moteur de routage envoie un message de demande d’écho toutes les secondes au moteur de transfert de paquets sur la carte de ligne. La demande d’écho inclut à la fois un horodatage pour son envoi et un numéro de séquence en cours d’exécution. La priorité du message est le meilleur effort, pour simuler le délai de traitement le plus défavorable sur la carte de ligne.
Le moteur de transfert de paquets traite la demande d’écho et répond par une réponse d’écho. La priorité du message est élevée pour minimiser la gigue lorsque le moteur de routage traite le paquet retourné.
Lorsque le moteur de routage reçoit la réponse d’écho, il calcule le temps d’aller-retour comme la différence de temps entre l’horodatage de la demande d’écho et l’heure à laquelle il reçoit la réponse d’écho pour ce numéro de séquence particulier.
Le moteur de routage compare le délai d’aller-retour à une valeur seuil d’aller-retour par défaut de 1 seconde. Si le délai mesuré est supérieur au seuil pour trois trajets consécutifs, le moteur de routage refuse les connexions d’un certain pourcentage de nouveaux abonnés, ce qui réduit le nombre de nouvelles sessions client et de service établies. C’est ce qu’on appelle la limitation.
Un algorithme interne calcule le pourcentage de limitation en fonction du seuil et du temps d’aller-retour. Ce pourcentage varie en fonction du délai aller-retour à ce moment-là.
Le moteur de routage augmente la limitation (refuse davantage de connexions d’abonnés) pour chaque série successive de trois mesures de délai qui dépassent toutes le seuil.
Lorsque le délai mesuré est inférieur au seuil pour trois trajets consécutifs, le moteur de routage supprime la manette des gaz. Cela permet aux abonnés de se connecter librement.
La limitation de charge RTT s’applique pour chaque carte de ligne pour les interfaces Ethernet (ge, xe) et les interfaces pseudowire (ps) comme suit :
-
Pour les interfaces Ethernet agrégées, elle s’applique à l’ensemble des cartes de ligne associées au bundle Ethernet agrégé.
-
Pour les interfaces pseudowire avec tunnel logique redondant (RLT), elle s’applique au jeu de cartes de ligne associées au point d’ancrage.
Dans les deux cas, le moteur de routage considère que la valeur de retard qui détermine la limitation est le délai aller-retour le plus long de toutes les cartes de ligne du jeu.
Le tableau 1 montre comment les sessions d’abonnés sont limitées sur une carte de ligne sur une période de 12 secondes lorsque le délai d’aller-retour est supérieur au seuil interne. Cet exemple repose sur les hypothèses suivantes :
-
Le seuil de retard interne est de 1 seconde.
-
Les mesures de retard ont lieu toutes les secondes.
-
Le taux de création de session est réduit de 10 % après 3 mesures de délai aller-retour consécutives supérieures au seuil de délai aller-retour. Tant que le seuil est dépassé, l’étranglement est augmenté toutes les 3 mesures.
-
Si le délai mesuré diminue et reste inférieur au seuil correspondant à 3 mesures consécutives du délai aller-retour, le taux de session revient à 100 %.
Cet exemple est simplifié. N’oubliez pas que le pourcentage exact de limitation est déterminé dynamiquement et peut varier d’une seconde à l’autre.
Heure |
Délai aller-retour (ms) |
Dépassement du seuil |
Pourcentage de sessions autorisées |
---|---|---|---|
1 |
850 |
Non |
100 |
2 |
900 |
Non |
100 |
3 |
995 |
Non |
100 |
4 |
1021 |
Oui Dépassement du seuil #1 |
100 |
5 |
1130 |
Oui Dépassement du seuil #2 |
100 |
6 |
1158 |
Oui Dépassement du seuil #3 |
90 Taux de session réduit de 10 % |
7 |
1127 |
Oui Dépassement du seuil #1 |
90 Taux de session réduit de 10 % |
8 |
1135 |
Oui Dépassement du seuil #2 |
90 |
9 |
1126 |
Oui Dépassement du seuil #3 |
80 Taux de session réduit de 10 % |
10 |
1000 |
Non Seuil non dépassé count #1 |
80 |
11 |
991 |
Non Seuil non dépassé count #2 |
80 |
12 |
998 |
Non Seuil non dépassé count #3 |
100 Suppression de l’étranglement |
La surveillance de la charge des ressources et la limitation du temps d’aller-retour sont activées par défaut. Vous pouvez utiliser l’une des instructions suivantes pour désactiver cette fonctionnalité :
-
no-load-throttle
au niveau hiérarchique[edit system services resource-monitor]
-
no-throttle
au niveau hiérarchique[edit system services resource-monitor]
Si vous désactivez la fonctionnalité et que le moteur de transfert de paquets devient trop occupé, les nouveaux abonnés peuvent se connecter et devenir actifs, mais aucun trafic ne circule pendant un certain temps. Ce retard dans le traitement du trafic peut devenir perceptible.
Vous pouvez utiliser la commande suivante pour vérifier si la fonctionnalité de limitation de charge est activée et voir différents aspects de la fonctionnalité en action. Les champs en gras sont particulièrement utiles.
user@host> show system resource-monitor summary Resource Usage Summary Throttle : Enabled Load Throttle : Enabled /*RTT load throttling is enabled*/ Heap Mem Threshold : 70 % IFL Counter Threshold : 95 % Round Trip Delay Threshold(ms) : 1000 /*RTT throttle value*/ Filter Counter Threshold : 100 % Expansion Threshold : 95 % CoS Queue Threshold : 100 % MFS threshold : 70 % Used : 0 Slot # 0 Client allowed : Yes Service allowed : Yes Heap memory used : 339204848 In % : 18 Average Round-trip Delay(ms) : 103 (30 ) Round-trip Delay(ms) : 103 /*RTT delay and average delay, the 30 in parentheses means that the average is for last 30 secs*/ MAX session rate allowed(%) : 100 Client denied : 1524 /*The number of new subscribers have been denied*/ Service Denied : 0 Performance Denial Client : 1524 <-- Performance Denial Service : 0 IFL Denied : 0
Limitation des abonnés à l’aide de Resource Monitor
À partir de Junos OS version 17.3R1, vous pouvez également utiliser la surveillance des ressources pour limiter directement le nombre d’abonnés pris en charge par élément matériel. Vous pouvez spécifier le nombre maximal d’abonnés pouvant être connectés par châssis, carte de ligne (MPC), MIC ou port. Vous pouvez définir la limite aux abonnés d’un seul type de client (DHCP, L2TP ou PPPoE) ou aux abonnés de tout type de client.
Cette fonctionnalité garantit que le nombre d’abonnés connectés par élément matériel ne dépasse pas le nombre que votre réseau peut desservir avec stabilité à la bande passante de service souhaitée. Lorsque la limite est atteinte pour un élément matériel, les connexions de nouveaux abonnés sont refusées sur cet élément jusqu’à ce que le nombre d’abonnés tombe en dessous de la limite configurée. Les nouveaux abonnés dépassant la limite peuvent se connecter à un autre élément matériel dans le même domaine de diffusion. Lorsque vous configurez la limite sur une ou plusieurs branches d’une interface Ethernet agrégée, la connexion est refusée si le nombre d’abonnés dépasse la valeur de l’une des branches.
Limiter le nombre d’abonnés de cette manière permet de répartir la charge entre les éléments matériels, mais cela ne fournit aucune sorte d’équilibrage de charge. Cette fonctionnalité peut également vous aider à cartographier la capacité de votre réseau et à déterminer les ressources matérielles nécessaires pour l’étendre. Par exemple, si vous fournissez un service qui a besoin d’une quantité particulière de mémoire et que vous savez combien d’abonnés vous pouvez desservir avec un ensemble de matériel donné, vous pouvez déterminer la quantité de mémoire dont vous avez besoin. Ou si vous souhaitez ajouter un service avec plus de mémoire par abonné, vous pouvez calculer la quantité supplémentaire dont vous avez besoin, la comparer à votre mémoire disponible et déterminer si vous devez provisionner de nouveaux ports, MIC, MPC ou routeurs pour gérer le nouveau service.
Historique des modifications relatives à la surveillance des ressources pour la gestion et les services des abonnés
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.
Description de la version | |
---|---|
17.3 | À partir de Junos OS version 17.3R1, vous pouvez également utiliser la surveillance des ressources pour limiter directement le nombre d’abonnés pris en charge par élément matériel. |
17.4 | À partir de la version 17.4R1 de Junos OS, les critères de classe de service (CoS) sont incorporés dans la décision de limitation de l’accès des abonnés. |
19.4 | À partir de Junos OS version 19.4R1, vous pouvez spécifier la valeur 0 pour éviter qu’un abonné ne soit limité par la limitation basée sur la file d’attente. |
Surveillance des ressources spécifiques à la plate-forme pour la gestion des abonnés et le comportement des services
Plateforme |
Différence |
---|---|
Routeurs MX240, MX480 et MX960 avec cartes de ligne MPC2E héritées, MPC2E-NG, MPC3E-NG, MPC5E et MPC7E | La fonctionnalité de surveillance des ressources CoS base les décisions d’admission uniquement sur les files d’attente est prise en charge pour le matériel. Les autres ressources CoS ne font pas partie de ce critère. Cette fonctionnalité ne prend pas en charge la limitation pour les abonnés arrivant sur des périphériques pseudo-filaires, de tunnel logique ou de tunnel logique redondant. |
Routeurs MX80, MX104 |
Prise en charge de la configuration de la surveillance des ressources. |
Routeurs MX240, MX480, MX960, MX2010 et MX2020 |
Les cartes de ligne suivantes prennent en charge la surveillance des ressources sur les routeurs MX240, MX480, MX960, MX2010 et MX2020 :
|
Limitation des abonnés par type de client et élément matériel à l’aide du moniteur de ressources
En plus d’utiliser la surveillance des ressources pour surveiller et gérer l’utilisation de la mémoire système, vous pouvez l’utiliser pour limiter directement le nombre d’abonnés pris en charge par élément matériel : châssis, carte de ligne (MPC), MIC et port. Vous pouvez spécifier le nombre maximal d’abonnés pouvant être connectés à chacun de ces éléments. Vous appliquez la limite aux abonnés d’un seul type de client (DHCP, L2TP ou PPPoE) ou aux abonnés de l’un de ces types de clients. Dans ce dernier cas, la limite s’applique à la somme des sessions pour les trois types de clients.
La limitation du nombre d’abonnés permet de s’assurer que le nombre d’abonnés connectés par élément matériel ne dépasse pas le nombre que votre réseau peut desservir avec stabilité à la bande passante de service souhaitée. Lorsque la limite est atteinte pour un élément matériel, les connexions de nouveaux abonnés sont refusées sur cet élément jusqu’à ce que le nombre d’abonnés tombe en dessous de la limite configurée. Les nouveaux abonnés dépassant la limite se connectent à un autre élément matériel dans le même domaine de diffusion. Lorsque vous configurez la limite sur une ou plusieurs branches d’une interface Ethernet agrégée, la connexion est refusée si le nombre d’abonnés dépasse la valeur de l’une des branches.
Limiter le nombre d’abonnés de cette manière permet de répartir la charge entre les éléments matériels, mais cela ne fournit aucune sorte d’équilibrage de charge. Cette fonctionnalité peut également vous aider à cartographier la capacité de votre réseau et à déterminer les ressources matérielles nécessaires pour l’étendre. Par exemple, si vous fournissez un service avec une bande passante donnée et que vous savez combien d’abonnés vous pouvez desservir avec un ensemble de matériel donné, vous pouvez déterminer la quantité de bande passante dont vous avez besoin. Ou si vous souhaitez ajouter un service avec plus de bande passante par abonné, vous pouvez calculer la bande passante supplémentaire dont vous avez besoin, la comparer à votre bande passante disponible et déterminer si vous devez provisionner de nouveaux ports, MIC, MPC ou routeurs pour gérer le nouveau service.
La CLI utilise les termes fpc
et pic
. Pour cette fonction, fpc
correspond à MPC et pic
correspond à MIC.
Pour limiter le nombre maximal d’abonnés autorisés pour un élément matériel, procédez comme suit :
Par exemple, la configuration suivante définit des limites de châssis et de MPC pour les abonnés PPPoE :
[edit system services resource-monitor subscribers-limit] user@host# edit client-type pppoe [edit system services resource-monitor subscribers-limit client-type pppoe] user@host# set chassis limit 112000 user@host# set fpc 0 limit 28000 user@host# set fpc 1 limit 28000 user@host# set fpc 2 limit 28000 user@host# set fpc 3 limit 28000
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.