Loading

Module 1: Direccionadores y redes

Apuntes
Study Reminders
Support
Text Version

Red definida por software

Set your study reminders

We will email you at these times to remind you to study.
  • Monday

    -

    7am

    +

    Tuesday

    -

    7am

    +

    Wednesday

    -

    7am

    +

    Thursday

    -

    7am

    +

    Friday

    -

    7am

    +

    Saturday

    -

    7am

    +

    Sunday

    -

    7am

    +

Redes definidas por software
Bienvenido de nuevo al curso en Redes de sistemas y Protocolos de Internet. Por lo tanto, hasta la última clasehemos examinado el diseño detallado del mecanismo de direccionamiento IP y la estructuradel router IP. Ahora vamos a un tema muy avanzado que llamamosSoftware Defined Networking.Por lo tanto, este concepto de software definido por software es un estándar reciente y próximo yespera quetodos los routers tradicionales sean reemplazados por el router habilitado SDN. Entonces, ¿discutiremos brevementelo que es SDN? ¿Cuál es la utilidad de SDN? Cómo SDN difiere de una arquitectura de enrutador tradicional deque hemos discutido anteriormente.Y luego vamos a ver ciertos temas en SDN que cómo podemos programar un router conel concepto de tecnología SDN. Y cómo estamos migrando gradualmente de una arquitectura tradicional de enrutador distribuido dea la arquitectura de enrutador soportada por SDN. Por lo tanto, el conceptode SDN es algo así.(Consulte el tiempo de la diapositiva: 01:27)Una arquitectura de red definida por software es una infraestructura de red que implica enseparar una función de control de red de su función de reenvío de datos, ycentralizar su inteligencia y extraer su arquitectura subyacente de aplicacionesy servicios. Por lo tanto, ese es el tipo de definición formal de la red definida por software.Ahora las grandes palabras clave dentro de estas definiciones son las siguientes, en primer lugar estamos intentandoseparar las funcionalidades de control y las funcionalidades de datos dentro de un router.¿Qué significa separar las funcionalidades de control y las funcionalidades de datos?Así que, en las últimas conferencias hemos visto que dentro de un router tienes dos niveles diferentes de abstracción Tiene el plano de control que se implementa como parte del software deque implementa las funcionalidades de direccionamiento y la construcción de la tablade direccionamiento y su gestión, y tenemos nuestras funcionalidades de datos.En las funcionalidades de datos su tarea es reenviar un paquete mirando el campo IP dede destino en la cabecera IP, y hacer una coincidencia con la tabla de direccionamiento la copia local de la tabla de direccionamiento dedentro de la interfaz que es la base de información de reenvío y, a continuación,reenviar el paquete a la interfaz de salida. Ahora, estas funcionalidades de control y las funcionalidades de datostradicionalmente se implementan en un solo router. Ahora cuandoestá implementando las funcionalidades de control y las funcionalidades de datos en un solo direccionador de, la complejidad de la funcionalidad de control se vuelve más alta. ¿Por qué se vuelvemás alto?Porque ahora tiene varios direccionadores con sus planos de control y esos aviones de controlnecesitan coordinarse entre sí para generar la tabla de direccionamiento global o para gestionar la tabla de direccionamiento global de. Y, estos controles deben realizarse de una forma distribuidadebido a su limitación arquitectónica o a la forma en que hemos diseñado esta arquitectura tradicional de enrutador.Y con esta arquitectura de control distribuida, en primer lugar el protocolo de direccionamiento obtieneproblemático, ya que hemos visto que tanto el vector de distancia como las rutas de estado de enlace tienenuna limitación significativa en términos de su escalabilidad, el direccionamiento de vectores de distancia no puede ser escalabledebido a este problema de recuento a infinito, donde como el protocolo de direccionamiento de estado de enlaceque no puede ser escalable. Debido a su tamaño de los paquetes de estado de enlace o al tamaño de la información de estado de enlaceque debe mantener si lo implementa a través de una red grande.Por lo tanto, debido a tales limitaciones hemos restringido este direccionamiento de estado de enlace y el direccionamiento de vectores dea distancia dentro de un Internet local, o dentro de una subred. Y de la red a la redtenemos este protocolo de pasarela que implementa la política. Ahora esto puededifícil para los gestores de red porque, si hay un cambio de política, es necesario queactualice cada direccionador individual. Y, todos los protocolos de enrutamiento en todos los routers controlan el planoque necesitan para coordinarse entre sí para hacer una actualización de la política en los routers individuales de, y obviamente, en una arquitectura distribuida tomará tiempo.Y debido a este requisito de tiempo puede haber inconsistencias en los routers yestas inconsistencias pueden ser significativas en una gran red. Por lo tanto, es por eso que la gestión de un router, la gestión de una subred con algunos dicen que 1000 routers es una tarea muy difícil. Yestá desplegando estos direccionadores no en un solo día de forma gradual está expandiendo la redy no sabe que lo que era la configuración de los direccionadores anteriores y necesitapara hacer una coincidencia de la configuración de estos dos direccionadores diferentes. Después vienela compatibilidad entre los proveedores, no es como que todos los routers de una organizaciónprovendrán de Cisco, o incluso si vienen de Cisco tendrán el mismo modelo deque usted hace un despliegue gradual que los routers pueden venir de diferentes proveedores.Los routers pueden tener diferentes modelos que sus opciones de configuración pueden ser diferentes siusted sólo mira en el manual de Cisco IOS usted verá que es un documento de 5000 páginas. Por lo tanto, las funcionalidades de gestión son muy complejas.Y con esta arquitectura distribuida, mantener la consistencia a través de la configuraciónde los routers en los planos de control son diferentes niveles que se vuelven difíciles y que espor qué poco a poco intentamos pasar de una arquitectura de plano de control distribuido a una arquitectura de plano de control centralizada de. Y esa es la motivación básica detrás del diseñode un concepto de networking definido por software.Así que, vamos a un pequeño detalle sobre esta abstracción de SDN aquí la idea es quesepare estos aviones de control de los routers y haga un plano de control centralizado.Así que, sacas los cerebros del router. Por lo tanto, este control de los aviones se puede decir quefunciona como un cerebro del router porque, toma las decisiones y que el hardware TCAMsimplemente haciendo un proceso de reenvío. Por lo tanto, está sacando este cerebro de estos direccionadores individuales dey poniendo un centralizado, poniendo los cerebros en un lugar centralizado que es su controlador de ruta completo de.(Consulte el tiempo de la diapositiva: 07:19)Así que, como ha mirado antes, el plano de control y el plano de datos. El plano de controles el módulo que toma todas las decisiones; básicamente es un instructor los algoritmos de enrutamientoimplementados en el plano de control. Y el plano de datos es el módulo quelleva a cabo las tareas dadas por el plano de control-el reenvío en los paquetes.(Consulte el tiempo de la diapositiva: 07:40)Ahora, los dispositivos de red tradicionales son propietarios. Los proveedores que decidenel software y el hardware. Tanto el plano de control como el plano de datos y no haytal estandarización que debería haber este tipo de partido. Cada proveedor aplica su propia optimización de. Y debido a eso es muy difícil comprar el hardware deCisco, y luego tomar otro sistema operativo y cargarlo en un router Cisco. Aunque,hay ciertos routers que pueden soportar la red de código abierto IOS o el sistema operativo del router.Pero también tienen sus propias restricciones en términos de rendimiento y manejabilidad. Peropara los direccionadores comerciales en general el hardware y el software proceden del mismo proveedores difícil para la interoperatividad, gestionar interoperable.La interoperabilidad es posible, pero la gestión de la interoperabilidad entre productos de diferentes proveedores decomo el tipo de dificultad en una gran red.(Consulte el tiempo de la diapositiva: 08:47)Por lo tanto, la idea es separar el plano de control y el plano de datos. Por lo tanto, la idea es queel proveedor sólo proporcionará el hardware que es el plano de datos y decidimos el plano de control deescribiendo la lógica personalizada que es el software.Por lo tanto, el plano de control será decidido por el diseñador de aplicaciones, o el gestor de redo el equipo de soporte de red, mientras que el plano de datos sólo vendrá de los proveedores. Así queque ahora los vendedores que van a entregar un interruptor tonto sólo tiene el TCAM, sólo tieneel hardware TCAM junto con el motor de reenvío, la lógica de control no está allí. Nosotrosimplementaremos nuestra lógica de control nosotros mismos.(Referir Slide Time: 09:30)Así, los vendedores sólo proporcionarán el hardware y nosotros decidiremos el plano de control porescribiendo lógica personalizada. La ventaja es que, en primer lugar, las características ya no son limitadasa lo que proporciona el proveedor. Siempre puede escribir su propia aplicación de red como una partedel controlador.O el desarrollo de la comunidad en nuestro movimiento de código abierto las personas pueden unirsey diseñar un nuevo protocolo de red e implementarlo en un plano de control en sí mismo. Yno requiere un soporte de proveedor para eso y, obviamente, aumenta el tiempo de vida del producto.(Consulte el tiempo de la diapositiva: 10:13)Así que, aquí hay una breve idea acerca de cómo funciona el SDN? Por lo tanto, en comparación con la redtradicional, una red definida por software tiene dos tipos de dispositivos. El controlador que es el cerebrode la red y los conmutadores que son los dispositivos de hardware son tipos de switches tontosque no tienen ninguna lógica en la construcción dentro de ellos. Por lo tanto, los conmutadores en SDN sontipo de conmutadores ciegos. Por lo tanto, no tienen ninguna característica incorporada y eso debe serinstruido por el controlador. Por lo tanto, los conmutadores aquí son un ejemplo de un conmutador SDN de los efectos del zodiacoque es un pequeño conmutador SDN, tiene 4 interfaces y hardware TCAM.Por lo tanto, este es el hardware de TCAM y este es el microcontrolador; microcontrolador para el conmutador. Por lo tanto, sólo viene con este gran hardware y cualquier lógica de direccionamiento queestaría allí que será instruido por el controlador en sí, y el controlador puedeviene de diferente estándar de código abierto. Para SDN tenemos este protocolo llamadoOpenFlow. OpenFlow es un estándar de código abierto para hacer que el controlador cambie la comunicación dey basado en este estándar de OpenFlow, hay múltiples controladores de código abiertoque están disponibles allí es controlador como Ryu, y muchos otros SDNcontrolador como el controlador antiguo era algo llamado POX que es un controladorbasado en Python y luego NOX.Así que, este tipo de controlador está ahí OpenDaylight entonces puedo nombrar algunos otros controladores. Por lo tanto, hay diferentes controladores de código abierto, cualquiera que sea el controlador queprefiera, puede utilizarlo en un sistema estándar. Ahora todo este cerebro se puede poner en una computadora estándar. No necesita hardware especializado para ello porque el procesador de rutano es más que un procesador de propósito general. Por lo tanto, es por eso que usted puede poner estatoda la lógica de control en una sola computadora.Así que, usted puede instalar este controlador uno del controlador Ryu, POX, NOX abrir la luz del díacualquier cosa que sea su elección personal. Puede instalarlo en un sistema personal ydesde ese sistema personal puede hacer que las cosas se comuniquen entre sí.
Redes definidas por software-Parte 2
Por lo tanto, esta es la arquitectura de la que tenemos un controlador que no es más que una computadora de propósito general deque funciona como el cerebro de la red inter y entonces podemostener múltiples interruptores. Estos interruptores son el tipo de políticas tontas. El controlador realmentedecide y enseña a los conmutadores cómo reenviar un paquete y luego puede tener varios hosts de.Ahora que esto es una arquitectura muy simplificada. Estoy tratando de explicarte el concepto básico decon esta arquitectura simplificada. Por lo tanto, veamos un ejemplo de cómo funciona todoen un entorno SDN. Por lo tanto, en un entorno de red tradicionalno tiene este controlador. Por lo tanto, sólo tiene este conmutador y el host, y el conmutadortiene toda la lógica de direccionamiento. Ahora, la lógica de direccionamiento se saca del conmutadory se coloca en el controlador. Ahora tenga en cuenta que puede tener varios conmutadoresconectados a este controlador. De hecho, todos los conmutadores de nuestra organización pueden serconectados a un único controlador.El controlador realmente realizará esta lógica de direccionamiento de una manera centralizada, de esta maneraestamos evitando los problemas asociados con una lógica de direccionamiento distribuido y estamostambién reduciendo la sobrecarga que proviene de los protocolos de direccionamiento distribuido. Y nosotrosestamos poniendo toda esta información en un controlador que enseñará dinámicamente los conmutadoressobre cómo reenviar el paquete. Por lo tanto, vamos a ver el ejemplo.(Consulte el tiempo de la diapositiva: 14:17)Así que, desea reenviar un paquete de h1 a h3, su fuente es h1 y el destino esh3. Por lo tanto, el host reenvía el paquete al conmutador S1. Ahora cuando el paquete llega al conmutadors1, inicialmente este conmutador no tiene ninguna información. Sólo tiene un hardware TCAMy un tejido de conmutación, por lo que no sabe cómo reenviar el paquete.Entonces, ¿qué hace el conmutador? El conmutador ha enviado un paquete en un suceso al controlador; dichosignifica que el conmutador informa al controlador de que he recibido un paquete. Con este paquete en el mensaje, envía la información del paquete, los metadatos del paquete al controlador. Y entoncesel controlador decide realmente que qué hacer con ese paquete y devolver la información deal conmutador en un evento de salida de paquete. Y hasta ese momento el paquete se almacena en el almacenamiento intermedio ens1, en el almacenamiento intermedio en el conmutador.(Consulte la hora de la diapositiva: 15:16)Ahora, el controlador envía la regla al conmutador y luego esta regla se instala en ese hardware TCAMdel conmutador. Por lo tanto, discutiremos el protocolo OpenFlow en detalles en la siguiente clase. Durante ese tiempo, le mostraré que cómo escribimos las reglas y cómo se ve una regla. Y esta regla es en realidad una cosa muy simple que la regla es sólo el tipo de juegoderecho par derecho. Por lo tanto, una regla de conmutación no es otra cosa que tener datos de coincidencia y, a continuación, datos dede acción. Por lo tanto, los datos del partido dicen que si su IP de destino es un 10 punto 2 barra 16entonces usted, su acción es decir hacia adelante, adelante para decir interfaz eth0 hacia adelante para la interfazeth0, de modo que puede ser una regla simple. Por lo tanto, esta regla ahora la genera el controlador. Por lo tanto,anteriormente esta regla estaba realmente dentro de la tabla de direccionamiento. Ahora esta regla la genera el controladory, a continuación, el controlador envía esto al conmutador y se instala en el hardware deTCAM del conmutador.(Consulte la hora de la diapositiva: 16:39)Ahora el conmutador tiene esta regla; por lo tanto, una vez que el conmutador ha fallado en el conmutador, el paquete dese ha de extremo. Ahora la regla ya está instalada en el hardware de TCAM del conmutador.(Consulte la hora de la diapositiva: 16:45)Por lo tanto, es por ello que para el paquete posterior no es necesario que se comunique con el controladorla comunicación en el controlador sólo es necesaria para un tipo. Por lo tanto,la reenvía a s1 y luego la envía de nuevo a h3 y esa es la regla que se está instalando ens1. Y para todo el paquete posterior habría un hit TCAM y el golpe de caché. Por lo tanto,siempre que haya un golpe de caché, lo reenviará directamente a h3.Ahora esta es toda esta arquitectura SDN y antes de ir a la arquitectura SDN, déjenme quediga la potencia de SDN. Ahora, con la ayuda de esta configuración dinámica, puederealmente dar soporte a un montón de cosas nuevas junto con un reenvío simple.Así que, ahora con este tipo de reglas de par de acciones de coincidencia, con este tipo de par de acciones de coincidencia de reglas de, también puede implementar un cortafuegos. ¿Cómo implementar un cortafuegos? Puedeimplementar el cortafuegos es algo así como si su IP de destino es 172 punto 16 punto20 barra 24, entonces usted suelta el paquete que puede ser una regla de firewall que siempre puede instalardentro del s1, dentro del interruptor dentro del hardware de TCAM del interruptor.Así que, de esa manera usted puede diseñar una amplia clase de reglas. Por lo tanto, discutiremos en la siguiente claselas diferentes reglas soportadas por OpenFlow que están ahí en el estándar OpenFlow. Yrealmente puede dar soporte a una gran agrupación de dichas reglas para implementar diferentes tipos de aplicación de reden el controlador. Puede implementar el cortafuegos, puede implementara NAT, puede implementar una pasarela de reenvío, puede implementar una pasarela de paquetes.Incluso puede procesar porque el controlador está trabajando a nivel de aplicación, puedetambién procesar a nivel de LAN virtual o a nivel de incluso en la capa de transporte. puede buscar en el puerto y basándose en el puerto puede decidir qué hacer.Así, por ejemplo, si sólo desea asegurarse de que no debe enviar ningún paquete al puerto80. Por lo tanto, usted puede escribir una regla como esta dice si su puerto es igual a 80, entonces usted cae bien el paquete de. Por lo tanto, también puede escribir la regla de esta manera en el lado del controlador. Por lo tanto, de esta manerapuede implementar la amplia clase de aplicación de red en el controlador y no essólo limitado al comportamiento de reenvío y direccionamiento.Por lo tanto, en última instancia, la mayoría de las funcionalidades de red lo pueden correlacionar con un comportamiento dede reenvío. Por lo tanto, está decidiendo cómo reenviar un paquete, o está decidiendo si entodo para reenviar el paquete o no. Por lo tanto, todas estas cosas pueden ser manejadas por un único controladory eso es tener una lógica centralizada. Debido a que tiene una lógica centralizada, la gestión de todo estoes muy fácil porque, hoy en día, no necesita esta configuración distribuida dedel plano de control de los direccionadores individuales. Justo sentado en un único sistemaque tiene instalado un software de controlador, puede implementar todas estas aplicaciones de red.(Consulte el tiempo de la diapositiva: 20:06)Así que, esta es la arquitectura SDN de la placa. En la capa de infraestructura tiene los conmutadores programables de, los diferentes conmutadores programables que son los conmutadorestontos. Pero se pueden programar dinámicamente, entonces usted tiene un controlador de reden la capa de control. Y por último, está ejecutando puede ejecutar varias aplicaciones en la parte superior dede este controlador de red que puede implementar un cortafuegos, puede implementar un motor de reenvío depersonalizado, puede implementar una pasarela de paquetes, sea cual sea la aplicación que deseepara implementar en la parte superior de este controlador.(Consulte la hora de la diapositiva: 20:42)Así que, aquí está la diferencia entre la red tradicional y el SDN. Por lo tanto, en el caso de una redtradicional, tiene el plano de control y el plano de datos dentro de cada uno de los conmutadoresindividuales. Y este plano de control que van a hablar entre sí, funcionan de una manera distribuiday encima tienes las aplicaciones de red que se están ejecutando. Y ahoraporque estas aplicaciones de red dicen que una aplicación de red está interactuando con este routeren particular, otra aplicación de red está interactuando con este router.Por lo tanto, también puede haber un problema de coherencia no el problema de configuración, puede sucederque esta aplicación de red esté teniendo un conflicto con otra aplicación de red,y decidir que el conflicto en una arquitectura distribuida es muy difícil. Pero cada vez quese está moviendo a una arquitectura de SDN centralizada, o arquitectura lógicamente centralizada, los aviones de datos dese distribuyen bien sólo implementan una lógica de reenvío, pero el planode control está centralizado y toda la aplicación en realidad está hablando con un solo avión de control.Ahora lo que puedes hacer, esta es otra potencia de SDN que puedes implementar un compiladortipo de software aquí, o un intérprete o un compilador, o un compilador dentro de este planode control que generará las reglas a partir de programas individuales. Y luego también comprobarási dos reglas están teniendo un comportamiento conflictivo entre sí o no. Por lo tanto, de esta formapodrá identificar las reglas en conflicto o también podrá comprobar manualmentesi la regla se ajusta realmente a la política de red que desea creardentro de la red. Así, este procedimiento de gestión de trabajo en Internetse simplifica.Y le proporciona una arquitectura flexible y rentable para gestionar una gran escala de la red. Por lo tanto, se trata de una breve introducción sobre el concepto de red definido por software; enlas clases subsiguientes iremos a los pequeños detalles sobre el concepto de red definido por software. Nos fijamos en el estándar OpenFlow en detalle. Por lo tanto, el estándar OpenFlow es un conjuntode protocolo o un conjunto de mensajes que le ayudan a comunicarse entre el controladorde control, un controlador centralizado y un router, o el conmutador SDN en el término SDN no lo llamamoscomo un router. Debido a que ahora las funcionalidades de enrutamiento no se implementan dentro del dispositivo, simplemente lo llamamos como un conmutador SDN.Así o en algún momento se llama interruptor abierto. Por lo tanto, sólo este controlador OpenFlow, ha diseñadoun conjunto de mensajes para interactuar entre el controlador y los conmutadores OpenFlow, o los conmutadores SDN de. Por lo tanto, usted mira en el protocolo de OpenFlow en detalles, así como miramosen ciertos aspectos de SDN en más detalles. Así que, gracias a todos por asistir a esta clase.