BGP route dampening

BGP route dampening est un mécanisme qui permet de réduire la propagation des effets de routes instables. Lorsqu’un réseau – un préfixe – flap, il se verra attribuer un penalty de 1000 qui sera placé dans l’historique de l’état dampening. Chaque flap supplémentaire ajoutera un nouveau penalty d’une valeur de 1000, qui s’additionnera aux autres.

Si le score des penaltys atteint la valeur de suppress limit (la valeur par défaut est 2000), la route est dampened (affaiblie), ce qui signifie qu’elle n’est plus annoncée à aucun peer.

Les valeurs par défaut des différents critères sont :

  • Penalty : 1000
  • Suppress limit : 2000
  • Reuse limit : 750
  • Half-life : 15 minutes
  • Maximum suppress-limit : 60 minutes

Lorsque qu’une route est dampened, le penalty doit être réduit à une valeur inférieure à celle définie par la reuse limit pour que celle-ci puisse à nouveau être annoncée aux peers.

Le half-life timer s’en occupe automatiquement. Après avoir reçu un penalty, lorsqu’un préfixe devient à nouveau stable, le half-life timer démarre. Lorsque la valeur du half-life est atteinte, la valeur du penalty va être réduite de moitié de manière exponentielle toutes les 15 minutes. Lorsque la valeur du penalty passe sous la valeure de reuse limit, le penalty est retiré.

Exemple :

  1. Une route instable se voit attribuer un penalty de 5000
  2. Elle redevient stable
  3. Après 15 minutes son score penalty passe de 5000 à 2500
  4. Après 30 minutes son score penalty passe de 2500 à 1250
  5. Après 45 minutes son score penalty passe de 1250 à 625
  6. Après 45 minutes, la route est donc à nouveau annoncée aux peers

Le paramètre maximum suppress-limit est renseigné afin de s’assurer qu’un préfixe n’est pas dampened indéfiniment. Dans le cas d’une configuration par défaut, un préfixe est à nouveau autorisé au bout de 60 minutes, indépendamment du score de penalty.

Formule

Afin de vous assurer que votre valeur de max-penalty est plausible, la formule de calcul suivante vous indiquera si celle-ci est correcte :

 max-penalty = reuse-limit * 2^( max-suppress-time / half-life ) 

En se basant sur ces valeurs :

  • Penalty : 1000
  • Suppress limit : 30000
  • Reuse limit : 500
  • Half-life : 5 minutes
  • Maximum suppress-limit : 30 minutes
max-penalty = 500 * 2^( 30 / 5 ) : soit 32000

Dans ce cas, un penalty représente 1000. Lorsque le penalty atteint 32000, la route est dampened. Dans ce cas, cela est possible, car la suppress limit est de 30000, soit moins que la valeur maximale de penalty de 32000. Si la suppress limit était de 40000, cela ne serait pas possible, car la suppress limit ne serait jamais atteinte.

2

Publié par

Greg

Greg

Greg est l’instigateur du blog graycode. À travers ce blog, mon but est de partager des informations pour les lecteurs débutants ou avancés qui souhaitent découvrir de nouveaux sujets, partager et comparer leurs connaissances et faire profiter les autres du savoir qui est a porté de clavier. J’aime parler infrastructure, réseau, cloud, sécurité et technologies au sens large, avec une grande passion pour tout ce qui touche au MP-BGP. Je partage des exemples directement sortis de mon lab personnel.

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

3 × 1 =