Real-time Transport Protocol

De Wikipedia, la enciclopedia libre
Saltar a: navegación, búsqueda

RTP son las siglas de Real-time Transport Protocol (Protocolo de Transporte de Tiempo real). Es un protocolo de nivel de sesión utilizado para la transmisión de información en tiempo real, como por ejemplo audio y vídeo en una video-conferencia. Está desarrollado por el grupo de trabajo de transporte de Audio y Video del IETF, publicado por primera vez como estándar en 1996 como la RFC 1889, y actualizado posteriormente en 2003 en la RFC 3550, que constituye el estándar de Internet STD 64.

Inicialmente se publicó como protocolo multicast, aunque se ha usado en varias aplicaciones unicast. Se usa frecuentemente en sistemas de streaming, junto a RTSP, videoconferencia y sistemas push to talk (en conjunción con H.323 o SIP). Representa también la base de la industria de VoIP.

La RFC 1890, obsoleta por la RFC 3551 (STD 65), define un perfil para conferencias de audio y vídeo con control mínimo. La RFC 3711, por otro lado, define SRTP (Secure Real-time Transport Protocol), una extensión del perfil de RTP para conferencias de audio y vídeo que puede usarse opcionalmente para proporcionar confidencialidad, autenticación de mensajes y protección de reenvío para flujos de audio y vídeo.

Va de la mano de RTCP (RTP Control Protocol) y se sitúa sobre UDP en el modelo OSI.

Estructura del encabezado[editar]

Byte 0 Byte 1 Byte 2 Byte 3
V P X CC M PT Sequence Number
Time Stamp
Synchronization Source (SSRC)
Content Source (CSRC)
Extension header (EH - opcional)
Datos
  • Número de versión de RTP (V - versión number): 2 bits. La versión definida por la especificación actual es 2.
  • Relleno (P - Padding): 1 bit. Si el bit del relleno está activado, hay uno o más bytes al final del paquete que no es parte de la carga útil. El último byte del paquete indica el número de bytes de relleno. El relleno es usado por algunos algoritmos de cifrado.
  • La extensión (X - Extensión): 1 bit. Si el bit de extensión está activado, entonces el encabezado fijo es seguido por una extensión del encabezado. Este mecanismo de la extensión posibilita implementaciones para añadir información al encabezado RTP.
  • Conteo CSRC (CC): 4 bits. El número de identificadores CSRC que sigue el encabezado fijo. Si la cuenta CSRC es cero, entonces la fuente de sincronización es la fuente de la carga útil.
  • El marcador (M - Marker): 1 bit. Un bit de marcador definido por el perfil particular de media.
  • Tipo de Carga útil (PT - Payload Type): 7 bits. Un índice en una tabla del perfiles de media que describe el formato de carga útil. Los mapeos de carga útil para audio y vídeo están especificados en el RFC 1890.
  • El número de Secuencia: 16 bits. Un único número de paquete que identifica la posición de este en la secuencia de paquetes. El número del paquete es incrementado en uno para cada paquete enviado.
  • Sellado de tiempo: 32 bits. Refleja el instante de muestreo del primer byte en la carga útil. Varios paquetes consecutivos pueden tener el mismo sellado si son lógicamente generados en el mismo tiempo - por ejemplo, si son todo parte del mismo frame de vídeo.
  • SSRC: 32 bits. Identifica la fuente de sincronización. Si la cuenta CSRC es cero, entonces la fuente de carga útil es la fuente de sincronización. Si la cuenta CSRC es distinta a cero, entonces el SSRC identifica el mixer(mezclador).
  • CSRC: 32 bits cada uno. Identifica las fuentes contribuyentes para la carga útil. El número de fuentes contribuyentes está indicado por el campo de la cuenta CSRC; Allí puede haber más de 16 fuentes contribuyentes. Si hay fuentes contribuyentes múltiples, entonces la carga útil son los datos mezclados de esas fuentes.
  • EH: El tamaño de este dato debe ser CC×32 en bits
  • Datos: El tamaño de los datos debe ser de X×((EHL+1)×32) donde EHL es la longitud de la extensión del la cabecera en unidades de 32 bits.

RFCs[editar]

  • RFC 6184, Proposed Standard (Mayo 2011), RTP Payload Format for H.264 Video
  • RFC 3984, Obsolete (Febrero 2005), RTP Payload Format for H.264 Video
  • RFC 3711, Proposed Standard (Marzo 2004), The Secure Real-time Transport Protocol (SRTP)
  • RFC 3551, Standard 65 (Julio 2003), RTP Profile for Audio and Video Conferences with Minimal Control
  • RFC 3550, Standard 64 (Julio 2003), RTP: A Transport Protocol for Real-Time Applications
  • RFC 1890, Obsolete (Enero 1996), RTP Profile for Audio and Video Conferences with Minimal Control
  • RFC 1889, Obsolete (Enero 1996), RTP: A Transport Protocol for Real-Time Applications