Resumen

  • En RFC 9747, A genera el paquete y su estado; B lo devuelve mediante reenvío IP ordinario, sin interpretar BFD ni declarar su salud.
  • Un TTL o Hop Limit recibido de 254, los parámetros locales y la configuración compatible delimitan la prueba. No demuestran disponibilidad de la IP remota ni del servicio posterior.
  • La política del cliente determina la respuesta y el negocio asume sus consecuencias. Recuperar Echo no basta para regresar automáticamente a la ruta anterior.

Menos dependencia no significa menos condiciones

Un vecino que no implementa BFD completo puede seguir siendo útil para una prueba de fallo rápida. Esa es la apertura que ofrece RFC 9747, publicado en marzo de 2025 dentro del proceso de normalización IETF y como actualización de RFC 5880. Pero “no necesita BFD” no equivale a “no necesita configuración”. B debe reenviar IP, algo que un host quizá no tenga activado por defecto. El documento no prescribe cómo provisionar en B el retorno necesario.

El detalle decisivo está en A. Envía hacia B un paquete cuya IP de destino es una dirección del propio A. Tiene que sacarlo por la interfaz elegida, en vez de consumirlo como entrega local. En un enlace de acceso múltiple también debe utilizar el destino de enlace correspondiente al vecino. Una captura en la interfaz permite comprobar esa salida real; el nombre de una sesión no basta para establecerla.

El resultado es un bucle deliberadamente pequeño. B devuelve el paquete por reenvío IP normal. La sección 1 limita el mecanismo a un salto IP, tanto en IPv4 como en IPv6, y aclara que no comprueba la disponibilidad de una IP concreta de B. Si el primer salto ya devuelve el paquete, no se ha recorrido un trayecto de varios saltos. Ni las aplicaciones de B ni los destinos posteriores han tenido que responder.

Esta reducción de dependencia importa allí donde una sesión de control bilateral resulte impracticable o poco deseable. La publicación del RFC, sin embargo, no informa cuántas redes lo usan ni cuánto mejoraron sus tiempos de recuperación. La oportunidad técnica y el resultado de una implantación son datos diferentes.

La prueba puede perder sus condiciones

Las reglas Echo de RFC 5881 buscan evitar Redirect. No conviene emplear como origen una dirección de la subred de salida o una dirección IPv6 link-local, salvo que se sepa que no habrá redirección. La comprobación estricta de ruta inversa unicast puede impedir el retorno, como advierte RFC 9747 y explica RFC 3704. Hay que compatibilizar esa prueba acotada con la protección de entrada, no desactivar la defensa contra suplantaciones en toda la red.

Una modificación de filtros, del reenvío o de la asociación local puede hacer desaparecer Echo sin que haya fracasado la transacción que interesa al usuario. La presión sobre la recepción de A es otra posible explicación. A la inversa, B puede seguir reenviando el paquete a A con su IP de gestión caída o una aplicación posterior inoperativa. Hablar de falso positivo o falso negativo exige definir primero qué servicio se afirma disponible y durante qué intervalo. Un resultado engañoso para esa afirmación no implica necesariamente que la máquina de estados BFD haya incumplido la especificación.

Lo que vuelve es de A

El paquete tiene formato BFD Control, pero va al puerto UDP Echo 3785. B no intercepta el paquete para participar en BFD, no analiza sus campos ni genera estado BFD. A procesa el retorno con los procedimientos pertinentes de modo asíncrono, validación y autenticación. Desde A puede verse como una sesión; entre extremos no hay coordinación del estado del protocolo.

Por eso Down, Init y Up proceden de información que A ha emitido y recibe de vuelta. AdminDown no se utiliza. No llega por ese medio una intención administrativa del vecino, como terminar una ventana de mantenimiento. My Discriminator se provisiona localmente; Your Discriminator empieza a cero y luego adopta el My Discriminator devuelto. Al inicio, la IP de origen o el puerto UDP de origen seleccionan la sesión; después se usa solo Your Discriminator. Esa selección no es una credencial de identidad remota. La sección 2 fija el procedimiento.

Todos los paquetes salen con TTL o Hop Limit 255. Al recibirlos, el valor debe ser exactamente 254; cualquier otro obliga a descartarlos. La autenticación no elimina esa obligación. La condición comprueba el salto bajo las hipótesis de reenvío, no identifica por sí sola a B. Un túnel o comportamiento particular requiere validación propia, no una excepción oportunista para mantener el indicador en verde.

RFC 9747 recomienda incluir la sección de autenticación BFD por el riesgo de paquetes falsificados. Pero la autenticación también se genera en A. Validar lo que vuelve protege la prueba dentro del esquema elegido; no convierte a B en un interlocutor independiente que haya acreditado identidad, intención o disponibilidad de negocio. La ausencia de conversación BFD es la ventaja y el límite del diseño.

Tres campos que no acuerdan el reloj

Desired Min TX Interval y Required Min RX Interval deben contener un valor determinado para no exponer memoria sin inicializar. Se recomienda un segundo, 1.000.000 de microsegundos; para Required Min Echo RX Interval se recomienda cero. Los tres se ignoran al recibir, y los dos primeros no pueden calcular Detection Time. Leer sus valores como una negociación bilateral sería un error.

A configura el intervalo de envío en Up y Detect Mult. El comienzo y la recuperación después de Down emplean el ritmo lento descrito en el RFC, no superior a un paquete por segundo; Up utiliza el intervalo provisionado. Si durante Up no llegan tantos Echo esperados como indica Detect Mult, A debe pasar a Down y poner LocalDiag en 2, Echo Function Failed.

Multiplicar intervalo y cantidad de ausencias sirve para ilustrar un presupuesto nominal, no una garantía de convergencia medida. El envío y la recepción fluctúan; luego vienen la respuesta del cliente, la actualización del reenvío y la recuperación de los usuarios. Reducir el primer presupuesto no demuestra que el último se haya reducido.

Así, el vecino permite comprobar un bucle, pero no habla sobre todo lo que hay detrás. La conclusión aprovechable es que ese bucle satisfizo condiciones locales dentro de un presupuesto local. Extenderla a la salud del servicio introduce un supuesto que la prueba nunca observó.

Fuentes

Especificación, reglas heredadas y estado: RFC Editor, RFC 9747, IETF Datatracker, RFC 5880, RFC 5881, RFC 5882, RFC 5082, RFC 3704, RFC 9747 — errata.

Marco analítico atribuido: Lu Heng — Note 65, Lu Heng — Note 64, Lu Heng — Note 36.