
Disclaimer:
Questo articolo non presenta informazioni precedentemente sconosciute ai lettori che conoscono il concetto di CDN, ma ha un carattere di panoramica sulla tecnologia.
La prima pagina web è apparsa nel 1990 ed era grande solo pochi byte. Da allora, i contenuti si sono espansi sia qualitativamente che quantitativamente. Lo sviluppo dell'ecosistema IT ha portato a un aumento delle dimensioni delle pagine web, che oggi possono pesare megabyte, e la tendenza ad aumentare la larghezza di banda delle reti è in crescita ogni anno. Come possono i fornitori di contenuti raggiungere ampie aree geografiche e garantire agli utenti un accesso rapido alle informazioni ovunque? Queste sfide devono essere affrontate dalle reti di distribuzione e consegna dei contenuti, conosciute come Content Delivery Network o semplicemente CDN.
In rete c'è sempre più contenuto "pesante". Tuttavia, numerosi studi dimostrano che gli utenti non vogliono avere a che fare con servizi web che impiegano più di 4-5 secondi a caricarsi. Una velocità di caricamento del sito troppo bassa comporta la perdita del pubblico, il che porterà inevitabilmente a una riduzione del traffico, delle conversioni e, di conseguenza, dei profitti. Le reti di distribuzione dei contenuti (CDN), in teoria, possono risolvere questi problemi e le loro conseguenze. Ma in pratica, i dettagli e le sfumature specifiche del caso, di cui ce ne sono molte in questo campo, fanno la differenza.
Da dove nasce l'idea delle reti distribuite
Iniziamo con una breve escursione nella storia e con la definizione dei termini. CDN – è una rete di server situati in diverse posizioni per fornire accesso ai contenuti internet a un gran numero di utenti. L'idea delle reti distribuite prevede la presenza di più punti di presenza (PoP) al di fuori del server originale. Un tale sistema elaborerà più rapidamente le richieste in arrivo, aumentando la reattività e la velocità di trasmissione dei dati.
Il problema della consegna dei contenuti agli utenti emerse in modo significativo durante il picco dello sviluppo di Internet, ovvero nella metà degli anni '90. I server dell'epoca, la cui prestazione non superava neppure quella dei moderni laptop di fascia alta, faticavano a gestire il carico e a mantenere il passo con il traffico in costante crescita. Microsoft spendeva ogni anno centinaia di milioni di dollari in ricerche relative all'autostrada dell'informazione (si ricordano subito i famosi 640 KB di Bill Gates). Per risolvere questi problemi, si rendeva necessario utilizzare la cache gerarchica, passare dai modem alla fibra ottica e analizzare nel dettaglio la topologia delle reti. La situazione assomigliava a un vecchio locomotore che sfrecciava sui binari e veniva continuamente modernizzato con tutti i mezzi possibili per aumentare la velocità.
Alla fine degli anni '90, i proprietari di portali web compresero che per ridurre il carico e soddisfare le richieste necessarie era fondamentale utilizzare server intermedi. Così nacquero i primi CDN, che distribuiscono contenuti statici da vari server sparsi geograficamente nel mondo. Circa in questo stesso periodo, iniziò anche il business delle reti distribuite. Il più grande (o almeno uno dei maggiori) provider CDN al mondo, la compagnia Akamai, diventò pioniere in questo settore, iniziando il suo cammino nel 1998. Un paio di anni dopo, i CDN divennero comuni, e i guadagni dalla consegna e distribuzione di contenuti si misuravano in decine di milioni di dollari ogni mese.
Oggi ci confrontiamo con le CDN ogni volta che visitiamo una pagina commerciale con un alto traffico o interagiamo sui social network. Servizi del genere sono offerti da: Amazon, Cloudflare, Akamai e da molti altri fornitori multinazionali. Le grandi aziende, infatti, tendono a utilizzare le proprie CDN, il che porta loro notevoli vantaggi in termini di velocità e qualità della consegna dei contenuti. Se Facebook non avesse reti distribuite e si affidasse solo al server originale, situato negli Stati Uniti, il caricamento del profilo per gli utenti dell'Europa orientale potrebbe richiedere molto più tempo.
Qualche parola sulle CDN e lo streaming
L'agenzia FutureSource Consulting ha condotto un'analisi dell'industria musicale e ha concluso che nel 2023 il numero di abbonamenti ai servizi di streaming musicale raggiungerà quasi mezzo miliardo di persone. Inoltre, oltre il 90% dei ricavi dei servizi provengono proprio dall'audio in streaming. La situazione è simile per i video, nel linguaggio comune sono già consolidati termini come: let’s play, concerto online e cinema online. I servizi di streaming sono offerti anche da Apple, Google, YouTube e molte altre aziende.
Inizialmente, il CDN veniva utilizzato principalmente per siti con contenuti statici. Per statico si intende un'informazione che non cambia in base alle azioni dell'utente, al tempo e ad altri fattori, ovvero non è personalizzata. Tuttavia, lo sviluppo dei servizi di streaming video e audio ha aggiunto un altro comune scenario per l'uso di reti distribuite. I server intermedi, posizionati vicino al pubblico target in tutto il mondo, garantiscono un accesso stabile ai contenuti durante i periodi di carico intenso, evitando la carenza di "colli di bottiglia" di internet.
Come funziona
La sostanza di tutte le CDN è fondamentalmente la stessa: utilizzare intermediari per poter consegnare contenuti più rapidamente al consumatore finale. Funziona in questo modo: l'utente invia una richiesta per scaricare un file, questa viene ricevuta dal server CDN, che una sola volta si rivolge al server originale e restituisce all'utente il contenuto. Parallelamente, la CDN memorizza i file per un determinato periodo di tempo e tutte le richieste successive vengono elaborate dalla propria CACHE. Facoltativamente, possono anche pre-scaricare file dal server originale, configurare il periodo di memorizzazione della CACHE, comprimere file pesanti e molto altro. Nella situazione ideale, l'hosting trasferisce l'intero flusso al nodo CDN, che utilizza già le proprie risorse per consegnare contenuti agli utenti. È ovvio che una memorizzazione efficace delle informazioni e una distribuzione delle richieste non su un solo server, ma su una rete, porterà a un carico di traffico più bilanciato.

Una seconda importante caratteristica del funzionamento del CDN è la riduzione dei ritardi nella trasmissione dei dati (noti anche come RTT – round trip time). L'instaurazione della connessione TCP, il caricamento dei contenuti multimediali, dei file JS, l'avvio della sessione TLS: tutto ciò dipende dal ping. È evidente che più ci si avvicina alla fonte, più rapidamente si può ricevere risposta. Dopotutto, anche la velocità della luce ha un suo limite: circa 200.000 km/s attraverso la fibra ottica. Questo significa che da Mosca a Washington il ritardo sarà di circa 75 ms in RTT, e ciò senza considerare l'influenza delle attrezzature intermedie.
Per comprendere meglio quali problemi risolvano le reti di distribuzione dei contenuti, ecco un elenco delle soluzioni rilevanti al giorno d'oggi:
- Google, Yandex, MaxCDN (utilizzano CDN gratuiti per la distribuzione di librerie JS, avendo più di 90 punti di presenza nella maggior parte dei paesi del mondo);
- Cloudinary, Cloudimage, Google (servizi e librerie per l'ottimizzazione client: immagini, video, font, ecc.);
- Jetpack, Incapsula, Swarmify, ecc. (ottimizzazione delle risorse nei sistemi di gestione dei contenuti: bitrix, wordpress, ecc.);
- CDNVideo, StackPath, NGENIX, Megafon (CDN per la distribuzione di contenuti statici, utilizzati come reti generiche);
- Imperva, Cloudflare (soluzioni per velocizzare il caricamento dei siti web).
I primi 3 tipi di CDN elencati sono progettati per gestire solo una parte del traffico dal server principale. I restanti 2 funzionano come server proxy completi con il trasferimento totale dei canali dall'host sorgente.
A chi e quali vantaggi offre la tecnologia
In teoria, qualsiasi sito che vende i propri prodotti/servizi a clienti aziendali o privati (B2B o B2C) può trarre beneficio dall'implementazione di una CDN. È fondamentale che il suo pubblico target, ovvero la base utenti, si trovi al di fuori della loro posizione geografica. Tuttavia, anche se ciò non fosse, le reti di distribuzione possono aiutare con il bilanciamento del carico in caso di grandi volumi di contenuti.
Non è un segreto che per saturare un canale server bastano poche migliaia di flussi. Pertanto, la distribuzione di una trasmissione video a un vasto pubblico porterà inevitabilmente a un collo di bottiglia: la larghezza di banda del canale internet. Lo stesso è evidente quando un sito ha molte immagini piccole non unite (come le anteprime dei prodotti, per esempio). Il server originale utilizza una sola connessione TCP per elaborare qualsiasi numero di richieste, il che costringe a mettere in coda il caricamento. L'aggiunta di un CDN comporta la necessità di distribuire le richieste su più domini e utilizzare più connessioni TCP, alleggerendo il canale. Inoltre, la formula della latenza circolare, anche nelle condizioni peggiori, fornisce un valore di 6-7 RTT e assume la forma: TCP + TLS + DNS. Qui è giusto includere anche i ritardi legati all'attivazione del canale radio sul dispositivo e alla trasmissione del segnale alle torri cellulari.
Sintetizzando i punti di forza della tecnologia per le aziende online, gli esperti evidenziano i seguenti aspetti:
- Scalabilità rapida dell'infrastruttura + riduzione della larghezza di banda. Più server = più punti in cui vengono memorizzate le informazioni. Di conseguenza, ogni punto gestisce meno traffico nel tempo, il che significa che può avere una larghezza di banda inferiore. Inoltre, entrano in gioco strumenti di ottimizzazione che consentono di gestire i picchi di carico senza perdite di tempo.
- Ping ridotto. Abbiamo già accennato che le persone non amano aspettare a lungo su Internet. Pertanto, un ping elevato contribuisce a tassi di abbandono elevati. Il ritardo può essere causato da problemi nell'elaborazione dei dati sul server, dall'uso di attrezzature obsolete o semplicemente da una topologia di rete non ottimale. La maggior parte di questi problemi è parzialmente risolvibile con le reti di distribuzione dei contenuti. Tuttavia, è importante notare che il reale beneficio dell'implementazione della tecnologia sarà evidente solo quando il "ping dell'utente" supera i 80-90 ms, che è la distanza tra Mosca e New York.

- Sicurezza dei dati. Gli attacchi DDoS (Distributed Denial of Service) mirano a interrompere il funzionamento di un server per ottenere un vantaggio. Un server è molto più suscettibile alle vulnerabilità della sicurezza informatica rispetto a una rete distribuita (abbattere un'infrastruttura colossale come CloudFlare non è un compito semplice). Grazie all'uso di filtri e a una distribuzione intelligente delle richieste attraverso la rete, è possibile prevenire facilmente le complessità create artificialmente nell'accesso al traffico legittimo.
- Distribuzione rapida dei contenuti e funzioni aggiuntive di servizio. La distribuzione di grandi volumi di informazioni sulla rete server permetterà di comunicare più rapidamente le offerte al consumatore finale. Gli esempi non mancano, basta pensare ad Amazon e AliExpress.
- Possibilità di ‘nascondere’ problemi con il sito principale. Non è necessario attendere l'aggiornamento dei DNS, si può reindirizzare a una nuova posizione con la distribuzione di contenuti precedentemente memorizzati nella cache. Questo, a sua volta, può migliorare la resilienza.
Abbiamo visto i vantaggi. Ora analizziamo a quali nicchie questo è vantaggioso.
Attività pubblicitaria
La pubblicità è il motore del progresso. E affinché questo motore non si surriscaldi, è necessario utilizzarlo con moderazione. Allo stesso modo, l'attività pubblicitaria, mentre cerca di allinearsi con il moderno mondo digitale, si trova ad affrontare le problematiche dei "contenuti pesanti". Per contenuti pesanti si intendono le pubblicità multimediali (principalmente banner animati e video) che richiedono elevate larghezze di banda. Un sito web con contenuti multimediali può caricarsi lentamente e potrebbe bloccarsi, mettendo a dura prova la pazienza degli utenti. La maggior parte delle persone abbandona tali risorse ancor prima che tutto il contenuto venga caricato. Le agenzie pubblicitarie possono avvalersi dei vantaggi di un CDN per risolvere queste problematiche.
Vendite
L'eCommerce ha bisogno di un costante ampliamento della propria copertura geografica. Un altro aspetto importante è la lotta contro i concorrenti, che sono abbondanti in ogni segmento di mercato. Se un sito web non soddisfa le esigenze degli utenti (incluso il tempo di caricamento), non diventerà popolare e non potrà garantire una conversione costantemente alta. L'implementazione di un CDN dovrebbe dimostrare i suoi vantaggi nell'elaborazione delle richieste di dati da diverse località. Inoltre, la distribuzione del traffico aiuterà a prevenire picchi e successivi malfunzionamenti del server.
Piattaforme di contenuto di intrattenimento
Qui rientrano varie piattaforme di intrattenimento, dalle piattaforme di download di film e giochi a video in streaming. Anche se la tecnologia lavora con dati statici, i dati in streaming possono arrivare più rapidamente all'utente tramite i relay. Ancora una volta, la memorizzazione nella cache delle informazioni del CDN è una salvezza per i proprietari di grandi portali di archiviazione multimediale.
Giochi online
I giochi online devono essere trattati come un argomento a parte. Se la pubblicità richiede una maggiore larghezza di banda, i progetti online sono ancora più esigenti in termini di risorse. I fornitori affrontano una problematica con due facce: la velocità di accesso ai server e la garanzia di elevate prestazioni di gioco con una grafica accattivante. Un CDN per i giochi online offre l'opportunità di creare cosiddette "zone di push", dove gli sviluppatori possono conservare i giochi su server situati vicino agli utenti. Questo riduce l'impatto della velocità di accesso al server originale, garantendo così un'esperienza di gioco confortevole ovunque.
Perché il CDN non è una panacea

Nonostante i chiari vantaggi, non tutti e non sempre sono pronti a implementare questa tecnologia nel proprio business. Perché? Paradossalmente, alcuni svantaggi derivano dai benefici, e si aggiungono ulteriori punti legati al dispiegamento della rete. I marketer descriveranno poetamente tutti i vantaggi della tecnologia, dimenticando di menzionare che tutti questi perdono significato in un ampio spettro di condizioni. Analizzando più nel dettaglio gli svantaggi del CDN, è importante evidenziare:
- Funziona solo con contenuti statici. Sì, la maggior parte dei siti web moderni presenta una bassa percentuale di contenuti dinamici. Tuttavia, nei casi in cui le pagine sono personalizzate, il CDN non potrà offrire aiuto (a meno che non scarichi un grande volume di traffico);
- Ritardo nella cache. L'ottimizzazione in sé è uno dei principali vantaggi delle reti di distribuzione. Tuttavia, quando si apportano modifiche al server originale, passa del tempo prima che il CDN le ricachelli su tutti i suoi server;
- Blocchi di massa. Se per qualche motivo l'indirizzo IP del CDN viene bannato, tutti i siti ospitati su di esso verranno chiusi;
- Nella maggior parte dei casi, il browser stabilirà due connessioni (con il server originale e il CDN). Ciò comporta ulteriori millisecondi di attesa;
- Vincolo all'indirizzo IP dei progetti (anche quelli non esistenti) precedentemente associati. Ne deriva una complicazione del posizionamento da parte dei bot di ricerca di Google e difficoltà nel portare il sito in cima durante le campagne SEO;
- Il nodo CDN è un potenziale punto di guasto. Se vengono utilizzati, è importante comprendere in anticipo come è strutturato il routing del sistema e quali errori possono sorgere durante l'interazione con il sito.
- Sembra banale, ma è necessario pagare per i servizi di consegna dei contenuti. In genere, i costi sono proporzionali al volume di traffico, quindi potrebbe essere necessaria una supervisione per pianificare il budget.
Un fattore importante: la vicinanza della CDN all'utente non garantisce un ping basso. Il percorso può essere stabilito dal cliente a un host situato in un altro paese o addirittura su un altro continente. Questo dipende dalla politica di routing della rete specifica e dalle sue relazioni con gli operatori di telecomunicazioni (peering). Molti grandi fornitori di CDN offrono diversi piani, dove il costo influisce direttamente sulla vicinanza del punto di presenza nella consegna dei contenuti agli utenti finali.
Ci sono opportunità: avvia la tua CDN
Non sei soddisfatto della politica delle aziende che offrono servizi di rete per la distribuzione di contenuti, ma la tua attività ha bisogno di espansione? Se ci sono opportunità, perché non considerare il lancio di un CDN proprietario? Questo ha senso nei seguenti casi:
- I costi attuali per la distribuzione dei contenuti non soddisfano le aspettative e non sono giustificabili economicamente;
- È necessario un caching permanente, senza vicinanza ad altri siti sullo stesso server e canale;
- Il pubblico target si trova in una regione priva di punti di presenza dei CDN disponibili per te;
- È necessario personalizzare le impostazioni durante la consegna dei contenuti;
- È richiesta una spedizione più rapida dei contenuti dinamici;
- Ci sono sospetti di violazione della privacy degli utenti e altre attività illecite da parte di servizi esterni.
Il lancio di un CDN richiederà un nome di dominio, diversi server in diverse regioni (virtuali o dedicati) e uno strumento per la gestione delle richieste. Non dimenticare di installare certificati SSL, configurare e modificare i programmi per la distribuzione dei contenuti statici (Nginx o Apache), e monitorare efficacemente l'intero sistema.
La configurazione corretta dei proxy di caching è materia di un articolo a parte, quindi qui non ci dilungheremo su dove e quale parametro impostare correttamente. Considerando i costi iniziali e il tempo necessario per implementare la rete, l'uso di soluzioni già pronte può risultare più vantaggioso. Tuttavia, è fondamentale basarsi sulla situazione attuale e pianificare con uno sguardo al futuro.
Cosa ne viene fuori
Un CDN è un insieme di risorse aggiuntive per distribuire il tuo traffico su larga scala. Sono necessari per un'attività online? Sì e no; tutto dipende dal pubblico a cui è destinato il contenuto e dagli obiettivi che il proprietario dell'attività intende perseguire.
I progetti regionali e specializzati trarranno più svantaggi che vantaggi dall'implementazione di un CDN. Le richieste continueranno a provenire prima dal server di origine, ma già attraverso un intermediario. Da qui, una riduzione del ping è discutibile, ma ci saranno costi mensili certi per l'utilizzo del servizio. Con un buon equipaggiamento di rete, è possibile perfezionare tranquillamente gli algoritmi di sicurezza informatica esistenti, posizionare i propri server più vicino agli utenti e ottenere ottimizzazioni e profitti gratuitamente e in modo permanente.
Invece, le grandi aziende la cui infrastruttura non riesce a gestire il flusso di traffico in costante crescita dovrebbero seriamente considerare i server intermediari. Il CDN si dimostra eccellente come tecnologia per implementare rapidamente una rete su una vasta geografia di utenti, garantendo un'esperienza di gioco cloud confortevole o vendendo beni su una grande piattaforma commerciale.
Tuttavia, anche con una vasta geografia del pubblico, è importante comprendere in anticipo a cosa servano specificamente le reti di distribuzione dei contenuti. L'accelerazione del sito rimane comunque un compito complesso, che non viene risolto magicamente con l'implementazione di un CDN. Non dimentichiamo funzioni importanti come: cross-platform, adattabilità, ottimizzazione della parte server, del codice, del rendering e così via. Un audit tecnico preliminare e misure adeguate per risolvere i problemi rimangono la soluzione ottimale per ogni progetto online, indipendentemente dalla sua direzione e dalle sue dimensioni.
In pubblicità
Puoi ordinare subito , che utilizzano i più recenti processori . Tariffe flessibili — da 1 nucleo CPU a incredibili 128 nuclei CPU, 512 GB di RAM, 4000 GB NVMe.
Fonte: habr.com

