11-11-2013
Comunicación de Datos y Redes
Catedra # 12: Capa de red
Profesor Patricio Galdames
Departamento de Sistemas de Información, Universidad del Bío-Bío, Concepción
pgaldames@ubiobio.cl Horario de Consulta:
Catedra #12
Capa de red
Objetivos:
Comprender los principios en los que se basan
los servicios de la capa de red:
Modelos de servicios de la capa de red Reenvío versus ruteo
Como un router funciona ruteo (selección de un camino) broadcast, multicast
• Introducción
• Circuitos virtuales y redes de datagramas • Que hay dentro de un
router
• IP: Protocolo Internet
– Formato datagrama – Direccionamiento IPv4 – ICMP
– IPv6
• Algoritmos de ruteo
Estado del enlace (link state) Vector de distancias (distance vector) Ruteo jerárquico • Ruteo en la Internet RIP OSPF BGP • Broadcast y ruteo de multicast
Temas de la capa de red
Catedra #12
Capa de red
transporta segmentos desde el host fuente al host destino El host fuente encapsula los segmentos en datagramas El host destino entrega segmentos a la capa de transporte
Protocolos de red están presente en cada host, router
router examina campos de cabecera en todos los datagramas IP que pasan por el application transport network data link physical application transport network data link physical network data link physical network data link physical network data link physical network data link physical network data link physical network data link physical network data link physical network data link physical network data link physical network data link physical network data link physical 11-11-2013
Catedra #12
Dos funciones claves de la capa de red
•
Reenvió (Forwarding ):
mover paquetes desde la entrada del router a la salida apropiada del router
•
Ruteo (routing):
determina la ruta tomada por los paquetes desde la fuente al destino.– Algoritmos de ruteo
analogía:
ruteo:
proceso de
planificar un viaje desde
el origen al destino
reenvío
:
proceso de
transitar a través de un
cruce
11-11-2013 1 2 3 0111valor cabecera del paquete recibido
Algoritmo de ruteo
Tabla local de reenvios valor cabec. Enlace sal.
0100 0101 0111 1001 3 2 2 1
Relación entre ruteo y reenvío
Algoritmos de ruteo determinan la ruta a través de la red
Tabla de reenvío determina el reenvió local en este router
Establecimiento de Conexión
• Fuera de ruteo y re-envío, ésta es la 3rafunción de
importancia en
algunas
arquitecturas de redes:– ATM, frame relay, X.25
• Antes que los datagramas fluyan, los dos hosts y los routers que intervienen establecen una
conexión virtual
– Routers se involucran
• Servicios de conexión de capas Red vs los de la capa de Transporte:
– Red:Entre dos hosts
– Transporte:entre dos procesos
11-11-2013 Catedra #12
Modelos de servicio de Red
P:¿Cuál es el
modelo de servicio
para el “canal” quetransporta los datagramas desde Fuente a Receptor?
Ejemplo: servicio para datagramas
individuales:
• Entrega garantizada • Entrega garantizada
con retardo inferior a 40 [ms]
Ejemplo: Servicio para un flujo de datagramas:
• Entrega de
datagramas en orden • Garantía de bandwidth
mínimo para el flujo • Restricciones sobre
cambios en el espacio (tiempo) entre
paquetes
Modelos de servicio de Capa de red:
Arquitectura de la Red Internet ATM ATM Modelo de servicio best effort CBR ABR Bandwidth none constant rate guaranteed minimum Loss no yes no Order no yes yes Timing no yes no Realimentación de Congestión no (inferida vía pérdidas) no congestión yes Garantías ?CBR: Constant bit rate ABR: Available bit rate
11-11-2013 Catedra #12
• Introducción
• Circuitos virtuales y redes de datagramas
• Que hay dentro de un router
• IP: Protocolo Internet
– Formato datagrama – Direccionamiento IPv4 – ICMP
– IPv6
• Algoritmos de ruteo
Estado del enlace (link state) Vector de distancias (distance vector) Ruteo jerárquico • Ruteo en la Internet RIP OSPF BGP • Broadcast y ruteo de multicast
Revisión
Servicios de conexión y sin
conexión de la capa de red
• Las redes de datagramas proveen servicio
sin conexión en su capa de red
• Redes de VC proveen servicio de conexión
en su capa de red
• Análogo a los servicios de capa transporte,
pero:
– Servicio es: host-a-host
– No hay opción:la capa de red provee sólo uno
– Implementación: es hecha en la red interna (core)
11-11-2013 Catedra #12
Circuitos virtuales (VC)
• Hay tres fases identificables:– Establecimiento de la llamada, – Transferencia de datos, y – Término de la llamada
• Cada paquete lleva un identificador del VC (no dirección de máquina destino)
• Cada router en el camino de fuente a destino mantiene
el “estado” por cada conexión que pasa por él • Enlace y recursos del router (ancho de banda,
buffers) pueden ser asignados al VC
“Camino de fuente a destino se comporta como un circuito telefónico”
Implementación de VC
Un VC consiste de:
1. Camino desde fuente a destino
2. Número de VC, un número por cada enlace a lo largo del camino
3. Entradas en tablas de re-envío en los routers a lo largo del camino
•
Los paquetes que pertenecen a un VC
llevan el número de VC correspondiente.
•
El número de VC debe ser cambiado en
cada enlace.
– El nuevo número de VC es tomado de la tabla de re-envío
11-11-2013 Catedra #12
Tabla de Reenvío VC
12 22 32 1 2 3 Numero VC Numero interfazInterfaz de llegada VC de Llegada Interfaz de salida VC de salida
1 12 3 22 2 63 1 18 3 7 2 17 1 97 3 87 … … … … Tabla de reenvío del router :
Catedra #12 application transport network data link physical
Circuitos Virtuales: protocolos de
señalización
• usado para establecer, mantener y cerrar VC
• usado en ATM (Asynchronous Transfer Mode),
frame-relay, X.25
• No es usado en la Internet actual
1. initiate call 2. incoming call3. accept call 4. call connected5. data flow begins
6. receive data application transport network data link physical 11-11-2013 Catedra #12
Red de Datagramas
• No hay llamada de establecimiento en capa de red • Routers: no se mantiene estado de las conexiones de
extremo a extremo
– A nivel de red no hay concepto de “conexión”
• Paquetes reenviados usando dirección de host de destino 1. send datagrams application transport network data link physical application transport network data link physical 2. receive datagrams 11-11-2013
Catedra #12
1 2 3
Tabla de Reenvío de Datagramas
Dirección IP destino en Cabecera del paquete que llega
Algoritmo de ruteo
Tabla local de Reenvios Direccion dest Enlace sal
address-range 1 address-range 2 address-range 3 address-range 4 3 2 2 1 4 mil millones de direcciones IP, en vez de mantener una lista de direcciones individuales es mejor mantener una lista de rango de direcciones (tabla de agregación)
11-11-2013
Rango de direcciones de destino
11001000 00010111 00010000 00000000 hasta 11001000 00010111 00010111 11111111 11001000 00010111 00011000 00000000 hasta 11001000 00010111 00011000 11111111 11001000 00010111 00011001 00000000 hasta 11001000 00010111 00011111 11111111 sino Interfaz enlace 0 1 2 3
P:Pero, ¿que pasa si los rangos no se dividen tan claramente?
El prefijo mas largo coincidente
Rango de direcciones de destino
11001000 00010111 00010*** ********* 11001000 00010111 00011000 ********* 11001000 00010111 00011*** ********* sino DD: 11001000 00010111 00011000 10101010 Ejemplos: DD: 11001000 00010111 00010110 10100001 ¿Cual interfaz? ¿Cual interfaz?
Cuando se busca por una entrada en la tabla de
reenvío dada una dirección de destino, se usa el
prefijo de dirección
mas larga
que coincida con la
dirección de destino.
El prefijo mas largo coincidente
Interfaz enlace 0 1 2 3 11-11-2013 Catedra #12
Red de Datagrama o de VC: ¿Por qué?
Internet (Datagrama) • Datos intercambiados entre
computadores
– Servicio “elástico”, sin requerimientos de tiempo estricto.
• Sistemas terminales “inteligentes” (computadores)
– Se pueden adaptar, hacer control, recuperación de errores
– Red interna simple, la
complejidad en “periferia”
• Muchos tipos de enlaces
– Características diferentes: satélite, radio, fibra, cable – Es difícil uniformar servicios:
tasas, pérdidas, BW
ATM (VC)
• Evoluciona desde telefonía • Conversación humana: – Tiempos estrictos, requerimientos de confiabilidad – Necesidad de servicios garantizados
• Sistemas terminales “torpes”
– teléfonos
– Complejidad dentro de la
red
• Introducción
• Circuitos virtuales y redes de datagramas
• Que hay dentro de un router
• IP: Protocolo Internet
– Formato datagrama – Direccionamiento IPv4 – ICMP
– IPv6
• Algoritmos de ruteo
Estado del enlace (link state) Vector de distancias (distance vector) Ruteo jerárquico • Ruteo en la Internet RIP OSPF BGP • Broadcast y ruteo de multicast
Revisión
Arquitectura de Routers: Generalidades
Dos funciones claves de routers:
• Correr algoritmos/protocolos de ruteo (RIP, OSPF, BGP)
•
re-envío
de datagramas desde enlaces de entrada a salidaFunciones de las puerta de entrada
Conmutación Descentralizada:
• Dada la dirección destino de datagrama, se obtiene puerto de salida usando la tabla de re-envío en memoria del puerto de entrada • objetivo: procesamiento completo en puerto
de entrada a “velocidad de la línea”
• Hacer cola si datagramas llegan más rápido que tasa de re-envío a la estructura de switches
Capa física:
Recepción nivel de bits
Capa enlace datos:
e.g., Ethernet (más adelante)
11-11-2013 Catedra #12
Catedra #12
Redes de conmutación
Transfiere paquetes desde el buffer de entrada a al buffer de salida apropiado
Tasa de conmutación: tasa a la cual los paquetes son transferidos desde las entradas a las salidas
Se mide en múltiplos de la tasa de la línea de entrada/salida N entradas: tasa de conmutación es N veces la tasa de la línea
Tres tipos de estructuras de switches
memory
memory
bus crossbar
Catedra #12
Conmutación vía memoria
Primera generación de routers:
• Computadores tradicionales con conmutación controlada por CPU
• Paquetes son copiados a la memoria del sistema • velocidad limitada por ancho de banda de la
memoria (2 cruces del bus por datagrama) input port (e.g., Ethernet) memory output port (e.g., Ethernet) system bus 11-11-2013
Conmutación vía Bus
• Datagramas transitan desde la memoria del puerto de entrada a la memoria del puerto de salida vía un bus compartidos
• Contención en bus: rapidez de conmutación limitada por ancho de banda del bus
• Bus de 1 Gbps, Cisco 1900: rapidez suficiente para routers de acceso y de empresas (no router regional o backbone)
Conmutación vía una red de interconexión
• Supera limitaciones de ancho de banda del bus
• Redes de interconexión originalmente desarrolladas para conectar
procesadores en multi-procesadores • Diseño avanzado: fragmentación de
datagramas en celdas de tamaño fijo, las cuales pueden ser conmutadas en la estructura más rápidamente.
• Cisco 12000: conmuta 60 Gbps a través de la red de interconexión
11-11-2013 Catedra #12
Puertos de Salida
•
Almacenamiento (Buffering)
requerido cuandodatagramas llegan desde la estructura de switches más rápido que la tasa de transmisión
•
Disciplina de itinerario (Scheduling)
escoge entrelos datagramas encolados para transmisión
Encolamiento en puerto de salida
• Almacenamiento cuando la tasa de llegada del switch excede la rapidez de la línea de salida.
•
Retardo en cola y pérdidas debido a que el buffer
puede rebalsarse!
11-11-2013 Catedra #12
Encolamiento en puerto de entrada
• Redes de interconexión más lenta que las puertas de entradas combinadas -> encolamiento puede ocurrir en colas de entrada
• Bloqueo de inicio de cola:datagramas encolados al inicio de la cola impiden que otros en la cola puedan seguir
•
Retardo en colas y pérdidas debido a rebalse de
Políticas de descarte y envío
• Descarte al ingresar a la cola:
– Drop-tail: descartar el que llega cuando no hay espacio – Random Early Detection (RED): A la llegada de un paquete
éste es marcado (para su eliminación posterior para hacer espacio en caso que la cola se llene) o descartado
dependiendo del largo promedio de la cola.
• Para el envío de paquetes:
– First-Come-First-Served (FCFS): como cola de banco. – Weighted Fair Queuing (WFQ): comparte el ancho de
banda de salida equitativamente entre las conexiones de extremo a extremo (requiere manejar más información de estado).
11-11-2013 Catedra #12
¿ Que tan grande debe ser un buffer?
• RFC 3439 recomienda: tamaño promedio
de un buffer igual al RTT “típico” ( 250
mseg) veces la capacidad C del enlace
– e.g., C = 10 Gpbs buffer del enlace: 2.5 Gbit
• Recomendación reciente con N flujos, el
tamaño del buffer es igual a
RTT C.
N
• Introducción
• Circuitos virtuales y redes de datagramas
• Que hay dentro de un router
• IP: Protocolo Internet
– Formato datagrama – Direccionamiento IPv4 – ICMP
– IPv6
• Algoritmos de ruteo
Estado del enlace (link state) Vector de distancias (distance vector) Ruteo jerárquico • Ruteo en la Internet RIP OSPF BGP • Broadcast y ruteo de multicast