Articulo de referencia

Protocolo de control RTP

El Protocolo de Control RTP ( RTCP ) es un protocolo de señalización fuera de banda codificado en binario que funciona junto con el Protocolo de Transporte en Tiempo Real (RTP)....

El Protocolo de Control RTP ( RTCP ) es un protocolo de señalización fuera de banda codificado en binario que funciona junto con el Protocolo de Transporte en Tiempo Real (RTP). RTCP proporciona estadísticas e información de control para una sesión RTP. Colabora con RTP en la entrega y el empaquetado de datos multimedia, pero no transporta datos multimedia por sí mismo.

La función principal de RTCP es proporcionar información sobre la calidad del servicio (QoS) en la distribución de medios mediante el envío periódico de estadísticas, como el número de octetos y paquetes transmitidos, la pérdida de paquetes , la variación del retardo de los paquetes y el tiempo de retardo de ida y vuelta, a los participantes en una sesión multimedia de transmisión. Una aplicación puede utilizar esta información para controlar los parámetros de calidad del servicio, por ejemplo, limitando el flujo o utilizando un códec diferente .

Funciones del protocolo

Normalmente, el RTP se envía a través de un puerto UDP par , mientras que los mensajes RTCP se envían a través del siguiente puerto impar. [ 1 ]

El propio RTCP no proporciona ningún método de cifrado de flujo ni de autenticación. Dichos mecanismos pueden implementarse, por ejemplo, con el Protocolo de transporte seguro en tiempo real (SRTP) [ 2 ].

RTCP proporciona funciones básicas que se espera que se implementen en todas las sesiones RTP:

  • La función principal de RTCP es recopilar estadísticas sobre la calidad de la distribución de medios durante una sesión y transmitir estos datos a la fuente de medios y a los demás participantes. Esta información puede ser utilizada por la fuente para la codificación adaptativa de medios ( códec ) y la detección de fallos de transmisión. Si la sesión se transmite a través de una red de multidifusión, esto permite una monitorización no intrusiva de la calidad de la sesión.
  • RTCP proporciona identificadores de punto final canónicos (CNAME) a ​​todos los participantes de la sesión. Si bien se espera que el identificador de origen (SSRC) de una transmisión RTP sea único, la vinculación instantánea de los identificadores de origen con los puntos finales puede cambiar durante una sesión. El CNAME establece una identificación única de los puntos finales en una instancia de aplicación (uso múltiple de herramientas multimedia) y facilita la monitorización por parte de terceros.
  • Aprovisionamiento de funciones de control de sesión. RTCP es un medio conveniente para llegar a todos los participantes de la sesión, mientras que RTP no lo es. RTP solo se transmite a través de una fuente multimedia.

Se espera que todos los participantes envíen informes RTCP, incluso en sesiones multicast, que pueden involucrar a miles de destinatarios. Este tráfico aumentará proporcionalmente con el número de participantes. Por lo tanto, para evitar la congestión de la red, el protocolo debe incluir la gestión del ancho de banda de la sesión. Esto se logra controlando dinámicamente la frecuencia de las transmisiones de informes. El uso del ancho de banda RTCP generalmente no debe exceder el 5 % del ancho de banda total de la sesión. Además, el 25 % del ancho de banda RTCP debe reservarse para las fuentes multimedia en todo momento, de modo que en conferencias grandes, los nuevos participantes puedan recibir los identificadores CNAME de los remitentes sin demoras excesivas.

El intervalo de notificación RTCP es aleatorio para evitar la sincronización no deseada de las notificaciones. El intervalo mínimo recomendado para cada estación es de 5 segundos. Las estaciones no deben transmitir notificaciones RTCP con una frecuencia superior a una vez cada 5 segundos.

Encabezado del paquete

Versión : 2 bits
Identifica la versión de RTP, que es la misma en los paquetes RTCP que en los paquetes de datos RTP. La versión definida por esta especificación es dos (2).
Relleno  (P) : 1 bit
Indica si hay bytes de relleno adicionales al final del paquete RTP. El relleno puede utilizarse para completar un bloque de un tamaño determinado, por ejemplo, según lo requiera un algoritmo de cifrado. El último byte del relleno contiene la cantidad de bytes de relleno añadidos (incluido él mismo).
Recuento de informes de recepción  (RC) : 5 bits
Número de bloques de informe de recepción contenidos en este paquete. Se acepta un valor de cero.
Tipo de paquete  (PT) : 8 bits
Contiene una constante para identificar el tipo de paquete RTCP.
Longitud : 16 bits
Indica la longitud de este paquete RTCP (incluida la cabecera) en unidades de 32 bits menos uno.
Identificador SSRC : 32 bits
El identificador de origen de sincronización identifica de forma única el origen de una transmisión.

Tenga en cuenta que se pueden concatenar varios informes en un único paquete RTCP compuesto, cada uno con su propio encabezado.

Tipos de mensajes

RTCP distingue varios tipos de paquetes: informe del remitente , informe del receptor , descripción de la fuente y despedida . Además, el protocolo es extensible y permite paquetes RTCP específicos para cada aplicación. Una extensión de RTCP basada en estándares es el tipo de paquete de informe extendido . [ 4 ]

Informe del remitente (SR)
El informe del remitente es enviado periódicamente por los remitentes activos en una conferencia para informar las estadísticas de transmisión y recepción de todos los paquetes RTP enviados durante el intervalo. El informe del remitente incluye dos marcas de tiempo distintas: una marca de tiempo absoluta, representada utilizando el formato de marca de tiempo del Protocolo de Tiempo de Red (NTP) (que está en segundos relativos a la medianoche UTC del 1 de enero de 1900) y una marca de tiempo RTP que corresponde a la misma hora que la marca de tiempo NTP, pero en las mismas unidades y con el mismo desplazamiento aleatorio que las marcas de tiempo RTP en los paquetes de datos descritos en este Informe del Remitente. [ 3 ] : 12,37 La marca de tiempo absoluta permite al receptor sincronizar los mensajes RTP. Es particularmente importante cuando se transmiten audio y video simultáneamente porque los flujos de audio y video utilizan marcas de tiempo relativas independientes.
Informe del receptor (RR)
El informe del receptor está destinado a los participantes pasivos, es decir, aquellos que no envían paquetes RTP. El informe informa al remitente y a los demás receptores sobre la calidad del servicio.
Descripción de la fuente (SDES)
El mensaje Descripción de origen se utiliza para enviar el elemento CNAME a los participantes de la sesión. También puede utilizarse para proporcionar información adicional, como el nombre, la dirección de correo electrónico, el número de teléfono y la dirección del propietario o controlador del origen.
Adiós (ADIÓS)
Una fuente envía un mensaje BYE para finalizar una transmisión. Esto permite que un extremo anuncie que abandona la conferencia. Si bien otras fuentes pueden detectar la ausencia de una fuente, este mensaje es un anuncio directo. También resulta útil para un mezclador de medios.
Mensaje específico de la aplicación (APP)
El mensaje específico de la aplicación proporciona un mecanismo para diseñar extensiones específicas de la aplicación para el protocolo RTCP.

Escalabilidad en implementaciones a gran escala

En aplicaciones a gran escala, como en la televisión por protocolo de Internet (IPTV), pueden producirse retrasos muy largos (de minutos a horas) entre los informes RTCP, debido al mecanismo de control de ancho de banda RTCP necesario para controlar la congestión (véase §  Funciones del protocolo ). Las frecuencias aceptables suelen ser inferiores a una por minuto. Esto puede dar lugar a informes inapropiados de las estadísticas relevantes por parte del receptor o provocar que la evaluación por parte del emisor de medios sea inexacta en relación con el estado actual de la sesión. Se han introducido métodos para mitigar los problemas: [ 5 ] filtrado RTCP, sesgo RTCP y agregación jerárquica . [ 6 ]

Agregación jerárquica

La agregación jerárquica (o también conocida como jerarquía de retroalimentación RTCP) es una optimización del modelo de retroalimentación RTCP y su objetivo es desplazar aún más el límite del número máximo de usuarios junto con la medición de la calidad del servicio (QoS). [ 7 ] [ 8 ] El ancho de banda RTCP es constante y toma solo el 5% del ancho de banda de la sesión. Por lo tanto, el intervalo de informe sobre QoS depende, entre otros, del número de miembros de la sesión, y para sesiones muy grandes, puede llegar a ser muy alto (minutos o incluso horas). [ 3 ] Sin embargo, el intervalo aceptable es de aproximadamente 10 segundos de informe. Valores mayores causarían un estado informado desfasado y muy impreciso sobre el estado actual de la sesión, y cualquier optimización realizada por el remitente podría incluso tener un efecto negativo en las condiciones de la red o de QoS.

La agregación jerárquica se utiliza con la multidifusión específica de origen, donde solo se permite una única fuente, por ejemplo, IPTV . Otro tipo de multidifusión podría ser la multidifusión de cualquier origen , pero no es tan adecuada para aplicaciones a gran escala con un gran número de usuarios.

A fecha de junio de 2007, solo los sistemas IPTV más modernos utilizan la agregación jerárquica.

Objetivo de retroalimentación

El Feedback Target es un nuevo tipo de miembro que se introdujo por primera vez en el borrador de Internet draft-ietf-avt-rtcpssm-13. [ 9 ] El método de agregación jerárquica ha ampliado su funcionalidad. La función de este miembro es recibir informes de receptor (RR) (véase RTCP ) y retransmitir paquetes RR resumidos, denominados información de resumen del receptor (RSI) [ 9 ] a un remitente (en caso de jerarquía de un solo nivel).

Documentos de normas

  • RFC 3550 " RTP: Un protocolo de transporte para aplicaciones en tiempo real " , Estándar de Internet 64. 

Véase también

Referencias

  1. C. Huitema (octubre de 2003). Atributo del Protocolo de Control en Tiempo Real (RTCP) en el Protocolo de Descripción de Sesión (SDP) . Grupo de Trabajo de Redes. doi : 10.17487/RFC3605 . RFC 3605 .Norma propuesta.
  2. M. Baugher; D. McGrew; M. Naslund; E. Carrara; K. Norrman (marzo de 2004). El protocolo de transporte seguro en tiempo real (SRTP) . Grupo de trabajo de redes. doi : 10.17487/RFC3711 . RFC 3711 .Informativo. Actualizado por RFC 9335 , 5506 y 6904 . 
  3. 1 2 3 H. Schulzrinne; S. Casner; R. Frederick; V. Jacobson (julio de 2003). RTP: Un protocolo de transporte para aplicaciones en tiempo real . Grupo de trabajo de redes. doi : 10.17487/RFC3550 . STD 64. RFC 3550 .Estándar de Internet 64. Actualizado por RFC 8860 , 7160 , 5761 , 5506 , 6051 , 6222 , 7022 , 7164 y 8083. Deja obsoleto el RFC 1889 .  
  4. T. Friedman; R. Caceres; A. Clark, eds. (noviembre de 2003). RTP Control Protocol Extended Reports (RTCP XR) . Network Working Group. doi : 10.17487/RFC3611 . RFC 3611 .Norma propuesta.
  5. ^ Vít Novotný, Dan Komosný, Optimización de retroalimentación RTCP a gran escala , Journal of Networks, Vol.3 (3), marzo de 2008
  6. Protocolo de control en tiempo real y sus mejoras para la televisión por protocolo de Internet.
  7. KOMOSNY D., NOVOTNY V. Estructura de árbol para multidifusión de fuente específica con agregación de retroalimentación, en ICN07 - Sexta Conferencia Internacional sobre Redes. Martinica, 2007 ISBN 0-7695-2805-8
  8. NOVOTNY, V., KOMOSNY, D. Optimización de la notificación de retroalimentación RTCP a gran escala en ICWMC 2007. ICWMC 2007 - Tercera Conferencia Internacional sobre Comunicaciones Inalámbricas y Móviles. Guadalupe, 2007 ISBN 0-7695-2796-5
  9. 1 2 J. Ott; J. Chesterfield; E. Schooler (febrero de 2010). Extensiones RTCP para sesiones de multidifusión de fuente única con retroalimentación unicast . Grupo de trabajo de ingeniería de Internet . doi : 10.17487/RFC5760 . RFC 5760 .Norma propuesta. Actualizada por RFC 6128 . 

Lecturas adicionales

  • Perkins, Colin (2003). RTP . Addison-Wesley. pág.  414. ISBN 978-0-672-32249-5.
  • Peterson, Larry L.; Bruce S. Davie (2007). Redes de computadoras (4.ª  ed.). Morgan Kaufmann. pág.  806. ISBN 978-0-12-374013-7.
  • "RTCP" . Manual de protocolos de red . Javvin Technologies. 2005. ISBN 978-0-9740945-2-6.