Grazie a RTMP è possibile eseguire uno streaming stabile di contenuti audio e video. Il pro­to­col­lo di rete è es­sen­zia­le per la tra­smis­sio­ne di segnali co­di­fi­ca­ti all’interno di una Content Delivery Network (CDN).

Free Cloud Server Trial
Server virtuali pro­fes­sio­na­li di livello en­ter­pri­se
  • vServer basato su KVM per gli svi­lup­pa­to­ri
  • Integrato con IONOS Compute Engine
  • Scalabile fino al cloud aziendale Incl. € 200 di credito iniziale nel 1° mese

Storia del pro­to­col­lo RTMP

Il pro­to­col­lo RTMP è stato creato da Adobe Inc. In un primo momento, la sua funzione era quella di tra­smet­te­re i dati tra un server e Flash Player di Adobe. Dato che quest’ultimo era molto diffuso, anche Real Time Messaging Protocol aveva trovato largo impiego. Sebbene Adobe Flash Player sia stato dismesso alla fine del 2020, RTMP gode ancora di grande po­po­la­ri­tà ed è il pro­to­col­lo di rete più uti­liz­za­to per lo streaming. Per tra­smet­te­re in streaming a terminali moderni, i quali ge­ne­ral­men­te non sup­por­ta­no più RTMP in virtù dell’uso di HTML5, ora si ricorre a una com­bi­na­zio­ne di RTMP e HLS.

Come funziona Real Time Messaging Protocol?

In­nan­zi­tut­to, la tra­smis­sio­ne di contenuti audio o video in streaming su Internet è possibile previa codifica del segnale. Per questo motivo esistono i co­sid­det­ti streaming encoder (in italiano: “co­di­fi­ca­to­ri di streaming”), di­spo­si­ti­vi atti alla co­di­fi­ca­zio­ne dello streaming. Il segnale co­di­fi­ca­to sarà in seguito inviato a un server RTMP mediante RTMP. Inoltre, il pro­to­col­lo ha anche il compito di inoltrare i segnali co­di­fi­ca­ti a una Content Delivery Network o a una piat­ta­for­ma video online. Le modalità esatte di questa tra­smis­sio­ne variano a seconda della variante RTMP in uso.

La versione standard del pro­to­col­lo di rete prevede l’uso di TCP come pro­to­col­lo di trasporto mediante la porta 1935. Per prima cosa, avviene lo scambio di blocchi di dati tra client e server: questo processo è al­tri­men­ti noto come “handshake” (dall’inglese: “stretta di mano”). Di con­se­guen­za, il server riceve in­for­ma­zio­ni sulla versione del pro­to­col­lo impiegata. A questo punto, al server sarà inviata una marca temporale. Una volta che il server conferma di aver ricevuto i due blocchi di dati, può essere stabilita la con­nes­sio­ne.

A tale scopo, il client invia al server una richiesta di con­nes­sio­ne sotto forma di action message, dopodiché attende una conferma da parte del server. Quando l’ha ricevuta, il client può avviare lo streaming in tempo reale.

Si sta­bi­li­sce così una con­nes­sio­ne stabile grazie alla quale i dati possono essere trasmessi in tempo reale. I dati in streaming sono veicolati in blocchi di diverse di­men­sio­ni. La di­men­sio­ne del blocco per i dati video è di 128 byte, mentre per i dati audio è di 64 byte. A causa dell’uso di TCP, la latenza di RTMP è re­la­ti­va­men­te bassa.

Esiste un’altra variante di Real Time Messaging Protocol: si tratta di RTMPT, il quale è basato su HTTP e prevede l’utilizzo di una tecnica di tunneling per aggirare i firewall. In maniera simile funziona anche RTMPS basato su HTTPS.

Partendo da un server RTMP, la tra­smis­sio­ne dello streaming può avvenire anche di­ret­ta­men­te sui di­spo­si­ti­vi mediante HLS.

Campi di ap­pli­ca­zio­ne del pro­to­col­lo RTMP

So­li­ta­men­te, sono due gli ambiti in cui è uti­liz­za­to Real Time Messaging Protocol. Il primo caso d’uso di RTMP è la tra­smis­sio­ne di dati tra un co­di­fi­ca­to­re e un server. In questo caso si tratta di uno scenario d’uso noto anche come “First Mile Delivery” (lett. “consegna del primo miglio”).

Non esistendo più Flash Player, non è possibile ricorrere a RTMP per la tra­smis­sio­ne diretta di dati agli utenti finali. Di con­se­guen­za, nel secondo caso d’uso, è ne­ces­sa­rio uti­liz­za­re una Content Delivery Network o una piat­ta­for­ma video online. Il pro­to­col­lo RTMP viene quindi uti­liz­za­to per inoltrare i dati del server a questi ultimi.

Consiglio

Se de­si­de­ra­te creare un vostro server RTMP, dovete prima di tutto scegliere il sistema operativo del server: a vostra di­spo­si­zio­ne c’è Windows, ma anche diverse di­stri­bu­zio­ni Linux per server.

Vai al menu prin­ci­pa­le