Formule d'algèbre pour illustrer le calcul de la métrique EIGRPGénéralement, les protocoles de routage utilisent une métrique dérivée du nombre de sauts ou bien liée à la bande-passante. Ce n’est pas le cas pour le protocole EIGRP puisque ce dernier s’appuie sur une métrique hybride qui s’appuie simultanément sur différents paramètres. 

La métrique EIGRP peut ne pas être évidente à appréhender: cet article décrit de façon simple et détaillée comment le protocole EIGRP prend en compte les différents paramètres pour définir la métrique.

 

Les éléments pris en compte pour la métrique EIGRP

Lorsque l’on affiche la table de routage (show ip route eigrp), la valeur associée à la métrique EIGRP est une valeur affichée en notation décimale (souvent élevée). Cette valeur est calculée à partir de plusieurs variables :

1) Bande-passante

Plus exactement, il s’agit de la plus petite bande passante disponible sur le chemin.

En effet, prenons un exemple dans lequel, pour aller d’un point à un autre du réseau, une seule liaison entre deux routeurs est une liaison bas-débit (2Mbps). Et bien, dans ce cas, peu importe que toutes les autres liaisons offrent des capacités de l’ordre du gigabit. Les échanges sur le réseau sont limités par le plus petit débit offert: impossible d’aller au delà de cette capacité !

Cette réalité concrète explique pourquoi seule la plus faible bande-passante du chemin est prise en compte par EIGRP.

La valeur de la bande-passante (bandwidth – BW) est calculée comme suit:

BW =  (10000000/bandwidth(kbps)) * 256

 

2) Latence (ou Délais)

Dans le cas du délais, ce qui importe ce n’est pas le délai le plus long puisque le délai, lui, est une valeur cumulative: chaque délai de chaque liaisons s’additionne au délai cumulé.

C’est donc la somme de tous les délais des liens qui constituent le chemin que EIGRP prend en compte pour le calcul de sa métrique.

Pour le calcul de la métrique, la valeur du délai (DLY) est calculée comme suit:

DLY =  delay (en dizaine de microsecondes) * 256

 

3 et 4) Charge et fiabilité des liens

De façon identique à la bande-passante, chaque lien (pour un chemin donné) est plus ou moins chargé. La charge maximale rencontrée sur un lien du chemin est pris en compte par EIGRP.

 

Toujours avec le même principe, la fiabilité des liens est pris en compte par EIGRP: on ne retiendra que la fiabilité la plus faible rencontrée sur un chemin donné. La fiabilité est calculée automatiquement en fonction des statistiques d’erreurs sur l’interface.

Ces deux indicateurs sont exprimés par une valeur comprise entre 0 et 255.  Une fiabilité de 0% sera notée 0 et une fiabilité maximale (100%) se verra attribuée la valeur 255. Ces deux valeurs, charge et fiabilité, sont automatiquement calculées par l’IOS: ce sont les valeurs que l’on peut voir à l’aide de la commande show interface (en rouge et vert ci-dessous):

Rack1R1#show int e0/0
Ethernet0/0 is up, line protocol is up
 Hardware is AmdP2, address is aabb.cc00.0100 (bia aabb.cc00.0100)
 Internet address is 192.168.123.1/28
 MTU 1500 bytes, BW 10000 Kbit/sec, DLY 1000 usec,
 reliability 255/255, txload 1/255, rxload 1/255

On voit donc la fiabilité du lien (ici 255/255, donc 100%) et la charge: 1/255 en émission (txload) et en réception (rxload).

 

Calcul de la métrique EIGRP

A partir des éléments précédents (bande-passade, délais, fiabilité et charge), l’algorithme EIGRP va calculer une valeur numérique. On parle de métrique composite.

Formule de calcul EIGRP

Elle est calculée grâce à la formule suivante:

EIGRP metric = [k1 * BW + (k2 * BW)/(256 - LOAD) + k3 * DLY ]

 

Et si le coefficient k5 est non nul, alors il faut corriger la métrique comme suit:

EIGRP metric = EIGRP metric * (K5/(RLY + k4)]

 

On voit donc, d’après la formule, que pour calculer la valeur de la métrique EIGRP, il faut utiliser différents coefficients (k1, k2, k3, k4 et k5). Ces coefficients sont des valeurs utilisées par le routeur (elles doivent être identiques pour que l’adjacence EIGRP se forment). 

 

Coefficients K1 à K5

Dans l’IOS, les valeurs par défaut sont K1 = K3 = 1 et K2=K4=K5=0.

Ce qui simplifie, vous en conviendrez, énormément la formule de calcul EIGRP:

EIGRP Metric = BW + DLY

 

Ainsi, la charge et la fiabilité finalement ne sont pas pris en compte (ce sont des valeurs qui fluctuent dans le temps). L’idée était bonne mais elle n’est finalement pas exploitée par EIGRP….

 

Exemple de calcul de la métrique EIGRP

Prenons l’exemple de liens FastEthernet à 100 Mbps. Dans ce cas, la bande-passante du lien (bandwidth) est de 100.000Kbps. L’IOS considère alors un délais constant de 100 micro-secondes (donc 10 dizaines de microsecondes). 

Ainsi, un lien Ethernet 100 Mbps entre deux routeurs R1 et R2 permet de dire que la métrique entre les deux routeurs est de:

EIGRP metric = BW + DLY 

avec BW = (10000000/100000) * 256 = 25600
et DLY = 10 * 256 = 2560   

Donc la métrique EIGRP entre deux routeurs raccordés par un lien FastEthernet (100 Mbps) correspond à la somme de ces deux valeurs: 25600 + 2560 = 28160.

 

L’échange des métriques EIGRP

Dernier point avant de conclure cet article, la valeur calculée n’est pas la valeur échangée entre les routeurs. Les routeurs s’échangent un vecteur composé des différents éléments qui permettront à chaque routeur de calculer la valeur numérique. Ce vecteur est composé des 5 composants suivants:

  • la bande-passante
  • le délai
  • la charge
  • la fiabilité 
  • le MTU (Maximum Transfer Unit).

Tiens, donc le MTU apparait ici alors qu’il n’est jamais utilisé dans la formule de calcul de la valeur de la métrique EIGRP ! Cisco documente ceci en précisant que la MTU est utilisée par le routeur pour choisir entre deux routes différentes avec une métrique identique. Elle est donc échangée entre les routeurs même si elle n’est pas utilisée pour le calcul de la valeur ! Un point important à mémoriser pour tous les candidats à la certification Cisco CCNA Routing & Switching !

 

Voilà donc une description détaillée de la métrique EIGRP relativement avancée qui permettra, je l’espère, aux curieux de répondre à bon nombre de questions que soulève ce thème. S’il reste des points obscurs, continuez à utiliser l’espace commentaire ci-dessous: c’est exactement à ça que cela sert !