Ottimizzazione dello streaming multimediale tramite la rete per la distribuzione dei contenuti di Azure

L'uso di video ad alta definizione sta aumentando in Internet e questo crea problemi per la distribuzione efficiente dei file di grandi dimensioni. L'aspettativa dei clienti è quella di poter riprodurre in modo uniforme gli asset video live o i video on demand su una vasta gamma di client e reti in tutto il mondo. Un meccanismo di distribuzione veloce ed efficiente per i file di streaming multimediale è fondamentale per garantire un'esperienza utente uniforme e piacevole.

La distribuzione dello streaming live è particolarmente difficile perché i file hanno grandi dimensioni e il numero di utenti simultanei è elevato. Gli utenti abbandonano a causa di ritardi eccessivi. Poiché lo streaming live non può essere memorizzato in anticipo nella cache e le latenze di grandi dimensioni non sono accettabili per i visualizzatori, i frammenti video devono essere distribuiti in modo tempestivo.

I modelli di richiesta dello streaming pongono alcune nuove sfide. Quando vengono rilasciati uno streaming live famoso o una nuova serie di video on demand, migliaia o persino milioni di visualizzatori potrebbero richiedere lo streaming nello stesso momento. In questo caso, il consolidamento intelligente delle richieste è essenziale per non sovraccaricare i server di origine quando gli asset non sono stati ancora memorizzati nella cache.

La rete per la distribuzione di contenuti di Azure dallo standard Akamai offre ora una funzionalità che distribuisce asset di streaming multimediali in modo efficiente agli utenti in tutto il mondo. Questa funzionalità riduce le latenze perché riduce il carico sul server di origine. Questa funzionalità è disponibile con il piano tariffario dello standard Akamai.

La rete per la distribuzione di contenuti di Azure offerta da Verizon distribuisce lo streaming multimediale direttamente con il tipo di ottimizzazione della distribuzione Web generale.

Configurare un endpoint per ottimizzare lo streaming multimediale nella rete per la distribuzione dei contenuti di Azure da Akamai

È possibile configurare l'endpoint della rete di distribuzione di contenuti (CDN) per ottimizzare il recapito per i file di grandi dimensioni tramite il portale di Azure. A tale scopo è anche possibile usare le API REST o qualsiasi SDK client. La procedura seguente illustra il processo tramite il portale di Azure:

  1. Per aggiungere un nuovo endpoint nella pagina Profilo CDN selezionare Endpoint.

    Nuovo endpoint

  2. Nell'elenco a discesa Optimized for (Ottimizzato per) selezionare Streaming multimediale video on demand per le risorse video on demand. Se si desidera creare una combinazione di streaming di video on demand e live, selezionare Streaming multimediale generale.

    Streaming selezionato

Dopo avere creato l'endpoint, questo applicherà l'ottimizzazione per tutti i file che corrispondono a determinati criteri. La sezione seguente descrive questo processo.

Ottimizzazione dello streaming multimediale per la rete per la distribuzione dei contenuti di Azure da Akamai

L'ottimizzazione dello streaming multimediale di Akamai è efficace per lo streaming multimediale live o di video on demand che usa singoli frammenti multimediali per la distribuzione. Questo processo è diverso da quello di trasferimento di un singolo asset di grandi dimensioni tramite il download progressivo oppure tramite l'uso di richieste di intervallo di byte. Per informazioni su questo stile di distribuzione di file multimediali, vedere Ottimizzazione di file di grandi dimensioni.

I tipi di ottimizzazione per la distribuzione di file multimediali generali e di video on demand usano una rete per la distribuzione di contenuti con ottimizzazioni back-end per distribuire le risorse multimediali più velocemente. Vengono anche usate le configurazioni per le risorse di file multimediali basate sulle procedure consigliate apprese nel tempo.

Memorizzazione nella cache

Se la rete CDN di Azure fornita da Akamai rileva che l'asset è un manifesto o un frammento di streaming, usa tempi di scadenza per la memorizzazione nella cache diverse rispetto alla distribuzione Web generale. Vedere l'elenco completo nella tabella seguente. Come sempre, vengono rispettate i controlli della cache o le intestazioni di scadenza inviate dall'origine. Se la risorsa non è una risorsa multimediale, viene memorizza nella cache con i tempi di scadenza per la distribuzione Web generale.

I tempi negativi e brevi di memorizzazione nella cache sono utili per l'offload di origine quando molti utenti richiedono un frammento che non esiste ancora. Ne è un esempio uno streaming live in cui i pacchetti non sono disponibili dall'origine in quel momento. Un intervallo di memorizzazione nella cache più lungo consente anche l'offload delle richieste dall'origine poiché il contenuto video in genere non viene modificato.

Generale
Web
di contenuti
Generale
diagramma
streaming
Video on Demand
diagramma
streaming
Memorizzazione nella cache: positiva
HTTP 200, 203, 300,
301, 302 e 410
7 giorni 365 giorni 365 giorni
Memorizzazione nella cache: negativa
HTTP 204, 305, 404,
e 405
None 1 secondo 1 secondo

Gestione degli errori di origine

La distribuzione di file multimediali generali e di video on demand prevede il timeout dell'origine e il log di tentativi in base alle procedure consigliate per i modelli di richiesta tipici. Ad esempio, poiché la distribuzione di file multimediali generale riguarda contenuti sia live che di video on demand, il timeout di connessione è più breve poiché lo streaming live dipende dall'ora.

Quando una connessione va in timeout, la rete per la distribuzione di contenuti ritenta un'operazione per un determinato numero di volte prima dell'invio dell'errore "504 - Timeout gateway" al client.

Quando un file corrisponde all'elenco di condizioni per la dimensione e il tipo di file, la rete per la distribuzione di contenuti usa il comportamento per lo streaming multimediale. In caso contrario, usa la distribuzione Web generale.

Condizioni per l'ottimizzazione dello streaming multimediale

La tabella seguente elenca il set di criteri che devono essere soddisfatti per l'ottimizzazione dello streaming multimediale:

Tipi di streaming supportati Estensioni di file
Apple HLS m3u8, m3u, m3ub, key, ts, aac
Adobe HDS f4m, f4x, drmmeta, bootstrap, f4f,
Struttura URL Seg-Frag
(espressione regolare corrispondente: ^(/.*)Seq(\d+)-Frag(\d+)
DASH mpd, dash, divx, ismv, m4s, m4v, mp4, mp4v,
sidx, webm, mp4a, m4a, isma
Smooth Streaming /manifest/,/QualityLevels/Fragments/

Ottimizzazione dello streaming multimediale per la rete per la distribuzione dei contenuti di Azure da Verizon

La rete per la distribuzione di contenuti di Azure offerta da Verizon distribuisce asset di streaming multimediale direttamente con il tipo di ottimizzazione della distribuzione Web generale. Per impostazione predefinita, nella rete CDN sono disponibili anche alcune funzionalità utili per la distribuzione di asset multimediali.

Condivisione della cache parziale

La condivisione della cache parziale consente alla rete per la distribuzione di contenuti di offrire contenuto memorizzato nella cache parziale per le nuove richieste. Ad esempio, la prima richiesta alla rete CDN genera un mancato riscontro nella cache e la richiesta viene inviata all'origine. Sebbene questo contenuto incompleto sia caricato nella cache della rete CDN, altre richieste alla rete CDN possono iniziare a recuperare questi dati.

Tempo di attesa di riempimento della cache

La funzionalità di tempo di attesa di riempimento della cache forza il server perimetrale a contenere le richieste successive per la stessa risorsa fino alla ricezione delle intestazioni di risposta HTTP da parte del server di origine. Se le intestazioni di risposta HTTP dal server di origine vengono ricevute prima della scadenza del timer, tutte le richieste messe in attesa verranno servite dalla cache con i dati in aumento. Allo stesso tempo la cache viene riempita con i dati provenienti dall'origine. Per impostazione predefinita, il tempo di attesa di riempimento della cache è 3.000 millisecondi.