21 de octubre de 2009

Jugando con los Switches: Port trunking (1/3)

conjuntoEntradas() {
  Jugando con los Switches: Port trunking (1/3)
}

Un poco de historia
Ahora, que ya hace unas semanas atrás, que en la empresa hemos podido conseguir en su totalidad, en el caso de la delegación donde yo estoy, unos switches más adecuados para
  1. El tamaño de la red de la delegación.
  2. Uso que le damos a la red.
He podido empezar a jugar con ellos y poner en marcha funcionalidades que ofrece que nos van a permitir mejorar el rendimiento de interconexiones entre ellos mismos y servidores de ficheros con gran número de peticiones, siempre que estos últimos estén preparados para ello.

Inroducción
En esta entrada voy a tratar (aprovechando que que todos los switches que tenemos actualmente en la delegación implementan la funcionalidad) de lo que se llama link aggregation, dentro del cual se incluyen otros términos muy relacionados, y como nó, podéis encontrar en la propia definición de link aggregation de nuestra amada Wikipedia, que al menos a mí me ha sido bastante útil para ver de que se trata, además de poder saltar a otra información relacionado con el tema que también puede ser de interés, por lo tanto básicamente voy a decir básicamente de que se trata y no a extenderme mucho más ya que no es el objetivo de este post.

Link aggregation nos permite utilizar varios puertos de conexión (por ejemplo puertos ethernet) como si se tratara de uno solo, permitiendo de esta manera aumentar los límites de capacidad asociados a un solo puerto; resumiendo usamos varios puertos físicamente distintos pero lógicamente funcionan como uno de solo.

Beneficios
Creo conveniente enumerar os beneficios de la utilización de link aggregation ya que es el eje principal de haber experimentado la funcionalidad y posteriormente ponerla en práctica y ahora escribir la experiencia sobre este post.

En fin los beneficios son:
  1. Aumentar el rendimiento máximo que nos ofrece un solo puerto físico utilizando varios de ellos pero funcionando como un solo puerto lógico.
  2. Balanceo de carga entre los distintos puertos.
  3. Redundancia, para asegurarnos el mantenimiento de la conexión en caso de fallo de alguno de los puertos.
Aunque los beneficios parecen muy claros surgen ciertas limitaciones sobre alguno de estos, en ellas nos encontramos:
  • La redundancia se ve limitada por el estado actual del estándar el cual no define la manara de que los puertos físicos agregados vayan interconectados a distintos dispositivos, es decir que si uno de ellos conecta con un dispositivo, por ejemplo de un switch A a otro B, el resto tienen que ir conectados por a los mismos por lo que la redundancia queda limitada a fallos únicamente en puertos y/o cableado de interconexión de un puerto, por lo tanto si uno de los dispositivos decide abandonarnos, la redundancia no nos va a salvar el culo.
    Aunque el estándar no define este asunto, ciertos fabricantes (ya sabemos que estos siempre suelen ir por delante de los estándares, bueno es lo que les toca para mantener una buena línea de negocio) ya han creado protocolos cerrados que permiten que los puertos agregados vayan conectados entre distintos dispositivos (siempre que todos sean de su firma) y de esta manera garantizar una redundancia real. Esto mismo sucede cuando varios switches están interconectados por diferentes caminos, algo que el STP controla, solo dejando habilitado el de menor coste, pero que en el caso que falle habilita el siguiente con menor coste para garantizar la conexión; pero en el caso de link aggregation no se deshabilitan sino que se utilizan para aumentar la tasa de transferencia.
  • El balanceo de carga se ve afectado por el mismo concepto que la redundancia, provocando que el balanceo solo se produzca entre puertos y cables, pero si lo que está saturado es uno de los dispositivos no se puede balancear nada.
Por otra parte aunque no encuentro que sea una limitación hay que tener en cuenta que todos los puertos agregados sobre un grupo tienen que tener las mimas capacidades de velocidad de transmisión, es decir que si uno es gigabit el resto tendrán que también ser lo; no obstante esto no limita a que los distintos puertos tengan distinto tipo de conexión física (ethernet, fibra, etc).

Hasta la próxima enfermos.