RTMP: un vistazo al Real Time Messaging Protocol

RTMP permite la transmisión fluida de contenido de vídeo y audio. El protocolo de red es esencial para la transmisión de señales codificadas al CDN, siglas de Content Delivery Networks.

Prueba del servidor cloud gratis con IONOS

Prueba ahora el servidor cloud de forma gratuita - ¡Dispón de 30 días para probar el servidor Cloud de IONOS sin coste!

REST API
Tráfico ilimitado
Virtualización VMware

La historia del Real Time Messaging Protocol

El RTMP fue desarrollado por Adobe Inc. En sus inicios, servía para transferir datos entre los servidores y Adobe Flash Player, que se utilizaba a gran escala. Por ello, se hacía un uso generalizado del Real Time Messaging Protocol. Sin embargo, que Adobe Flash Player dejara de funcionar a finales de 2020, no ha impedido que RTMP siga contando con gran popularidad. De hecho, es el protocolo de red más utilizado para streamings. No obstante, para transmitir el stream a dispositivos finales modernos, que a menudo ya no soportan RTMP debido a HTML5, se suele utilizar una combinación de RTMP y HLS.

Así funciona el Real Time Messaging Protocol

Para ofrecer contenidos de audio o vídeo en streaming a través de Internet, primero hay que codificar la señal con los codificadores de streaming. A continuación, la señal codificada se transmite a un servidor RTMP por medio del RTMP. El protocolo también se encarga de transmitir las señales codificadas al Content Delivery Network o a una plataforma de vídeo online. La forma exacta en la que se realiza esta transmisión depende de la versión de RTMP utilizada.

La versión estándar del protocolo de red utiliza TCP como protocolo de transporte a través del puerto 1935. Lo primero que ocurre es que el cliente y el servidor se intercambian bloques de datos. Este proceso se denomina handshake y es el que permite que el servidor sea informado de la versión del protocolo que se está utilizando. Además, el servidor también recibe una marca de tiempo. Una vez recibidos ambos paquetes de datos, se puede establecer la conexión en cuanto el servidor lo permita.

Para establecer dicha conexión, el cliente envía al servidor una solicitud de conexión (connect request) en formato de mensaje de acción y espera su respuesta. Una vez el cliente recibe la confirmación de la solicitud de conexión por parte del servidor, este puede iniciar la transmisión en tiempo real.

En la práctica, lo que se ha establecido es una conexión persistente con la que se pueden transmitir datos en tiempo real. Los datos de streaming se transmiten en bloques de diferentes tamaños. Para los datos de vídeo, el tamaño del bloque es de 128 bytes, mientras que en el caso de los datos de audio, los bloques tienen un tamaño de 64 bytes. La latencia de RTMP es relativamente baja debido al uso de TCP.

Otra variante del Real Time Messaging Protocol es el RTMPT basado en HTTP. En esta variante se utiliza una técnica de tunelización para eludir los cortafuegos. RTMPS, basado en HTTPS, funciona de forma similar.

Desde el servidor RTMP también se puede transmitir el flujo directamente a los dispositivos finales mediante HLS.

Ámbitos de aplicación del RTMP

En general, el Real Time Messaging Protocol se utiliza en dos ámbitos. El primer caso de uso de RTMP es la transmisión de datos entre un codificador y un servidor. Este escenario se conoce como “First Mile Delivery”.

Dado que Flash Player ya no existe, RTMP ya no puede utilizarse para enviar datos directamente a los usuarios finales. Por lo tanto, el segundo caso de uso implica utilizar un Content Delivery Network o una plataforma de vídeo online. Finalmente, se utiliza RTMP para reenviar los datos del servidor.

Consejo

Si quieres crear tu propio servidor RTMP, primero debes escoger un sistema operativo para dicho servidor. Puedes optar por Windows o por una de las diferentes distribuciones de Linux para servidores.

Utilizamos cookies propias y de terceros para mejorar nuestros servicios y mostrarle publicidad relacionada con sus preferencias mediante el análisis de sus hábitos de navegación. Si continua navegando, consideramos que acepta su uso. Puede obtener más información, o bien conocer cómo cambiar la configuración de su navegador en nuestra. Política de Cookies.