El Protocolo de Transmisión en Tiempo Real (RTSP, por sus siglas en inglés, Real Time Streaming Protocol) es un estándar de comunicación utilizado para el control de flujos de medios en tiempo real, como el audio y el vídeo, sobre redes IP. En este artículo, exploraremos en profundidad el udo del protocolo RTSP en el CCTV, desde su definición y estructura hasta sus aplicaciones, limitaciones, casos de uso y su relación con otros protocolos similares. Se abordará también un caso práctico, la grabación de cámaras de CCTV en dos NVR (Network Video Recorder) al mismo tiempo medianteel protocolo RTSP.
Definición y Estructura del Protocolo RTSP
RTSP fue desarrollado por la IETF y publicado por primera vez como RFC 2326 en abril de 1998. El RTSP es un protocolo de aplicación que opera sobre el Protocolo de Control de Transmisión (TCP, por sus siglas en inglés, Transmission Control Protocol) o el Protocolo de Datagrama de Usuario (UDP, por sus siglas en inglés, User Datagram Protocol), y se utiliza para controlar la transmisión de medios en tiempo real.
La estructura del protocolo RTSP se compone de una serie de comandos y respuestas entre un cliente y un servidor, que permiten el establecimiento, control y terminación de sesiones de transmisión de medios:
- Línea de petición/respuesta: Es la primera línea de la trama RTSP y contiene la información sobre la acción que se está solicitando o la respuesta a una acción previa. Esto incluye el método RTSP utilizado (por ejemplo, DESCRIBE, SETUP, PLAY, PAUSE, TEARDOWN) o el código de estado en caso de una respuesta.
- Encabezados RTSP: Estos encabezados proporcionan información adicional sobre la sesión RTSP, como la versión del protocolo, el tipo de contenido, la longitud del mensaje, entre otros.
- Cuerpo del mensaje: En algunos casos, puede haber un cuerpo de mensaje que contiene datos adicionales relacionados con la acción solicitada o la respuesta.

- DESCRIBE: solicita una descripción del recurso multimedia.
- SETUP: inicializa los parámetros de transporte y prepara el servidor para la transmisión.
- PLAY: inicia la transmisión del flujo de medios.
- PAUSE: pausa la transmisión temporalmente, permitiendo reanudar desde el mismo punto.
- TEARDOWN: finaliza la sesión, liberando los recursos utilizados.
Creación y Motivación del Protocolo RTSP
El protocolo RTSP fue creado en respuesta a la necesidad de controlar eficientemente la transmisión de medios en tiempo real sobre redes IP. Antes de su creación, no existía un estándar ampliamente aceptado para el control de la entrega de medios en tiempo real, lo que dificultaba la interoperabilidad entre diferentes sistemas de transmisión de medios.
Los principales motivos detrás de la creación del protocolo RTSP fueron:
- Control de Sesión: RTSP proporciona un mecanismo estándar para establecer, controlar y terminar sesiones de transmisión de medios en tiempo real. Esto incluye acciones como la reproducción, pausa, reanudación y detención de la transmisión.
- Interoperabilidad: RTSP facilita la interoperabilidad entre diferentes sistemas de transmisión de medios al definir un conjunto común de comandos y procedimientos para el control de la transmisión.
- Eficiencia: Al separar el control de la entrega de medios del propio flujo de datos, RTSP permite un control más granular y eficiente sobre la transmisión de medios en tiempo real.
Limitaciones del Protocolo RTSP
A pesar de sus ventajas, el protocolo RTSP también presenta algunas limitaciones importantes, entre las que se incluyen:
- Naturaleza sin Estado: RTSP es un protocolo sin estado, lo que significa que cada solicitud se procesa de forma independiente, sin conocimiento del estado anterior de la sesión. Esto puede complicar la implementación de ciertas funcionalidades avanzadas, como la transmisión adaptativa en tiempo real.
- Seguridad: RTSP originalmente no proporcionaba mecanismos integrados para la seguridad de la transmisión de medios, como el cifrado de extremo a extremo. Si se requiere seguridad, es necesario implementar mecanismos adicionales, como el uso de HTTPS o VPN.
- Compatibilidad con Firewalls y NAT: RTSP puede tener dificultades para atravesar firewalls y dispositivos de traducción de direcciones de red (NAT) debido a su uso de puertos dinámicos para la transmisión de medios en tiempo real.
- Dependencia de Redes con Baja Latencia: RTSP funciona de manera óptima en redes con baja latencia. Las redes inestables o de alta latencia pueden afectar negativamente la experiencia de usuario, provocando retrasos o interrupciones en la transmisión.
- No proporciona compresión por si mismo: Sin embargo, RTSP se combina comúnmente con códecs de compresión, como H.264 o H.265 (HEVC), para transmitir datos multimedia de manera eficiente. Esto impediría que al utilizar RTSP nos podamos beneficiar de la compresión propietaria de un fabricante de CCTV aunque cámaras y NVR fueran de un mismo fabricante.
Casos de Uso del Protocolo RTSP
El protocolo RTSP se utiliza en una amplia variedad de aplicaciones y casos de uso, incluidos:
- Transmisión de Vídeo en Vivo: RTSP se utiliza para controlar la transmisión de vídeo en vivo en aplicaciones como videovigilancia, transmisiones deportivas en línea y videoconferencias.
- Streaming de Medios Bajo Demanda: RTSP se utiliza para controlar la entrega de medios bajo demanda, como películas y programas de televisión, a través de servicios de streaming en línea.
- Telefonía IP: RTSP se utiliza para controlar la transmisión de audio en aplicaciones de telefonía IP y conferencias telefónicas en línea.
- Sistemas de Videovigilancia (CCTV): El protoclo RTSP en el CCTV se utiliza para la retransmisión de video desde un NVR maestro a aun NVR esclavo, con el fin de tener redundancia en la grabación de cámaras IP o analógicas.
Uso del protocolo RTSP en el CCTV para grabación de cámaras de CCTV en dos NVR al mismo tiempo
El escenario descrito, con dos NVR (Network Video Recorder) para grabar vídeo de cámaras de CCTV, es necesario que uno de los NVR sea el maestro, al que se conecta la cámara, y el segundo sea el esclavo, el que recibe las grabaciones, no de la cámara, si no del NVR maestro a través de RTSP. De este modo se evitan las inconsistencias que puede ocasionar en la cámara estar conectada a dos NVR al mismo tiempo. Ya que ambos NVR podrían estar enviándole parámetros diferentes (hora, formato de grabación, …) y como resultado la cámara presentar un mal funcionamiento en la instalación. Para ello:
PROCEDIMIENTO DE USO DEL PROTOCOLO RTSP EN EL CCTV:
- Configuración del Primer NVR: Configura el primer NVR para recibir el flujo de vídeo de la/s cámara/s de CCTV a través del protocolo que corresponda. Este protocolo será el propietario si cámara y grabador son del mismo fabricante u ONVIF en caso contrario.
- Configuración del Segundo NVR: Configura el segundo NVR para recibir el flujo de vídeo del primer NVR a través del protocolo RTSP. Esto se puede lograr de manera similar a la configuración del primer NVR, agregando la dirección RTSP del primero como una fuente de vídeo en el segundo.
- Grabación y Retransmisión: Una vez configurados ambos NVR, pueden comenzar a grabar el flujo de vídeo de las cámaras de CCTV en paralelo, actuando el esclavo de backup del maestro. Esto permite la redundancia y la copia de seguridad de los datos de vídeo, así como la distribución del flujo de vídeo a través de múltiples dispositivos.
CONSIDERACIONES DE USO DEL PROTOCOLO RTSP EN EL CCTV:
Es importante tener en cuenta que la eficacia de este método depende del número, la calidad y la resolución de las cámaras de CCTV. Estos factores inciden directamente en las necesidades de ancho de banda de la red y sobre todo de la capacidad de procesamiento y ancho de banda de salida del NVR maestro. Hay que tener en consideraciónque el NVR maestro que al mismo tiempo que graba está retransmitiendo los canales de video que está grabando. Hay que tener presente como se ha indicado que en RTSP podremos tener a lo sumo compresión en H.265, si el NVR maestro la proporciona, en otro caso tendremos H.264.
Protocolos Similares a RTSP y Comparación
Además de RTSP, existen varios protocolos similares que se utilizan para la transmisión de medios en tiempo real. A continuación, se presenta una tabla comparativa de algunos de estos protocolos, junto con sus características principales y casos de uso:
| Protocolo | Descripción | Casos de Uso | Limitaciones |
|---|---|---|---|
| RTMP | Protocolo de transmisión de medios en tiempo real basado en TCP | Transmisión de vídeo en vivo, videojuegos en línea | Limitado a Flash Player, no es adecuado para HTTP |
| HLS | Protocolo de transmisión de medios en tiempo real basado en HTTP | Streaming de vídeo en vivo, entrega de medios bajo demanda | Latencia más alta, mayor sobrecarga de ancho de banda |
| MPEG-DASH | Estándar para la entrega de medios adaptativos en streaming | Streaming de vídeo en vivo y bajo demanda | Complejidad de implementación, latencia variable |
| WebRTC | Marco de transmisión de medios en tiempo real para navegadores | Videoconferencias, aplicaciones de mensajería | Requiere soporte de navegador, limitaciones de escalabilidad |
| SIP | Protocolo de inicio de sesión utilizado para establecer sesiones multimedia | Telefonía IP, conferencias telefónicas en línea | No es específico para transmisión de medios |
Es importante tener en cuenta que cada uno de estos protocolos tiene sus propias ventajas y limitaciones. La elección del protocolo adecuado dependerá de los requisitos específicos de la aplicación y las preferencias del desarrollador. Por ejemplo, el protocolo RTSP en el CCTV es el más aporpiado por lo descrito anteriormente.
Bibliografía
- Schulzrinne, H., Rao, A., & Lanphier, R. (1998). RTSP: Real-Time Streaming Protocol. IETF. RFC 2326.
- Hu, F. (2016). Network Innovation through OpenFlow and SDN: Principles and Design. CRC Press.
- Pantos, R., & May, W. (2017). HTTP Live Streaming. IETF.
- Sodagar, I. (2011). The MPEG-DASH Standard for Multimedia Streaming Over the Internet. IEEE Multimedia, 18(4), 62-67
Artículo publicado el LinkedIn el 14/04/2024, para acceder al artículo pulsar aquí.
