13 DNS: Sistema de Nombres de Dominio Planteamiento: Es necesario enviar un mecanismo para traducir nombres en direcciones IP
Equipo usuario Internet Elemento poseedor de recurso www.dte.us.es IP DNS
14 DNS: Sistema de Nombres de Dominio Equipos de internet, routers: Dirección IP (32 bits) – usados para direccionar datagrama "nombre", ej: www.google.es – usado por los seres humanos
¿Cómo se genera el nombre? Elemento poseedor de recurso 130.213.40.3 Miservidor.dte.us.es
15 DNS: Sistema de Nombres de Dominio Sistemas de nombres: Planos No jerárquico No informa de localización Ej: DNI Jerárquico Con estructura Informan de localización Ej: Dirección postal
16 DNS: Sistema de Nombres de Dominio Sistemas de nombres: Planos sencillos -> administración centralizada Jerárquico -> Facilita administración (distribuida) – DNS
pc1 pc1 pc1 pc1 Empresa X Empresa Y Empresa X Empresa Y PLANO Jerárquico
17 DNS: Sistema de Nombres de Dominio Espacio de nombres: Estructura de árbol invertido Cada elemento etiquetado con nombre (max. 63 caracteres) Comienzo de árbol -> raíz (etiqueta vacía) Profundidad variable (max. 127 niveles) Similar estructura de directorios de SS.OO. Recorrido para formar nombre (raíz -> hoja) com.google.www Lectura: www.google.com
18 DNS: Sistema de Nombres de Dominio Espacio de nombres: Importante Raíz no etiquetada Cada dominio representa un subárbol Dominios organizados en niveles Dominios de primer nivel (TLD) Puede asignarse la misma etiqueta a dos equipos siempre que no sean hermanos
19 DNS: Sistema de Nombres de Dominio Espacio de nombres: pc-mio.cont.ficticio.es.
Nombre equipo dominio
20 DNS: Sistema de Nombres de Dominio Espacio de nombres: pc-mio.cont.ficticio.es.
Nombre equipo dominio FQDN
21 DNS: Sistema de Nombres de Dominio Dirección IP 4 bytes en formato decimal (69.146.202.8) Estructura jerárquica -> información precisa sobre la localización del equipo Nombre No hay ninguna información sobre la localización del equipo excepto quizás el pais P: mapa entre direcciones IP y nombre?
22 DNS: Sistema de Nombres de Dominio Sistema de Nombres de Dominio: Base de datos distribuida implementada en una jerarquía de muchos servidores de nombres Protocolo de la capa de aplicación: permite a los equipos consultar la base de datos distribuida para obtener la dirección IP asociada a un nombre DNS utiliza los servicios de UDP Servicios DNS Traducción entre el nombre del equipo y la dirección IP Alias de los hosts Traducción entre nombres canónicos y alias Alias de servidores de correo Distribución de la carga Servidores Web replicados: conjunto de IPs para un solo nombre canónico
23 Fundamentos básicos
La aplicación necesita saber la IP remota asociada a un nombre La aplicación pide la IP al cliente DNS El cliente DNS manda una petición a la red El cliente DNS recibe una respuesta que incluye la IP El cliente DNS da la IP a la aplicación DNS: Sistema de Nombres de Dominio Por qué no centralizar DNS? Un único punto de fallo Volumen de tráfico Base de datos centralizada distante Mantenimiento
El enfoque centralizado no sería escalable
24 Base de datos distribuida y jerárquica Gran número de servidores DNS organizados jerárquicamente y distribuidos por todo el mundo La base de datos está distribuida por estos servidores Tres tipos de servidores: Servidores raíz Servidores de dominio de nivel superior (Top-Level Domain, TLD) Servidores autoritativos
25 Ej: el cliente quiere la IP de www.amazon.com; 1ª aprox: El cliente contacta con un servidor raíz para encontrar el servidor TLD .com El cliente contacta con el servidor DNS .com correspondiente para devolver la dirección de un servidor DNS autoritativo para amazon.com El cliente busca la IP en el servidor autoritativo de www.amazon.com Base de datos distribuida y jerárquica
26 DNS: Servidores raíz Servidores raíz: contactan con los servidores autoritativos si no son capaces de mapear el nombre pedido reciben el mapeo devuelven el mapeo al servidor local. 13 servidores raíz en todo el mundo b USC-ISI Marina del Rey, CA l ICANN Los Angeles, CA
e NASA Mt View, CA f Internet Software C. Palo Alto, CA (and 36 other locations)
i Autonomica, Stockholm (plus 28 other locations) k RIPE London (also 16 other locations) m WIDE Tokyo (also Seoul, Paris, SF) a Verisign, Dulles, VA c Cogent, Herndon, VA (also LA) d U Maryland College Park, MD g US DoD Vienna, VA h ARL Aberdeen, MD j Verisign, ( 21 locations)
27 Servidores TLD y Autoritativos Servidores de dominio de nivel superior (Top-level domain, TLD) : responsables de .com, org, net, edu, etc, y todos los dominios de nivel superior nacionales (uk, fr, es, jp) Network Solutions mantiene los servidores TLD .com Educause hace lo propio para los .edu Tipos Genéricos (gTLD) 3 o + caracteres Patrocinados No patrocinados
28 Servidores TLD y Autoritativos Servidores de dominio de nivel superior (Top-level domain, TLD) : Tipos Geográficos 2 caracteres Representa países (gestionados por entidades de los mismos) ICANN -> IANA .arpa Reservados .test -> pruebas DNS .example -> documentación .invalid -> instalación y pruebas nuevos servidores DNS .localhost -> loopback
29 Servidores TLD y Autoritativos Servidores DNS Autoritativos: Organizaciones con servidores públicos (servidores Web o de correo) -> registros DNS públicos para poder resolver los nombres de dichos servidores Administración por la propia organización o contratar a algún proveedor de servicios.
30 Servidores locales No pertenecen estrictamente a la jerarquía cada ISP (ISP residencial, empresa, universidad) tiene uno. También llamados "default name server" Cuando los hosts hacen una petición DNS, la envían a estos servidores locales El servidor local actúa como proxy y lleva la peticíon hacia la jerarquía
31 Ejemplo de resolución de nombres DNS El equipo cis.poly.edu quiere resolver el nombre de gaia.cs.umass.edu Consulta iterativa:
Los servidores DNS a los que se pregunta devuelven el nombre de otro servidor DNS al que preguntar "No puedo resolver ese nombre, pregunte a éste servidor"
Consulta recursiva:
El servidor DNS al que se pregunta es el encargado de resolver el nombre.
32 Búsqueda recursiva
Búsqueda iterativa
requesting host cis.poly.edu gaia.cs.umass.edu root DNS server 1 2 3 4 5 6 authoritative DNS server dns.cs.umass.edu 7 8 TLD DNS server (Gp:) requesting host cis.poly.edu (Gp:) gaia.cs.umass.edu (Gp:) root DNS server (Gp:) local DNS server dns.poly.edu (Gp:) 1 (Gp:) 2 (Gp:) 4 (Gp:) 5 (Gp:) 6 (Gp:) authoritative DNS server dns.cs.umass.edu (Gp:) 7 (Gp:) 8 (Gp:) TLD DNS server (Gp:) 3
Ejemplo de resolución de nombres DNS
33 DNS: caché y actualizaciones Una vez que un servidor de nombres aprende el mapeo, lo introduce en una caché Transcurrido un tiempo, las entradas de la caché se borran Los servidoresTLD están habitualmente en la caché de los servidores locales Esto permite saltarse a los servidores raíz Los mecanismos de actualización/notificación están bajo la responsabilidad del IETF RFC 2136 http://www.ietf.org/html.charters/dnsind-charter.html
34 Registros DNS DNS: una base de datos distribuida almacena unos registros de recursos (RR) Tipo=NS Nombre: dominio (ej: foo.com) Valor: nombre del servidor autoritativo para este dominio
(Gp:) Formato RR: (nombre, valor, tipo, ttl)
Tipo=A Nombre: nombre del equipo Valor: dirección IP
Tipo=CNAME Nombre: alias de algún nombre "canónico" (real) (www.ibm.com es en realidad servereast.backup2.ibm.com) Valor: nombre canónico
Tipo=MX Valor: nombre del servidor de correo asociado al nombre
35 Protocolo DNS, mensajes Nombre, campo tipo de una petición RRs en respuesta a una petición registros para los servidores autoritativos Otra información útil
36 Cebecera, 6 campos, 2 bytes cada uno
Protocolo DNS, mensajes
37 Ejemplo: Inserción de RRs en DNS ejemplo: creación nueva empresa "Network Utopia" Registro del nombre networkuptopia.com en un registrador DNS (ej., Network Solutions) Hay que proporcionar nombres y las direcciones IP de los servidores autoritativos (principal y secundario) El registrador inserta 2 RRs en el servidor TLD .com: (networkutopia.com, dns1.networkutopia.com, NS) (dns1.networkutopia.com, 212.212.212.1, A) Hay que crear un registro Tipo A para un servidor autoritativo de www.networkuptopia.com; y un registroTipo MX de networkutopia.com ¿Cómo se accede a un sitio Web?
38 38 Servicios de acceso remoto Conexión virtual a un terminal remoto "Sustituye" a un cable directo Servicios de acceso remoto Telnet SSH
39 Servicios en red 39 Telnet Basicamente -> conexión TCP (puerto 23) Algunas otras características se negocian en el establecimiento de la conexión Sin seguridad -> incluso las contraseñas son visibles Solución: encriptación -> SSH Telnet ha quedado obsoleto
40 40 SSH SSH (Secure Shell): RFC 4251 Objetivos parecidos a telnet -> proporciona seguridad Conexión TCP (puerto 22) Otras funciones adicionales Secure FTP (sFTP) da soporte a otros protocolos no seguros -> túneles seguros conexiones seguras en servidores X Windows -> aplicaciones gráficas
41 41 SSH. Características Reduce las amenazas de seguridad: Interceptación -> analizador de protocolos Suplantación Datos cifrados -> Encriptación de 128 bits Esquema de seguridad -> clave pública/privada (RSA) Arquitectura cliente-servidor Dos versiones SSHv1 (1995) -> agujeros de seguridad SSHv2 (1997) Mejoras sobre SSHv1 Estándar actual
42 42 Servicios de transferencia de archivos Transferencia de archivos entre hosts remotos Objetivos: Compartición de archivos entre equipos remotos Sistemas de archivos de cliente y servidor independientes Transferencia de datos eficaz Dos protocolos principales FTP (File Transfer Protocol): usa TCP -> fiable RFC 959 TFTP (Trivial File Transfer Protocol): usa UDP -> más simple RFC 1350
43 43 TFTP Trivial File Transfer Protocol Transferencia de ficheros Protocolo muy simple No fiable -> UDP (puerto 69) Sin carpetas; sin encriptación Para la transferencia de pequeños ficheros
44 44 TFTP Mensajes TFTP
Código de operación (Opcode): tipo de mensaje 01: RRQ (Read Request): Petición de lectura 02: WRQ (Write Request): petición de escritura 03: DATA 04: ACK 05: Mensaje de error Datos de longitud variable: dependen del opcode
45 45 TFTP Mensajes TFTP -> RRQ & WRQ
RRQ es el primer mensaje que se envía al puerto 69 del cliente al bajar un archivo Después de RRQ -> DATA o Error Modo de transmisión: 'netascii' u 'octet' (archivos binarios) N opciones posibles con N valores (una para cada opción) El formato de los mensajes WRQ es el mismo que el de los RRQ -> pero opcode = 02 Después de WRQ -> ACK (el servidor debe dar permiso) o Error
46 46 TFTP Mensajes TFTP -> DATA & ACK
Nº bloque -> 1-65535 (garantiza el orden de los datos -> UDP no puede) El último bloque se reconoce porque es < 512 bytes (¿qué ocurre si la long. total del archivo es múltiplo de 512 bytes?) Problema: archivos largos -> un mensaje perdido significa una retx. completa El formato de mensajes ACK es el mismo que el de DATA -> pero opcode = 04 y no hay bloques de datos
47 47 TFTP Mensajes TFTP -> Error
Código de error: causa del error. Ejemplos 0 -> No definido. Ver cadena explicativa 1 -> File not found 2 -> Access violation (el cliente no tiene permiso para la acción – lectura o escritura – realizada) 3 -> Disk full . 6 -> File already exists
48 48 FTP: protocolo de transferencia de archivos Transferencia de ficheros de/hacia equipos remotos Modelo cliente/servidor cliente: parte que inicia la transferencia (hacia/desde la parte remota) servidor: equipo remoto ftp: RFC 959 Usa TCP: puertos 20, 21 -> transferencia fiable
file transfer (Gp:) FTP server
(Gp:) FTP user interface (Gp:) FTP client
local file system remote file system user at host
49 49 Dos conexiones TCP Datos: datos transferidos (puerto 20) Control: permite al usuario moverse por la estructura de directorios y bajar y subir archivos (puerto 21)
FTP
50 50 FTP: Modelo Cliente/Servidor El cliente FTP inicia la conexión (al puerto 21 del servidor) Los parámetros de conexión se negocian en el establecimiento Puerto de datos Modo de conexión: activo/pasivo Modo de transferencia: ASCII/binario
51 51 Modo estándar 2 conexiones TCP Control: puerto aleatorio del cliente (>1024) al puerto 21 del servidor Datos: tras el ACK del servidor -> del puerto 20 del servidor al puerto del cliente (indicado en el primer comando de control) El servidor inicia la conexión de datos Modo de conexión activo
52 52 Modo de conexión pasivo 2 conexiones TCP Control: de un puerto aleatorio del cliente (>1024) al puerto 21 del servidor -> comando PASV. El servidor indica un puerto aleatorio para la conexión de datos (>1024) Datos: el cliente establece la conexión
53 53 FTP: Servidores Parámetros de configuración Puerto de control (por defecto: puerto 21) Max nº de conexiones al servidor y max nº de conexiones por IP Temporizador de conexión (timeout) Mensajes de bienvenida y despedida Números de puerto para el modo pasivo Usuarios y grupos Usuarios autenticados: con login y passwd -> registrados en el servidor Usuarios anónimos Grupos: comparten las mismas propiedades en el servidor FTP
54 54 FTP: Servidores Permisos Read, write, execution (rwx) Permisos para el propietario, grupos y resto de usuarios Límite de BW El servidor puede limtar la velocidad de transferencia a los usuarios Logs Registran datos o cualquier otra info sobre conexiones de los usuarios y errores
55 55 FTP: Clientes ftp < ip_addr> Comandos cd get put mkdir exit . No hay que confundir los comandos FTP escritos por el cliente con los comandos de control FTP
FTP: comandos, resuestas Ejemplos de comandos: Se envían como texto ASCII por el canal de control USER username PASS password LIST return list of file in current directory RETR filename retrieves (gets) file STOR filename stores (puts) file onto remote host Ejemplos de códigos de respuesta Código de estado y frase (como en HTTP) 331 Username OK, password required 125 data connection already open; transfer starting 425 Can't open data connection 452 Error writing file 56 56
Servicios de correo electrónico Características principales: Uno de los servicios más importantes de Internet Permite que dos usuarios intercambien "cartas" de manera fácil, rápida y barata. Multitud de destinatarios Esquema cliente-servidor Tipos de aplicaciones clientes: Interfaz gráfica (Microsoft Outlook, Mozilla Thunderbird, Apple Mail) Texto (pine, elm, mail) Web (Gmail, Hotmail, SquirrelMail)
57
Servicios de correo electrónico Conceptos relacionados: Cuenta de correo Asociado a un nombre de usuario y contraseña [email protected] Buzón de correo Alias de correo Lista de correo
58
Servicios de correo electrónico Estándares: SMTP (Simple Mail Transfer Protocol) IMF (Internet Mail Format) MIME (Multipurpose Internet Mail Extensions) POP (Post Office Protocol) IMAP (Internet Message Access Protocol)
59
Servicios de correo electrónico Componentes: Mail User Agent (MUA) Mail Transfer Agent (MTA) Mail Delivery Agent (MDA)
Agente de usuario (MUA) Cliente de correo Componer, editar, leer mensajes de correo Emplean dos servidores de correo: Servidor de correo saliente (SMTP) Servidor de correo entrante (POP o IMAP)
(Gp:) Buzón de usuario (Gp:) Cola de mensajes salientes
(Gp:) MTA
(Gp:) MUA
(Gp:) MUA
(Gp:) MUA
(Gp:) MTA
(Gp:) MUA
(Gp:) MUA
(Gp:) MTA
(Gp:) MUA
(Gp:) SMTP
(Gp:) SMTP
(Gp:) SMTP
(Gp:) POP IMAP
60
Servicios de correo electrónico Agente de transferencia (MTA) Servidor de correo Almacena los correos de los remitentes para su envío (cola saliente) Almacena los correos entrantes de sus usuarios
Agente de envío (MDA) Encargado de copiar los mensajes entrantes al buzón de correo del usuario (Gp:) Buzón de usuario (Gp:) Cola de mensajes salientes
(Gp:) MTA
(Gp:) MUA
(Gp:) MUA
(Gp:) MUA
(Gp:) MTA
(Gp:) MUA
(Gp:) MUA
(Gp:) MTA
(Gp:) MUA
(Gp:) SMTP
(Gp:) SMTP
(Gp:) SMTP
(Gp:) POP IMAP
61
Escenario: Alice envía mesaje a Bob 1) Alice usa su cliente de correo (MUA) para componer el mensaje y "to" [email protected] 2) El MUA de Alice envía el mensaje a su servidor de correo; El mensaje se coloca en la cola de mensajes salientes 3) El Cliente SMTP del servidor de correo de Alice abre una conexión TCP con el servidor de correo de Bob 4) El cliente SMTP envía el mensaje de Alice sobre la conexión TCP 5) El servidor de correo de Bob coloca el mensaje en el buzón de correo de Bob 6) Bob emplea su cliente de correo para acceder a los mensajes entrantes (POP o IMAP) y leerlos
(Gp:) user agent
(Gp:) mail server
(Gp:) mail server
(Gp:) user agent
1 2 3 4 5 6 62
Formato de los mensajes IMF (RFC 5322) Cabeceras To: From: Subject: Date: Cuerpo Mensajes de texto simple (no ASCII extendido) de hasta 998 carácteres (sin CRLF) Cabeceras Cuerpo Línea en blanco 63
Formato de los mensajes Extensiones MIME: Añaden funcionalidad Ficheros adjuntos ASCII extendido Nuevas cabeceras Mime-Version: Content-Type: Defecto -> text/plain Adjuntos -> Multipart Content-Description: Content-Transfer-Encoding:
Tipos de codificación 7 bits 8 bits y binary quoted-printable y base64.
Ejemplo quoted-printable F3 = ó y F1 = ñ Transmisión de ñ Transmisi=F3n de =F1
64
SMTP [RFC 5321] Características: Funcionamiento sencillo: cliente – servidor Usado en comunicación entre MUA -> MTA y MTA -> MTA Usa conexión TCP con puerto 25 Tres fases handshaking (saludo) transferencia del mensaje (pueden ser varios) cierre de conexión Los mensajes se codifican en ASCII de 7 bits Binario -> ASCII (envío) ASCII -> Binario (recepción)
65
SMTP [RFC 5321] Características: comando/respuesta
respuesta: texto libre y código de estado (3 cifras): Primera cifra indica el éxito/fracaso del comando 4xx -> Error temporal 5xx -> Error permanente
comandos: Texto ASCII HELO: saludo tras aceptar conexión MAIL FROM: identifica remitente RCPT TO: indica destinatario DATA: inicio del mensaje Fin del mensaje línea con '.' QUIT: Cierra sesión SMTP
66
Ejemplo de SMTP S: 220 hamburger.edu C: HELO crepes.fr S: 250 Hello crepes.fr, pleased to meet you C: MAIL FROM: < [email protected]> S: 250 [email protected]… Sender ok C: RCPT TO: < [email protected]> S: 250 [email protected] … Recipient ok C: DATA S: 354 Enter mail, end with "." on a line by itself C: Do you like ketchup? C: How about pickles? C: . S: 250 Message accepted for delivery C: QUIT S: 221 hamburger.edu closing connection 67
POP [RFC 1939] Características: Muy simple Permite acceder a los mensajes del buzón de correos entrante El comportamiento por defecto es borrar los mensajes accedidos, aunque permite guardarlos Usa conexión TCP con puerto 110 Requiere autentificación de usuario Tres fases autorización transacción actualización
68
POP [RFC 1939] Fase de autorización comandos cliente: user: declara el nombre de la cuenta del usuario pass: contraseña respuestas del servidor +OK -ERR Fase de transacción list: muestra los identificadores de los mensajes retr: descarga el mensaje indicado por su identificador dele: borra el mensaje indicado quit C: list S: 1 498 S: 2 912 S: . C: retr 1 S: < message 1 contents> S: . C: dele 1 C: retr 2 S: < message 1 contents> S: . C: dele 2 C: quit S: +OK POP3 server signing off
S: +OK POP3 server ready C: user bob S: +OK C: pass hungry S: +OK user successfully logged on 69
IMAP [RFC 3501] Características: Más complejo que POP Permite acceder a los mensajes del buzón de correos entrante Permite organizar los mensajes en carpetas en el servidor Al recibir un nuevo correo, se coloca en la carpeta INBOX del buzón del usuario Posibilita el acceso a partes componentes de un mensaje Conserva información del estado entre sesiones IMAP
70
Acceso web Características: Se utiliza un navegador en lugar de un cliente de correo MUA está integrado en una página web El equipo del usuario emplea el protocolo HTTP para comunicarse con el servidor web El servidor web generalmente emplea IMAP para acceder a los mensajes entrantes del servidor de correo
71
Problemas Principales problemas: los mensajes se transmiten en claro Emplear mecanismos de seguridad (PGP, PEM, s/MIME) Usos indebidos SPAM
72
SPAM Contacto con muchos a bajo coste Correo masivo no solicitado Tipos Comercial Nigeriano Phishing Otros Origen equipo de una persona servidores de correo mal configurados servidores proxy mal configurados 73
SPAM Cómo obtienen direcciones destinatarios: adivinar página web ordenador infectado Falsifican las cabeceras de correo (FROM) Cómo evitarlos impedir/dificultar obtención de direcciones de correo identificarlos eficientemente Medidas no publicar nuestra dirección de correo publicar nuestra dirección de correo de forma protegida usar direcciones alternativas vigilar la seguridad de nuestro ordenador 74
Aplicaciones de red MM Características Fundamentales: Sensible al retardo Retardo de terminal a terminal Fluctuaciones de retardo Tolerante a pérdidas: las pérdidas pueden ser parcial o totalmente disimuladas Antítesis de las aplicaciones de datos, que son intolerantes a pérdidas, pero tolerantes a retardos.
Clases de aplicaciones: 1) Flujos almacenados (stored streming) 2) Flujos en vivo (live streaming) 3) Flujos interactivos, en tiempo real 75
Flujo de audio/video almacenado Flujo almacenado: Contenido almacenado en la fuente Transmitido al cliente flujos: el cliente inicia la reproducción antes de que llegue todo el contenido Restricciones de tiempo para los datos a transmitir : deben llegar a tiempo para su reproducción 76
Flujo de audio/video en vivo Ejemplos: Debate en una radio por Internet Evento deportivo en directo Flujos (parecido al flujo almacenado) Buffer de almacenamiento La reproducción puede tener retrasos de hasta decenas de segundos Aún hay restricciones temporales Interactividad Avance rápido (FF) imposible rebobinado, pausa posibles 77
Requerimientos de retardos terminal-terminal: audio: < 150 ms bien, < 400 ms OK aplicaciones: telefonía IP, video-conferencia, nuevos servicios no soportados por redes tradicionales Flujo interactivo en tiempo real 78
Flujo de video/audio almacenado El navegador solicita un metaarchivo El navegador lanza el reproductor y le pasa el metaarchivo El reproductor contacta con el servidor El servidor envía el flujo de datos de audio/video al reproductor audio o video almacenados en un archivo Archivos transferidos como un objeto HTTP Recibidos enteramente en el cliente Luego pasan al reproductor MM 79
Flujos Multimedia: UDP o TCP? UDP El servidor envía dato a la velocidad apropiada para el cliente (ajeno a la congestión de la red) Velocidad de envío habitual = velocidad de codificación = velocidad cte Velocidad de llenado del buffer = velocidad cte – perdida de paquetes Pequeño retraso de reproducción (2-5 s.) para eliminar las fluctuaciones en los retardos peor QoS debido a la pérdida de paquetes TCP Velocidad máxima bajo TCP Velocidad de llenado del buffer fluctúa debida al control de la congestión de TCP Mayor retraso en la reproducción: control de flujo y congestión HTTP/TCP pasa más fácilmente a través de los firewalls 80
Protocolo de transmisión de flujos en tiempo real: RTSP HTTP No está dirigido a contenido multimedia Sin comandos para el avance rápido, etc. RTSP: RFC 2326 Real-Time Streaming Protocol: protocolo de la capa de aplicación C/S Control de usuario: rebobinado, avance rápido, pausa, reanudación, reposicionamiento, etc. ¿Qué no hace RTSP?: No define cómo encapsular el audio/video para la tx. por la red No restringe cómo se transporta el flujo (UDP o TCP posibles) No se especifica cómo almacena el reproductor MM los archivos en el buffer 81
Mensajes RTSP -> fuera-de-banda: Los mensajes de control RTSP usan diferentes puertos que el flujo de audio/video fuera-de-banda. puerto 554 Funcionamiento aimilar a FTP (control y datos) El flujo MM se considera "en-banda". 82 Protocolo de transmisión de flujos en tiempo real: RTSP
C: SETUP rtsp://audio.example.com/twister/audio RTSP/1.0 Transport: rtp/udp; compression; port=3056; mode=PLAY
S: RTSP/1.0 200 1 OK Session 4231
C: PLAY rtsp://audio.example.com/twister/audio.en/lofi RTSP/1.0 Session: 4231
C: PAUSE rtsp://audio.example.com/twister/audio.en/lofi RTSP/1.0 Session: 4231
C: TEARDOWN rtsp://audio.example.com/twister/audio.en/lofi RTSP/1.0 Session: 4231
S: 200 3 OK 83 Protocolo de transmisión de flujos en tiempo real: RTSP
Protocolo de Tiempo Real (RTP) RTP define una estructura de paquete estandarizada que incluye campos de datos para audio/video RFC 3550 RTP proporciona Identificación de tipo de contenido Numeración de secuencia Marcas de tiempo interoperabilidad: si dos aplicaciones de teléfono IP van sobre RTP, entonces pueden ser compatibles
84
Protocolo de Tiempo Real(RTP) La librerías RTP proporcionan interfaces de capa de transporte sobre UDP, con: números de puerto, direcciones IP Identificación del tipo de codificación Número de secuencia Marca de tiempo
85
Cabecera RTP Payload Type (7 bits): Indica el tipo de codificación usado. Si el emisor cambia la codificación en medio de una conferencia, el emisor informa al receptor mediante este campo. Payload tipo 0: PCM mu-law, 64 kbps Payload tipo 3, GSM, 13 kbps Payload tipo 26, Motion JPEG Payload tipo 33, MPEG2 video
Número de secuencia (16 bits): Incrementado en una unidad por cada paquete RTP enviado. Se usa para detectar la pérdida de paquetes 86
Cabecera RTP Marca de tiempo (32 bits ): instante de muestreo del primer paquete de datos RTP. Por ejemplo, para el audio, el reloj se incrementa en uno por cada periodo de muestreo
Campo SSRC (32 bits ): identifica el origen del flujo RTP. Cada flujo de sesión RTP tiene un SSRC distinto. 87
Protocolo de control de tiempo real (RTCP) Está asociado habitualmente a RTP. Cada participante en una sesión RTP transmite periódicamente mensajes de control RTCP a los otros participantes. Cada mensaje RTCP contiene informes del emisor y/o receptor Estadísticas útiles para la aplicación: nº de paquetes enviados, nº de paquetes perdidos, fluctuaciones en el retardo, etc. El emisor puede modificar sus transmisiones basándose en la realimentación por estos mensajes. RTCP se distingue de RTP porque se toma el puerto una unidad mayor que el que se toma para RTP. Si aumenta el número de participantes, el tráfico RTCP se autolimita.
88
Protocolo de control de tiempo real (RTCP) Mensajes del receptor: Porcentaje de paquetes perdidos, último número de secuencia recibido, fluctuación media entre llegadas.
Mensajes del emisor: SSRC del flujo RTP, hora actual, número de paquetes enviados, número de bytes enviado
89
Página anterior | Volver al principio del trabajo | Página siguiente |