Me gustaría obtener algunas opiniones sobre las formas en que puedo mejorar un diseño de doble enrutador y doble proveedor de BGP. Cada proveedor proporciona una subred pública / 24. Me referiré a los enrutadores, circuitos, subredes, grupos HSRP y proveedores como A y B, respectivamente. El ancho de banda en cada circuito es adecuado para toda la carga.
Diseño actual
El diseño actual intenta lograr la simetría por proveedor. En un estado estable, la lógica de enrutamiento prevista es que el tráfico hacia / desde la subred A solo transita por el circuito A y el tráfico hacia / desde la subred B solo transita por el circuito B. Los circuitos se respaldarían entre sí en un estado fallido.
Los proveedores solo anuncian la ruta predeterminada. El enrutamiento de salida implica una mezcla de PBR y HSRP. Los enrutadores no tienen enrutamiento entre ellos: sin iBGP, sin OSPF, sin enrutamiento estático. En cambio, hay dos grupos HSRP que siguen la ruta predeterminada. El enrutador A es primario para el grupo HSRP A y el enrutador B es primario para el grupo HSRP B. Los dispositivos aguas abajo tienen una ruta predeterminada que apunta al grupo HSRP A y PBR que dirige el tráfico proveniente de la subred B al grupo B. HSRP. comunidades La subred A se antepone y se comunica en el circuito B y la subred B se antepone y se comunica en el circuito A.
Veo mucho margen de mejora en este diseño. La falta de conocimiento de la topología de Internet combinada con la afinidad del circuito elimina por completo la mejor selección de ruta. Existen preocupaciones sobre la designación de nivel de los proveedores y el diseño se ha racionalizado para proporcionar un "rendimiento aceptable" y más fácil de solucionar. De hecho, el diseño no podría ser más simple. He demostrado que el tránsito de un AS adicional agrega 6 saltos y 63 ms (+ 421%) al RTT. Preferiría no conformarme con lo aceptable.
Mejor diseño
El mejor diseño proporciona a los enrutadores el mayor conocimiento posible de la topología de Internet. Se deja el mejor algoritmo de ruta para determinar la lógica de enrutamiento entrante y saliente. Los circuitos se respaldarían entre sí en un estado fallido.
Los proveedores anuncian la vista completa. Los enrutadores ejecutan iBGP y OSPF. HSRP es eliminado. El enrutamiento de salida sería la mejor ruta basada exclusivamente en el destino y el enrutamiento de entrada se dejaría al mejor algoritmo de ruta y caprichos del proveedor de tránsito.
Ahora que lo escribo, parece más simple. Por lo menos, tomó menos palabras para explicar. Hay preocupaciones sobre la asimetría, pero he visto mucha asimetría en el diseño actual. Creo que probablemente son igualmente propensos a la asimetría y realmente no me preocupa. Nunca hemos visto problemas como resultado. Actualmente queda relegado al reino de los ifs, "¿Qué 'si' tuviéramos que solucionar algo?"
¿Estoy fuera de la base aquí o golpeé el clavo en la cabeza? ¿Cómo han resuelto otros este problema? ¿Qué haría Google?