El multihoming es la práctica de conectar un host o una red informática a más de una red. Esto se puede hacer para aumentar la confiabilidad o el rendimiento.
Una red típica de host o usuario final está conectada a una sola red. Conectarse a varias redes puede aumentar la confiabilidad porque si una conexión falla, los paquetes aún pueden enrutarse a través de la conexión restante. Conectarse a varias redes también puede mejorar el rendimiento porque los datos pueden transmitirse y recibirse a través de varias conexiones simultáneamente, lo que multiplica el rendimiento y, según el destino, puede ser más eficiente enrutar a través de una red u otra.
Variantes
Hay varias formas diferentes de realizar multihoming.
Host multihoming
Un único host puede estar conectado a varias redes. Por ejemplo, un teléfono móvil puede estar conectado simultáneamente a una red WiFi y a una red 3G , y una computadora de escritorio puede estar conectada tanto a una red doméstica como a una VPN . A un host multihomed normalmente se le asignan varias direcciones, una por cada red conectada.
Multihoming clásico
En el multihoming clásico, [1] [2] una red está conectada a múltiples proveedores y utiliza su propio rango de direcciones (normalmente de un rango independiente del proveedor (PI)). Los enrutadores de borde de la red se comunican con los proveedores mediante un protocolo de enrutamiento dinámico , normalmente BGP , que anuncia el rango de direcciones de la red a todos los proveedores. Si uno de los enlaces falla, el protocolo de enrutamiento dinámico reconoce la falla en cuestión de segundos o minutos y reconfigura sus tablas de enrutamiento para utilizar los enlaces restantes, de forma transparente para los hosts.
El multihoming clásico es costoso, ya que requiere el uso de un espacio de direcciones que sea aceptado por todos los proveedores, un número de Sistema Autónomo (AS) público y un protocolo de enrutamiento dinámico. Como el espacio de direcciones multihoming no se puede agregar, provoca el crecimiento de la tabla de enrutamiento global. [3] [ verificación fallida ]
Multihoming con múltiples direcciones
En este enfoque, la red se conecta a varios proveedores y se le asignan varios rangos de direcciones, uno para cada proveedor. A los hosts se les asignan varias direcciones, una para cada proveedor. [4]
El multihoming con múltiples direcciones es más económico que el multihoming clásico y se puede utilizar sin ninguna cooperación de los proveedores (por ejemplo, en una red doméstica), pero requiere tecnología adicional para realizar el enrutamiento: [5]
- Para el tráfico entrante, los hosts deben estar asociados con múltiples registros DNS A o AAAA para que sean accesibles a través de todos los proveedores;
- Para el tráfico saliente, se debe utilizar una técnica como el enrutamiento específico de origen para enrutar los paquetes a través del proveedor correcto, y los hosts deben implementar políticas de selección de dirección de origen razonables.
Advertencias
Cuando se utiliza multihoming para mejorar la confiabilidad, se debe tener cuidado de eliminar cualquier punto único de falla (SPOF):
- Conectividad ascendente : un centro de operaciones de red determinado debe tener múltiples enlaces ascendentes a proveedores independientes . Además, para reducir la posibilidad de daños simultáneos a todos los enlaces ascendentes, la ubicación física de cada uno de estos enlaces ascendentes debe ser físicamente diversa: lo suficientemente separada como para que una pieza de maquinaria (como una retroexcavadora ) no corte accidentalmente todas las conexiones al mismo tiempo.
- Enrutadores : los enrutadores y conmutadores deben ubicarse de manera que ningún componente de hardware de red controle todo el acceso a la red de un host determinado. En particular, no es raro ver que varios enlaces ascendentes de Internet convergen en un único enrutador de borde. En una configuración de este tipo, la pérdida de ese único enrutador desconecta el enlace ascendente de Internet, a pesar de que se estén utilizando varios ISP.
- Conectividad del host : un host "confiable" debe estar conectado a la red a través de múltiples interfaces de red , cada una conectada a un enrutador o conmutador independiente. Como alternativa, y preferiblemente, la función de un host determinado podría duplicarse en varias computadoras, cada una de las cuales está conectada a un enrutador o conmutador diferente.
- Entidades de referencia : no solo es necesario que un host sea accesible, sino que en muchos casos también debe ser "referenciado" para que sea útil. Para la mayoría de los servidores, esto significa en particular que la resolución de nombres a ese servidor sea funcional. Por ejemplo, si la falla de un solo elemento impide que los usuarios resuelvan correctamente el nombre DNS de ese servidor, entonces el servidor es efectivamente inaccesible, a pesar de su estado conectado.
Al aumentar el número de interfaces y enlaces utilizados y hacer que el enrutamiento sea menos determinista, el multihoming complica la administración de la red [ cita requerida ] .
IPv4
La técnica dominante para IPv4 es el multihoming clásico. Requiere que una red tenga su propio rango de direcciones IP públicas y un número AS público.
Si bien se ha implementado el multihoming con múltiples direcciones para IPv4, [6] no se lo utiliza generalmente, ya que las implementaciones de host no manejan bien múltiples direcciones por interfaz, lo que requiere el uso de "interfaces virtuales". [7] También es posible implementar el multihoming para IPv4 utilizando múltiples puertas de enlace NAT . [8]
IPv6
En IPv6 se pueden utilizar tanto el multihoming clásico como el multihoming con múltiples direcciones.
Multihoming clásico
El espacio de direcciones independiente del proveedor (PI) está disponible en IPv6. [9] Esta técnica tiene la ventaja de funcionar como IPv4, lo que permite equilibrar el tráfico entre varios proveedores y mantener las sesiones TCP y UDP existentes mediante cortes. Los críticos dicen que el mayor tamaño de las tablas de enrutamiento necesarias para gestionar el multihoming de esta manera abrumará al hardware del enrutador actual. Los defensores dicen que el nuevo hardware podrá manejar el aumento debido a una memoria más barata, cuyo precio baja de acuerdo con la ley de Moore . Los defensores también dicen que esta es la única solución viable en este momento, y la filosofía de que lo peor es mejor respalda la idea de que es mejor implementar una solución imperfecta ahora que una solución perfecta después de que sea demasiado tarde.
Debido a que muchos ISP filtran los anuncios de ruta con prefijos pequeños, esto generalmente requerirá una asignación de IP grande "del tamaño del ISP", como un /32, para garantizar la accesibilidad global. El uso de prefijos tan grandes es un uso ineficiente del espacio de direcciones de IPv6; solo hay alrededor de 4 mil millones de prefijos /32. Sin embargo, desde una perspectiva pragmática, asignar un /32 es equivalente en costo de espacio de direcciones global a asignar una sola dirección IPv4, y esto puede ser aceptable si, como parece ser probable para el futuro previsible, la cantidad de sitios multihomed solo puede contarse en millones, en oposición a los muchos miles de millones de puntos finales no multihomed que se anticipa que comprenderán la gran mayoría de los puntos finales de IPv6. [ cita requerida ] Algunos registros regionales de Internet (RIR) como RIPE han comenzado a asignar /48 de un prefijo específico para este propósito. RIPE asigna espacios de direcciones IPv6 independientes del proveedor /48 o más cortos desde 2001:0678::/29.
Multihoming con múltiples direcciones
Se ha implementado el multihoming con múltiples direcciones para IPv6. [6] [10] Para el tráfico saliente, esto requiere soporte en el host, ya sea independiente del protocolo ( Multipath TCP , SCTP , QUIC , etc.) o específico para IPv6 (por ejemplo, SHIM6 ).
Otras soluciones
- Renumeración automática. [6] [11] Si un enlace ascendente falla, todas las direcciones de la red se renumerarán en una nueva subred /48. Los registros de DNS y firewall deben actualizarse para redirigir el tráfico a una subred /48 diferente. Esta renumeración interrumpirá las sesiones TCP y UDP activas.
- Protocolo de separación de localizador e identificador (LISP)
Véase también
- De doble hogar
- Protocolo de identidad del host (HIP)
- Protocolo de red de identificadores y localizadores (ILNP)
- Equilibrio de carga
- Protocolo de separación de localizador e identificador (LISP)
- Entrega independiente del medio o entrega vertical en IEEE 802.21
- IP móvil
- Multihoming de sitios mediante intermediación IPv6 (SHIM6)
Referencias
- ^ Iljitsch van Beijnum, Una mirada al multihoming y BGP, archivado desde el original el 6 de julio de 2010
- ^ Ejemplo de configuración para BGP con dos proveedores de servicios diferentes (multihoming)
- ^ "Informes BGP". Bgp.potaroo.net . Consultado el 17 de agosto de 2022 .
- ^ Soporte escalable para conectividad multiproveedor y multihomed. doi : 10.17487/RFC2260 . RFC 2260.
- ^ Enunciado del problema para la selección de direcciones predeterminadas en entornos con múltiples prefijos: cuestiones operativas de las reglas predeterminadas de RFC 3484. doi : 10.17487/RFC5220 . RFC 5220.
- ^ abc Matthieu Boutier; Juliusz Chroboczek (2015), "Enrutamiento específico de la fuente", Proc. IFIP Networking 2015 , arXiv : 1403.0445 , Bibcode :2014arXiv1403.0445B
- ^ Winter, Rolf; Faath, Michael; Ripke, Aneas (21 de marzo de 2016). "Compatibilidad con TCP de múltiples rutas para sistemas finales con una sola conexión". IETF .
- ^ Enrutamiento vectorial (PDF) , archivado desde el original (PDF) el 17 de mayo de 2013 , consultado el 7 de enero de 2012
- ^ "Asignaciones de IPv6 independientes del proveedor (PI) para organizaciones de usuarios finales". 6 de enero de 2011.
- ^ Lamparter, David; Smirnov, Anton (2 de mayo de 2016). "Enrutamiento de origen/destino". IETF .
- ^ Atkinson, Randall; Carpenter, Brian E.; Flinck, Hannu (mayo de 2010). La renumeración aún necesita trabajo. doi : 10.17487/RFC5887 . RFC 5887.
Lectura adicional
- Akella, A.; Maggs, B.; Seshan, S.; Shaikh, A. y Sitaraman, R. (2003). "Un análisis basado en la medición de multihoming". Actas de la conferencia de 2003 sobre aplicaciones, tecnologías, arquitecturas y protocolos para comunicaciones informáticas . págs. 353–364. doi : 10.1145/863955.863995 . ISBN . 1-58113-735-4. Número de identificación del sujeto 1801040.
- De Launois, C.; Bagnulo, M. (2006). "Los caminos hacia el multihoming de IPv6". IEEE Communications Surveys & Tutorials . 8 (2): 38–51. doi :10.1109/COMST.2006.315853. S2CID 37377959.
- Hau, T.; Burghardt, D. y Brenner, W. (2011). "Multihoming, redes de distribución de contenido y el mercado de la conectividad a Internet". Política de telecomunicaciones . 35 (6): 532–542. doi :10.1016/j.telpol.2011.04.002.