Le reti per la distribuzione dei contenuti (CDN) sono ben consolidate come parte integrante dei flussi di lavoro dei media in streaming, consentendo un’esperienza video di alta qualità scalabile a livello globale. Mentre la maggior parte dei servizi di streaming sfrutta la CDN per migliorare le prestazioni video, potrebbe perdere l’opportunità di sfruttare appieno la potenza della CDN per proteggere la propria infrastruttura di streaming OTT . In questo articolo viene illustrato come implementare una CDN come livello di sicurezza in un’infrastruttura di streaming OTT per mitigare gli attacchi DDoS e altre vulnerabilità. Condividiamo inoltre le BEST practice di configurazione della CDN che migliorano le prestazioni e la resilienza dell’infrastruttura di streaming.
Server manifesto
In un flusso di lavoro di streaming, una volta che un client esegue l’autenticazione e la riproduzione, il client/player stabilisce una sessione con un server manifest. Il server manifest indirizza il lettore a un archivio video, o CDN, per recuperare i file video. Il server manifest è in comunicazione costante con il client durante tutta la riproduzione. E in alcuni flussi di lavoro di streaming (come per Verizon Media, ora Edgio, Platform), i nostri server manifest creano una sessione per ogni visualizzatore.
In un flusso di lavoro di streaming 1 a 1, ogni utente ottiene la propria sessione. Poiché il manifesto è personalizzato e in continua evoluzione, non beneficia della memorizzazione nella cache CDN quando indirizza il lettore a recuperare un file video che cambia a seconda del bitrate del flusso e dell’interruzione dell’annuncio. Come verrà descritto più avanti in questo articolo, è necessario configurare la memorizzazione nella cache della CDN in modo che non influisca negativamente sulle prestazioni del server manifesto.
I server manifesti ad alte prestazioni dipendono dalla scalabilità orizzontale. Ad esempio, abbiamo progettato l’infrastruttura server manifest nel nostro servizio di streaming in modo da scalare in tempo reale in più aree geografiche e offrire milioni di sessioni per i più diffusi flussi live come le finali NBA e il Super Bowl.
L’aggiunta di un livello CDN davanti al flusso di lavoro manifesto può comunque offrire vantaggi sia in termini di prestazioni che di sicurezza? Questo è ciò che abbiamo cercato di confermare quando abbiamo spostato i nostri server manifesti dietro la nostra CDN. Abbiamo scoperto tre vantaggi di questo flusso di lavoro.
Figura 1. Una CDN viene comunemente utilizzata per migliorare la distribuzione dei file video (diagramma A), ma può anche essere sfruttato per migliorare la sicurezza e le prestazioni del server manifesto (diagramma B).
Benefit 1: Protezione DDoS automatizzata
Because server web sono accessibili pubblicamente online, sono un obiettivo aperto e attraente per gli attacchi DDoS . Sebbene gli URL del server manifesto non siano in genere pubblicizzati, sono accessibili pubblicamente. Ci vuole poco sforzo per qualcuno con una conoscenza del networking e qualche verifica di base degli strumenti di sviluppo web di un browser per scoprire il tuo URL.
Data la relativa facilità di identificazione della superficie di attacco, gli attacchi DDoS sono uno degli strumenti più comuni nell’arsenale di un hacker. Utilizzando servizi a basso costo sul dark web, gli autori degli attacchi possono molestare qualsiasi server web in tutto il mondo, inclusi i server manifesti. Nonostante la relativa ubiquità delle contromisure DDoS, Verizon ha contato più di 13.000 attacchi DDoS nel 2020.
Molti servizi Web hanno implementato la tecnologia di difesa DDoS. L’hardware specializzato nei servizi di data center e scrubbing center di terze parti è comune. Ma con il passaggio delle applicazioni al cloud, sta diventando sempre più comune trasferire la protezione DDoS a un provider DDoS basato su cloud.
La nostra CDN incorpora Stonefish, una piattaforma di mitigazione degli attacchi DDoS resiliente e intelligente che blocca automaticamente il 99% degli attacchi di livello 3 e 4. Stonefish è stato creato appositamente per offrire una protezione DDoS su vasta scala. Integrato nella nostra rete a oltre 250 Tbps in 300 POP, Stonefish offre la capacità su scala cloud necessaria per rispondere agli attacchi DDoS più grandi. Stonefish analizza milioni di pacchetti al secondo, valutandoli per le minacce e adottando automaticamente le misure necessarie o indirizzando gli attacchi al centro operativo della rete per l’escalation.
Figura 2. Stonefish campiona e classifica il traffico che attraversa la nostra rete globale e blocca automaticamente gli attacchi DDoS prima che possano influire sull’infrastruttura web del cliente.
Vantaggio 2: Distribuzione delle richieste con IP Anycast
La protezione dagli attacchi DDoS viene migliorata anche tramite IP Anycast, una tecnica di rete integrata nella rete Verizon Media Platform Delivery. Consente a più server di condividere lo stesso indirizzo IP. I router lo inviano all’endpoint più vicino in base alla posizione della richiesta dell’utente, riducendo la latenza e aumentando la ridondanza. IP Anycast utilizza la scala della CDN per proteggere da attacchi volumetrici o DDOS di grandi dimensioni. Ogni server all’interno della CDN assorbe porzioni dell’attacco, con conseguente riduzione del carico sul server e sulla rete.
Vantaggio 3: Riduzione della latenza manifest-client
Nonostante la natura non memorizzabile nella cache delle sessioni server manifest, una CDN offre comunque alcuni vantaggi in termini di prestazioni. Un tipico percorso manifest-to-client-server potrebbe avere fino a 20 hop attraverso Internet pubblico. Al contrario, le CDN sfruttano i loro edge server dispersi per colmare questo divario, eliminando gli hop, che riducono il numero di collegamenti in cui può verificarsi la congestione, connettendosi al punto di presenza più vicino (POP), che probabilmente è solo uno o due hop al massimo. La CDN quindi instrada il traffico attraverso le sue connessioni altamente ottimizzate tra POP.
Ottimizzazione della CDN per le prestazioni del server manifesto
Per convalidare questi vantaggi, il team di progettazione delle prestazioni di Edgio ha creato un ambiente di test per garantire che i risultati fossero gli stessi o migliori quando si è dietro la CDN (inclusi tassi di errore, tempi di risposta e tempo di ritardo), sia per i manifesti HLS che DASH.
Il test è stato confrontato:
- Zona AWS non fronteggiata CDN con zona AWS fronteggiata CDN
- Zona Azure non fronteggiata alla CDN con area Microsoft Azure fronteggiata alla CDN
Ogni zona aveva un obiettivo di 250.000 spettatori simulati in diretta simultanea per un totale di 1 milione, con 500.000 che passavano attraverso la CDN. Ai client è stato assegnato un rapporto di 10 a 1 tra HLS e DASH, il che significa che ogni 10 visualizzatori HLS generati ci sarebbe stato un visualizzatore DASH. Gli spettatori del canale hanno utilizzato interruzioni pubblicitarie frequenti e superiori al normale, progettate per sovraccaricare il sistema: Interruzioni pubblicitarie di 30 secondi una volta al minuto, con un risultato di 30 secondi di contenuti seguiti da 30 secondi di annunci. L’incremento iniziale degli spettatori è stato di oltre 700 spettatori al secondo, simulando un rapido inizio di un evento live.
I nostri test iniziali hanno rivelato un certo peggioramento delle prestazioni nelle zone dietro la CDN, con conseguente aumento dei tempi di risposta e degli errori di timeout dei client. Per risolvere questi problemi, abbiamo apportato due modifiche.
In primo luogo, abbiamo configurato la CDN per non distribuire i manifesti. Come descritto in precedenza, poiché i manifesti sono individualizzati a livello di sessione 1 a 1, la memorizzazione nella cache dei manifesti CDN non è necessaria e può compromettere le prestazioni.
In secondo luogo, abbiamo esaminato la configurazione dell’impostazione HTTP Keep-Alive in modo che la CDN stabilisse una frequenza di handshake più ottimale con i server manifest. Utilizzando l’impostazione Keep-Alive del server manifest come linea di base, impostiamo l’impostazione Keep-Alive CDN appena sotto i 12 secondi. Perché non mantenere la connessione aperta per un periodo di tempo indefinito? Ciò ha a che fare con il raggiungimento di un equilibrio ottimale tra efficienza e prestazioni. Proprio come una riunione su Slack può mantenere solo un numero massimo di thread prima di essere sovraccaricata, è necessario configurare una comunicazione manifesto/CDN per ciò che i server possono gestire. Un’impostazione di 12 secondi ha ottimizzato la frequenza di interazione, consentendo alla CDN e al manifesto di comunicare a livelli ottimali.
A seguito di questi cambiamenti, abbiamo riscontrato poca differenza tra le prestazioni manifeste dietro la CDN e non dietro la CDN. Sia AWS che Microsoft Azure hanno funzionato in modo comparabile in entrambe le configurazioni. La CDN non ha segnalato alcun problema con le prestazioni e il carico.
Riunire tutto
The CDN è fondamentale per il successo di qualsiasi servizio multimediale, offrendo un’esperienza di visualizzazione di alta qualità su vasta scala. Mentre praticamente tutti i servizi OTT si affidano alla CDN per la distribuzione dei contenuti, molti perdono l’opportunità di sfruttare il potere della CDN per proteggere i propri servizi dagli attacchi DDoS. Una CDN può aiutare in due modi potenti. In primo luogo, la massiccia scala della CDN può corrispondere alla scala del più grande degli attacchi DDoS. In secondo luogo, IP Anycast diffonde qualsiasi attacco DDoS su più server. Oltre a una maggiore sicurezza, la CDN può anche svolgere un ruolo importante nella riduzione della latenza manifesta-client.
Il numero e la gravità degli attacchi DDoS stanno crescendo ogni anno. Un’analisi completa di tutta la vostra infrastruttura probabilmente rivelerà opportunità per migliorare le prestazioni e aumentare la sicurezza. I servizi OTT devono agire per difendersi da un attacco DDoS che interrompe il servizio, mantenendo al contempo prestazioni ottimali. Lo spostamento dei server manifesti dietro la CDN può raggiungere questo obiettivo.
Permetteteci di valutare le vostre esigenze di sicurezza nell’infrastruttura OTT e suggerire modi per aumentare la protezione e i livelli di prestazioni. Connettiti subito con noi per saperne di più.