Explicación de la métrica de EIGRP
On diciembre 31, 2020 by adminEstoy buscando comprender cómo se estructuran las métricas dentro de EIGRP, esto incluye la tabla de enrutamiento y también la tabla de topología. I «Estoy seguro de que no soy el único que encuentra los conceptos de EIGRP un poco difíciles de entender.
Se ha creado mi pequeña red y he habilitado un AS de 1 en ambas conexiones para un EIGRP relación vecina. Esta es la salida tanto de la tabla de enrutamiento como de la tabla de topología:
Router#sh ip ro ei 192.168.1.0/30 is subnetted, 1 subnets D 192.168.2.0/24 [90/30720] via 192.168.1.2, 00:09:13, FastEthernet0/0
Sé que 90 es la distancia administrativa, pero la métrica de 30720 parece alta. a través de Ethernet rápida a un solo salto. ¿Podría arrojarse algo de luz sobre por qué esto es tan alto en comparación con OSPF, por ejemplo? Entiendo que este es probablemente un caso simple de manzanas y naranjas que son dos protocolos de enrutamiento separados, pero estoy interesado en saber cómo se calcula.
Router#sh ip ei top IP-EIGRP Topology Table for AS 1/ID(192.168.1.1) Codes: P - Passive, A - Active, U - Update, Q - Query, R - Reply, r - Reply status P 192.168.0.0/24, 1 successors, FD is 28160 via Connected, FastEthernet0/1 P 192.168.1.0/30, 1 successors, FD is 28160 via Connected, FastEthernet0/0 P 192.168.2.0/24, 1 successors, FD is 30720 via 192.168.1.2 (30720/28160), FastEthernet0/0
Como puede ver en lo anterior, el cálculo es 30720/28160. La segunda parte de este cálculo también parece ser la distancia factible de 28160, siendo la primera parte la métrica de 30720 de la tabla de enrutamiento.
¿Podría alguien explicarme el propósito de este cálculo? ¿Y esta cifra cambiará con el tiempo? ¿O está ahora escrito en piedra?
Gracias de antemano.
Comentarios
Responder
Fórmula de la métrica EIGRP
La métrica EIGRP es una combinación de una medida del retardo acumulativo de toda la ruta y el ancho de banda mínimo en toda la ruta. El valor de retardo es el valor asignado a cada «salto» basado en la velocidad de esa interfaz.
La métrica puede también incluir factorizar la carga y confiabilidad de la interfaz, pero esto a menudo se deja deshabilitado.
Todo esto está controlado por lo que se conoce como «valores K», cada «valor k» controla el clima, cada uno de los siguientes se considera en el cálculo de la métrica EIGRP.
K1 = Bandwidth K2 = Load K3 = Delay K4 & K5 = Reliability
Por defecto, el K1 y Los valores de K3 se establecen en 1 y los valores de K2 / K4 / K5 se establecen en 0. Estos valores se pueden insertar en el cálculo métrico compuesto EIGRP completo (bastante complicado):
256 * { K1*BW + [(K2*BW)/(256-load)] + (K3*delay) } * { K5/(reliability+K4) }
Si lo reescribe con un espaciado diferente y agrega colores bonitos y aplica los valores K predeterminados, puede ver cómo se simplifica a solo Delay y Bandwidth:
Lo que significa que la fórmula simplificada, con solo los valores de K predeterminados aplicados, termina siendo esto:
256 * (Bandwidth + Delay)
Valores para ancho de banda y retrasos
El valor de Ancho de banda se basa en el enlace de ancho de banda mínimo en la ruta completa . Pero debido a que los valores de métricas en cualquier protocolo de enrutamiento consideran que un valor más bajo es superior, se debe usar una fórmula para convertir un ancho de banda más alto en una métrica resultante más baja. Esa fórmula es la siguiente:
Bandwidth = 10^7 / BW in Kbps
Entonces, una ruta con un mínimo ancho de banda de enlace de 100 Mbps, equivaldría a 100.000 Kbps, y su cálculo se vería así:
Bandwidth value = 10,000,000 / 100,000 = 100 Delay
Se supone que el retardo es un cálculo de la cantidad de tiempo que tarda un poco en transmitirse a un vecino adyacente. Pero en realidad es simplemente un valor constante basado en el ancho de banda de la interfaz. Sin embargo, dado que esto El factor es aditivo, esencialmente funciona como un recuento de saltos. O tal vez deberíamos decir un recuento de saltos inteligente , ya que también tiene en cuenta el ancho de banda de cada salto.
La lista completa de cada valor de velocidad y retardo de la interfaz se puede encontrar aquí:
https://tools.ietf.org/html/draft-savage-eigrp-00#section-5.5.1.2
Tenga en cuenta que esta tabla muestra un valor en picosegundos (una billonésima de segundo) y el valor de retraso en show interface
se muestra en usec, o microsegundos (una millonésima de segundo).
El valor de retraso utilizado en la fórmula es el valor de microsegundo dividido por 10. Por ejemplo, una ruta que consta de dos enlaces de 100 Mbps cada uno equivaldría a un retraso total en el uso de 200:
Delay Value = 200 / 10 = 20
Cálculo final
Podemos tomar el valor de ancho de banda determinado arriba (100) y el valor de retardo determinado arriba (20) y conectar en la fórmula simplificada para obtener la métrica EIGRP final para un enlace con un ancho de banda de ruta mínimo de 100 Mbps, y cuya ruta completa cruza dos l de 100 Mbps tintas:
EIGRP Metric = 256 * (Bandwidth + Delay) EIGRP Metric = 256 * (100 + 20) EIGRP Metric = 256 * 120 EIGRP Metric = 30720
Que curiosamente es exactamente el mismo valor que enumeraste en tu pregunta:
Router#sh ip ro ei 192.168.1.0/30 is subnetted, 1 subnets D 192.168.2.0/24 [90/30720] via 192.168.1.2, 00:09:13, FastEthernet0/0
Distancia factible frente a distancia informada
Lo que nos lleva volviendo a otro concepto sobre el que podría haber estado confundido. Es decir, tiene que ver con la salida de este comando:
Router#sh ip ei top ... P 192.168.2.0/24, 1 successors, FD is 30720 via 192.168.1.2 (30720/28160), FastEthernet0/0
Hay dos valores proporcionados para la ruta a 192.168.2.0/24
a través de 192.168.1.2
: 30720 y 28160 . Comprender estos dos valores requiere comprender dos términos que EIGRP usa para describir el costo .
El primer valor es lo que se conoce como Distancia factible . Este es el costo total de EIGRP hasta el destino final. El valor que calculamos de 30720 arriba es la distancia factible a la red 192.168.2.0/24.
El segundo valor (28160) es lo que se conoce como Distancia informada (también a veces la Distancia anunciada ). Este valor representa el costo total de EIGRP para mi vecino para llegar a la red de destino. Este es el valor que comparte el vecino cuando anuncia la ruta al enrutador local.
Es posible revertir la deconstrucción del valor de la Distancia informada (también conocido como el costo del vecino) de 28160.
Sabemos que el valor de la métrica EIGRP es 256 * (BW + Delay Si tomamos 28160 y lo dividimos por 256, obtenemos 110. Lo que significa que BW + Delay equivale a 110.
También sabemos que la ruta completa son dos enlaces de 100mbps, así que obviamente la ruta de los vecinos a la red de destino es un enlace de 100 Mbps, o un valor de retardo total de 10. Lo que significa que el valor de Ancho de banda debe haber sumado hasta 100, lo que sabemos que hace cuando se factoriza un enlace de 100 Mbps.
Lo que confirma que el vecino es uno, 100 Mbps saltan de la red de destino, lo que significa que el vecino estaba conectado directamente a la red de destino con un enlace de 100 Mbps.
Lo que finalmente nos permite hablar sobre sus preguntas específicas. Al menos las que aún no han sido respondidas anteriormente:
¿Podría aclararse algo ¿Por qué esto es tan alto en comparación con OSPF, por ejemplo?
El valor de la métrica es un valor de 32 bits, lo que significa que puede ser cualquier número entre 0 y 4,2 mil millones. La métrica solo se considera si la red es del mismo tamaño y la ruta se aprende del mismo protocolo de enrutamiento. Lo que significa que lo que EIGRP considera una métrica nunca se comparará con lo que OSPF considerará una red.
Por tanto, sus diferencias relativas son irrelevantes. Porque si una ruta se aprende de OSPF y EIGRP, la ruta EIGRP será siempre preferida porque su distancia administrativa es menor (90 vs 110).
Entiendo que este es probablemente un caso simple de manzanas y naranjas como dos protocolos de enrutamiento separados, pero estoy interesado en saber cómo se calcula
Correcto, los cálculos métricos de EIGRP y OSPF son manzanas y naranjas, no deben compararse. El cálculo de EIGRP se describe detalladamente anteriormente, o con más detalle en este artículo .
Si desea analizar el cálculo de la métrica OSPF, le sugiero que haga una nueva pregunta.
Como puede ver en lo anterior, el cálculo es 30720/28160. La segunda parte de este cálculo también parece ser la distancia factible de 28160, siendo la primera parte la métrica de 30720 de la tabla de enrutamiento.
Casi . La primera parte es la Distancia factible (30720).La segunda parte es la Distancia informada (28160). La tabla de topología EIGRP realizará un seguimiento de ambos valores. Y la tabla de enrutamiento solo tendrá en cuenta la Distancia factible .
¿Podría alguien explicarme el propósito de este cálculo?
Lleva un registro de la Distancia factible y de la Distancia informada en juego con un mecanismo de prevención de bucles de EIGRP conocido como Condición de viabilidad . Si varios enrutadores EIGRP comparten información sobre la misma red, la distancia informada de cada ruta entrante se puede comparar con lo que el enrutador ya conoce como su mejor distancia factible para determinar si la ruta recién aprendida incluye un bucle de enrutamiento.
¿Y esta cifra cambiará con el tiempo? ¿O es esto ahora escrito en piedra?
La métrica no cambiará a menos que la interfaz suba o baje, la velocidad de la interfaz cambie o el número de saltos cambio. Dado que esos son los que entran en el cálculo, esos son los valores que afectarán un nuevo cálculo. En una red estable, estos normalmente no cambiarán y, por lo tanto, la cifra normalmente no cambiará.
Comentarios
- Excelente información Eddie. Usted ‘ realmente me ha ayudado a entender esto mucho mejor con los cálculos. Sin embargo, solo una pregunta, con la fórmula de ‘ Bandwidth = 10 ^ 7 / BW en Kbps ‘, ¿qué significa el símbolo ^ entre el 10 y el 7? Al principio pensé que podría ser 10 elevado a 7. Si pudiera aclarar eso, sería genial. Son ‘ pequeñas cosas como esta que me ayudan a comprender aún más.
- @LucaA Eso es exactamente lo que significa. 10 ^ 7 = Diez elevado a siete, o un
1
con siete ceros, también conocido como10,000,000
. Me alegro de que la información haya ayudado. Si responde a sus preguntas o si agradeció el tiempo que le tomó escribirlo, por favor ‘ t olvide votar a favor y / o seleccionar una respuesta.- gracias por aclararme eso. Tiene sentido ahora. Le agradezco que se haya tomado el tiempo de escribir la explicación y responder a mis preguntas. ‘ cerraré este hilo ahora.
Responder
¿Podría aclararse por qué esto es tan alto en comparación con OSPF, por ejemplo?
Simplemente no puede comparar métricas entre diferentes protocolos de enrutamiento. Esa es la razón para la creación de la distancia administrativa.
¿Podría alguien explicarme el propósito de este cálculo?
EIGRP usa un cálculo complejo para llegar a su métrica. Implica el ancho de banda, el retraso, la confiabilidad, la carga y el MTU de un enlace, pero, de forma predeterminada, solo utiliza el ancho de banda y el retraso. El cálculo puede incluir muchas cosas que otros protocolos de enrutamiento simplemente no incluyen, por lo que puede obtener una métrica muy granular sobre cuál es la mejor ruta.
¿Y esta cifra cambiará con el tiempo? ¿O está ahora escrito en piedra?
La métrica para EIGRP no ha cambiado desde IGRP (es 256 veces la IGRP), por lo que es poco probable que cambie.
Cisco tiene muchos documentos disponibles en EIGRP. Por ejemplo, Protocolo de enrutamiento de puerta de enlace interior mejorado :
Métricas EIGRP
EIGRP usa el ancho de banda mínimo en la ruta a una red de destino y el retraso total para calcular las métricas de enrutamiento. Aunque puede configurar otras métricas, no lo recomendamos, ya que puede causar bucles de enrutamiento en su red. El ancho de banda y las métricas de retardo se determinan a partir de los valores configurados en las interfaces de los enrutadores en el pa a la red de destino.
Por ejemplo, en la Figura 2 a continuación, el Router Uno calcula la mejor ruta a la Red A.
Comienza con los dos anuncios para esta red: uno a través del enrutador cuatro, con un ancho de banda mínimo de 56 y un retraso total de 2200; y el otro a través del Router Tres, con un ancho de banda mínimo de 128 y un retardo de 1200. El Router One elige la ruta con la métrica más baja.
Calculemos las métricas. EIGRP calcula la métrica total escalando las métricas de ancho de banda y demora.EIGRP utiliza la siguiente fórmula para escalar el ancho de banda:
bandwidth = (10000000/bandwidth(i)) * 256
donde el ancho de banda (i) es el mínimo ancho de banda de todas las interfaces salientes en la ruta a la red de destino representada en kilobits.
EIGRP usa la siguiente fórmula para escalar el retraso:
delay = delay(i) * 256
donde retraso (i) es la suma de los retrasos configurados en las interfaces, en la ruta a la red de destino, en decenas de microsegundos. La demora como se muestra en show ip eigrp topology o show interface comandos está en microsegundos, por lo que debe dividir por 10 antes de usarlo en esta fórmula. A lo largo de este documento, usamos el retraso tal como está configurado y mostrado en la interfaz.
EIGRP usa estos valores escalados para determinar la métrica total de la red:
metric = ([K1 * bandwidth + (K2 * bandwidth) / (256 - load) + K3 * delay] * [K5 / (reliability + K4)]) * 256
Nota: Estos valores de K deben usarse después de una planificación cuidadosa. Los valores K no coincidentes impiden que se cree una relación de vecino, lo que puede provocar que la red no converja.
Nota: Si
K5 = 0
, la fórmula se reduce aMetric = ([k1 * bandwidth + (k2 * bandwidth)/(256 - load) + k3 * delay]) * 256
.Los valores predeterminados para K son:
K1 = 1
K2 = 0
K3 = 1
K4 = 0
K5 = 0
Para el comportamiento predeterminado, puede simplificar la fórmula de la siguiente manera:
metric = bandwidth + delay
Los routers Cisco no realizan operaciones matemáticas de punto flotante, por lo que en cada etapa del cálculo, debe redondear hacia abajo al número entero más cercano para calcular correctamente las métricas. En este ejemplo, el costo total a través del enrutador cuatro es:
En este ejemplo, el costo total a través del enrutador cuatro es:
minimum bandwidth = 56k total delay = 100 + 100 + 2000 = 2200 [(10000000/56) + 2200] x 256 = (178571 + 2200) x 256 = 180771 x 256 = 46277376
Y el costo total a través del enrutador tres es:
minimum bandwidth = 128k total delay = 100 + 100 + 1000 = 1200 [(10000000/128) + 1200] x 256 = (78125 + 1200) x 256 = 79325 x 256 = 20307200
Entonces, para llegar a la red A, el enrutador uno elige la ruta a través del enrutador tres.
Tenga en cuenta que los valores de ancho de banda y retardo que usamos son los configurados en la interfaz a través de la cual el enrutador llega a su próximo salto a la red de destino. Por ejemplo, el Router Two anunció la Red A con el retardo configurado en su interfaz Ethernet; El Router Four agregó el retardo configurado en su Ethernet y el Router One agregó el retardo configurado en su serial.
Su ancho de banda es 100000K
por lo que el ancho de banda que utiliza el cálculo es 10000000 / 100000 = 100
. La demora es de 200
microsegundos, por lo que la demora que utiliza el cálculo es 20
. Esto nos lleva a 120 * 256 = 30720
, y ese es el valor que informa.
Conectando sus números al ejemplo que Cisco ha dado anteriormente:
[(10000000/100000) + 20] x 256 = (100 + 20) x 256 = 120 x 256 = 30720
Comentarios
- Esperaba tu propia explicación. En lugar de mostrarme un enlace de lo que ‘ ya está disponible. Estoy ‘ buscando una explicación simplificada de cómo funciona todo esto. Gracias de todos modos por tu aporte.
- @LucaA, si te das cuenta, de hecho respondí las preguntas que hiciste. ¿Qué más no entiendes ‘?
Responder
Sé que 90 es la distancia administrativa, pero la métrica de 30720 parece alta yendo a través de Ethernet rápida a un solo salto. ¿Podría arrojarse algo de luz sobre por qué esto es tan alto en comparación con OSPF, por ejemplo? Entiendo que este es probablemente un caso simple de manzanas y naranjas que son dos protocolos de enrutamiento separados, pero estoy interesado en saber cómo se calcula.
Tiene razón, es como comparar manzanas y naranjas 🙂 Por ejemplo, la métrica máxima de RIP es 15, pero no significa nada cuando se compara con una métrica de EIGRP de 30720.
Con respecto a la La métrica de EIGRP es tan alta – parte de la razón es que EIGRP multiplica su métrica por 256 para ser compatible con IGRP (predecesor de EIGRP). Según esta entrada de Wikipedia :
IGRP usa la misma fórmula básica para calcular la métrica general, la única diferencia es que en IGRP, la fórmula no contiene el factor de escala de 256. De hecho, este factor de escala se introdujo como un medio simple para facilitar la compatibilidad hacia atrás entre EIGRP e IGRP: en IGRP, la métrica general es un valor de 24 bits, mientras que EIGRP utiliza un valor de 32 bits ue para expresar esta métrica.Al multiplicar un valor de 24 bits por el factor de 256 (desplazándolo efectivamente 8 bits a la izquierda), el valor se amplía a 32 bits y viceversa. De esta manera, la redistribución de información entre EIGRP e IGRP implica simplemente dividir o multiplicar el valor de la métrica por un factor de 256, lo cual se hace automáticamente
Con respecto a cómo la métrica está calculada, escribí una publicación de blog detallada al respecto hace un tiempo. En resumen, la métrica se calcula utilizando esta fórmula:
256 * [(10000000 /) + (/ 10)]
Cuando ejecutamos las cifras que proporcionó (Métrica vectorial: el ancho de banda mínimo es 100000 Kbit El retardo total es 200 microsegundos) a través de esta fórmula, obtenemos la métrica correcta:
10000000/100000 = 100
200/10 = 20
100 + 20 = 120
256 * 120 = 30720
Comentarios
- ¡También buena información! ‘ revisaré la publicación detallada de su blog para obtener una explicación más detallada. Es bueno tener múltiples fuentes cuando se trata de cosas como esta. Gracias.
- No se preocupe en absoluto @LucaA. Avísame si tienes alguna otra pregunta y ‘ estaré encantado de ayudarte.
show ip eigrp topology 192.169.2.0/24
– esa salida me ayudará cuando responda su pregunta.