Loading AI tools
De Wikipedia, la enciclopedia libre
Las redes definidas por software (en inglés software defined networking, SDN) son un conjunto de técnicas relacionadas con el área de redes computacionales, cuyo objetivo es facilitar la implementación e implantación de servicios de red de una manera determinista, dinámica y escalable, evitando al administrador de red gestionar dichos servicios a bajo nivel. Todo esto se consigue mediante la separación del plano de control del plano de datos.[1]
Utilizan un enfoque pensado para el sector empresarial que pueda optimizar los recursos disponibles y mejore las comunicaciones al momento de enrutar el tráfico, esto mediante el uso de software para priorizar y ordenar el tráfico de la red, que de forma general envía el uso de ciertas aplicaciones a través de determinadas conexiones, considerando métricas como la velocidad, latencia y consumo que demandan estas aplicaciones. Haciendo una analogía se puede ver el flujo de la información como el tráfico de muchos vehículos en una avenida y la tecnología SD-WAN sería la autoridad encargada de poner orden asegurando un flujo adecuado ahorrando recursos. La gestión de una WAN de gran tamaño se ha caracterizado siempre por ser costosa e inflexible, pero las características de la tecnología SD-WAN hacen más simple y barata la administración de los dispositivos de red, que permite hacer configuraciones de forma remota y están diseñadas para que el sistema ejecute de forma automática la elección de la ruta más eficiente tomando decisiones inteligentes, reduciendo costos y mejorando el rendimiento de la red.
Gracias a SDN, el diseño y gestión de redes se ha vuelto más innovador en los últimos años. Sin embargo, esta tecnología no es resultado de una súbita aparición, sino de una larga historia de innovaciones dirigidas a hacer más programables las redes. La historia de SDN comienza 20 años atrás, más o menos en el comienzo de lo que hoy conocemos como Internet, el cual, debido a su éxito, intensificó la necesidad de gestionar y evolucionar las infraestructuras de redes, es decir, hacerlas programables. A partir de este momento, la historia se divide en tres etapas diferenciadas: redes activas (1995 a 2000 aprox.), separación del plano de control del plano de datos (2001-2007 aprox.) y la aparición de la interfaz de programación de aplicaciones de Openflow (2007-2010 aprox.).[2] En 2014 Avaya hizo una demostración de redes definidas por software usando Shortest Path Bridging y OpenStack, eliminando la configuración manual.[3][4]
El despegue de Internet, a principio de los 90, provocó que las aplicaciones antiguas fueran superadas por otras más novedosas. El aumento del uso de estas llevó a los investigadores a diseñar y probar nuevos protocolos de red. Sin embargo, después de este proceso, estos protocolos debían ser estandarizados por el IETF, proceso muy lento que frustraba a muchos investigadores.
Como respuesta, algunos investigadores apostaron por un enfoque de apertura del control de las redes, análogo a reprogramar un PC autónomo con relativa facilidad. Como las redes convencionales no son programables, surgieron las redes activas orientadas hacia el control de la red, conceptualizando una interfaz de programación (API) que expone los recursos (procesamiento, almacenamiento, colas de paquetes, etc) en nodos de red individuales y soporta la construcción de funcionalidades personalizadas para aplicar a un subconjunto de paquetes que pasan a través del nodo. Sin embargo, había muchos otros que defendían la simplicidad de la red como única forma de que Internet tuviese éxito. El programa de investigación de las redes activas se dedicó por lo tanto, a explorar alternativas a los servicios proporcionados por Internet vía IP o ATM.
El impulso tecnológico que alentó a las redes activas permitió reducir el coste computacional, avanzar en lenguajes de programación y en la tecnología de máquinas virtuales. Un catalizador importante en este ecosistema fue el aumento de interés de agencias, que supuso la creación de programas como el Active Networks program del DARPA, desde mediados de los 90 hasta principios de los 2000.
Las redes activas, por lo tanto, aunque no tuvieron un despliegue extendido, ofrecieron contribuciones relacionadas con SDN como funciones programables en la red, virtualización de redes y la visión de una arquitectura unificada en distintos aparatos de red como cortafuegos, IDS, NAT, etc.[2]
A principios de los 2000, el aumento del volumen de tráfico y la necesidad de unas redes de confianza, predecibles y manejables, llevó a los investigadores a buscar mejores enfoques para ciertas funciones dentro de la gestión de redes como la ingeniería de tráfico, cuyos recursos y métodos usando protocolos de enrutamiento convencionales eran muy escasos.
Los enrutadores y conmutadores convencionales, tenían una estrecha integración entre los planos de control y de datos, que realizaba depuración de problemas de configuración o control del comportamiento del enrutamiento, una tarea muy desafiante y complicada. Para enfrentarse a dicha tarea, la idea de separar ambos planos empezó a florecer con distintos enfoques.
Debido al crecimiento de Internet, las empresas de equipos hardware comenzaron a implementar la lógica de reenvío de paquetes en hardware (plano de datos), separada del plano de control y los ISPs a luchar para poder gestionar sus redes crecientes y poder aportar a sus clientes servicios que las hiciesen más seguras (como las VPN). Todo esto dio lugar a dos innovaciones principales: una interfaz abierta entre ambos planos, como ForCES (separación del elemento de control y reenvío) estandarizada por la IETF y la interfaz Netlink a la funcionalidad de reenvío de paquetes a nivel de núcleo Linux; y un control lógico centralizado de la red, como con RCP (plataforma de control de enrutamiento), arquitecturas SoftRouter y el protocolo PCE (Path Computation Element) del IETF, ambos conceptos clave en diseños futuros de SDN.[2]
Para abordar la visión de separación de plano de datos y de control, se empezó a investigar nuevas arquitecturas para control lógico centralizado. El proyecto 4D, uno de los frutos de estas investigaciones, establecía cuatro capas principales: el plano de datos, para procesar paquetes basándose en reglas configurables; el plano de descubrimiento, encargado de coleccionar medidas topológicas y del tráfico; el plano de diseminación, para instalar reglas de procesado de paquetes; y el plano de decisión, que consistía en controladores lógicos centralizados que convertían objetivos a nivel de red en estado de manejo de paquetes. Numerosos grupos de investigación comenzaron el desarrollo de sistemas basados en este enfoque, y en particular, el proyecto Ethane, y su predecesor directo SANE. El despliegue operacional de este proyecto en la universidad de Stanford, comenzó la etapa de creación de Openflow, y en particular, el diseño simple de switch del proyecto Ethane, se convirtió en la base de la API de Openflow.
A mediados de la primera década del siglo XXI, diversos grupos de investigación y empresas empezaron a interesarse por la experimentación de redes a escala, debido al éxito de infraestructuras experimentales como PlanetLab y Emulab, y la disponibilidad de más fondos por parte del gobierno para invertir en este sector. Uno de los resultados de este entusiasmo fue la creación de GENI (Global Environment for Networking Innovations) y el programa EU FIRE. Al mismo tiempo, en la universidad de Stanford, un grupo de investigadores creó el Clean Slate Program, enfocado en la experimentación en redes universitarias más tratables y locales, que dio lugar al protocolo Openflow.
Gracias a la adopción de Openflow en las empresas, que abrieron sus API para permitir a los programadores controlar ciertos comportamientos de reenvío, la versión inicial de este protocolo se estableció en los switches a través de una simple actualización de firmware, sin necesidad de actualizar el hardware.
Openflow, aunque utilice muchos de los principios de anteriores trabajos en la separación de planos, también aporta bastantes contribuciones como la generalización de dispositivos de red y funciones, la visión de un sistema operativo de red y técnicas de gestión distribuida del estado de aparatos de red entre otras.[2]
Hacer frente a los requerimientos de telecomunicaciones por parte del público mundial, es imposible con las redes tradicionales. Los departamentos de IT de infinidad de empresas y proveedores de servicios de redes, están intentando aprovechar al máximo sus redes, invirtiendo gran parte de sus beneficios en esta tarea. Sin embargo, esta es una solución temporal, ya que de ninguna manera las arquitecturas de red actuales están diseñadas para conocer los requerimientos actuales de usuarios, empresas y proveedores. Las limitaciones de las redes actuales incluyen:
Los servicios de red surgidos en los últimos tiempos, están llevando a las redes tradicionales a sus límites. Algunos de los elementos que están llevando a la necesidad de una nueva arquitectura de red son los siguientes:
Aquí es donde SDN se convierte en esta arquitectura deseada, con el potencial de revolucionar todo el mundo de las redes, otorgando una manera flexible de controlarlas.[6]
Además de ofrecer redes centralizadas programables que pueden atender dinámicamente las necesidades de las empresas, SDN provee los siguientes beneficios:
A menudo se apunta a OpenFlow como sinónimo de SDN, pero en realidad, es simplemente un elemento que forma parte de la arquitectura SDN. OpenFlow es un estándar abierto para un protocolo de comunicaciones que permite al plano de control interactuar con el plano de datos (OpenFlow, sin embargo, no es el único protocolo disponible o en desarrollo para SDN, aunque sí está convirtiéndose en el modelo estándar de implementación de una SDN).[6]
Las redes definidas por software (SDN) constan de una arquitectura de red cuyo dinamismo, manejabilidad, rentabilidad y adaptabilidad permiten que sea adecuada para la naturaleza dinámica y de alto consumo de ancho de banda de las aplicaciones modernas. Como hemos visto en apartados anteriores, SDN separa el control de la red de las funciones de reenvío con una API bien definida entre ambos, permitiendo la programabilidad del control de red y la abstracción de la infraestructura subyacente.[7]
Los proveedores de redes SDN ofrecen una amplia variedad de arquitecturas competentes, centradas en el objetivo comentado anteriormente: separar el plano de control del plano de datos, y formadas por un controlador SDN, una API hacia el sur (southbound API) y una API hacia el norte (northbound API).[6]
Un controlador SDN en una red SDN toma el papel del cerebro de dicha red, es decir, el punto de control estratégico que retransmite información a los conmutadores y enrutadores de debajo (a través del API sur) y a las aplicaciones y la lógica de negocio encima (a través del API norte). Recientemente, se persigue la tarea de asociar dominios de controladores SDN, usando interfaces de aplicaciones comunes, como los protocolos Openflow y OVSDB (Open Virtual Switch DataBase).
Un controlador SDN se basa típicamente en un conjunto de módulos pluggable (que se pueden conectar y desconectar libre y fácilmente), que realizan diversas tareas de red, como realizar un inventario de todos los aparatos de red disponibles en esta, colectar sus capacidades, agrupar estadísticas de red, etc.[8]
Como comentábamos en el subapartado anterior, estas interfaces sirven para conectar el controlador SDN a los aparatos de red por debajo (sur) y por otro a los servicios y aplicaciones por encima (norte). Las API sur facilitan el control en la red, permitiendo al controlador realizar cambios dinámicos de acuerdo a las demandas en tiempo real y las necesidades. Openflow, desarrollado por la ONF (Open Networking Foundation) es la primera y más conocida de estas interfaces. Además de esta, Cisco OpFlex es otra bien conocida.[9]
Las API norte en cambio, pueden ser usadas para facilitar la innovación y permitir la organización y automatización de la red para suplir las necesidades de las diferentes aplicaciones a través de la programabilidad de la red SDN. Se podría decir que estas interfaces son las más críticas en un entorno SDN, debido a que soportan una gran variedad de aplicaciones y servicios por encima y por lo tanto con algunas de ellas no funciona correctamente. Hay una amplia variedad de posibles interfaces de este tipo situadas en diferentes lugares de la pila para controlar los diferentes tipos de aplicaciones a través del controlador SDN. Sin embargo, estas interfaces son el componente más indeterminado de todo el entorno SDN, lo que ha resultado en un enfoque por parte de la ONF hacia este componente.[10]
Aunque la ONF está continuamente modificando la terminología, los términos más comunes para los componentes de esta arquitectura son los siguientes:
Hay dos modelos: proactivo y reactivo. Cuando un flujo llega a un switch se realiza un mapeo de la tabla de flujos. En el caso de que no se encuentre coincidencia, se envía una petición al controlador para instrucciones más extensas. En modo reactivo, el controlador actúa después de estas peticiones y crea una regla en la tabla de flujos para el paquete correspondiente si es necesario. En modo proactivo, sin embargo, el controlador llena entradas de la tabla de flujos para cada posible coincidencia de tráfico para ese switch, algo parecido con las típicas entradas de tablas de enrutamiento. Además de estos modelos por separados, se puede combinar en una red ambos modelos en forma de un híbrido, para aportar las ventajas de ambos.[12]
Gran parte de la programabilidad en SDN, reside en las API abiertas norte y sur. La promesa de SDN de crear una infraestructura mucho más ágil y flexible es desarrollada principalmente mediante la transformación de la red a una más programable. Existen tres ejemplos principales de uso, para establecer qué significa programabilidad para las redes SDN:
La seguridad, como en todo tipo de redes, es un aspecto crucial en redes SDN, para proteger la disponibilidad, integridad y privacidad de la información que transporta. La seguridad en estas redes, aunque existen enfoques competentes, todavía está en juego, ya que estos enfoques no convergen en una idea común. A pesar de estas diferencias, es claro, que las soluciones deben crear un entorno escalable, eficiente y seguro. Además, la seguridad debe ser simple de configurar (debido al dinamismo de la red) y efectiva (para asegurar que pueda desplegarse en cualquier parte). En la arquitectura, hay varios elementos que deben ser protegidos y acciones a llevar a cabo:
La Open Networking Foundation (ONF) es una organización impulsada por los usuarios dedicada a la promoción y adopción de SDN a través del desarrollo de estándares abiertos. Esta organización, enfatiza la colaboración y el proceso abierto de desarrollo conducido por los usuarios, dando como resultado el mantenimiento del estándar abierto Openflow, el primer estándar SDN y un elemento vital para las arquitecturas abiertas de SDN.
Hoy en día las comunidades de esta organización siguen analizando los requerimientos de SDN y mejorando el estándar Openflow, para beneficiar SDN con nuevos estándares y suplir las necesidades de despliegues comerciales. [15]
SDN provee una nueva arquitectura de red dinámica que transforma las redes troncales en plataformas de distribución de servicios.
En cuestión de manejo de redes, cada vez se confiará más y más en el software, que acelerará la innovación de éstas, como ha conseguido en los dominios de computación y almacenamiento. Con todas estas ventajas que permite el uso de software, SDN está en el camino de convertirse en la nueva regla para redes en un futuro cercano.[5]
Seamless Wikipedia browsing. On steroids.
Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.
Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.