Sunteți pe pagina 1din 18

Administración de Servicios de Red

Protocolos para aplicaciones de tiempo


real

Ing. Denis L. Espinoza Hernández, M.Sc.


denisjev@gmail.com
Real-Time Protocol (RTP)

 RTP especifica una estructura  RTP corre en los sistemas


de paquete para transportar extremos.
datos de audio y video,  Paquetes RTP son encapsulados
también otros medios en datagramas UDP
 RFC 1889.  Interoperabilidad: si dos
 Paquete RTP provee aplicaciones de telefonía
 Identificación del tipo de Internet corren RTP, entonces
carga ellas pueden trabajar.
 Número se secuencia de
paquete
 Marcas de tiempo
(timestamping)

2
RTP corre sobre UDP

Biblioteca RTP provee una interfaz de capa transporte


que extiende UDP:

• número de puerto, dirección IP


• identificación de tipo de carga
• número de secuencia de paquete
• marca de tiempo

3
Ejemplo RTP

 Consideremos envío de voz de  Encabezado RTP indica tipo de


64 kbps PCM sobre RTP. codificación de audio en cada
 Aplicación agrupa datos paquete
codificados, e.g., cada 20  Tx puede cambiar
ms=160 bytes. codificación durante la
 El trozo de audio junto con el conferencia.
encabezado RTP forma el  Encabezado RTP también
paquete RTP, el cual es número de secuencia y marcas
encapsulado en un segmento de tiempo.
UDP.

4
RTP y QoS

 RTP no provee ningún mecanismo para asegurar entrega a tiempo de


datos ni provee otras garantías de calidad de servicio.
 Encapsulado RTP es sólo notado en los sistemas extremos: no es visto por
los routers intermedios.
 Routers proveen servicio best-effort y no hacen nada especial para
asegurar que el paquete RTP llegue a destino a tiempo.

5
Encabezado RTP

Tipo de carga (7 bits): Indica tipo de codificación usada. Si Tx cambia en medio


de la conferencia, Tx informa al Rx a través del campo tipo de carga.

• Tipo de carga 0: PCM mu-law, 64 kbps


• Tipo de carga 3, GSM, 13 kbps
• Tipo de carga 7, LPC, 2.4 kbps
• Tipo de carga 26, Motion JPEG
• Tipo de carga 31. H.261
• Tipo de carga 33, MPEG2 video

Número de Secuencia (16 bits): Incrementa en uno por cada paquete RTP
enviado, y puede ser usado para detectar pérdida de paquetes y restaurar
secuencia (orden) de paquetes.

6
Encabezado RTP (2)

 Marca de tiempo (32 bits). Refleja el instante de muestreo del primer


byte en el paquete RTP.
 Para audio, la marca de tiempo incrementa en uno por cada periodo
de muestreo (por ejemplo, cada 125 us para un reloj de muestreo de
8 KHz)
 Si aplicación genera grupos de 160 muestras codificadas, entonces la
marca de tiempo en 160 por cada paquete RTP cuando hay habla. El
reloj de las marcas de tiempo continua su incremento cuando la
fuente está inactiva (silencio).

 Campo SSRC (Synchronization source, 32 bits long). Identifica la fuente


del flujo RTP. Cada flujo de una sesión RTP debería tener un SSRC distinto.
La idea es tener un identificador de fuente de flujo independiente de la
dirección de red para poder identificar números de secuencia y marcas
de tiempo provenientes de una misma fuente.

7
Real-Time Control Protocol (RTCP)

 Trabaja en conjunto con RTP.  Estadística incluye número de


 Cada participante de una paquetes enviados, número de
sesión RTP transmite paquetes perdidos, jitter del
periódicamente paquetes de flujo, etc.
control RTCP a todos los otros  Este feedback puede ser usado
participantes. para controlar desempeño
 Cada paquete RTCP contiene  Tx puede modificar su
reportes de transmisores y/o transmisión basado en este
receptores feedback
 Reporta estadística útil para
aplicación

8
RTCP - Continuación

❑ En una sesión RTP típicamente hay una única dirección multicast; todos los
paquetes RTP y RTCP pertenecientes a misma sesión usan la dirección
multicast.
❑ Paquetes RTP y RTCP se distinguen entre sí por el uso de número de
puertos distintos.
❑ Para limitar tráfico, cada participante reduce su tráfico RTCP conforme el
número de participantes aumenta.
9
Paquete RTCP

Paquetes reportado por receptores: Paquetes descripción de fuente:


 fracción de paquetes perdidos,  Dirección e-mail de Tx, nombre
último número de secuencia, del Tx, SSRC asociado a flujo
promedio del jitter entre llegadas RTP.
de paquetes.  Provee mapeo entre el SSRC y
el nombre del usuario y host.
Paquetes reportados por
transmisores:
 SSRC del flujo RTP, el tiempo
actual, número de paquetes
enviados, y el número de bytes
enviados.

10
Sincronización de flujos

 RTCP puede sincronizar  Cada paquete de reporte de Tx


diferentes flujos dentro de una contiene (para el paquete
sesión RTP. generado más recientemente
 Consideremos una aplicación en el flujo RTP asociado):
de videoconferencia en donde  Marca de tiempo del
cada Tx genera un flujo RTP de paquete RTP
video y otro de audio.  Tiempo real del instante en
que el paquete fue creado.
 Marcas de tiempo en paquetes
RTP están relacionadas a los  Receptores pueden usar esta
relojes de muestreo de video y información para sincronizar la
audio. reproducción de audio y video
 No están relacionadas a el (sincronización de labios).
reloj de tiempo real
(tiempo de un reloj de
pared)
11
Escalamiento de ancho de banda en RTCP

 RTCP intenta limitar su tráfico  Los 75 kbps son igualmente


al 5% del ancho de banda de la compartidos entre receptores:
sesión.  Con R receptores, cada receptor
puede enviar tráfico RTCP a 75/R
kbps.
Ejemplo
 Tx puede enviar tráfico RTCP a 25
 Supongamos un Tx, enviando
kbps.
video a una tasa de 2 Mbps.
Entonces RTCP intenta limitar  Participantes determinan el
su tráfico a 100 Kbps. periodo de transmisión de
paquetes RTCP calculando tamaño
 RTCP da 75% de su tasa a
promedio de los paquetes RTCP (de
receptores; 25% restante a
toda la sesión) y dividiendo por la
transmisores.
tasa considerada.

12
MPEG-DASH (Dynamic Adaptive Streaming over HTTP)

Es un estándar introducido por MPEG, para solucionar la dificultad de la


distribución de contenido a múltiples dispositivos mediante un estándar
común.

Utiliza TCP y el funcionamiento es muy parecido a HLS, también divide el


archivo multimedia en pequeños fragmentos.

❑ Se comienza obteniendo el MPD (documento XML que representa las


diferentes calidades del contenido) mediante HTTP.
❑ Después se parsea con el fin de conseguir la información necesaria para la
reproducción.
❑ Tras obtener la información, selecciona las características adecuadas y
empieza a realizar el streaming obteniendo los segmentos mediante
peticiones HTTP.
❑ Durante la petición de segmentos, monitoriza los cambios en el ancho de
banda de la red y decide si es necesario realizar algún cambio.

13
MPEG-DASH (Dynamic Adaptive Streaming over HTTP)

Ejemplo de interacción:

Para llevar a cabo dicha adaptación, los clientes de DASH utilizan un algoritmo
que depende del tipo de implementación y se basan en calcular el ancho
banda medio del vídeo. Aunque funciona bien puede causar interrupciones en
el vídeo cuando se producen picos en el ancho de banda del vídeo. 14
Redes de distribución de contenidos (CDNs)

Replicación de contendido
 Desafiando envío gran archivo (e.g., origin server
video) desde único servidor de origen in North America
en tiempo real.

 Solución: replicar contenido en cientos


de servidores a través de Internet CDN distribution node

 Contenido es bajado a servidor


CDN con anticipación
 Poner contenido “cerca” del
usuario para evitar problemas
(pérdidas, retardo) al enviar
contenido sobre caminos largos CDN server
CDN server
 Servidores CDN están típicamente in S. America CDN server
in Asia
en borde o red de acceso in Europe

15
Redes de distribución de contenidos (CDNs)
origin server
Replicación de contenidos
in North America
 En CDN (e.g., Akamai) el usuario
es el proveedor de contenidos
(e.g., CNN)

CDN distribution node


 CDN replica el contenido del
usuario en servidores CDN.
Cuando el proveedor actualiza el
contendido, CDN actualiza
servidores

CDN server
CDN server
in S. America CDN server
in Asia
in Europe

16
Ejemplo CDN
HTTP request for
www.foo.com/sports/sports.html

1 Origin server

2 DNS query for www.cdn.com


CDNs authoritative
3 DNS server

HTTP request for


www.cdn.com/www.foo.com/sports/ruth.gif
Nearby
CDN server
Compañía CDN (cdn.com)
Servidor origen (www.foo.com)
 Distribuye archivos mpg
 distribuye HTML
 Usa su servidor DNS autoritario
 reemplaza: para redirigir los
http://www.foo.com/sports/ruth.mpg requerimientos
por
http://www.cdn.com/www.foo.com/sports/ruth.mpg
17
Más sobre CDNs

Ruteo de requerimientos
 CDN crea un “mapa”, indicando distancias desde ISPs hojas y nodos CDN
 Cuando consulta llega a servidor DNS autoritario:
 Servidor determina ISP desde el cual se origina la consulta
 usa “mapa” para determinar mejor servidor CDN
 Nodos CDN crean red sobrepuesta de capa aplicación

18

S-ar putea să vă placă și