Cómo mejorar el ancho de banda en una red de datos. Parte 3

By on

1. LINK TO THE PAST

¿Os suena el título de esta sección? Si buscabas información sobre aquel maravilloso juego de Nintendo del 2003, lo siento este no es tu artículo, pero hay que reconocer que sirvió a muchos como motivación para acercarse al mundo de la tecnología y crear grandes y apasionados profesionales del sector…

Continuando con el post anterior, (si no tuviste oportunidad te recomiendo que le eches un vistazo aquí) vamos a reanudar, con algunos ejemplos para que podáis optimizar al máximo vuestros recursos de red en cuestión de ancho de banda.

Como comentamos anteriormente, existen escenarios en los que los routers de nuestra red no tienen activada la traslación de direcciones NAT, por la cual se “enmascaran” y se hacen invisibles al destinatario las direcciones IP del emisor. Es la técnica más utilizada en IPv4 para poder comunicarse en Internet.

En este diagrama, podemos ver cómo se modifica la IP de origen del paquete IP:

Cuando se desactiva el proceso de enmascaramiento, la función del router se simplifica ya que no necesita mantener una tabla adicional en su memoria para recordar qué paquetes fueron modificados al sacarlos por una interfaz. Solo se dedica a lo que más le gusta: ENRUTAR. El router busca en otras tablas de enrutamiento para ver qué interfaz es la más óptima para enviar el paquete IP a su destino. Es el funcionamiento básico de las redes privadas y de las actuales IPv6.

Como vemos, en paquete, en su cabecera IP no se ve modificado al no existir NAT:

¿Y por qué todo esto?

Recordemos que existen varias técnicas para agregar ancho de banda a un enlace y que ahora toca revisar las distintas opciones que tenemos si no existe una NAT de por medio.

2.Técnicas de agregación de enlaces sin NAT.

Dependiendo de la capa del modelo OSI en el que nos encontremos, existen distintas técnicas y metodologías para conseguir nuestro objetivo.

  • Unión de redes en Capa 2 (enlaces entre switches): aquí se emplean técnicas de Bonding, LACP, PortChannel.
  • Unión de redes en Capa 3 (enlaces entre routers): aquí se emplean técnicas de enrutamiento estático como ECMP o enrutamiento dinámico en base al protocolo que utilicemos (EIGRP, OSPF, BGP).
  • Unión entre Servidores y Switches: aquí se emplean técnicas como LACP o propietarias del fabricante de la tarjeta de red o Sistema Operativo (Teaming).

Veamos las más utilizadas en el primer punto, la Capa 2. Según las denominaciones de algunos fabricantes tendríamos:

  • CISCO: PortChannel, LACP.
  • HP: Link Aggregation, LACP.
  • Mikrotik: Bonding, LACP.

El objetivo de todos ellos es el mismo, aprovechar al máximo todos los enlaces con los que están conectados dos electrónicas de red:

Para llevar a cabo este objetivo se necesitan solamente dos cosas:

  • Un grupo de interfaces que formen parte del mismo “equipo” para trabajar de manera coordinada.
  • Un protocolo que decida por qué interfaz enviar el paquete.

3. FORMANDO EQUIPO

Todos los interfaces que formen parte del equipo han de tener configuraciones y características parecidas. Por ejemplo, todos deben funcionar a la misma velocidad y todos deben de trabajar en el mismo modo de trabajo (acceso o trunk).

EQUIPO ROJO: FABRICANTE CISCO IOS CATALYST 3750G

Un equipo formado con el fabricante CISCO utiliza una interfaz llamada Portchannel, sería algo así:

//(DEFINIMOS EL NOMBRE DEL EQUIPO)

interface Port-channel1

switchport access vlan 200

switchport mode access

!

//(DEFINIMOS EL INTEGRANTE NÚMERO 1 DEL EQUIPO)

interface GigabitEthernet0/1

switchport access vlan 200

switchport mode access

channel-group 2 mode on

!

//(DEFINIMOS EL INTEGRANTE NÚMERO 2 DEL EQUIPO)

interface GigabitEthernet0/2

switchport access vlan 200

switchport mode access

channel-group 2 mode on

EQUIPO AZUL: FABRICANTE HP Comware – HP 5900AF-48XGT-4QSFP+

//(DEFINIMOS EL NOMBRE DEL EQUIPO)

interface Bridge-Aggregation1

description ENLACE-SWITCH1

link-aggregation mode dynamic

//(DEFINIMOS EL INTEGRANTE NÚMERO 1 DEL EQUIPO)

interface GigabitEthernet4/0/45

port link-mode bridge

description ENLACE-SWITCH1

port link-aggregation group 1

//(DEFINIMOS EL INTEGRANTE NÚMERO 2 DEL EQUIPO)

interface GigabitEthernet4/0/46

port link-mode bridge

description ENLACE-SWITCH1

port link-aggregation group 1

#

EQUIPO VERDE: FABRICANTE MIKROTIK ROUTER OS – CCR1036-12G-4S

Un equipo formado por un router Mikrotik utiliza una interfaz llamada Bonding, sería algo así:

4. ESTRATEGIA DEL EQUIPO

En un escenario donde tenemos dos switches enlazados entre sí con más de un cable pueden ocurrir dos cosas:

  • Que los switches “hablen” entre ellos con un protocolo común y se pongan de acuerdo para ver cuantos enlaces activan al mismo tiempo. CISCO PAGP y LACP IEEE 802.3 ad son algunos ejemplos.
  • Que los switches no “hablen” entre sí y se opte por forzar los interfaces para formar el equipo.

Una vez determinados los interfaces del equipo y conocido a nuestro vecino, el switch debe de elegir por qué interfaz enviar un paquete para que se utilicen todos los enlaces de salida de una forma lo más equitativa posible. Es el llamado Load Balance, y se debe de elegir un algoritmo de distribución de salida adecuado para que se envían millones de paquetes por segundo se dé la apariencia de estar conectados con un solo enlace.

El mecanismo de selección de interfaz de salida es sencillo, se elige un criterio (por ejemplo, una IP) y se le pasa una función matemática que siempre da un valor entero y que coincide con alguna de las interfaces de salida disponibles:

FUNCIONA MATEMÁTICA CRITERIO SRC-IP (IP1) = INTERFAZ DE SALIDA 1

FUNCIONA MATEMÁTICA SRC-IP (IP2) = INTERFAZ DE SALIDA 2

FUNCIONA MATEMÁTICA SRC-IP (IP3) = INTERFAZ DE SALIDA 2

En base al criterio de balanceo elegido tendremos algunas ventajas e inconvenientes:

  • Src-mac: Todos los paquetes con la misma dirección MAC de origen saldrán siempre por el mismo “cable”. Esta configuración no nos dará ningún problema de transmisiones con paquetes desordenados, pero si nos toca un compañero de “enlace” como un servidor puede hacernos la vida imposible a la hora de navegar y congestionar el ancho de banda del cable que nos ha tocado…
  • Dst-Mac: Todos los paquetes con la misma dirección MAC de destino saldrán siempre por el mismo “cable”. En este caso tampoco parece buena idea utilizar este criterio ya que si hay muchos paquetes que vayan con destino a un servidor o un router… saturarán también dicho enlace.
  • Src-mac & dst-mac: Al combinar ambos, la probabilidad  de que se comience a utilizar todos lo enlaces crece, pero… ¿y si la dirección de destino es una IP pública de Internet? La dirección MAC de destino será la de nuestro router y tendremos todavía algunos enlaces más usadas que otros.
  • Src-dst-ip: En este caso, la dirección de origen y la dirección de destino se combinan y suelen tener mucha más probabilidad de utilizar interfaces de salida distintas proporcionando un buen rendimiento de la agregación de enlaces.
  • L2 y L3: Combina datos de la capa 2 como la MAC y de la capa 3 como la IP.
  • L3 y L4: Igualmente, pero con datos de la capa 4 como un puerto.

En definitiva, cuántos más cantidades de criterios y lo más diversos posibles sean realizaremos un buen aprovechamiento de nuestros enlaces. Lamentablemente no todos los fabricantes soportan todos estos criterios de balanceo así que habrá que informarse previamente cuáles de ellos dispone el switch que vayamos adquirir o elegir el más favorable si ya hemos adquirido nuestro switch.

Hasta aquí nuestro repaso a la agregación de enlaces y a este fascinante mundo de la suma de caudales. Espero que os haya parecido interesante y hayáis podido obtener una visión más completa de las opciones que tenemos para mejorar cuando por desgracia…no tenemos ancho de banda suficiente.