Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

Comprendre les expressions de stratégie

Les expressions de stratégie offrent au logiciel Policy Framework une manière différente d’évaluer les stratégies de routage. Une expression de stratégie utilise des opérateurs logiques booléens avec des stratégies. Les opérateurs logiques établissent les règles d’évaluation des stratégies.

Lors de l’évaluation d’une stratégie de routage dans une expression de stratégie, l’action de stratégie d’acceptation, de rejet ou de stratégie suivante est convertie en valeur TRUE ou FALSE. Cette valeur est ensuite évaluée par rapport à l’opérateur logique spécifié pour produire une sortie TRUE ou FALSE. La sortie est ensuite reconvertie en une action de contrôle de flux d’acceptation, de rejet ou de stratégie suivante. Le résultat de l’expression de stratégie est appliqué comme il le serait à une seule stratégie ; L’itinéraire est accepté ou rejeté et l’évaluation se termine, ou la stratégie suivante est évaluée.

Tableau 1 récapitule les actions de stratégie et leurs valeurs TRUE et FAUX correspondantes, ainsi que les valeurs d’action de contrôle de flux. Tableau 2 décrit les opérateurs logiques. Pour plus d’informations sur l’évaluation des expressions de stratégie, reportez-vous à la section Évaluation de l’expression de stratégie.

Vous devez placer une expression de stratégie entre parenthèses. Vous pouvez placer une expression de stratégie n’importe où dans les import instructions ou export et dans l’instruction from policy .

Tableau 1 : Valeurs de conversion des mesures de stratégie

Mesures politiques

Valeur de conversion

Valeur de conversion de l’action de contrôle de flux

Accepter

VRAI

Accepter

Rejeter

FAUX

Rejeter

Politique suivante

VRAI

Politique suivante

Tableau 2 : Opérateurs logiques d’expression de stratégie

Opérateur logique

Logique d’expression de stratégie

Incidence de l’opérateur logique sur l’évaluation des expressions de stratégie

&& (ET logique)

Logical AND exige que toutes les valeurs soient TRUE pour produire une sortie de TRUE.

La valeur de stratégie de routage TRUE et TRUE produit la sortie TRUE. Les valeurs de TRUE et FALSE produisent la sortie de FALSE. Les valeurs de FALSE et FALSE produisent la sortie de FALSE.

Si la première stratégie de routage renvoie la valeur TRUE, la stratégie suivante est évaluée. Si la première stratégie renvoie la valeur FALSE, l’évaluation de l’expression se termine et les stratégies suivantes ne sont pas évaluées.

|| (OU logique)

Le OU logique exige qu’au moins une valeur soit TRUE pour produire une sortie de TRUE.

La valeur de stratégie de routage TRUE et FALSE produit la sortie TRUE. La valeur de TRUE et TRUE produit la sortie de TRUE. Les valeurs de FALSE et FALSE produisent la sortie de FALSE.

Si la première stratégie de routage renvoie la valeur TRUE, l’évaluation de l’expression se termine et les stratégies suivantes ne sont pas évaluées. Si la première stratégie renvoie la valeur FALSE, la stratégie suivante est évaluée.

! (Logique NON)

Logical NOT inverse la valeur de TRUE en FALSE et de FALSE en TRUE. Il inverse également les actions d’acceptation et de politique suivante pour rejeter, et rejeter pour accepter.

Si elle est utilisée avec l’opérateur logique AND et que la première valeur de la stratégie de routage FALSE est inversée en TRUE, la stratégie suivante est évaluée. Si la valeur de TRUE est inversée à FALSE, l’évaluation de l’expression se termine et les stratégies suivantes dans l’expression ne sont pas évaluées.

S’il est utilisé avec l’opérateur logique OR et que la première valeur de stratégie de routage FALSE est inversée en TRUE, l’évaluation de l’expression se termine et les stratégies suivantes dans l’expression ne sont pas évaluées. Si la valeur de TRUE est inversée sur FALSE, la stratégie suivante est évaluée.

S’il est utilisé avec une stratégie et que l’action de contrôle de flux est accepter ou stratégie suivante, ces actions sont inversées et rejetées. Si l’action de contrôle de flux est rejetée, cette action est annulée pour accepter.

Pour plus d’informations, consultez les sections suivantes :

Exemples d’expressions de stratégie

Les exemples suivants montrent comment utiliser les opérateurs logiques pour créer des expressions de stratégie :

  • AND logique : dans l’exemple suivant, policy1 est évalué en premier. Si after policy1 est évalué, une valeur de TRUE est renvoyée, policy2 est évaluée. Si la valeur FALSE est renvoyée, policy2 elle n’est pas évaluée.

  • OU logique : dans l’exemple suivant, policy1 est évalué en premier. Si after policy1 est évalué, une valeur de TRUE est renvoyée, policy2 n’est pas évaluée. Si une valeur FALSE est renvoyée, policy2 est évaluée.

  • Logical OR et logical AND : dans l’exemple suivant, policy1 est évalué en premier. Si after policy1 est évalué, une valeur de TRUE est renvoyée, policy2 est ignorée et policy3 est évaluée. Si after policy1 est évalué, une valeur FALSE est renvoyée, policy2 est évaluée. Si policy2 renvoie la valeur TRUE, policy3 est évalué. Si policy2 renvoie la valeur FALSE, policy3 elle n’est pas évaluée.

  • Logical NOT (Logique) : dans l’exemple suivant, policy1 est évalué en premier. Si after policy1 est évalué, une valeur de TRUE est renvoyée, la valeur est inversée à FALSE et policy2 n’est pas évaluée. Si une valeur FALSE est renvoyée, la valeur est inversée à TRUE et policy2 est évaluée.

La liste [policy1 policy2 policy3] séquentielle n’est pas la même que l’expression (policy1 && policy2 && policy3)de stratégie .

La liste séquentielle est évaluée sur la base d’un itinéraire correspondant à une stratégie de routage. Par exemple, si policy1 correspond et que l’action est accept ou reject, policy2 et policy3 ne sont pas évalués. Si policy1 ne correspond pas, policy2 est évalué et ainsi de suite jusqu’à ce qu’une correspondance se produise et que l’action soit accept ou reject.

Les expressions de stratégie sont évaluées sur la base de l’action dans une stratégie de routage convertie avec la valeur TRUE ou FALSE et de la logique de l’opérateur logique spécifié. (Pour plus d’informations sur l’évaluation des expressions de stratégie, reportez-vous à la section Évaluation de l’expression de stratégie.) Par exemple, if policy1 renvoie la valeur FALSE policy2 et policy3 ne sont pas évalués. Si policy1 renvoie la valeur TRUE, policy2 est évalué. Si policy2 renvoie la valeur FALSE, policy3 elle n’est pas évaluée. Si policy2 renvoie la valeur TRUE, policy3 est évalué.

Vous pouvez également combiner des expressions de stratégie et des listes séquentielles. Dans l’exemple suivant, si policy1 renvoie la valeur FALSE, policy2 est évalué. Si policy2 renvoie la valeur TRUE et contient une next policy action, policy3 est évalué. Si policy2 renvoie la valeur TRUE mais ne contient pas d’action, y compris une next policy action, policy3 est toujours évaluée (car si vous ne spécifiez pas d’action, la prochaine période ou la prochaine stratégie sont les actions par défaut). Si policy2 renvoie la valeur TRUE et contient une accept action, policy3 n’est pas évalué.

Évaluation de l’expression de stratégie

Au cours de l’évaluation, le logiciel Policy Framework convertit les actions de stratégie en valeurs TRUE ou FALSE, qui sont des facteurs permettant de déterminer l’action de contrôle de flux effectuée sur une route. Toutefois, le logiciel n’effectue pas réellement d’action de contrôle de flux sur une route tant qu’il n’a pas évalué l’intégralité d’une expression de stratégie.

Le logiciel Policy Framework évalue une expression de stratégie comme suit :

  1. Le logiciel évalue un itinéraire par rapport à la première stratégie de routage dans une expression de stratégie et convertit l’action spécifiée ou par défaut en une valeur TRUE ou FALSE. (Pour plus d’informations sur les valeurs de conversion des actions de stratégie, reportez-vous à la section Tableau 1.)

  2. Le logiciel prend la valeur TRUE ou FALSE et l’évalue par rapport à l’opérateur logique utilisé dans l’expression de stratégie (reportez-vous à la section Tableau 2). En fonction de l’opérateur logique utilisé, le logiciel détermine s’il faut ou non évaluer la stratégie suivante, le cas échéant.

    Le logiciel de cadre stratégique utilise une méthode d’évaluation par raccourci : Si le résultat de l’évaluation d’une stratégie prédétermine la valeur de l’expression de stratégie entière, le logiciel n’évalue pas les stratégies suivantes dans l’expression. Par exemple, si l’expression de stratégie utilise l’opérateur logique AND et que l’évaluation d’une stratégie renvoie la valeur FALSE, le logiciel n’évalue pas les stratégies suivantes dans l’expression, car la valeur finale de l’expression est garantie FALSE, quelles que soient les valeurs des stratégies non évaluées.

  3. Le logiciel effectue les étapes 1 et 2 pour chaque stratégie de routage suivante dans l’expression de stratégie, si elles sont présentes et qu’il est nécessaire de les évaluer.

  4. Après avoir évalué la dernière stratégie de routage, le cas échéant, le logiciel évalue la valeur TRUE ou FAUX obtenue à partir de chaque évaluation de stratégie de routage. En fonction de l’opérateur logique utilisé, il calcule une sortie TRUE ou FALSE.

  5. Le logiciel reconvertit la sortie de TRUE ou FALSE en une action. (Pour plus d’informations sur les valeurs de conversion des actions de stratégie, reportez-vous à la section Tableau 1.) L’action est exécutée.

    Si chaque stratégie de l’expression renvoie la valeur TRUE, le logiciel reconvertit la sortie de TRUE en l’action de contrôle de flux spécifiée dans la dernière stratégie. Par exemple, si l’expression (policy1 && policy2) de stratégie est spécifiée et policy1 spécifie accept et policy2 spécifie next term, l’action next term est exécutée.

    Si une action spécifiée dans l’une des stratégies manipule une caractéristique d’itinéraire, le logiciel d’infrastructure de stratégie transfère la nouvelle caractéristique d’itinéraire lors de l’évaluation des stratégies restantes. Par exemple, si l’action spécifiée dans la première stratégie d’une expression de stratégie définit la métrique d’un itinéraire sur 500, cet itinéraire correspond aux critères de metric 500 défini dans la stratégie suivante. Toutefois, si une action de manipulation de caractéristique de route est spécifiée dans une stratégie située au milieu ou à la fin d’une expression de stratégie, il est possible, en raison de l’évaluation du raccourci, que la stratégie ne soit jamais évaluée et que la manipulation de la caractéristique de route ne se produise jamais.

Évaluation des expressions de stratégie

L’exemple de stratégie de routage suivant utilise trois expressions de stratégie :

Le logiciel d’infrastructure de stratégies évalue la route BGP de transit 10.10.1.0/24 par rapport aux trois expressions de stratégie spécifiées dans l’exemple de stratégie de routage, comme suit :

  • (policy-A && policy-B) : 10.10.1.0/24 est évalué par rapport à policy-A. 10.10.1.0/24 correspond à la liste de routes spécifiée dans policy-A, de sorte que l’action spécifiée de reject est renvoyée. reject est convertie en une valeur de FALSE, et FALSE est évalué par rapport au AND logique spécifié. Parce que le résultat de FALSE est certain, quels que soient les résultats de l’évaluation de (dans la logique d’expression de policy-B stratégie, tout résultat ET une valeur de FALSE produit la sortie de FALSE), policy-B n’est pas évalué et la sortie de FALSE est produite. La sortie FAUX est convertie en reject, et 10.10.1.0/24 est rejeté.

  • (policy-A || policy-B) : 10.10.1.0/24 est évalué par rapport à policy-A. 10.10.1.0/24 correspond à la liste de routes spécifiée dans policy-A, de sorte que l’action spécifiée de reject est renvoyée. reject est convertie en une valeur de FALSE, alors FALSE est évalué par rapport au OU logique spécifié. Étant donné que le OU logique nécessite au moins une valeur de TRUE pour produire une sortie de TRUE, 10.10.1.0/24 est évalué par rapport à policy-B. 10.10.1.0/24 ne correspond policy-Bpas à , de sorte que l’action par défaut de next-policy est renvoyée. Le next-policy est converti en une valeur de VRAI, puis les valeurs de FALSE (pour policy-A l’évaluation) et TRUE (pour policy-B l’évaluation) sont évaluées par rapport au OU logique spécifié. Dans la logique d’expression de stratégie, FALSE OU TRUE produit une sortie de TRUE. La sortie de TRUE est convertie en next-policy. (TRUE est converti en next-policy car c’est next-policy la dernière action retenue par le logiciel Policy Framework.) policy-B est la dernière stratégie de routage de l’expression de stratégie, de sorte que l’action spécifiée par la stratégie d’exportation par défaut pour BGP est effectuée.

  • ( !policy-A) : 10.10.1.0/24 est évalué par rapport à policy-A. 10.10.1.0/24 correspond à la liste de routes spécifiée dans policy-A, de sorte que l’action spécifiée de reject est renvoyée. reject est convertie en une valeur de FALSE, et FALSE est évalué par rapport au NOT logique spécifié. La valeur de FALSE est inversée en une sortie de TRUE basée sur les règles de NOT logique. La sortie de TRUE est convertie en accept, et route 10.10.1.0/24 est acceptée.