Redes definidas por software
Las redes definidas por software separan el plano de control de la red de su plano de datos, trasladando las decisiones de enrutamiento y políticas a un controlador lógicamente centralizado y programable que configura el comportamiento de reenvío de conmutadores simples a través de una interfaz abierta.
Definition
Las redes definidas por software son una arquitectura de red en la que el plano de control se desacopla del plano de datos y se hace lógicamente centralizado y programable, de modo que un controlador instala reglas de reenvío en dispositivos de reenvío de paquetes que de otro modo serían simples.
Scope
Este tema abarca el paradigma SDN: la separación de un plano de control lógicamente centralizado de los dispositivos de reenvío distribuidos, la abstracción de coincidencia-acción mediante la cual los conmutadores reenvían paquetes de acuerdo con las reglas de flujo instaladas por el controlador, la interfaz de "southbound" (notablemente OpenFlow) entre el controlador y los conmutadores, y la interfaz de "northbound" mediante la cual las aplicaciones programan el comportamiento de la red. Trata los beneficios de SDN para la programabilidad y la ingeniería de tráfico, y sus desafíos de escalabilidad y resiliencia. Excluye los protocolos de enrutamiento distribuidos tradicionales con los que contrasta.
Core questions
- ¿Cómo separa SDN el plano de control del plano de datos, y por qué?
- ¿Qué es la abstracción de coincidencia-acción (tabla de flujo) utilizada por los conmutadores SDN?
- ¿Qué papel desempeñan las interfaces de "southbound" (por ejemplo, OpenFlow) y de "northbound"?
- ¿Qué beneficios ofrece el control centralizado y programable para la ingeniería de tráfico y la innovación?
- ¿Cuáles son los desafíos de escalabilidad, latencia y resiliencia de un plano de control centralizado?
Key concepts
- separación del plano de control y del plano de datos
- controlador lógicamente centralizado
- coincidencia-acción (tablas de flujo)
- OpenFlow (interfaz de "southbound")
- API de "northbound"
- programabilidad de la red
- ingeniería de tráfico
- escalabilidad y resiliencia del controlador
Key theories
- Separación del plano de control y de datos
- SDN descompone la funcionalidad de la red en un controlador programable y lógicamente centralizado que decide el comportamiento de reenvío y conmutadores simples que simplemente ejecutan reglas instaladas, reemplazando el control distribuido por dispositivo de las redes tradicionales.
- Reenvío de coincidencia-acción y OpenFlow
- Los conmutadores SDN reenvían paquetes haciendo coincidir los campos de encabezado con las entradas de la tabla de flujo y aplicando las acciones asociadas; el protocolo OpenFlow estandarizó cómo un controlador programa estas tablas entre proveedores, lo que permite la programabilidad independiente del proveedor.
- Linaje de redes programables
- SDN es la culminación de una larga línea de trabajo para hacer que las redes sean programables y para separar el control del reenvío, basándose en redes activas, esfuerzos de separación del plano de control y sistemas operativos de red centralizados.
Clinical relevance
SDN ha transformado la forma en que se construyen y operan las grandes redes: los proveedores de la nube y los centros de datos utilizan el control centralizado para la ingeniería de tráfico de grano fino, el aislamiento entre inquilinos y el despliegue rápido de nuevas funciones de red, y las redes troncales de área amplia lo utilizan para optimizar la utilización. La programabilidad también ha acelerado la investigación y la innovación en redes al permitir a los operadores definir el comportamiento en software en lugar de esperar nuevo hardware.
History
Las redes definidas por software surgieron de investigaciones anteriores sobre redes programables y activas, y de esfuerzos para separar el plano de control del reenvío. La propuesta de OpenFlow de 2008 proporcionó una interfaz práctica y desplegable para controlar las tablas de flujo de los conmutadores, catalizando una rápida adopción en la investigación y luego en centros de datos a gran escala y redes de área amplia, como se relata en historias intelectuales posteriores del campo.
Debates
- Control centralizado versus robustez distribuida
- La centralización del plano de control simplifica la optimización global y la programabilidad, pero plantea preocupaciones sobre un único punto de falla, la escalabilidad del controlador y la latencia de consultar al controlador; los diseños prácticos de SDN replican y distribuyen los controladores para recuperar la robustez.
Key figures
- Nick McKeown
- Scott Shenker
- Jennifer Rexford
- Nick Feamster
Related topics
Seminal works
- mckeown2008
- feamster2014
- kurose2021
Frequently asked questions
- ¿Qué problema resuelve SDN?
- Las redes tradicionales agrupan el control y el reenvío en cada dispositivo y los configuran individualmente, lo que hace que la política y la innovación en toda la red sean lentas y propensas a errores. SDN centraliza la lógica de control en el software con una vista global, por lo que los operadores pueden programar un comportamiento consistente en toda la red y desplegar nuevas funcionalidades mucho más rápidamente.
- ¿Es el controlador SDN un único punto de falla?
- Lógicamente, el plano de control está centralizado, pero en la práctica se implementa como un conjunto distribuido y replicado de controladores para la tolerancia a fallas y la escala. El plano de control es 'lógicamente centralizado' en lugar de ser físicamente una sola máquina, por lo que la red puede seguir funcionando si fallan controladores individuales.