La capa de red en Internet Introducción • La capa de red: – Tiene como objetivo llevar los paquetes desde el origen al destino. – Es la primera capa de origen a destino. – Debe conocer la topología de la red. – Debe proporcionar un interfaz con la capa de transporte de forma que: • Los servicios deben ser independientes de la tecnología de la red. • La capa de transporte debe quedar aislada de los tipos, topologías, etc., de las subredes. • Las direcciones de red disponibles para la capa de transporte deben seguir una numeración uniforme. Adquisición y Tratamiento de Datos 1 La capa de red en Internet Organización interna de la capa de red • La capa de red puede proporcionar: – Servicio orientado a conexión. • Complejidad de la comunicación en la capa de red. • Cuando se establece una conexión se recuerda la ruta de origen a destino y todo se envía por esa ruta. – Servicio no orientado a conexión. • Complejidad de la comunicación en la capa de transporte. • Cada paquete (datagrama) se envía de forma independiente y puede escoger rutas distintas. Adquisición y Tratamiento de Datos 2 La capa de red en Internet Algoritmos de encaminamiento • La capa de red debe decidir por donde se mandan los paquetes recibidos. • Para ello utiliza algoritmos de encaminamiento que deciden por donde mandar los paquetes. • Los algoritmos pueden ser: – Estáticos: Las rutas se fijan de antemano y los paquetes viajan siempre por esas rutas. – Dinámicos: Las rutas se fijan en cada momento en función del estado de la red. • Principio de optimización: Si B está en la ruta óptima de A a C, entonces el camino óptimo de B a C está incluido en dicha ruta. – Las rutas forman un árbol con raíz en el punto de destino. – No existen bucles. – Siempre es posible llegar al destino en un número finito de saltos. Adquisición y Tratamiento de Datos 3 La capa de red en Internet Encaminamiento por el camino más corto (I) • En las redes, la distancia se mide como una combinación de: – – – – La inversa de la capacidad del enlace. El tráfico medio. El retardo. La inversa de la fiabilidad. • El peso que se da a cada factor se conoce como métrica de la red. • Para calcular el encaminamiento, conocida la distancia, se utiliza el algoritmo de Dijkstra. Adquisición y Tratamiento de Datos 4 La capa de red en Internet Encaminamiento por el camino más corto (II) B (A,2) C (B,9) 7 2 A 2 E (B,4) 2 1 6 1 3 F (E,6) D(H,11) (C,10) 2 3 4 G (A,6) (E,5) Adquisición y Tratamiento de Datos H (G,9) (F,8) 5 La capa de red en Internet Encaminamiento por inundación • Es un algoritmo muy simple. – Consiste en enviar cada paquete por todas las salidas posibles excepto por la que lo ha recibido. – Produce: • Un exceso de tráfico en la red. • Problemas en caso de existencia de bucles: – Debe fijarse un número máximo de saltos. Adquisición y Tratamiento de Datos 6 La capa de red en Internet Encaminamiento basado en el flujo • Tiene en cuenta el tráfico medio que soportan las líneas. • Intenta optimizar las rutas utilizando el camino menos congestionado. – El tráfico debe ser muy regular. • Suele ser útil para diseñar la topología de una red. Adquisición y Tratamiento de Datos 7 La capa de red en Internet Encaminamiento por vector distancia • Cada router mantiene una tabla que le indica: – La distancia mínima conocida hacia cada posible destino. – La línea que debe utilizar para llegar a él. • Los routers envían periódicamente información de estado a sus routers vecinos. • Cada router actualiza su tabla con la información recibida. • El algoritmo reacciona rapidamente ante “noticias buenas”, pero lentamente ante “noticias malas”. Adquisición y Tratamiento de Datos 8 La capa de red en Internet Encaminamiento por el estado del enlace • Esta compuesto por cuatro fases: – Descubrir los routers vecinos y obtener sus direcciones. • Al arrancar envía un paquete HELLO de presentación. – Medir el retardo en llegar a cada vecino. • Envía paquetes ECHO que son respondidos por los vecinos. – Construir un paquete que resuma la información y enviarlo a todos los routers de la red. • Envía los paquetes utilizando encaminamiento por inundación. • Numera los paquetes, descartando los obsoletos. – Calcular el camino más corto a cada router. • Utiliza generalmente el algoritmo de Dijkstra. Adquisición y Tratamiento de Datos 9 La capa de red en Internet Encaminamiento jerárquico • Se basa en organizar las redes en niveles jerárquicos: – Se divide la red en regiones. – Sólo los routers que comunican regiones se comunican con el exterior. • Las rutas: – Pueden no ser óptimas. – Se simplifica la gestión y el mantenimiento de las tablas. – Se reduce el tráfico de gestión de la red. Adquisición y Tratamiento de Datos 10 La capa de red en Internet Algoritmos de control de congestión • Congestión: – Degradamiento del rendimiento de la red debido a la presencia de excesivo tráfico. • Se puede controlar mediante: – Diseñar todo para que nunca pueda producirse congestión. – Tomar medidas que permitan detectar la congestión y corregirla. • La principal causa de congestión es el tráfico a ráfagas: Si todos los ordenadores enviaran un flujo constante sería posible diseñar la red para evitar las congestiones. Adquisición y Tratamiento de Datos 11 La capa de red en Internet Algoritmo del pozal agujereado (I) • Es un intento de controlar las ráfagas que un dispositivo introduce en la red. • El dispositivo puede enviar ráfagas, que son almacenadas en un buffer (pozal) de la inferfaz, la cual envía a la red un caudal constante. • El pozal se define con dos parámetros: – El caudal con el que sale el flujo a la red. – La capacidad C del buffer. • Ejemplo: – =10 Mbps y C=5Mb. – El ordenador envía una ráfaga de 5 Mb en 50 ms (equivalente a 100 Mbps). – El pozal casi se llena y envía la ráfaga a la red a una velocidad de 10 Mbps con lo que tarda 500 ms en enviarla. Adquisición y Tratamiento de Datos 12 La capa de red en Internet Algoritmo del pozal agujereado (II) • El algoritmo anterior no estimula el ahorro: – Un usuario que transmite continuamente tiene el mismo trato que uno que no transmite nada. • Para fomentar el ahorro se utiliza el algoritmo del pozal agujereado con créditos. – Cuando un usuario no envía datos a la red suma créditos a razón hasta la capacidad del pozal C. – Los créditos acumulados pueden utilizarse para enviar ráfagas a un caudal M mayor que el normal hasta que se agoten los créditos. Adquisición y Tratamiento de Datos 13 La capa de red en Internet Algoritmo del pozal agujereado (III) • Ejemplo: – =10 Mbps, C=5 Mb y M=100 Mbps. – El ordenador envía una ráfaga de 5 Mb en 50 ms (equivalente a 100 Mbps). – Posibles casos: • El pozal esta lleno de créditos (5 Mb), con lo que toda la ráfaga es enviada a la red a 100 Mbps. • El pozal esta vacío de créditos, por lo que se comporta como el pozal agujereado. • El pozal esta parcialmente lleno de créditos (2,5 Mb por ejemplo), entonces: créditos totales = 2,5 Mb + 10 Mbps * t créditos consumidos = 100 Mbps *t Igualando ambas expresiones obtenemos que el pozal se vaciará a 100 Mbps durante 27,8 ms, y a partir de ese momento, al haber consumido los créditos se vaciará a 10 Mbps. Adquisición y Tratamiento de Datos 14 La capa de red en Internet La capa de red en Internet (I) • La capa de red en Internet tiene como protocolo principal IP. – Es una red de datagramas. – No esta orientada a conexión. – No existe calidad de servicio (no se garantiza la entrega de los paquetes). • Todo datagrama tiene dos partes: – Cabecera: • Parte fija: 20 bytes. • Parte opcional: Entre 0 y 40 bytes en múltiplos de 4 bytes. – Datos: Mensaje que lleva el datagrama. Adquisición y Tratamiento de Datos 15 La capa de red en Internet La capa de red en Internet (II) 0 4 Versión 8 IHL 16 19 Tipo de servicio Identificación Tiempo de vida Longitud total Flag Protocolo 31 Desplazamiento del fragmento Suma de comprobación de la cabecera Dirección de origen Dirección de destino Opciones IP (0 o más palabras) Datos (Opcional) Adquisición y Tratamiento de Datos 16 La capa de red en Internet Direcciones IP (I) • Cada interfaz de red de cada nodo de la red se identifica mediante una dirección única de 32 bits. • Como representar las direcciones en binario es confuso, se suelen representar por cuatro números decimales separados por puntos. – Cada valor decimal corresponde a la representación en decimal del valor binario de 8 bits (1 byte). – Por ejemplo 10010011100111001101111001000001 se escribe como 147.156.222.65 Adquisición y Tratamiento de Datos 17 La capa de red en Internet Direcciones IP (II) • Las direcciones IP tienen estructura jerárquica: – Los primeros bits de la dirección corresponden a la red. – Los siguientes bits corresponden al ordenador dentro de la red. • Internet tiene las siguientes redes: – Clase A: Primer bit a 0, los siguientes 7 bits representan la red y los siguientes 24 bits el ordenador. – Clase B: Primeros dos bits a 10, los siguientes 14 bits representan la red y los siguientes 16 bits el ordenador. – Clase C: Primeros tres bits a 110, los siguientes 21 bits representan la red y los siguientes 8 bits el ordenador. – Direcciones clase D (no redes): Sus primeros 4 bits tienen valor 1110 y el grupo multicast se representa por los 28 bits siguientes. – Clase E: Sus primeros 5 bits tienen el valor 11110. Esta reservada para usos futuros. Adquisición y Tratamiento de Datos 18 La capa de red en Internet Direcciones IP (III) 0 Clase A 8 16 0| Red 24 31 Host 0.1.0.0 … 126.0.0.0 Clase B 10| Red Host 128.0.0.0 … 191.255.0.0 Clase C 110| Red Host 192.0.0.0 … 223.255.255.0 Clase D 1110 Dirección multicast 224.0.0.0 … 239.255.255.0 Adquisición y Tratamiento de Datos 19 La capa de red en Internet Direcciones IP (IV) • Existen unas reglas y convenios: – La dirección 255.255.255.255 y la que posee el campo ordenador todo a 1 en una red se utiliza para indicar un datagrama broadcast (a todos los ordenadores de la red). – La dirección con el campo ordenador todo a 0 en una red indica la propia red. – La dirección 0.0.0.0 identifica siempre al ordenador actual. – La dirección con el campo de red todo a 0 indica un ordenador de la propia red. – Las redes 127.0.0.0, 128.0.0.0, 191.255.0.0, 192.0.0.0 y el rango 240.0.0.0 están reservados y no deben utilizarse. – La dirección 127.0.0.1 se utiliza para pruebas de “loopback”. – Las redes 10.0.0.0, 172.16.0.0 a 172.31.0.0 y 192.168.0.0 a 192.168.255.0 están reservadas para “intranets” (redes privadas). Adquisición y Tratamiento de Datos 20 La capa de red en Internet Subredes y superredes (I) • En determinados casos hemos: – De separar una red en varias redes de menor tamaño. • Una red distribuida por distintos edificios y que debe dividirse para indicar a los routers el camino. – Unir varias redes de menor tamaño en una red mayor. • Necesitamos una red para 500 ordenadores, una clase B es excesiva, pero una sola clase C no nos sirve. • Definimos máscara de red como: – Conjunto de números binarios que indican que bits de una dirección de red indican la red (bits con valor 1) y que bits indican el ordenador (bits con valor 0). – Existe la restricción de que los bits que indican la red deben ser los primeros y además contiguos. • Todos los bits de la red indicados por la máscara de red deben ser iguales para poder definir una superred o subred. Adquisición y Tratamiento de Datos 21 La capa de red en Internet Subredes y superredes (II) • Ejemplos de máscaras válidas: 11111111000000000000000000000000 11111111111111110000000000000000 11111111111111111111111100000000 11111111111111111111111000000000 • Ejemplos de máscaras inválidas: 11111111000000001111111100000000 00000000000000001111111111111111 • Las máscaras suelen escribirse en formato decimal agrupadas de 8 en 8 bits (como las direcciones IP): 255.0.0.0 255.255.0.0 255.255.255.0 255.255.254.0 • Actualmente, se suele emplear otra notación que consiste en escribir en decimal el número de bits que tienen valor 1: 8 16 24 23 Adquisición y Tratamiento de Datos 22 La capa de red en Internet Subredes y superredes (III) • Red de clase B 172.16.0.0. – Queremos dividirla en 4 subredes iguales. – Máscara a utilizar: 255.255.192.0. – Obtenemos cuatro subredes identificadas como: • • • • 172.16.0.0 172.16.64.0 172.16.128.0 172.16.192.0 – Ahora deseamos dividir la subred 172.16.64.0 en dos subredes. – Máscara a utilizar 255.255.224.0. – Obtenemos dos subredes: • 172.16.64.0 • 172.16.96.0 Adquisición y Tratamiento de Datos 23 La capa de red en Internet Subredes y superredes (IV) • Queremos crear una red para 500 ordenadores con redes clase C. – Escogemos las redes clase C 192.168.0.0 y 192.168.1.0. – La máscara de la superred es 255.255.254.0 – Tenemos una superred identificada por 192.168.0.0, con una dirección broadcast 192.168.1.255 y 510 direcciones para ordenadores (192.168.0.1 a 192.168.1.254). Adquisición y Tratamiento de Datos 24