UPV - Facultad de Informática - Redes de Computadores Tema 10: El protocolo IP UPV - Facultad de Informática - Redes de Computadores Tema 13: Protocolo UDP 1. Interconexión de redes Redes de Computadores 1. Interconexió Interconexión de redes 2. Formato de un datagrama ¾ 2.1. Fragmentació Fragmentación de datagramas 3. Encaminamiento ¾ 3.1. Tablas de encaminamiento ¾ 3.2. Algoritmo de encaminamiento 4. Procesamiento de un datagrama IP. 5. Problemas con el direccionamiento IP 6. IP versió versión 6 (IPv6). Computadores (hosts) LAN/WAN pasarelas R LAN/WAN R LAN/WAN redes IP Bibliografía:[CO M 96](Tem as7,8,10 y 29). 2 Tema 13: Protocolo UDP Funcionamiento de IP UPV - Facultad de Informática - Redes de Computadores UPV - Facultad de Informática - Redes de Computadores Arquitectura de redes TCP/IP Tres tipos de servicios, con dependencias entre ellos: Servicios de aplicación Servicio de transporte fiable Servicio de entrega de paquetes sin conexión 3 Tema 13: Protocolo UDP Servicio sin conexión (datagrama) No hay garantía de entrega Entrega desordenada IP realiza las funciones de encaminamiento IP establece: ¾ Unidad básica de transferencia de datos: datagrama ¾ Formato, reglas de procesamiento de paquetes, condiciones de error, etc. 4 Tema 13: Protocolo UDP Descripción de los campos (I) El datagrama se envía encapsulado en el campo de datos de una trama: 6 6 2 destino fuente tipo (0x800) campo de datos del datagrama 46-1500 4 campo de datos de la trama CRC 0 4 vers 8 longc 16 19 tipo servicio identificación cabecera UPV - Facultad de Informática - Redes de Computadores UPV - Facultad de Informática - Redes de Computadores 2. Formato de un datagrama IP cabecera Tema 13: Protocolo UDP tiempo vida 31 longitud total flags protocolo 24 offset fragmento checksum de la cabecera dirección IP fuente dirección IP destino opciones IP (variable) relleno DATOS 5 Tema 13: Protocolo UDP Tipo de servicio Primer campo (4 bits): versión del protocolo IP UPV - Facultad de Informática - Redes de Computadores UPV - Facultad de Informática - Redes de Computadores Descripción de los campos (II) 6 Longitud de la cabecera: tamaño de la cabecera del datagrama en palabras de 32 bits (valor mínimo = 5) Longitud total del datagrama: se expresa en octetos, incluye tanto la cabecera como el área de datos. Tamaño máximo = 65.535 octetos 7 Tema 13: Protocolo UDP Permite al usuario solicitar las condiciones deseadas de retardo, ancho de banda y fiabilidad ¾ bits 0,1,2: prioridad del datagrama ¾ bit 3: bajo retardo ¾ bit 4: alta velocidad ¾ bit 5: elevada fiabilidad Estos valores pueden servir de ayuda en las decisiones de encaminamiento Pero ... no se garantiza el tipo de servicio requerido 8 Tema 13: Protocolo UDP Fragmentación de datagramas (II) Los datagramas IP deben ser transmitidos a través del servicio que proporciona la red física a la que está conectado el computador Todas las redes imponen limitaciones al tamaño máximo de los paquetes (MTU: Maximum transfer Unit) MTU en Ethernet: 1500 bytes (campo de datos) Si el datagrama “cabe” en una trama no hay segmentación (datagrama<=MTU) Los datagramas excesivamente grandes se dividen para su transmisión, dando lugar a fragmentos UPV - Facultad de Informática - Redes de Computadores UPV - Facultad de Informática - Redes de Computadores 2.1 Fragmentación de datagramas (I) Tema 13: Protocolo UDP El problema se presentará en el tránsito entre dos redes físicas distintas Æ fragmentarán los routers Al fragmentar un datagrama se copian la mayoría de los campos de la cabecera: ¾ El campo de identificación, distinto para cada datagrama, permite identificar todos los fragmentos de un mismo datagrama El desplazamiento del fragmento (en múltiplos de 8 bytes) indica la posición del fragmento dentro del datagrama original 9 10 Tema 13: Protocolo UDP Fragmentación de datagramas (III) Reensamblado de datagramas El campo longitud en un fragmento indica la longitud de dicho fragmento El destino activa un temporizador cuando se recibe el primer fragmento de un datagrama UPV - Facultad de Informática - Redes de Computadores UPV - Facultad de Informática - Redes de Computadores Tema 13: Protocolo UDP Dos bits en el campo de flags: ¾ Do not fragment (DF): El datagrama no puede ser fragmentado ¾ More fragments (MF): El fragmento no es el último de la serie Sólo se reensambla en el destino Se tienen en cuenta los campos de dirección fuente, identificación, flags y desplazamiento de fragmento 11 Si llegan todos los fragmentos antes de que venza el temporizador ¾ el datagrama se ensambla y posteriormente se procesa En caso contrario, los fragmentos ya recibidos se descartan 12 Tema 13: Protocolo UDP Tiempo de vida Host A Red 1 MTU=1500 Router 1 Red 2 MTU=620 Router 2 Red 3 MTU=1500 UPV - Facultad de Informática - Redes de Computadores UPV - Facultad de Informática - Redes de Computadores Ejemplo Host B Fragmentación en el router 1 al enviar datagramas superiores a 600, desde el host A hasta el host B lon. total 1420 identific. 32 DF=0 MF=0 datos 1 (600 octetos) lon. total 620 identific. 32 DF=0 MF=1 offset 0 datos 1 lon. total 620 identific. 32 DF=0 MF=1 offset 75 (600) datos 2 lon. total 220 identific. 32 DF=0 MF=0 offset 150 (1200) datos 2 (600 octetos) datos 3 (200 octetos) MTU = 1500 octetos MTU = 620 octetos Tema 13: Protocolo UDP Los datagramas tienen un tiempo limitado de permanencia en la internet Finalidad: Evitar que, por un mal encaminamiento, estén dando vueltas en la Internet sin alcanzar el destino Cada retransmisión del datagrama (en cada pasarela) debe decrementar ese campo Al llegar a cero el datagrama se descarta y ya no es retransmitido datos 3 13 14 El campo protocolo Otros campos de la cabecera IP El campo protocolo indica el protocolo del nivel superior al que van destinados los datos. Se utiliza para demultiplexar los paquetes. El checksum incluye sólo la cabecera UDP TCP UPV - Facultad de Informática - Redes de Computadores UPV - Facultad de Informática - Redes de Computadores Tema 13: Protocolo UDP ICMP IP 15 Tema 13: Protocolo UDP El cálculo del checksum se obtiene ¾Tomando los bytes de la cabecera como enteros de 16 bits ¾Sumándolos con aritmética de complemento a uno ¾Tomando el complemento a uno de la suma 16 Tema 13: Protocolo UDP 3. Encaminamiento en IP (I) UPV - Facultad de Informática - Redes de Computadores UPV - Facultad de Informática - Redes de Computadores El campo de opciones No siempre está presente y se incluye con propósitos de verificación del funcionamiento de la red Tiene longitud variable ¾ Determina el tamaño del campo de relleno Dependiendo del tipo de opción se replicará en uno o en todos los fragmentos de un datagrama Permiten al emisor de un datagrama: ¾ Solicitar un registro de los diferentes routers por los que pasa el datagrama en su tránsito hacia el destino ¾ Especificar la ruta a seguir por el datagrama ¾ Solicitar un registro del instante en que el router procesa el datagrama Tema 13: Protocolo UDP Dos hosts pueden comunicarse directamente mediante tramas sólo si comparten la misma red IP (diálogo directo). En ese caso, el emisor encapsula el datagrama en una trama, averigua la dirección física del destino (ARP) y le envía directamente la trama. Cuando el destino no está en la misma red que el origen hay que enviar el datagrama al router (diálogo indirecto). El proceso es parecido pero ahora la dirección física destino es la del router ¿Cómo sabemos en qué caso estamos? 17 18 Tema 13: Protocolo UDP 3.1. Tablas de encaminamiento (I) 132.58.0.11 132.58.10.12 Red 1 132.58.0.0 Host A 132.58.0.2 UPV - Facultad de Informática - Redes de Computadores UPV - Facultad de Informática - Redes de Computadores Encaminamiento en IP (II): Ejemplo Host B Red 2 25.0.0.0 25.0.0.3 Host C Router 1 A 25.0.0.1 B cabecera tram a Hw dest B A Hw orig. A datagram a IP 0x800 C IP dest B IP orig. A datos cabecera IP Hw dest R1 Hw orig. A 0x800 IP dest C IP orig. A datos Hw dest C Hw orig.R1 0x800 IP dest C IP orig. A datos 19 Tema 13: Protocolo UDP Elemento primordial en el encaminamiento IP. Contienen información sobre los posibles destinos y cómo llegar a ellos ¿Dónde están? ¾ En routers y hosts ¿Cómo deben ser? ¾ Compactas y pequeñas (en la medida de lo posible) para un funcionamiento más eficiente. ¾ Sólo con información sobre redes destino y sobre pasarelas que nos conducen a éstas 20 Tema 13: Protocolo UDP Tablas de encaminamiento (III): ejemplo Tipos de entradas en la tabla de encaminamiento: Parejas (dir. red destino, router siguiente (next hop)) UPV - Facultad de Informática - Redes de Computadores UPV - Facultad de Informática - Redes de Computadores Tablas de encaminamiento (II) Tema 13: Protocolo UDP ¾ Todo el tráfico a la misma suele seguir el mismo camino ¾ La ruta de A a B puede diferir de la de B a A Rutas por defecto: No aparece la red destino explícitamente en la tabla. ¾ Útil cuando la conexión al resto de la internet es única Ruta específica para alguno hosts determinados. Responde a propósitos de control y seguridad Red 1 142.58.0.0 Router 1 Red 2 12.0.0.0 Router 2 Router 3 15.0.0.6 12.0.0.3 12.0.0.1 Tabla de encaminamiento del router 2 Tabla de encaminamiento del host A destino 12.0.0.0 142.58.0.0 default Red 4 96.0.0.0 Red 3 15.0.0.0 Host A 142.58.0.2 96.0.0.1 15.0.0.3 12.1.1.1 router entrega directa 12.0.0.1 12.0.0.3 destino 15.0.0.0 ruta entrega directa 12.0.0.0 142.58.0.0 96.0.0.0 entrega directa 12.0.0.1 15.0.0.6 21 22 Tema 13: Protocolo UDP Tema 13: Protocolo UDP 3.2. Algoritmo de encaminamiento IP (I) Es la función más importante de IP Los routers intercambian información para mantener actualizadas las tablas de encaminamiento. No ∃ ningún protocolo obligatorio para actualizar las tablas de encaminamiento de IP Hay varios (se denominan IGP: Interior Gateway Protocol). Los más populares: UPV - Facultad de Informática - Redes de Computadores UPV - Facultad de Informática - Redes de Computadores Encaminamiento de IP en los routers ¾ RIP: Routing Information Protocol (protocolo de vector de distancias) ¾ OSPF: Open Shortest Path First (protocolo de estado del enlace) Extraer prefijo de red R S 2 1 ¿diálogo directo? N Consultar tabla de encaminamiento ¿ Ruta por defecto? Error N S S ¿ Ruta específica datagrama? Enviar los datos N S ¿ Ruta específica para R? N 1 2 23 24 Tema 13: Protocolo UDP UPV - Facultad de Informática - Redes de Computadores UPV - Facultad de Informática - Redes de Computadores 4. Procesamiento de un datagrama IP Inicio N Checksum 1 Descartar datagrama S IP datag. = Host Reensamblar N Fin S N Pasar a nivel superior Es un fragmento S Fin Primero S Activar Temporizador N 1 S Todos N Almacenar Procesamiento de un datagrama IP en un router Inicio Tamaño >MTU N S Pasar a nivel superior S IP dest = Router N Calcular Checksum TTL=TTL -1 Fin Siguiente fragmento Enviar datagrama S 1 TTL = 0 N Descartar datagrama Fragmentar N Checksum 1 S Tema 13: Protocolo UDP Encaminar Datagrama (Consulta tabla) Más fragmentos S N Fin Fin Fin 25 26 Tema 13: Protocolo UDP Tema 13: Protocolo UDP 5. Problemas con el direccionamiento IP Es necesario tener en cuenta que: UPV - Facultad de Informática - Redes de Computadores UPV - Facultad de Informática - Redes de Computadores Procesamiento de un datagrama IP. ¾ Un ordenador (host o router) con múltiples conexiones de red tendrá varias direcciones IP, y habrá que comprobarlas todas para ver si él es el destino ¾ Hay que considerar también las direcciones de difusión como direcciones destino propias ¾ Las direcciones de bucle (127.*.*.*) también se consideran direcciones propias 27 El crecimiento exponencial de Internet ha provocado serios problemas a la hora de asignar direcciones. ¾ Los routers requieren tablas de encaminamiento excesivamente grandes. ¾ El direccionamiento tradicional con clases de tipo A y B proporciona un uso ineficiente de las direcciones • No es habitual conectar 224 ó 216 hosts a una misma red local. ¾ Cada vez quedan menos direcciones disponibles (sobre todo de tipo A y B) Con el fin de aliviar estos problemas se han propuesto algunas técnicas como “subnetting” y “supernetting”. 28 Tema 13: Protocolo UDP Superredes (Supernetting) Una de las soluciones que se proponen consiste en fragmentar una red IP en subredes (Subnetting) UPV - Facultad de Informática - Redes de Computadores UPV - Facultad de Informática - Redes de Computadores Subredes (Subnetting). ¾ Para que esto no signifique modificar IPs se utilizan máscaras de red. Máscara de red B estándar: 11111111 11111111 00000000 00000000 131.107.0.0 131.107.0.0 LAN Router Máscara de subred : 11111111 11111111 11100000 00000000 131.107.128.0 LAN 131.107.0.0 131.107.32.0 LAN Router Hasta 8 subredes de 213 hosts LAN 131.107.64.0 Tema 13: Protocolo UDP Agrupa direcciones consecutivas de redes de clase C para asignarlas a una red IP. ¾ Esto permite asignar espacio de direcciones a organizaciones según sus necesidades. ¾ Mejor uso del espacio de direcciones IP Ejemplo: Máscara: 255.255.240.0 ó 193.40.128.0 /20 193.40.128.0 193.40.129.0 11000001 00101000 10000000 00000000 11000001 00101000 10000001 00000000 193.40.142.0 193.40.143.0 11000001 00101000 10001110 00000000 11000001 00101000 10001111 00000000 . . . . . . Dirección red 193.40.128.0 Nº de Hosts 4094 29 30 Tema 13: Protocolo UDP CIDR (Classless Inter-Domain Routing) 6. IPv6: ¿Por qué una nueva versión? Permite reducir el tamaño de las tablas de encaminamiento de los routers Internet está creciendo exponencialmente (su tamaño se dobla en menos de un año) Las direcciones se están agotando: Se necesita un espacio de direcciones mucho más amplio. UPV - Facultad de Informática - Redes de Computadores UPV - Facultad de Informática - Redes de Computadores Tema 13: Protocolo UDP ¾ Añade la información de máscara a las tablas de encaminamiento INTERNET 193.40.128.0 /22 Omisión LAN Router B Router C Internet Router C 12.107.64.0 /24 12.107.65.0 /24 12.107.66.0 /24 Omisión Directa Directa Directa Router A 193.40.128.0 /24 193.40.129.0 /24 193.40.130.0 /24 193.40.131.0 /24 Router B Router A 193.40.128.0 /22 12.0.0.0 /8 Omisión Directa Router A LAN 12.107.64.0 /24 LAN 12.107.65.0 /24 LAN 12.107.66.0 /24 ¾ Direcciones de 128 bits • 6×1023 direcciones por m2 de la Tierra Formato de cabecera más flexible: ¾ Menos campos fijos que en IPv4 ¾ Cabeceras de extensión opcionales Soporte de tráfico multimedia. ¾ Permite definir flujos de tráfico con distintos niveles de prioridad. Integración de servicios de seguridad. 31 ¾ Autentificación (MD5), cifrado (DES), etc.. 32 Tema 13: Protocolo UDP Direcciones IPv6: Notación Direcciones IP de 16 bytes. No hay clases de direcciones. La separación entre prefijo (red) y sufijo (host) puede estar en cualquier sitio UPV - Facultad de Informática - Redes de Computadores UPV - Facultad de Informática - Redes de Computadores Direcciones IPv6 Tema 13: Protocolo UDP ¾ No se deduce de la propia dirección, siempre hay que indicar la longitud del prefijo (máscara de red) Direcciones especiales ¾ Unicast: dirección de un computador ¾ Multicast: dirección de un grupo de computadores (todos) ¾ Anycast: dirección de un grupo de computadores (uno cualquiera del grupo) Notación: ¾ Demasiado larga en decimal 104.230.140.100.255.255.255.255.0.0.17.128.150.10.255.255 ¾ Se utilizará representación hexadecimal 68E6:8C64:FFFF:FFFF:0:1180:96A:FFFF ¾ Los campos consecutivos a 0 pueden comprimirse: FF05:0:0:0:0:0:0:B3 ⇒ FF05::B3 El símbolo :: sólo puede aparecer una vez en una dirección. Incorpora direcciones de IPv4: ::128.10.2.1 El símbolo :: sólo puede aparecer una vez en una dirección. Las direcciones pueden varios niveles de jerarquía. 010 Id. Proveed. Id. suscriptor Id. subred Id. nodo 33 34 Tema 13: Protocolo UDP Transición de la v4 a la v6 Cabecera IPv4: Version IHL Identification Time to Live Total Length Type of Service Flags Protocol • Fragment Offset Header Checksum • Source Address Cabecera de tamaño fijo (extensiones de cabecera opcionales) Destination Address Padding Options • No hay Checksum (Relegado al nivel de enlace) Cabecera IPv6: Version Priority Espacio de direcciones cuadriplicado Flow Label Payload Length Next Header Hop Limit • Source Address Destination Address No hay fragmentación (Descubrimiento de mínimo MTU) • Etiqueta de flujo/prioridad UPV - Facultad de Informática - Redes de Computadores UPV - Facultad de Informática - Redes de Computadores IPv6: Cambios en las cabeceras IP Tema 13: Protocolo UDP Se ha previsto una fase de transición, durante la que puedan convivir ambos protocolos Durante el transitorio: ¾ Las direcciones antiguas pueden codificarse fácilmente como direcciones nuevas ¾ Se permitirán dispositivos capaces de encaminar paquetes IPv6 e IPv4 ¾ Las estaciones podrán utilizar los dos protocolos ¾ El empleo de túneles permitirá encapsular tráfico IPv6 que tiene que atravesar zonas IPv4 (Calidad de servicio) 36