Comprendre le BFD pour les routes statiques pour accélérer la détection des défaillances réseau
Le protocole BFD (Bidirectional Forwarding Detection) est un simple mécanisme de bonjour qui détecte les défaillances d’un réseau. BFD fonctionne avec une grande variété d’environnements et topologies réseau. Une paire d’équipements de routage échange des paquets BFD. Bonjour, les paquets sont envoyés à un intervalle précis et régulier. Une défaillance de voisinage est détectée lorsque l’équipement de routage cesse de recevoir une réponse après un intervalle spécifié. Les timers de détection des défaillances BFD ont des délais plus courts que les mécanismes statiques de détection des défaillances de route, ce qui accélère la détection.
Les timers de détection des défaillances BFD peuvent être ajustés pour être plus rapides ou plus lents. Plus la valeur du timer de détection des défaillances BFD est faible, plus la détection des défaillances est rapide et vice versa. Par exemple, les timers peuvent s’adapter à une valeur plus élevée si l’adjacence échoue (c’est-à-dire que le timer détecte les défaillances plus lentement). Ou un voisin peut négocier une valeur plus élevée pour un timer que la valeur configurée. Les timers s’adaptent à une valeur plus élevée lorsqu’un volet de session BFD se produit plus de trois fois sur une durée de 15 secondes. Un algorithme de back-off augmente l’intervalle de réception (Rx) de deux si l’instance BFD locale est la raison du rabat de session. L’intervalle de transmission (Tx) est augmenté de deux si l’instance BFD distante est la raison du volet de session. Vous pouvez utiliser la clear bfd adaptation
commande pour renvoyer les intervalles BFD à leurs valeurs configurées. La clear bfd adaptation
commande est sans heurt, ce qui signifie que la commande n’affecte pas le flux de trafic sur l’équipement de routage.
Par défaut, BFD est pris en charge sur des routes statiques à saut unique.
Sur les équipements MX Series, le BFD multihop n’est pas pris en charge sur un routage statique si le routage statique est configuré avec plusieurs sauts suivants. Il est recommandé d’éviter d’utiliser plusieurs sauts suivants lorsqu’un BFD multihop est requis pour un routage statique.
Pour permettre la détection des défaillances, incluez l’instruction bfd-liveness-detection
dans la configuration de route statique.
À partir de Junos OS version 15.1X49-D70 et Junos OS version 17.3R1, la bfd-liveness-detection
commande inclut le champ de description. La description est un attribut sous l’objet bfd-liveness-detection et n’est prise en charge que sur les équipements SRX Series. Ce champ s’applique uniquement aux routes statiques.
Dans junos OS version 9.1 et versions ultérieures, le protocole BFD est pris en charge pour les routes statiques IPv6. Les adresses IPv6 globales unicast et liaisons locales sont prises en charge pour les routes statiques. Le protocole BFD n’est pas pris en charge sur les adresses multicast ou anycast IPv6. Pour IPv6, le protocole BFD ne prend en charge que les routes statiques et uniquement dans Junos OS version 9.3 et versions ultérieures. IPv6 pour BFD est également pris en charge pour le protocole eBGP.
Pour configurer le protocole BFD pour les routes statiques IPv6, incluez l’instruction bfd-liveness-detection
au niveau de la [edit routing-options rib inet6.0 static route destination-prefix]
hiérarchie.
Dans Junos OS version 8.5 et versions ultérieures, vous pouvez configurer un intervalle d’attente pour spécifier la durée de la session BFD avant l’envoi d’une notification de changement d’état.
Pour spécifier l’intervalle d’attente, incluez l’instruction holddown-interval
dans la configuration BFD. Vous pouvez configurer un nombre allant de 0 à 255 000 millisecondes. La valeur par défaut est 0. Si la session BFD tombe en panne puis revient pendant l’intervalle de maintien, le timer est redémarré.
Si une seule session BFD comprend plusieurs routes statiques, l’intervalle de retenue avec la valeur la plus élevée est utilisé.
Pour spécifier les intervalles de transmission et de réception minimaux pour la détection des défaillances, incluez l’instruction minimum-interval
dans la configuration BFD.
Cette valeur représente à la fois l’intervalle minimal après lequel l’équipement de routage local transmet les paquets bonjour et l’intervalle minimal après lequel l’équipement de routage s’attend à recevoir une réponse du voisin avec lequel il a établi une session BFD. Vous pouvez configurer un nombre allant de 1 à 255 000 millisecondes. Si vous le souhaitez, au lieu d’utiliser cette instruction, vous pouvez configurer les intervalles d’émission et de réception minimaux séparément à l’aide de l’intervalle minimal de transmission et minimum-receive-interval
des instructions.
Les commutateurs EX4600 ne prennent pas en charge les valeurs d’intervalle minimales de moins d’une seconde.
BFD est un protocole intensif qui consomme des ressources système. La spécification d’un intervalle minimal pour la BFD de moins de 100 ms pour les sessions basées sur le moteur de routage et de 10 ms pour les sessions BFD distribuées peut provoquer des battements BFD indésirables.
En fonction de votre environnement réseau, ces recommandations supplémentaires peuvent s’appliquer :
-
Pour les déploiements réseau à grande échelle avec un grand nombre de sessions BFD, spécifiez un intervalle d’au moins 300 ms pour les sessions basées sur le moteur de routage et 100 ms pour les sessions BFD distribuées.
-
Pour les déploiements réseau à très grande échelle avec un grand nombre de sessions BFD, contactez l’assistance client Juniper Networks pour plus d’informations.
-
Pour que les sessions BFD restent actives pendant un événement de basculement du moteur de routage lorsque le routage actif sans interruption (NSR) est configuré, spécifiez un intervalle de 2 500 ms minimum pour les sessions basées sur le moteur de routage. Pour les sessions BFD distribuées avec NSR configurées, les recommandations d’intervalle minimum restent inchangées et dépendent uniquement de votre déploiement réseau.
Pour spécifier l’intervalle de réception minimal pour la détection des défaillances, incluez l’instruction minimum-receive-interval
dans la configuration BFD. Cette valeur représente l’intervalle minimal après lequel l’équipement de routage s’attend à recevoir une réponse d’un voisin avec lequel il a établi une session BFD. Vous pouvez configurer un nombre allant de 1 à 255 000 millisecondes. Au lieu d’utiliser cette instruction, vous pouvez configurer l’intervalle de réception minimum à l’aide de l’instruction minimum-interval
au niveau de la [edit routing-options static route destination-prefix bfd-liveness-detection]
hiérarchie.
Pour spécifier le nombre de paquets hello non reçus par le voisin qui provoquent la panne de l’interface d’origine, incluez l’instruction multiplier
dans la configuration BFD. La valeur par défaut est 3. Vous pouvez configurer un nombre allant de 1 à 255.
Pour spécifier un seuil permettant de détecter le temps d’adaptation de la détection, incluez l’instruction threshold
dans la configuration BFD.
Lorsque le temps de détection des sessions BFD s’adapte à une valeur égale ou supérieure au seuil, un seul piège et un message de journal système sont envoyés. Le temps de détection est basé sur le multiplieur de l’intervalle minimum ou de la valeur de l’intervalle de réception minimal . Le seuil doit être plus élevé que le coefficient de multiplication de l’une ou l’autre de ces valeurs configurées. Par exemple, si l’intervalle de réception minimum est de 300 ms et que le coefficient de multiplication est de 3, le temps total de détection est de 900 ms. Par conséquent, le seuil de temps de détection doit avoir une valeur supérieure à 900.
Pour spécifier l’intervalle de transmission minimal pour la détection des défaillances, incluez l’instruction transmit-interval minimum-interval
dans la configuration BFD.
Cette valeur représente l’intervalle minimal après lequel l’équipement de routage local transmet les paquets hello au voisin avec lequel il a établi une session BFD. Vous pouvez configurer une valeur comprise entre 1 et 255 000 millisecondes. Au lieu d’utiliser cette instruction, vous pouvez configurer l’intervalle de transmission minimum à l’aide de l’instruction minimum-interval
au niveau de la [edit routing-options static route destination-prefix bfd-liveness-detection]
hiérarchie.
Pour spécifier le seuil d’adaptation de l’intervalle de transmission, incluez l’instruction transmit-interval threshold
dans la configuration BFD.
La valeur seuil doit être supérieure à l’intervalle de transmission. Lorsque le temps de transmission de la session BFD s’adapte à une valeur supérieure au seuil, un seul piège et un message de journal système sont envoyés. Le temps de détection est basé sur le démultiplication de la valeur de l’intervalle minimal ou de l’instruction minimum-receive-interval
au niveau de la [edit routing-options static route destination-prefix bfd-liveness-detection]
hiérarchie. Le seuil doit être plus élevé que le coefficient de multiplication de l’une ou l’autre de ces valeurs configurées.
Pour spécifier la version BFD, incluez l’instruction version
dans la configuration BFD. Par défaut, la version est détectée automatiquement.
Pour inclure une adresse IP pour le prochain saut de la session BFD, incluez l’instruction neighbor
dans la configuration BFD.
Vous devez configurer l’instruction neighbor
si le saut suivant spécifié est un nom d’interface. Si vous spécifiez une adresse IP comme saut suivant, cette adresse est utilisée comme adresse voisine pour la session BFD.
Dans Junos OS version 9.0 et versions ultérieures, vous pouvez configurer des sessions BFD pour ne pas s’adapter aux conditions changeantes du réseau. Pour désactiver l’adaptation BFD, incluez l’instruction no-adaptation
dans la configuration BFD.
Nous vous recommandons de ne pas désactiver l’adaptation BFD, sauf s’il est préférable de ne pas avoir d’adaptation BFD dans votre réseau.
Si BFD n’est configuré qu’à une extrémité d’un routage statique, le routage est supprimé de la table de routage. BFD établit une session lorsque BFD est configuré aux deux extrémités de la route statique.
BFD n’est pas pris en charge sur les familles d’adresses ISO dans les routes statiques. BFD prend en charge IS-IS.
Si vous configurez le basculement GRES ( Graceful Routing Engine Switchover ) en même temps que BFD, le GRES ne préserve pas les informations d’état BFD lors d’un basculement.
bfd-liveness-detection
commande inclut le champ de description. La description est un attribut sous l’objet
bfd-liveness-detection et n’est prise en charge que sur les équipements SRX Series. Ce champ s’applique uniquement aux routes statiques.