Knowledge Base


« Content Delivery Network (CDN)

Hoe werkt het CDN

Een CDN (Content Delivery Network) is een groot mondiaal cluster van caches die als locale cache voor statische bestanden (objecten) kan dienen.

Als een bezoeker van een website of de gebruiker van een applicatie bepaalde objecten opvraagt (bijvoorbeeld plaatjes, pdf bestanden, Javascript files, CSS bestanden, etc) dan wordt deze uit het CDN gehaald en niet van de locatie waar uw website draait. Omdat een CDN rekening houdt met de geo-locatie van de gebruiker wordt hierbij automatisch de node uit het netwerk geselecteerd die zich het dichtste bij de bezoeker bevindt. Op deze manier kan data razend snel aan de bezoeker geleverd worden, ongeacht waar de website gehost wordt of de bezoeker zich bevindt.

Wanneer de dichtstbijzijnde node in het CDN cluster een bepaalde cache niet heeft wordt deze eerst elders uit het CDN zelf gehaald, bestaat deze daar ook niet dan wordt deze van de Origin-server gehaald (de server of object store container waar de bronbestanden op staan).

Hoe wordt het CDN geactiveerd?

Om te weten welke objecten bij welk request horen, moet een Supername geregistreerd worden bij het CDN. Een Supername is een subdomein van een domein dat u beheert, bijvoorbeeld images.mydomain.com. Deze wordt binnen het CDN gekoppeld aan de Origin-server, zodat het CDN weet welke objecten bij welk subdomein horen.

Nu wat DNS magie:
Na registratie van de Supername / Origin-server combinatie wordt er een CNAME teruggestuurd door het CDN. Dit zal normaal binnen 4 uur gebeuren en zeker binnen 24 uur. Een CNAME, koppelt op DNS niveau één subdomein (de Supername) aan een ander subdomein (van het CDN). Om de Supername daadwerkelijk te koppelen aan het CDN, moet het van het CDN verkregen CNAME record in de DNS worden opgenomen. Stel dat de CNAME 5cdN1Nme1F9bp7a6vzSzj2J.a.b.cdn.com is en de Supername images.mydomain.com dan zou het CNAME record voor mydomain.com er als volgt uit kunnen zien:

images.mydomain.com. IN CNAME 5cdN1Nme1F9bp7a6vzSzj2J.a.b.cdn.com.

Als de DNS update is gebeurd en de nameservers het DNS record hebben overgenomen, is de koppeling met het CDN gereed. Een aanvraag voor bijvoorbeeld 
http://images.mydomain.com/logo.png wordt nu uit het CDN gehaald.

Het CDN Integreren.

Om het CDN in bijvoorbeeld een website te integreren, is het dan alleen nog nodig om de referenties van de bestanden naar de volledige URL in het CDN te wijzigen. De eerste keer dat bijvoorbeeld logo.png wordt opgevraagd zal het CDN deze van de Origin-server halen en in de cache zetten. Latere aanvragen zullen dan significant sneller worden afgehandeld.

Om het maximale voordeel van het CloudVPS CDN te genieten zouden bepaalde veranderingen aan uw site nodig kunnen zijn. Statische bestanden die in het CDN gebruikt kunnen worden moeten wellicht gecombineerd worden en dynamische elementen moeten misschien afgescheiden worden en op een later moment worden ingeladen.

Voorbeeld van een aanvraag route met een CDN.

  1. De browser van de bezoeker vraag het bestand logo.png op van images.mydomain.com.
  2. De DNS vindt de CNAME en verwijst de aanvraag door naar het CDN.
  3. Als logo.png niet in het CDN staat of vervallen is, dan wordt deze opgevraagd van de Origin-server en in het CDN geplaatst.
  4. Het CDN antwoord de aanvraag door het bestand logo.png naar de browser van de bezoeker te sturen.

Wanneer het bestand in het CDN staat, wordt stap 3 overgeslagen en zal de aanvraagtijd een stuk korter zijn.

Video Streaming en CDN

Er zijn 3 manieren om video over HTTP te serveren via het CDN:

  1. Progressive Download and Play
    Dit is eigenlijk niets anders dan dat het hele video-bestand wordt geserveerd aan de bezoeker. Wanneer de video-bestand groot is, kan de speler al beginnen met spelen terwijl in de achtergrond de rest van de file wordt gedownload. Dit is een methode waarbij je in de speler de tijd-indicator niet voorbij het reeds gedownloade bereik kan slepen.
  2. HTTP Pseudostreaming
    Dit is een methode die Video on Demand (VOD) probeert na te doen. Het video-bestand wordt hierbij in kleine segmenten gebroken en als lijst in een index-bestand opgenomen (bijv. een .m3u8 bestand). Doordat het video-bestand is gesegmenteerd kan de video-speler, mits dit wordt ondersteunt, 'vooruit' spoelen. Hierbij worden de segmenten die worden overgeslagen niet gedownload. Let op dat het segmenteren van het video-bestand al reeds gedaan moet zijn voordat het in het CDN wordt gezet.
  3. Live streaming
    Dit zijn rechtstreekse uitzendingen die via het internet worden gebroadcast. Vaak wordt er eigenlijk HTTP Pseudostreaming bedoeld wanneer men het heeft over live streaming. Live streaming via het CDN is maatwerk, neem contact met ons op als u Live wilt streamen over het CDN.

Volgende Stappen

Wanneer het tijd is om een CDN in gebruik te nemen, is het belangrijk om van te voren een strategie te bepalen over de maximale levensduur van objecten in het CDN.
Lees meer over hoe er controle kan worden uitgeoefend op de levensduur van objecten in het CDN.


API documentatie kunt u vinden op onze download pagina.

VPS Bestellen
VPS Bestellen