capacitación de sdn para comsoc uni
TRANSCRIPT
![Page 2: Capacitación de SDN para COMSOC UNI](https://reader034.vdocuments.site/reader034/viewer/2022042513/5a65e2e87f8b9a8c538b49b9/html5/thumbnails/2.jpg)
Quien soy yo ?- Magister en Ing. de la Computación.
- Investigador del INICTEL-UNI (10’)
- Forma parte del grupo de investigación
GIRA (PUCP) e INTRIG (UNICAMP)
- Lidero el proyecto: Nuevas tecnologías
en SDN/Openflow y P4, INICTEL-UNI
- Miembro del proyecto de despliegue y
documentación de nuevos servicios para
eduroam Latino América, RNP e
INICTEL-UNI
-Mis fortalezas: SDN, P4, NFV, Cloud,
Seguridad IPv4/IPv6, AAA/802.1x
@opennetsoft fb.com/opennetsoft
Sigueme a:
![Page 3: Capacitación de SDN para COMSOC UNI](https://reader034.vdocuments.site/reader034/viewer/2022042513/5a65e2e87f8b9a8c538b49b9/html5/thumbnails/3.jpg)
Problematica y Estrategias de Solución en las Redes
Convencionales
![Page 4: Capacitación de SDN para COMSOC UNI](https://reader034.vdocuments.site/reader034/viewer/2022042513/5a65e2e87f8b9a8c538b49b9/html5/thumbnails/4.jpg)
Equipamiento de Redes Propietarias
Verticalmente integrado, complejo, cerrado y propietario!
Custom Silicon
Switches de redes
Componentes
No recomendable para propietarios de redes ni para usuarios
![Page 5: Capacitación de SDN para COMSOC UNI](https://reader034.vdocuments.site/reader034/viewer/2022042513/5a65e2e87f8b9a8c538b49b9/html5/thumbnails/5.jpg)
Problematicas en las Redes Actuales
Source: Tutorial SDN & NFV LACNIC26 by Whitestack
![Page 6: Capacitación de SDN para COMSOC UNI](https://reader034.vdocuments.site/reader034/viewer/2022042513/5a65e2e87f8b9a8c538b49b9/html5/thumbnails/6.jpg)
Las redes como lo aprendiste en la escuela
Source: Martin Casado CS244 Spring 2013, Lecture 6, SDN
![Page 7: Capacitación de SDN para COMSOC UNI](https://reader034.vdocuments.site/reader034/viewer/2022042513/5a65e2e87f8b9a8c538b49b9/html5/thumbnails/7.jpg)
Redes en la Práctica
Estado enlacedistribuido
Estado de configuración estática
Source: Martin Casado CS244 Spring 2013, Lecture 6, SDN
![Page 8: Capacitación de SDN para COMSOC UNI](https://reader034.vdocuments.site/reader034/viewer/2022042513/5a65e2e87f8b9a8c538b49b9/html5/thumbnails/8.jpg)
Redes en la PrácticaTeoria y práctica son lo mismos, pero en la práctica son muy diferentes!
![Page 9: Capacitación de SDN para COMSOC UNI](https://reader034.vdocuments.site/reader034/viewer/2022042513/5a65e2e87f8b9a8c538b49b9/html5/thumbnails/9.jpg)
Camino a la Evolución
Adapted from: Transforming the Network with OpenSDN by Big Switch Network
![Page 10: Capacitación de SDN para COMSOC UNI](https://reader034.vdocuments.site/reader034/viewer/2022042513/5a65e2e87f8b9a8c538b49b9/html5/thumbnails/10.jpg)
Camino a la Evolución
Source: Introduction to OpenFlow, SDN and NFV, Kingston Smiler
![Page 11: Capacitación de SDN para COMSOC UNI](https://reader034.vdocuments.site/reader034/viewer/2022042513/5a65e2e87f8b9a8c538b49b9/html5/thumbnails/11.jpg)
Camino a la Evolución
Custom Silicon
Merchant Silicon
![Page 12: Capacitación de SDN para COMSOC UNI](https://reader034.vdocuments.site/reader034/viewer/2022042513/5a65e2e87f8b9a8c538b49b9/html5/thumbnails/12.jpg)
Camino a la Evolución
Existentes
- CLIs
- Código cerrado
- Proporcionado por el
proveedor
- Aplicaciones conocidas
Nuevas
- APIs
- Código abierto
- Proporcionado por el
cliente
- Funciones de Redes
Virtuales (NFV)
Adapted from: Kyle Mestery, Next Generation Network Developer Skills
![Page 13: Capacitación de SDN para COMSOC UNI](https://reader034.vdocuments.site/reader034/viewer/2022042513/5a65e2e87f8b9a8c538b49b9/html5/thumbnails/13.jpg)
La Tendencia en Computación
- Cambios en los
patrones de tráfico.
- El consumismo de IT
- El aumento de los
servicios en la nube
- Big Data significa
más ancho de banda
![Page 14: Capacitación de SDN para COMSOC UNI](https://reader034.vdocuments.site/reader034/viewer/2022042513/5a65e2e87f8b9a8c538b49b9/html5/thumbnails/14.jpg)
La Tendencia en Computación
Verticalmente integradoCerrado, propietarioInnovación lenta
HorizontalInterfaces abiertasRápida inovación
![Page 15: Capacitación de SDN para COMSOC UNI](https://reader034.vdocuments.site/reader034/viewer/2022042513/5a65e2e87f8b9a8c538b49b9/html5/thumbnails/15.jpg)
Rediseñar la Red!
Plano de Datos: Streaming de paquetes
Forward, Filter, Buffer, Mark, rate-limit, and measure packetsSource: Adapted from J. Rexford
![Page 16: Capacitación de SDN para COMSOC UNI](https://reader034.vdocuments.site/reader034/viewer/2022042513/5a65e2e87f8b9a8c538b49b9/html5/thumbnails/16.jpg)
Rediseñar la Red!
Plano de Control: Algoritmos Distribuidos
Seguimientos en los cambios de la topología, rutas computarizadas, instalación de nuevas reglasSource: Adapted from J. Rexford
![Page 17: Capacitación de SDN para COMSOC UNI](https://reader034.vdocuments.site/reader034/viewer/2022042513/5a65e2e87f8b9a8c538b49b9/html5/thumbnails/17.jpg)
Rediseñar la Red!
Recoger mediciones y configurar equipamientos
Plano de Gestión: Escala de tiempo
Source: Adapted from J. Rexford
![Page 18: Capacitación de SDN para COMSOC UNI](https://reader034.vdocuments.site/reader034/viewer/2022042513/5a65e2e87f8b9a8c538b49b9/html5/thumbnails/18.jpg)
Rediseñar la Red!
● Gestión más simple
No necesita invertir más en el plano de gestión
● Ritmo más rápido de inovación
Menos dependencia con los Vendors y Estándares
● Interoperabilidad más fácil
Compatibilidad solamente en los protocolos wired
● Equipamientos más simple y más fácil
Más uso de software
![Page 19: Capacitación de SDN para COMSOC UNI](https://reader034.vdocuments.site/reader034/viewer/2022042513/5a65e2e87f8b9a8c538b49b9/html5/thumbnails/19.jpg)
Arquitectura SDN y NFV
![Page 20: Capacitación de SDN para COMSOC UNI](https://reader034.vdocuments.site/reader034/viewer/2022042513/5a65e2e87f8b9a8c538b49b9/html5/thumbnails/20.jpg)
Origen del Termino SDN
![Page 21: Capacitación de SDN para COMSOC UNI](https://reader034.vdocuments.site/reader034/viewer/2022042513/5a65e2e87f8b9a8c538b49b9/html5/thumbnails/21.jpg)
Redes Definidas por Software (SDN)
Plano logicamente centralizado
API al Plano de Datos (e.g., OpenFlow)
Inteligente & Lento
Tonto & Rápido
Source: Adapted from J. Rexford
![Page 22: Capacitación de SDN para COMSOC UNI](https://reader034.vdocuments.site/reader034/viewer/2022042513/5a65e2e87f8b9a8c538b49b9/html5/thumbnails/22.jpg)
Redes Definidas por Software (SDN)
Source: https://www.opennetworking.com
Directamente Programable
Agilidad y Flexibilidad
Centralmente gestionado
Estándares abiertos y neutral al vendor
![Page 23: Capacitación de SDN para COMSOC UNI](https://reader034.vdocuments.site/reader034/viewer/2022042513/5a65e2e87f8b9a8c538b49b9/html5/thumbnails/23.jpg)
Redes Definidas por Software (SDN)
Nuevas habilidades y oportunidades
Herramientas sofisticadas
Reduce CapEx/OpEx
![Page 24: Capacitación de SDN para COMSOC UNI](https://reader034.vdocuments.site/reader034/viewer/2022042513/5a65e2e87f8b9a8c538b49b9/html5/thumbnails/24.jpg)
Redes Definidas por Software (SDN)
![Page 25: Capacitación de SDN para COMSOC UNI](https://reader034.vdocuments.site/reader034/viewer/2022042513/5a65e2e87f8b9a8c538b49b9/html5/thumbnails/25.jpg)
Redes Definidas por Software (SDN)
Source: N. Mckeown et al.
![Page 26: Capacitación de SDN para COMSOC UNI](https://reader034.vdocuments.site/reader034/viewer/2022042513/5a65e2e87f8b9a8c538b49b9/html5/thumbnails/26.jpg)
Redes Definidas por Software (SDN)
![Page 27: Capacitación de SDN para COMSOC UNI](https://reader034.vdocuments.site/reader034/viewer/2022042513/5a65e2e87f8b9a8c538b49b9/html5/thumbnails/27.jpg)
Funciones de Redes Virtuales (NFV)
- Hardware commodity
Source: https://www.opennetworking.com , Network Function Virtualization: Perspectivas, Realidades e Desafios
- Ahorro en espacio y energía
- Innovación más rápida
- Asignación flexible de recursos
- Multiplicidad de usuarios
- Mayor rentabilidad
![Page 28: Capacitación de SDN para COMSOC UNI](https://reader034.vdocuments.site/reader034/viewer/2022042513/5a65e2e87f8b9a8c538b49b9/html5/thumbnails/28.jpg)
Open Networking
Source: Porqué los Tier-1 están adoptando las SDN y nFV?, whitestack
![Page 29: Capacitación de SDN para COMSOC UNI](https://reader034.vdocuments.site/reader034/viewer/2022042513/5a65e2e87f8b9a8c538b49b9/html5/thumbnails/29.jpg)
Certificaciones ONF: SDN/Openflow
![Page 30: Capacitación de SDN para COMSOC UNI](https://reader034.vdocuments.site/reader034/viewer/2022042513/5a65e2e87f8b9a8c538b49b9/html5/thumbnails/30.jpg)
SDN vs NFV
![Page 31: Capacitación de SDN para COMSOC UNI](https://reader034.vdocuments.site/reader034/viewer/2022042513/5a65e2e87f8b9a8c538b49b9/html5/thumbnails/31.jpg)
Sources: Ahmad Rostami, Ericsson Research (Kista): http://www.itc26.org/fileadmin/ITC26_files/ITC26-Tutorial-Rostami.pdf and Uwe Michel, T-Systems
Flexibilidad y Programabilidad en la Red(SDN & NFV)
![Page 32: Capacitación de SDN para COMSOC UNI](https://reader034.vdocuments.site/reader034/viewer/2022042513/5a65e2e87f8b9a8c538b49b9/html5/thumbnails/32.jpg)
Diferentes Modelos de SDN
![Page 33: Capacitación de SDN para COMSOC UNI](https://reader034.vdocuments.site/reader034/viewer/2022042513/5a65e2e87f8b9a8c538b49b9/html5/thumbnails/33.jpg)
Modelo: Open SDN
- Estándard abiertos- Software de código
abierto- APIs and SDKs- Hardware abierto
![Page 34: Capacitación de SDN para COMSOC UNI](https://reader034.vdocuments.site/reader034/viewer/2022042513/5a65e2e87f8b9a8c538b49b9/html5/thumbnails/34.jpg)
Modelo: Hybrid SDN
- Conviven con redes tradicionales
- Soportan Openflow 1.3- Más adecuado para
migraciones en SDN
![Page 35: Capacitación de SDN para COMSOC UNI](https://reader034.vdocuments.site/reader034/viewer/2022042513/5a65e2e87f8b9a8c538b49b9/html5/thumbnails/35.jpg)
Modelo: Overlay SDN
- Método de despliegue para virtualización de redes
- Ejecutado sobre una red separada logicamente
- Big Switch Network y Vmware usan overlay
![Page 36: Capacitación de SDN para COMSOC UNI](https://reader034.vdocuments.site/reader034/viewer/2022042513/5a65e2e87f8b9a8c538b49b9/html5/thumbnails/36.jpg)
Protocolo OpenFlow y su Evolución
![Page 37: Capacitación de SDN para COMSOC UNI](https://reader034.vdocuments.site/reader034/viewer/2022042513/5a65e2e87f8b9a8c538b49b9/html5/thumbnails/37.jpg)
Historia de Openflow, ACM SIGCOMM2008
● Openflow se originó en la Univ. de Stanford en 2008.
● Openflow spec. V1.0 fue lanzado en dic. 2009.
● Desde sus inicios Openflow es gestionado por la ONF.
![Page 38: Capacitación de SDN para COMSOC UNI](https://reader034.vdocuments.site/reader034/viewer/2022042513/5a65e2e87f8b9a8c538b49b9/html5/thumbnails/38.jpg)
OpenFlow y SDN
Inteligencia de las redes es movida desde el Switch hacia un controlador externo
![Page 39: Capacitación de SDN para COMSOC UNI](https://reader034.vdocuments.site/reader034/viewer/2022042513/5a65e2e87f8b9a8c538b49b9/html5/thumbnails/39.jpg)
OpenFlow y SDN
![Page 40: Capacitación de SDN para COMSOC UNI](https://reader034.vdocuments.site/reader034/viewer/2022042513/5a65e2e87f8b9a8c538b49b9/html5/thumbnails/40.jpg)
OpenFlow y SDN
![Page 41: Capacitación de SDN para COMSOC UNI](https://reader034.vdocuments.site/reader034/viewer/2022042513/5a65e2e87f8b9a8c538b49b9/html5/thumbnails/41.jpg)
Entradas de tabla de flujos
Source: https://www.sdxcentral.com/sdn/definitions/what-is-openflow/
![Page 42: Capacitación de SDN para COMSOC UNI](https://reader034.vdocuments.site/reader034/viewer/2022042513/5a65e2e87f8b9a8c538b49b9/html5/thumbnails/42.jpg)
A Quick Jump Into SDN
SDN no es OpenFlowpero ...
OpenFlow si es SDN
The physical separation of the network control plane from the forwarding plane, and where a control plane controls several devices.
Definición según la ONF:
![Page 43: Capacitación de SDN para COMSOC UNI](https://reader034.vdocuments.site/reader034/viewer/2022042513/5a65e2e87f8b9a8c538b49b9/html5/thumbnails/43.jpg)
Openflow y SDN
Aquí es en donde Openflow si encajaría sobre SDN
Beneficios de Openflow
- Programabilidad
- Inteligencia centralizada
- Abstracción
![Page 44: Capacitación de SDN para COMSOC UNI](https://reader034.vdocuments.site/reader034/viewer/2022042513/5a65e2e87f8b9a8c538b49b9/html5/thumbnails/44.jpg)
OpenFlow y SDN
Interface Programable
Permite el acceso directo y manipulación del plano de forwarding de los dispositivos de redes tales como switches y routers, ambos físicos o virtuales (basado en hypervisor).
Las primitivas básicas que pueden ser usadas por una app. de software externa para programar el plano de forwarding puede ser comparada al conjunto de intrucción de un CPU.
![Page 45: Capacitación de SDN para COMSOC UNI](https://reader034.vdocuments.site/reader034/viewer/2022042513/5a65e2e87f8b9a8c538b49b9/html5/thumbnails/45.jpg)
Versions OpenFlow
La más reciente versión de OpenFlow es la 1.5.1
Cada nueva versión mejora el protocolo y adiciona nuevas características
Desafortunadamente los dispositivos hardware con soporte Openflow usan, en su mayoria, la versión 1.0
Version Release
0.8.0 May, 5, 2008
0.8.1 May, 20, 2008
0.8.2 Oct, 17, 2008
0.8.9 Dec, 2, 2008
0.9.0 Jul, 20, 2009
1.0 Dec, 31, 2009
1.1 Feb, 28, 2011
1.2 Dec 2011
1.3 Jun, 25, 2012
1.3.1 Sep, 6. 2012
1.3.2 Apr, 25, 2013
1.4.0 Oct, 14, 2013
1.5.0 Dec, 19, 2014
1.5.1 Mar, 26, 2015
![Page 46: Capacitación de SDN para COMSOC UNI](https://reader034.vdocuments.site/reader034/viewer/2022042513/5a65e2e87f8b9a8c538b49b9/html5/thumbnails/46.jpg)
¿Qué versión usar?
1.0 vs 1.3Los mismos conceptos
Forwarding basados en flujo.Información acerca del control de eventos en la red y
modifcación del estado del equipamiento
Diferentes CapacidadesOpenFlow 1.3 tiene más características y cubre más aspectos que faltan en OpenFlow 1.0 ->Multiple Tables, Groups, Rate Limiting, Controller Role OpenFlow 1.0 es más simple y más fácil de implementar que 1.3. La mayor parte de los campos son opcionales. Removiendo éstas características nosotros tendríamos casi la versión 1.0
![Page 47: Capacitación de SDN para COMSOC UNI](https://reader034.vdocuments.site/reader034/viewer/2022042513/5a65e2e87f8b9a8c538b49b9/html5/thumbnails/47.jpg)
Switch OpenFlowComponentes principales
Group Table Opciones adicionales para reenviar paquetes Disponible desde OpenFlow 1.1
Flow TableLookup y forwarding
OpenFlow Channel Comunicación entre el SW y el controlador
Meter Table Mecanismo simple QoS.Disponible desde OpenFlow 1.3
![Page 48: Capacitación de SDN para COMSOC UNI](https://reader034.vdocuments.site/reader034/viewer/2022042513/5a65e2e87f8b9a8c538b49b9/html5/thumbnails/48.jpg)
Tabla de FlujosContiene entrada de flujo
OpenFlow 1.0 Flow entry
OpenFlow 1.3 Flow entry
Analogía de la tabla de flujo vs la tabla de enrutamientoable analogy
![Page 49: Capacitación de SDN para COMSOC UNI](https://reader034.vdocuments.site/reader034/viewer/2022042513/5a65e2e87f8b9a8c538b49b9/html5/thumbnails/49.jpg)
OpenFlow 1.0 Pipeline
OpenFlow 1.0 does not have multiple tables!
![Page 50: Capacitación de SDN para COMSOC UNI](https://reader034.vdocuments.site/reader034/viewer/2022042513/5a65e2e87f8b9a8c538b49b9/html5/thumbnails/50.jpg)
OpenFlow 1.3 Pipeline
![Page 51: Capacitación de SDN para COMSOC UNI](https://reader034.vdocuments.site/reader034/viewer/2022042513/5a65e2e87f8b9a8c538b49b9/html5/thumbnails/51.jpg)
OpenFlow 1.3 Pipeline
![Page 52: Capacitación de SDN para COMSOC UNI](https://reader034.vdocuments.site/reader034/viewer/2022042513/5a65e2e87f8b9a8c538b49b9/html5/thumbnails/52.jpg)
Instrucciones OpenFlow 1.3
Meter
Apply-Actions
Clear-Actions
Write-Actions
Write-Metadata
Goto-Table
![Page 53: Capacitación de SDN para COMSOC UNI](https://reader034.vdocuments.site/reader034/viewer/2022042513/5a65e2e87f8b9a8c538b49b9/html5/thumbnails/53.jpg)
OpenFlow 1.0 vs OpenFlow 1.3 Actions
Output
Drop
Set VLAN ID
Set VLAN priority
Strip VLAN header
Modify Ethernet, IPv4. transport src/dst address
Enqueue
Output
Set-Queue
Drop
Group
Push-Tag/Pop-Tag
Set-Field
Change-TTL
OpenFlow 1.0 OpenFlow 1.3
![Page 54: Capacitación de SDN para COMSOC UNI](https://reader034.vdocuments.site/reader034/viewer/2022042513/5a65e2e87f8b9a8c538b49b9/html5/thumbnails/54.jpg)
Tabla: Group
Disponible desde OpenFlow 1.1
Groups permiten nuevas opciones de forwardingType FunctionAll Broadcast, Multicast
Select Algorithm chooses the bucket
Indirect Only one bucket
Fast Failover Executes first live bucket
![Page 55: Capacitación de SDN para COMSOC UNI](https://reader034.vdocuments.site/reader034/viewer/2022042513/5a65e2e87f8b9a8c538b49b9/html5/thumbnails/55.jpg)
Meter TableMediciones y control de la tasa de paquetes que hace match de las entradas de flujos asignados al meter id
![Page 56: Capacitación de SDN para COMSOC UNI](https://reader034.vdocuments.site/reader034/viewer/2022042513/5a65e2e87f8b9a8c538b49b9/html5/thumbnails/56.jpg)
Canal OpenFlow
Canal de comunicación entre el SW openflow y el Controlador
Conexión encriptada: TCP or TLS
IANA ha asignado un puerto para la conexión entre OpenFlow Switch-Controller: 6653
![Page 57: Capacitación de SDN para COMSOC UNI](https://reader034.vdocuments.site/reader034/viewer/2022042513/5a65e2e87f8b9a8c538b49b9/html5/thumbnails/57.jpg)
Handshake
Switch Controller
Hello Message
Después de establecer la conexión del TCP/TLS, ambos lados envian mensajes “Hello Message”
Solves the OpenFlow version
Solves the Hello. If the version is not supported sends an Error message
Features Request
Features Reply
OpenFlow Connection Established
![Page 58: Capacitación de SDN para COMSOC UNI](https://reader034.vdocuments.site/reader034/viewer/2022042513/5a65e2e87f8b9a8c538b49b9/html5/thumbnails/58.jpg)
Controlador OpenFlow
OpenFlow
I want to talk with the Desktop!
![Page 59: Capacitación de SDN para COMSOC UNI](https://reader034.vdocuments.site/reader034/viewer/2022042513/5a65e2e87f8b9a8c538b49b9/html5/thumbnails/59.jpg)
Controlador OpenFlow
OpenFlow
Oh God! What I’m gonna do?
![Page 60: Capacitación de SDN para COMSOC UNI](https://reader034.vdocuments.site/reader034/viewer/2022042513/5a65e2e87f8b9a8c538b49b9/html5/thumbnails/60.jpg)
Controlador OpenFlow
OpenFlow
THE almighty OpenFlow Controller
OpenFlow Channel
I’m here for you! Take the power of the Learning Switch!
![Page 61: Capacitación de SDN para COMSOC UNI](https://reader034.vdocuments.site/reader034/viewer/2022042513/5a65e2e87f8b9a8c538b49b9/html5/thumbnails/61.jpg)
Network OSEl controlador puede ser visto como un sistema operativo de red en donde las aplicaciones pueden ser construidas sobre el TOP de éste sistema operativo.
![Page 62: Capacitación de SDN para COMSOC UNI](https://reader034.vdocuments.site/reader034/viewer/2022042513/5a65e2e87f8b9a8c538b49b9/html5/thumbnails/62.jpg)
Proactive vs Reactive Flows
ReactiveLos flujos que no se encuentran en la tabla de entrada de flujos del switch son enviados al controlador, que instala estos flujos basados sobre los campos del paquete. El paquete es luego enviado nuevamente al switch para su debido procesamiento.Ejemplo de aplicación: Learning Switch
ProactiveEl controlador instala los flujos antes que el tráfico de paquetes llegue al switch. Éste modelo es usado cuando nosotros ya sabemos el tráfico que queremos manejar.Ejemplo de aplicación: Packet Monitor
![Page 63: Capacitación de SDN para COMSOC UNI](https://reader034.vdocuments.site/reader034/viewer/2022042513/5a65e2e87f8b9a8c538b49b9/html5/thumbnails/63.jpg)
Arquitectura de Controladores
Centralized Distributed
![Page 64: Capacitación de SDN para COMSOC UNI](https://reader034.vdocuments.site/reader034/viewer/2022042513/5a65e2e87f8b9a8c538b49b9/html5/thumbnails/64.jpg)
Popular Open Source controllers
Phyton
Phyton
Java Java
C/Ruby
![Page 65: Capacitación de SDN para COMSOC UNI](https://reader034.vdocuments.site/reader034/viewer/2022042513/5a65e2e87f8b9a8c538b49b9/html5/thumbnails/65.jpg)
Problematica de OpenFlow
Configuración Run-Time
![Page 66: Capacitación de SDN para COMSOC UNI](https://reader034.vdocuments.site/reader034/viewer/2022042513/5a65e2e87f8b9a8c538b49b9/html5/thumbnails/66.jpg)
Capa Independiente del Protocolo
![Page 67: Capacitación de SDN para COMSOC UNI](https://reader034.vdocuments.site/reader034/viewer/2022042513/5a65e2e87f8b9a8c538b49b9/html5/thumbnails/67.jpg)
Lo nuevo: Programación en Plano de Datos (P4)
![Page 68: Capacitación de SDN para COMSOC UNI](https://reader034.vdocuments.site/reader034/viewer/2022042513/5a65e2e87f8b9a8c538b49b9/html5/thumbnails/68.jpg)
Lo nuevo: Programación en Plano de Datos (P4)
![Page 69: Capacitación de SDN para COMSOC UNI](https://reader034.vdocuments.site/reader034/viewer/2022042513/5a65e2e87f8b9a8c538b49b9/html5/thumbnails/69.jpg)
Open SDN Migration Use Cases
![Page 70: Capacitación de SDN para COMSOC UNI](https://reader034.vdocuments.site/reader034/viewer/2022042513/5a65e2e87f8b9a8c538b49b9/html5/thumbnails/70.jpg)
Casos de Uso (Open Source)
1. 6.4% of all Internet Traffic (ATLAS, 2010)
2. Google has two large Backbones networks:Internet facing (user traffic)Datacenter Traffic (Internal)
3. Google WAN intensive applications:Youtube, Websearch, Google+, Hangouts, Maps, AppEngine, Android and Chrome updates.
![Page 71: Capacitación de SDN para COMSOC UNI](https://reader034.vdocuments.site/reader034/viewer/2022042513/5a65e2e87f8b9a8c538b49b9/html5/thumbnails/71.jpg)
Casos de Uso (Ciberseguridad)
![Page 72: Capacitación de SDN para COMSOC UNI](https://reader034.vdocuments.site/reader034/viewer/2022042513/5a65e2e87f8b9a8c538b49b9/html5/thumbnails/72.jpg)
Hands On:Mininet con
Openflow1.0 y 1.3
![Page 73: Capacitación de SDN para COMSOC UNI](https://reader034.vdocuments.site/reader034/viewer/2022042513/5a65e2e87f8b9a8c538b49b9/html5/thumbnails/73.jpg)
Herramientas instaladas en Ubuntu 16.04
Mininet (version 2.3)Será usado para simular los switches, hosts y enlaces de la red
Open vSwitch (version 2.5)Switch virtual Open vSwitch usado por mininet.
Ofsoftswitch13CPqD y Ericsson OpenFlow 1.3 software switch, basado sobre el switch de
referencia de Stanford
Ryu controllerRyu y OpenDayLight son uno de nuestros controladores elegidos
debido a su soporte a OpenFlow 1.0 y OpenFlow 1.3
![Page 74: Capacitación de SDN para COMSOC UNI](https://reader034.vdocuments.site/reader034/viewer/2022042513/5a65e2e87f8b9a8c538b49b9/html5/thumbnails/74.jpg)
Mininet
Mininet iniciará casi todo lo que necesitas. Mininet emularía una completa red de hosts, enlaces, y switches sobre una simple maquina. Para crear un ejemplo de dos hosts, una red con un switch, solo sería ejecutar: ‘sudo mn’ .
Switch S1
Host H1 Host H2
Eth0 Eth1
Eth0 Eth1
![Page 75: Capacitación de SDN para COMSOC UNI](https://reader034.vdocuments.site/reader034/viewer/2022042513/5a65e2e87f8b9a8c538b49b9/html5/thumbnails/75.jpg)
Mininet
El controlador de referencia local (ref) usa OpenFlow 1.0 por defecto. Para usar OpenFlow 1.3, indicar el parametro “protocols=OpenFlow13”. Por ejemplo:$ sudo mn --mac --switch ovsk,protocols=OpenFlow13 --controller ref mininet> dpctl show -O OpenFlow13 mininet> dpctl dump-flows -O OpenFlow13 mininet> h1 ping -c 3 h2
Adicionando reglas estáticas usando dpctl
mininet> dpctl add-flow "in_port=1,actions=output:2" -O OpenFlow13 mininet> dpctl add-flow "in_port=2,actions=output:1" -O OpenFlow13 mininet > h1 ping -c 3 h2Notas algún cambio cuando tipeas “h1 ping h2” en el prompt del mininet?
![Page 76: Capacitación de SDN para COMSOC UNI](https://reader034.vdocuments.site/reader034/viewer/2022042513/5a65e2e87f8b9a8c538b49b9/html5/thumbnails/76.jpg)
OVS-OFCTL
Comandos para enviar mensajes directamente al Open vSwitch
Switch Capabilitiesmininet> sh ovs-ofctl show s1 -O OpenFlow 13
Switch Descriptionmininet> sh ovs-ofctl dump-desc s1 -O OpenFlow13
Add Flow mininet> sh ovs-ofctl -O OpenFlow13 add-flow s1 priority=100,in_port=1,actions=output:2
Flow Table statemininet> sh ovs-ofctl dump-flows s1 -O OpenFlow13
Port statisticsmininet> sh ovs-ofctl dump-ports s1 -O OpenFlow13
![Page 77: Capacitación de SDN para COMSOC UNI](https://reader034.vdocuments.site/reader034/viewer/2022042513/5a65e2e87f8b9a8c538b49b9/html5/thumbnails/77.jpg)
Dpctl con switch “user”El switch software OpenFlow 1.3 tiene una similar herramienta al ovs-ofctl: “sudo mn --switch user --controller ref”
Capacidades del switch$ sudo dpctl unix:/tmp/s1 features
Descripción del switch$ sudo dpctl unix:/tmp/s1 stats-desc
Adicionar flujos$ sh dpctl unix:/tmp/s1 flow-mod cmd=add,table=0 in_port=1 apply:output=2$ sh dpctl unix:/tmp/s1 flow-mod cmd=add,table=0 in_port=2 apply:output=1
Estado de la tabla de flujos$ sudo dpctl unix:/tmp/s1 stats-flow
![Page 78: Capacitación de SDN para COMSOC UNI](https://reader034.vdocuments.site/reader034/viewer/2022042513/5a65e2e87f8b9a8c538b49b9/html5/thumbnails/78.jpg)
TCP bandwith
Testing TCP bandwidth entre hosts con Iperf
$ sudo mn --switch user --test iperf Results: [‘54.9 Mbits/sec', '60.6 Mbits/sec']
$ sudo mn --switch ovsk --test iperf Results: ['7.06 Gbits/sec', '7.06 Gbits/sec']
Note que en el primer caso se consigue un BW en Iperf TCP mucho menor que comparado a la vista en el segundo caso usando el switch kernel
![Page 79: Capacitación de SDN para COMSOC UNI](https://reader034.vdocuments.site/reader034/viewer/2022042513/5a65e2e87f8b9a8c538b49b9/html5/thumbnails/79.jpg)
Ejecución de controladores Ryu y ODL
# Open DayLigth (https://www.opendaylight.org/downloads)
Acceso al directorio ODL y ejecución de Karaf
cd ~/distribution-karaf-0.4.4-Beryllium-SR4sudo ./bin/karaf
# Ryu Controller (https://github.com/osrg/ryu)
Acceso al directorio Ryu y ejecución del controlador
cd ~/ryusudo ./bin/ryu-manager --verbose ryu/app/simple_switch_13.py
![Page 80: Capacitación de SDN para COMSOC UNI](https://reader034.vdocuments.site/reader034/viewer/2022042513/5a65e2e87f8b9a8c538b49b9/html5/thumbnails/80.jpg)
Controlador Ryu
Components:Proporciona interface para control y estado y genera eventos.
Libraries:Funciones llamadas por los componentes:Ex: OF-Config, Netflow, sFlow, Netconf, OVSDB
![Page 81: Capacitación de SDN para COMSOC UNI](https://reader034.vdocuments.site/reader034/viewer/2022042513/5a65e2e87f8b9a8c538b49b9/html5/thumbnails/81.jpg)
Controlador Open DayLight
![Page 82: Capacitación de SDN para COMSOC UNI](https://reader034.vdocuments.site/reader034/viewer/2022042513/5a65e2e87f8b9a8c538b49b9/html5/thumbnails/82.jpg)
Ryu Controller con OpenFlow 1.3
El comando debajo inicia el controlador mediante la llamada al Handler del protocolo Openflow y la aplicación Simple Switch 1.3
cd /home/ubuntu/ryu./bin/ryu-manager --verbose ryu/app/simple_switch_13.py
Creamos la topología del mininet. Para controladores remotos, por defecto OpenFlow 1.3 esta configurado
sudo mn --topo single,3 --mac --controller remote --switch ovsk
Comando para listar los flujos en memoria del Open vSwitch
sudo ovs-ofctl dump-flows s1
![Page 83: Capacitación de SDN para COMSOC UNI](https://reader034.vdocuments.site/reader034/viewer/2022042513/5a65e2e87f8b9a8c538b49b9/html5/thumbnails/83.jpg)
OpenDayLight con OpenFlow 1.3
Hacemos lo mismo, pero usando el controlador Open DayLight
cd ~/distribution-karaf-0.4.4-Beryllium-SR4sudo ./bin/karaf
Creamos la topología del mininet. Para controladores remotos, por defecto OpenFlow 1.3 esta configurado
sudo mn --topo single,3 --mac --controller remote --switch ovsk
Comando para listar los flujos en memoria del Open vSwitch
sudo ovs-ofctl dump-flows s1
![Page 84: Capacitación de SDN para COMSOC UNI](https://reader034.vdocuments.site/reader034/viewer/2022042513/5a65e2e87f8b9a8c538b49b9/html5/thumbnails/84.jpg)
WiresharkMediante el uso de otro terminal, iniciar Wireshark y escoger la interface Loopback. Escoger tipo de filtro: “openflow_v4”
![Page 85: Capacitación de SDN para COMSOC UNI](https://reader034.vdocuments.site/reader034/viewer/2022042513/5a65e2e87f8b9a8c538b49b9/html5/thumbnails/85.jpg)
Simple Learning Switch
● Un “Learning switch” es un equipo un poco más inteligente en capa 2.
● El switch aprende la MAC y el puerto desde los paquetes que llegan a sus interfaces.
● Si el switch no sabe el destino MAC, éste inunda el paquete a todas las interfaces y luego aprende la MAC y el puerto. De otra manera, éste reenvia al puerto asociado con la MAC destino.
![Page 86: Capacitación de SDN para COMSOC UNI](https://reader034.vdocuments.site/reader034/viewer/2022042513/5a65e2e87f8b9a8c538b49b9/html5/thumbnails/86.jpg)
OpenFlow Learning Switch
● La aplicación “learning-switch” en OpenFlow hace lo siguiente:
○ Cuando el switch no tiene un flujo que mapee una MAC a un puerto, éste enviaría el paquete (packet_in) al controlador. Por defecto, OpenFlow 1.0 envia el packet-in al controlador, el OpenFlow 1.3 pierde dicho flujo si una entrada de flujo explicitamente no indica esto.
○ El controlador aprenderá la MAC source y el puerto en donde el paquete llegó, instala flujo con éstos campos y envia el paquete de retorno (Packet Out) con una acción de salida del tipo Flood.
○ Paquetes subsecuentes con destino igual a la MAC aprendida son reenviadas directamente al destino.
![Page 87: Capacitación de SDN para COMSOC UNI](https://reader034.vdocuments.site/reader034/viewer/2022042513/5a65e2e87f8b9a8c538b49b9/html5/thumbnails/87.jpg)
Hands On:Mininet con Openflow 1.3 y Open DayLight
![Page 88: Capacitación de SDN para COMSOC UNI](https://reader034.vdocuments.site/reader034/viewer/2022042513/5a65e2e87f8b9a8c538b49b9/html5/thumbnails/88.jpg)
Setup ConfigurationPara el presente tuorial, nosotros vamos a convertir un HUB a un switch de aprendizaje MAC que programa flujos.
1. Start the ODL controller in debug mode # Terminal 1cd $control./karaf debug
2. Verify if the feature “sdnhub-tutorial-learning-switch” is installed> feature:list -i |grep sdnhub-tutorial-learning-switch
If it is not installed, install it
> feature:install sdnhub-tutorial-learning-switch
Wait 30 seconds until the Learning-Switch program is installed and active
> bundle:list -s |grep learning-switch189 | Active | 80 | 1.0.0.SNAPSHOT org.sdnhub.odl.tutorial.learning-switch.impl
![Page 89: Capacitación de SDN para COMSOC UNI](https://reader034.vdocuments.site/reader034/viewer/2022042513/5a65e2e87f8b9a8c538b49b9/html5/thumbnails/89.jpg)
Setup Configuration3. Start mininet topology # Change to a second terminal (Terminal 2)
sudo mn --topo single,3 --mac --switch ovsk,protocols=OpenFlow13 --controller remote
* We wait until the controller is connected to the mininet topology: is_connected: true
4. Try to do ping between “host1” and “host2”mininet> h1 ping h2From 10.0.0.1 icmp_seq=1 Destination Host Unreachable
Porqué el Ping falla?
5. Add the next rule and verify the pingmininet> s1 ovs-ofctl add-flow tcp:127.0.0.1:6654 -OOpenFlow13 priority=1,action=output:controller
mininet> h1 ping -c 10 h2
![Page 90: Capacitación de SDN para COMSOC UNI](https://reader034.vdocuments.site/reader034/viewer/2022042513/5a65e2e87f8b9a8c538b49b9/html5/thumbnails/90.jpg)
Setup Configuration6. Open the learning-switch program ($learn/TutorialL2Forwarding.java) and pay attention in the lines #79 and #143
In the line #79 you may note that the default function of the code is in “hub mode”. This means that our program (learning-switch) will act as hub, thus ping between hosts would have a high RTT value, as you can see above. In the line #143 you may note the code block related to the behavior of the program.
7. In the same file TutorialL2Forwarding.java, change the default function of the program from “hub” to “switch”.
private String function = "hub"; # Line 79toprivate String function = "switch";
![Page 91: Capacitación de SDN para COMSOC UNI](https://reader034.vdocuments.site/reader034/viewer/2022042513/5a65e2e87f8b9a8c538b49b9/html5/thumbnails/91.jpg)
Setup Configuration8. Update maven from the path of the program and copy the “JAR” generated by maven to the folder “deploy” of our controller
cd $program1 # Path of the learning-switch programmvn install -nsucp $target/learning-switch-impl-1.0.0-SNAPSHOT.jar $deploy/
9. Restart “mininet” and the “controller” and do ping between h1 and h2 again:> logout # Logout to the controller./karaf debug # Start the controller again
mininet > exit # Exit to the mininet$ mn -c # Clean mininet$ sudo mn --topo single,3 --mac --switch ovsk,protocols=OpenFlow13 --controller remotemininet > h1 ping -c 10 h2
Notas cambios en el RTT obtenido en el paso 5 y 9? Que sucedió?
![Page 92: Capacitación de SDN para COMSOC UNI](https://reader034.vdocuments.site/reader034/viewer/2022042513/5a65e2e87f8b9a8c538b49b9/html5/thumbnails/92.jpg)
Preguntas?