Charla routers jmcruz2012

39
Routers comerciales y alternativas open software y open hardware Jesús Martínez Cruz Área de Ingeniería Telemática Universidad de Málaga

description

Presentación sobre "Routers comerciales y alternativas opensource / Hardware" para virtualizar routers. Material cedido a la rama de estudiantes del IEEE de Málaga por Jesus M. Cruz. De acceso público. Enlace del autor: http://www.lcc.uma.es/contenidos/informacion_personal.action?id=25

Transcript of Charla routers jmcruz2012

Page 1: Charla routers jmcruz2012

Routers comerciales y alternativas open software y

open hardware

Jesús Martínez CruzÁrea de Ingeniería Telemática

Universidad de Málaga

Page 2: Charla routers jmcruz2012

Contenidos� Presentación de un router

� Routers comerciales

� Routers software de código abiertoo XORPo XORPo Vyatta

� Redes caseras: virtualización de routerso Dynamips/Dynagen/GNS3

� Routers de hardware abiertoo NetFPGAo OpenFlow

Page 3: Charla routers jmcruz2012

Lo básico: el modelo OSI. Niveles, interfaces y protocolos

3

Page 4: Charla routers jmcruz2012

4

Page 5: Charla routers jmcruz2012

Misión del router IP1. Recibe una trama destinada a su dirección física (ejemplo MAC),

pero con una IP distinta a la suya

2. Inspecciona la tabla de encaminamiento para determinar por dóndeenviar el datagrama

3. Modifica la dirección MAC origen de la trama, eliminando la original del emisor y reemplazándola por la MAC del interfaz de salida del del emisor y reemplazándola por la MAC del interfaz de salida del router

4. Modifica la dirección MAC destino de la trama, insertando la dirección MAC del próximo nodo de salto

5. Decrementa en 1 el campo TTL de la cabecera IP

6. Recalcula los checksums del datagrama IP y de la trama de niveldos (en este orden)

7. Coloca la trama en la cola del interfaz de salida correspondiente 5

Page 6: Charla routers jmcruz2012

Enrutamiento� La tabla de encaminamiento se compone de una serie de entradas de la siguiente

forma:

� Existe una opción de Red por defecto (default) que se elige en el caso de que no cumpla ninguna de las demás entradas.

RED MÁSCARA PASARELA INTERFACE

172.16.14.32 255.255.255.224 172.16.14.133 le1

ninguna de las demás entradas.

� Cuando el acceso es a la misma subred se pone en la pasarela el valor “directo”

6

Page 7: Charla routers jmcruz2012

¿Quién gestiona las tablas?� El administrador de forma manual

� De forma distribuida utilizando protocolos de encaminamientoo Cada interred se trata como un sistema autónomo (AS)

con sus propios algoritmos de encaminamiento y con sus propios algoritmos de encaminamiento y autoridad gestora

o Por eso se distingue entre encaminamiento interior y exterior:

• IGP (Interior Gateway Protocol) funciona en un AS• EGP (Exterior Gateway Protocol) funciona entre varios AS

7

Page 8: Charla routers jmcruz2012

3b

1d

3a

1c2aAS3

AS1AS21a

2c2b

1b

3c

Sistemas autónomos

1d AS1

Intra-ASRouting algorithm

Inter-ASRouting algorithm

Forwardingtable

� La tabla de encaminamiento se configura teniendoen cuenta la información de los protocolos intra- e inter-SA

Page 9: Charla routers jmcruz2012

Los routers reales...� No solo trabajan a

nivel 3 (IP)

o NAT/NAT de puertos

o DHCP

o Protocolos de o Protocolos de encaminamiento

o Configuración web

o ...

Page 10: Charla routers jmcruz2012

Velocidad, velocidad, velocidad...� Routers troncales: enlaces de 2,5 Gbps con paquetes de 256 bits ->

~1.000.000 de busquedas por segundo!!!� Estructura de la tabla como árbol para facilitar las búsquedas en

función de la IP destino (múltiples optimizaciones propuestas y estructuras de datos)

� Ayuda tener cachés (de consultas frecuentes)� Ayuda tener la tabla en cada puerto de entrada (si se pasan a un

procesador central puede haber cuello de botella) procesador central puede haber cuello de botella)

Page 11: Charla routers jmcruz2012

Routers comerciales

Page 12: Charla routers jmcruz2012

Terminología común� IOS: Internetwork operating system (imágenes o firmware del

router)� CLI: Command line interpreter (comandos de consola de

configuración del router)

Page 13: Charla routers jmcruz2012

Componentes de un router� CPU� RAM� NVRAM (ficheros de configuración de arranque)� Flash (IOS y ficheros de backup)� ROM (BIOS)� Consola (interfaz de administración)� Interfaces (puertos de comunicaciones)

DISIPADORES

ALI

MEN

TACIÓ

N R

ED

UN

DAN

TE

(5,6): PERFORMANCE ROUTER ENGINE

Page 14: Charla routers jmcruz2012

Secuencia de arranque del router

Page 15: Charla routers jmcruz2012

Actores relevantes: CISCO

Y sus certificaciones...CCNA (asociado),CCNP (profesional),CCIE (experto)

En distintos tracks

Page 16: Charla routers jmcruz2012

Y el resto de actores

(antes)

...

Page 17: Charla routers jmcruz2012

Servidores Web

IP publicarouter contivity

IP privada

clientes: VPNcon contivitypara acceso remoto

Parte del Máster en Telemáticay Redes de Telecomunicación

INTERNET

Red corporativa

switch/routers acceso

routers core(fam.8600)

familia 5500

Page 18: Charla routers jmcruz2012

Routers software de código abierto

Page 19: Charla routers jmcruz2012

Procesado de tablas con demonios Unix

� Se gestionan a nivel de aplicación mediante procesos demonio:

o routed para IGPs (RIP)o gated para IGPs y EGPs (RIP, OSPF, BGP)o zebra/quagga (interfaz de comando similar a un CLI)

� Se utiliza UDP para los paquetes RIP y TCP para BGP

Network Layer

Page 20: Charla routers jmcruz2012

El primer router modular: Click

Eddie Kohler. Ph.D. thesis, MIT, November 2000

Page 21: Charla routers jmcruz2012

Click!� C/C++, licencia MIT/BSD� Módulo de kernel de linux y FreeBSD con optimizaciones� http://read.cs.ucla.edu/click/elements

Throughput:456.000 p/s con ochotarjetas fast etherneten un Pentium III 700 MHzen un Pentium III 700 MHz

Page 22: Charla routers jmcruz2012

Modulos en click: router IP

Page 23: Charla routers jmcruz2012

XORP

Page 24: Charla routers jmcruz2012

XORP� El CLI es el proceso xorpsh

Los módulos son procesosque exponen unos interfacesaccesibles con eventos remotos(no bloqueantes,asíncronos)

Page 25: Charla routers jmcruz2012

Vyatta

Conjunto de herramientas: quagga, openvpn, CLI...

Page 26: Charla routers jmcruz2012

Vyatta

??

Page 27: Charla routers jmcruz2012

OpenWrt� Linux orientado a dispositivos empotrados tipo

router doméstico

Page 28: Charla routers jmcruz2012

Redes caseras: virtualización de routers

Pinturas de Karin Jurick

Page 29: Charla routers jmcruz2012

En qué consiste la virtualización

Page 30: Charla routers jmcruz2012

Virtualización: tipos� Emulación de hardware: Se basa en crear máquinas

virtuales que emulan el hardware de una o varias plataformas. Es la más costosa y menos eficiente, ya que obliga a simular completamente el comportamiento de la plaforma hardware a emular.

� Virtualización de sistema operativo: Basada en que el kernel del sistema operativo realiza la ejecución de una única kernel del sistema operativo realiza la ejecución de una única instancia del sistema operativo invitado. Los distintos procesos de cada sistema operativo virtual se ejecutarán de forma aislada.

� Paravirtualización: Los sistemas operativos invitados están modificados para ejecutarse en el hipervisor.

� Virtualization total: El sistema operativo invitado se ejecuta sobre el sistema operativo nativo, que actúa como hipervisor.

Page 31: Charla routers jmcruz2012

Software de virtualización

� VMware Workstation, Server

� XenServer

� Microsoft Virtual PC

� Windows Server 2008 R2 Hyper-V

� Oracle VirtualBox

� Parallels Desktop

� Mac-on-Linux

� Win4BSD

� Win4Lin Pro

� Qemu/KVM (optimización para Linux invitados)

Page 32: Charla routers jmcruz2012

Routers virtuales

� Si el firmware del router se ejecuta sobre una plataforma estándar se puede virtualizaro XORP, Vyatta, OpenWrto Son routers software (para redes pequeñas de

prestaciones bajas o medias)

� En otro caso, re requieren emuladores especiales como hypervisoreso Dynamips para Cisco y Juniper

Page 33: Charla routers jmcruz2012

Dynamips/Dynagen/GNS3

� Dynamips es un emulador de routers Cisco que necesita ejecutar IOS

� Dynagen es un back-end en modo consola para crear y gestionar topologías de routers emulados con Dynamips

� GNS3 es un entorno gráfico que realiza las labores de Dynagen

Page 34: Charla routers jmcruz2012

GNS3

Page 35: Charla routers jmcruz2012

Integración con otros routers software

� A través de Qemu� Se conectan a GNS3 a través de interfaces

TUN/TAP

Page 36: Charla routers jmcruz2012

Otros entornos de laboratorio con routers virtuales

� Utilizado en el DIT de la UPM

� Arquitectura para gestionar múltiples máquinas linux en red o Configuración con XML (topología y comandos)o Máquinas virtuales basadas en UMLo Muy flexible! o 100% código abierto

Page 37: Charla routers jmcruz2012

Routers de hardware abierto

� Más eficientes que los routers software

� Permiten ser reprogramados (mediante fpgas)

� NetFPGAo (Stanford)

Page 38: Charla routers jmcruz2012

Controller

OpenFlow Switch

SecureChannel

PC

sw

OpenFlow (switching abierto)

FlowTable

hw

Page 39: Charla routers jmcruz2012

¡Gracias!

Jesús Martínez [email protected]@lcc.uma.es