37
PROYECTO U2-ROUTE JHON JAIRO PADILLA A., PhD. JHONATTAN CORDOBA, candidato a Magíster.

Proyecto u2 rout-ev2

Embed Size (px)

Citation preview

Page 1: Proyecto u2 rout-ev2

PROYECTO U2-ROUTE

JHON JAIRO PADILLA A., PhD.

JHONATTAN CORDOBA, candidato a Magíster.

Page 2: Proyecto u2 rout-ev2

Introducción

• Es apoyado por Colciencias y RENATA

• Entidades desarrolladoras:

– Universidad Pontificia Bolivariana- Bucaramanga

• Grupo GITEL

– Universidad Católica Popular del Risaralda

• Grupo TICs

Page 3: Proyecto u2 rout-ev2

El problema a solucionar

• En Colombia:– Somos usuarios de las tecnologías de comunicaciones

– No somos desarrolladores de tecnologías de comunicaciones

– Existe un vacío en el conocimiento acerca de cómo construir equipos de Telecomunicaciones, en especial Routers y switches.

– Para hacer investigación de punta en Telecomunicaciones se requieren herramientas para crear prototipos. (Hasta ahora se llega hasta simulaciones y modelamiento matemático)

Page 4: Proyecto u2 rout-ev2

Objetivo del proyecto

• Construir una herramienta de pruebas que permita crear nuevos mecanismos de tratamiento de los paquetes en los Routers de Internet. Esta herramienta podrá ser operada de forma remota a través de una interfaz web soportada en la infraestructura de RENATA.

Page 5: Proyecto u2 rout-ev2

Estado del Arte

• Existen dos importantes proyectos en el mundo:

– Universidad Standford (NetFPGA card)

– Universidad de Washington (Open Network Laboratory)

Page 6: Proyecto u2 rout-ev2

Open Network Laboratory

Page 7: Proyecto u2 rout-ev2

Universidad de Stanford: tarjeta NetFPGA

• Conector PCI: bus estándar de 32 bits, 33Mhz. Esto permite conectar la tarjeta a un PC.

• 4 Interfaces GbitEthernet (1Gbps)

• Un chip FPGA Virtex-2

• 4 bancos de memoria SRAM y DRAM

Page 8: Proyecto u2 rout-ev2

Nuestro objetivo:

• Desarrollar una herramienta con la tarjeta NetFPGA para investigación y enseñanza en el área de Routers y switches.

• Desarrollar un sistema remoto para acceder al Router y hacer pruebas a distancia mediante la infraestructura de RENATA.

Page 9: Proyecto u2 rout-ev2

ROUTER CON NETFPGA

Page 10: Proyecto u2 rout-ev2

Un Router con NetFPGA

Page 11: Proyecto u2 rout-ev2

Características de un Router NetFPGA

• 4 puertos Gigabit Ethernet

• Completamente “Programable” (Hardware con FPGAs)

• Bajo costo

• Hardware FPGA open source:

– Diseño basado en Verilog

• Software Open-source:

– Drivers en C y C++

Page 12: Proyecto u2 rout-ev2

Características de la tarjeta NetFPGA

• Conector PCI: bus estándar de 32 bits, 33Mhz. Esto permite conectar la tarjeta a un PC.

• 4 Interfaces GbitEthernet (1Gbps)

• Un chip FPGA Virtex-2

• 4 bancos de memoria SRAM y DRAM

Page 13: Proyecto u2 rout-ev2

Características detalladas de la tarjeta NetFPGA-Virtex2-Pro 50 FPGA, con reloj de 125Mhz.-Xilinx Spartan II FPGA que controla la interfaz PCI hacia el Host.-Dos SRAM externas de 18Mbits, organizadas en una configuración de 512Kx36 bits (capacidad total 4.5 Mbytes). Operan de forma síncrona con la FPGA a 125Mhz.-Un banco externo de SDRAM DDR2 organizado en una configuración de 26Mx32 bits (Capacidad total: 64MBytes). Usando ambos flancos de un reloj separado de 200Mhz, la memoria tiene un ancho de banda de 400MWords/s (1600 Mbytes/s ó 12800 Mbps)-Transceptores Broadcom BCM5464SR a Gbps, usando cables UTP categorías 5, 5E o 6. Hay un soft core en la FPGA que es un controlador MAC Ethernet para las 4 interfaces físicas.--2 interfaces con conectores Serial ATA (SATA) que permiten múltiples tarjetas NetFPGA en un sisstema para intercambiar datos directamente sin utilizar el bus PCI.

Page 14: Proyecto u2 rout-ev2

Ventajas de NetFPGA• Descarga un procesador principal de ciertas tareas.

• El procesador principal (ubicado en el PC) puede utilizar DMA (Direct Memory Access) para leer/escribir registros y memorias de la tarjeta NetFPGA

• NetFPGA provee un camino de datos acelerado por Hardware– Conectividad mediante los 4 puertos a 1Gbps.

– Acceso a bancos de memoria ubicados en la tarjeta

Page 15: Proyecto u2 rout-ev2

Librerías re-utilizables (NFPs)

• NetFPGA permite descargar de la página principal (www.netfpga.org) diferentes bloques ya construidos (Hardware y Software) con funciones de Networking (NFP- NetFPGAPackages)

Page 16: Proyecto u2 rout-ev2

Contenido de las NFPs

• Se divide en tres partes:– Gateware (Verilog)– Software del Sistema– Software para pruebas de

regresión

• Las NFPs incluyen:– 1 IPv4 Router,– 1 four-port NIC,– 1 IPv4 Router with Output

Queues Monitoring System,

– the PW-OSPF software that interacts with the IPv4 Router (SCONE),

– and the Router Kit which is a daemon that reflects the routing table and ARP cache from the Linux host to the IPv4 router on NetFPGA.

Page 17: Proyecto u2 rout-ev2

Opciones de uso de NetFPGA

1. Se pueden descargar las librerías del Routerbásico e instalarlas directamente en la tarjeta NetFPGA. Las modificaciones se hacen en el software del PC para construir protocolos.

2. Se puede descargar el Router básico en la tarjeta NetFPGA y agregar módulos de extensión a la misma (módulos Hardware).

3. Construir un nuevo router con librerías construidas por el usuario-diseñador.

Page 18: Proyecto u2 rout-ev2

Uso de NetFPGA: Primera opción

• Se descarga e instala un Router IPv4 en la tarjeta NetFPGA.

• El Host Linux utiliza el Software “Router Kit” distribuido con la NFP.

• Router Kit:– Es un daemon de Linux

– Hace un espejo de las tablas de enrutamiento y tablas de ARP del Host en la tarjeta NetFPGA. Esto permite hacer procesamiento a velocidad de línea en la NetFPGA

• El usuario puede modificar los programas en Linux para hacer nuevos protocolos y probarlos.

Page 19: Proyecto u2 rout-ev2

FPGA

Memory

1GE

1GE

1GE

1GE

Running the Router Kit

User-space development, 4x1GE line-rate forwarding

PCI

CPU Memory

OSPF BGP

My Protocoluser

kernelRouting

Table

IPv4Router

1GE

1GE

1GE

1GE

FwdingTable

PacketBuffer

“Mirror”

Page 20: Proyecto u2 rout-ev2

Uso de NetFPGA: Segunda Opción

• Descargar y utilizar el hardware original provisto por la NFP• Modificar el hardware agregando módulos extraídos de otras NFPs

o agregando nuevos módulos propios.• Compilar el código fuente en Verilog con las herramientas

estándares• Descargar el bitfile a la FPGA• El nuevo hardware puede complementarse agregando nuevo

software al Host o modificando el existente.• Ejemplos:

– En el Router IPv4, implementar Trie Longest Prefix Match (LPM) Lookup en lugar del existente CAM LPM Lookup, para la tabla de enrutamiento del hardware.

– Modific ar el Router IPv4 para implementar NAT (Network AddressTranslation) o un Firewall.

Page 21: Proyecto u2 rout-ev2

FPGA

Memory

1GE

1GE

1GE

1GE

Enhancing Modular Reference Designs

PCI

CPU Memory

NetFPGA Driver

Java GUI

Front Panel

(Extensible)

PW-OSPF

In Q

Mgmt

IP

Lookup

L2

Parse

L3

Parse

Out Q

Mgmt

1GE

1GE

1GE

1GE

Verilog modules interconnected by FIFO interfaces

My

Block

Verilog

EDA Tools

(Xilinx,

Mentor, etc.)

1. Design

2. Simulate

3. Synthesize

4. Download

Page 22: Proyecto u2 rout-ev2

Uso de NetFPGA: Tercera opción

• Construir un nuevo router con librerías construidas por el usuario-diseñador

Page 23: Proyecto u2 rout-ev2

FPGA

Memory

1GE

1GE

1GE

1GE

Creating new systems

PCI

CPU Memory

NetFPGA Driver

1GE

1GE

1GE

1GE

My Design

(1GE MAC is soft/replaceable)

Verilog

EDA Tools

(Xilinx,

Mentor, etc.)

1. Design

2. Simulate

3. Synthesize

4. Download

Page 24: Proyecto u2 rout-ev2

Ejemplo: Router Básico

• 5 fases:

– Entrada

– Arbitraje de entrada

– Decisión de enrutamiento y modificación de paquetes

– Encolamiento de salida

– Salida

Page 25: Proyecto u2 rout-ev2

Ejemplo: Router Ampliado

• Nuevos módulos:

– Limitación de tasas de bits

– Retardos

– Captura de eventos

Page 26: Proyecto u2 rout-ev2

NetFPGA en la práctica

Page 27: Proyecto u2 rout-ev2

NetFPGA en la práctica

• Viene en dos presentaciones:– Torre con DVD - Tipo Rack

PC with NetFPGA

Page 28: Proyecto u2 rout-ev2

Podría tenerse un laboratorio más complejo….

Page 29: Proyecto u2 rout-ev2

Equipo requerido para el desarrollo

El equipo viene con Linux CENTOS 5.2

Page 30: Proyecto u2 rout-ev2

Interfaz web “Conexión con router remoto”

Page 31: Proyecto u2 rout-ev2

Laboratorios Virtuales vs. Laboratorios Remotos

• En el ámbito Internacional

• A nivel nacional

• En la región

Page 32: Proyecto u2 rout-ev2

E-ciencia y sus campos de aplicación

Page 33: Proyecto u2 rout-ev2

Redes Académicas de Alta velocidad

• Importancia

• Escenarios

Page 34: Proyecto u2 rout-ev2

El portal web

Page 35: Proyecto u2 rout-ev2

Router comercial vs U2-ROUTE

• Cisco

• 3Com

• Huawei

• U2-ROUTE

Page 36: Proyecto u2 rout-ev2

Funciones del procesamiento de los paquetes

Funciones básicas

• Búsqueda de direcciones y re-envío de paquetes

• Detección y corrección de errores

• Fragmentación, segmentación y re-ensamble

• Demultiplexación de protocolos y tramas

• Seguridad: autenticación y privacidad

Funciones para soportede QoS• Clasificación de paquetes

• Encolamiento y descarte de paquetes

• Planificación y temporización

• Medición de tráfico y control de políticas

• Recorte de tráfico

Page 37: Proyecto u2 rout-ev2

Entrega de resultados

• Análisis estadístico de la información.

• Presentación de resultados obtenidos mediante gráficas (param. Internos y externos del router).