La capa de transporte en Internet Introducción (I) • La capa de transporte en Internet: – Esta formada por un gran número de protocolos distintos. – Los más utilizados son TCP y UDP. • TCP es: – Fiable. – Orientado a conexión. – Con control de flujo. • UDP es: – No fiable. – No orientado a conexión. – Sin control de flujo. Adquisición y Tratamiento de Datos 1 La capa de transporte en Internet Introducción (II) • La unidad de datos de transporte se denomina: – Segmento en TCP – Mensaje o datagrama en UDP. • La comunicación es: – Full-dúplex en TCP. – Simplex en UDP, aunque obviamente el receptor puede responder a un datagrama con otro datagrama. • UDP permite tráfico multicast o broadcast, mientras que TCP no. Adquisición y Tratamiento de Datos 2 La capa de transporte en Internet Concepto de puerto en TCP/UDP (I) • El nivel de transporte debe distinguir de forma unívoca a que aplicación van los datos. • El mecanismo se conoce como Transport Service Access Point. • Dos aplicaciones usuarios del nivel de transporte quedan identificadas por los TSAPs en los que conecta cada una. • Un TSAP esta formado por: – Dirección donde “conecta” el nivel de red: • Dirección IP de los dos ordenadores. – Dirección donde conecta el nivel de transporte: • Campo protocolo del datagrama IP. – Dirección donde conecta el nivel de aplicación: • En TCP ó UDP esta dirección es conocida como puerto. – Por tanto, la identificación se realiza con: Dirección IP ordenador 1 + Dirección IP ordenador 2 + Protocolo de transporte + Puerto ordenador 1 + Puerto ordenador 2 Adquisición y Tratamiento de Datos 3 La capa de transporte en Internet Concepto de puerto en TCP/UDP (II) • El puerto en TCP/UDP: • Es un número entero entre 0 y 65535 (16 bits). – Los números entre 0 y 1023 están reservados para el uso de servicios estándar: “Puertos bien conocidos”. – Los puertos >=1024 están disponibles para las aplicaciones de los usuarios. Adquisición y Tratamiento de Datos 4 La capa de transporte en Internet Concepto de puerto en TCP/UDP (III) Puerto 9 13 19 20 21 23 25 80 110 119 995 Puerto 7 9 13 17 19 53 67 68 69 111 123 161 162 Aplicación Discard Daytime Chargen FTP-Data FTP TELNET SMTP HTTP POP3 NNTP POP3S Aplicación Echo Discard Daytime Quote Chargen DNS Bootps Bootpc TFTP SunRPC NTP SNMP SNMP-trap Adquisición y Tratamiento de Datos Descripción Descarta todos los datos recibidos. Devuelve la hora del día. Intercambia cadenas de caracteres. Transferencia de datos FTP. Diálogo en transferencia FTP. Acceso remoto. Correo electrónico. Servidor web. Servidor de correo. News. Servidor de correo seguro. Descripción Devuelve el datagrama al emisor. Descarta el datagrama. Devuelve la hora del dia. Devuelve una “frase del dia”. Generador de caracteres. Servidor de nombres de dominio. Puerto servidor de configuración. Puerto cliente de configuración. Transferencia mediante Trivial File Transfer Protocol. Sun Remote Procedure Call. Network Time Protocol. Usado para recibir consultas de gestión de la red. Usado para recibir avisos de problemas en la red. 5 La capa de transporte en Internet Funcionamiento de los TSAPs (I) • Supongamos tres usuarios que desde el mismo ordenador inician una conexión con un servidor. • Las conexiones establecidas podrían ser, usando la notación (dirección IP, puerto): (134.123.1.2, 1024) con (221.198.34.21,23) (134.123.1.2, 1025) con (221.198.34.21,23) (134.123.1.2, 1026) con (221.198.34.21,23) • Si se observa, no existe ninguna ambigüedad en la conexión, pues cada par de identificadores es único. Adquisición y Tratamiento de Datos 6 La capa de transporte en Internet Funcionamiento de los TSAPs (II) • Si suponemos ahora que los tres usuarios se conectan desde dos ordenadores, las conexiones podrían ser: (134.123.1.2, 1024) con (221.198.34.21,23) (134.123.1.3, 1024) con (221.198.34.21,23) (134.123.1.2, 1025) con (221.198.34.21,23) • No existiendo ambigüedad en la conexión igual que antes. • Ahora un cliente envía un datagrama UDP al puerto 23 del servidor: (134.123.1.2, 1024) a (221.198.34.21,23) • La diferencia esta en el identificador del “Protocolo de transporte”, por lo que no existe ambigüedad. Adquisición y Tratamiento de Datos 7 La capa de transporte en Internet El protocolo de transporte TCP (I) • • • • Utiliza un protocolo de ventana deslizante. Tamaño de secuencia de 32 bits (4 Gbytes). Posibilidad de usar ACK “piggybacked”. Retroceso n. – Puede utilizar repetición selectiva si ambas partes la soportan. Adquisición y Tratamiento de Datos 8 La capa de transporte en Internet El protocolo de transporte TCP (II) 0 4 10 16 31 Puerto TCP origen Puerto TCP destino Número de secuencia Número de reconocimiento long c Reservado Flags Tamaño de ventana Suma de comprobación Puntero de datos urgentes Opciones TCP (0 o más palabras) Datos (Opcional) URG Adquisición y Tratamiento de Datos ACK PSH RST SYN FIN 9 La capa de transporte en Internet El protocolo de transporte UDP (I) • Suele utilizarse cuando: – La aplicación no requiere fiabilidad y no puede soportar el retardo de ACKs, etc.: Video o audio en tiempo real. – La aplicación solo requiere el envío de uno o dos mensajes: Sincronizar relojes, consultas a un servidor de nombres, etc. – Se desea enviar los datos a múltiples destinos de forma simultanea. Adquisición y Tratamiento de Datos 10 La capa de transporte en Internet El protocolo de transporte UDP (II) 0 16 31 Puerto UDP origen Puerto UDP destino Longitud de mensaje Suma de comprobación Datos (Opcional) Adquisición y Tratamiento de Datos 11