Nobori Partners est une start-up de conseil et d’édition logicielle spécialisée dans les projets cloud public et la data.
Dans cet environnement en pleine croissance, nous sommes amenés à devoir constamment apprendre et monter en compétence sur de nouvelles technologies, services et pratiques pour servir au mieux nos clients.
Afin de rendre ce secteur plus accessible, et de partager nos connaissances au plus grand nombre, nous avons décidé de publier des séries d’articles retraçant les expertises et convictions acquises au fil de nos missions.
Voici le premier article de la série CDN : comment un streamer musical peut-il en tirer parti ?, qui examine et détaille le fonctionnement des Content Delivery Networks, pierres angulaires d’Internet, encore méconnus du grand public.
Être des millions à regarder The Mandalorian simultanément : une prouesse rendue possible par les CDN
Première de The Mandalorian, lancement du dernier Iphone, Black Friday… : ces événements Internet génèrent un trafic énorme et soudain. Alors comment font les sites pour ne pas … planter ? Ils passent par un CDN, un Content Delivery Network [1]! Ils permettent à votre page de charger très vite, même si vous êtes des milliers d’utilisateurs, sur le même site, au même moment.
Peu connus du grand public, ils sont omniprésents dans la vie Internet quotidienne et jalonnent la plupart des requêtes : la série Disney+ du dimanche soir, les achats de Noël sur Amazon, les sessions musiques sur Spotify…
Depuis leur création dans les années 1990, leur utilisation n’a cessé d’augmenter avec la croissance du numérique. Le besoin en CDN s’est accru avec la crise sanitaire, ses confinements, et la consommation de contenus (vidéo, streaming et réseaux sociaux) arrivée à son paroxysme : il a fallu livrer de plus en plus de contenus, à une audience grandissante.
En France, le trafic a presque doublé entre fin 2019 et fin 2020 [2]! Au début de la crise sanitaire « les capacités d’interconnexions avec les CDN se sont remplies de manière extrêmement rapide. Sur certaines, nous étions montés à plus de 90 % d’utilisation »[3] soulignait alors Jean-Luc Vuillemin, directeur des Réseaux et Services internationaux d’Orange. La saturation des réseaux était telle, que le lancement de Disney+ en France a été retardé [4], de peur que cela n’entraîne un engorgement total.
Je comprends la déception des fans de Disney mais en ce moment se donner un peu plus de temps pour bien mesurer tous ensemble les conséquences de ce lancement sur les réseaux, c’est aussi une question de bon sens https://t.co/UvkxYy3NPM
— Jean-Luc Vuillemin (@jlvuillemin) March 21, 2020
Les CDN se sont alors avérés incontournables. Un opérateur de CDN comme Fastly a vu sa capitalisation boursière tripler depuis mars 2020 [5]. Ils sont progressivement devenus des centres névralgiques d’Internet, et continuent d’avoir le vent en poupe.
MAIS QU’EST-CE QUI LES REND AUSSI INDISPENSABLES ET POURQUOI ?
Pierre angulaire à la diffusion de contenus sur Internet, un CDN est constitué d’un ensemble de serveurs (ordinateurs) mis en réseau via Internet. Cet ensemble de serveurs répond à un besoin concret : réduire le temps de chargement d’un contenu (temps de latence), induit par la distance physique entre l’utilisateur et le serveur du site d’origine. Pour cela, ses serveurs vont être disposés partout dans le monde, de manière à être au plus près des utilisateurs. Ainsi le CDN va pouvoir livrer rapidement le contenu aux utilisateurs, où qu’ils soient.
Un CDN en chiffres, ça donne quoi ?
Akamai par exemple, un des plus grands opérateurs CDN, a installé environ 325 000 serveurs répartis dans plus de 135 pays, déployés sur presque 1 435 réseaux à travers le monde [6].
Le marché est partagé par plusieurs opérateurs de CDN, comme Akamai. À ces derniers s’ajoutent les réseaux proposés par les opérateurs télécoms, et les entreprises comme Netflix, qui ont développé leur propre CDN.
COMMENT LES CDN FONCTIONNENT-ILS ?
Le CDN va copier les contenus du serveur d’origine (« l’origine ») sur ses propres serveurs, disposés à travers le monde. C’est ce qu’on appelle les Points de Présence (Pop). Lorsqu’un utilisateur fait une requête, le réseau va le connecter au Pop le plus proche, et non à l’origine – située potentiellement à l’autre bout du monde. La durée de transmission du contenu est donc plus courte, et le service plus rapide.
La mise en cache des contenus, c’est-à-dire leur stockage éphémère sur les serveurs du CDN, se fait selon quelques principes :
- La copie d’un contenu se fait lors de la première requête de ce contenu. Une fois que le Pop a l’information « en stock », il n’a plus besoin de retourner à l’origine ;
- Seuls les contenus statiques sont stockés sur les Pop, c’est-à-dire les contenus qui ne changent pas (image, vidéo, fichiers JavaScript etc.) ;
Et quand vous cliquez pour accéder à votre série, comment ça se passe ?
Prenons l’exemple de Marion :
Comment le CDN fonctionne-t-il lorsque Marion streame un épisode ? [7]
Zoom sur la durée de cache :
La durée de cache, dite durée de vie, d’un contenu est configuré par l’utilisateur (le client) du CDN.
> Durée de vie trop longue, quelle conséquence ?
Si le contenu a une durée de cache trop longue, et qu’il est modifié à l’origine, son actualisation sur le Pop ne se fera qu’une fois la durée de cache expirée – soit tardivement après la modification à l’origine.
> Durée de vie trop courte, quelle conséquence ?
Le CDN va sur-solliciter l’origine de manière impromptue pour vérifier la cohérence du contenu caché. Le CDN va donc perdre de son intérêt.
Zoom sur la clé de cache :
À chaque objet est associée une clé de cache unique, qui permet d’identifier le fichier. Cette clé unique va optimiser les performances du cache en évitant de délivrer un contenu incohérent et de stocker des doublons.
Si un objet, comme une image, existe en plusieurs tailles ou qualités, alors cette caractéristique devra apparaître dans la clé de cache. Il y aura ainsi une clé de cache par qualité/taille de l’image.
LE CDN PERMET AINSI UNE MEILLEURE EXPÉRIENCE UTILISATEUR.
Qui dit meilleure expérience utilisateur, dit meilleurs taux de conversion et de fidélité. On comprend pourquoi les CDN sont si utiles aux entreprises. Mais ce ne sont pas là leurs seules vertus. Leur prépondérance accrue est également due aux autres avantages qu’ils présentent :
1. Un CDN va soulager les serveurs du site d’origine et augmenter la disponibilité des contenus.
Lors d’opérations commerciales comme le Black Friday ou lorsqu’une chanteuse comme Adèle vend des milliers de places de concert en quelques minutes, les requêtes sont massives et simultanées, et les serveurs très sollicités. Dans ce genre de cas, le CDN permet aux services de tenir la charge.
Grâce à son fonctionnement en réseau, le CDN va « distribuer » les requêtes à ses différents serveurs, et pondérer le trafic. De cette façon, le CDN ne va pas être submergé.
En absorbant cette charge soudaine, il sert de tampon entre les requêtes et l’origine. L’origine peut ainsi monter en charge progressivement, et livrer ses contenus correctement.
Bonus : cela permet à l’origine d’être « disponible » pour gérer les requêtes auxquelles le CDN ne peut répondre, comme la livraison de contenus dynamiques. Lors de la vente de places de concert par exemple, la localisation des places disponibles – contenus dynamiques – sont uniquement livrés par l’origine.
2. Un CDN réduit la bande passante, et son coût !
Avec la mise en cache de ses contenus sur le CDN, la quantité de données fournies par l’origine réduit. Cette baisse entraîne la diminution de sa consommation en bande passante, et de ses coûts d’hébergement.
Bonus : cela soulage internet en général et tout le monde en bénéficie.
- Les fournisseurs de contenus livrent plus rapidement, et à moindre coût.
- Les utilisateurs finaux peuvent accéder aux contenus plus rapidement.
- Les Fournisseurs d’Accès à Internet (FAI) doivent fournir moins de bande passante. En effet, si les FAI devaient gérer des surplus de bande passante, le prix se répercuterait sur les clients.
3. Un CDN apporte de la sécurité grâce à son fonctionnement « on edge », en bordure.
Cela signifie qu’il se situe entre le système d’information (là où il y a les données), et les requêtes qu’on va lui adresser. Grâce à cette configuration, il va servir de barrière, et bloquer les attaques avant qu’elles n’entrent dans le système d’information.
Exemple : Dans le cas d’une attaque de déni de service distribué (DDoS) (quand on submerge un site de requêtes afin de perturber son trafic), le CDN ne va pas faire suivre les requêtes, ni les faire entrer dans le système. De cette façon, le système est protégé.
Bonus : en filtrant dès l’entrée les requêtes légitimes, le CDN va pouvoir optimiser le nombre de serveurs mis à contribution.
Tous ces avantages rendent essentielle l’utilisation de CDN.
Les sites utilisateurs en deviennent totalement tributaires pour assurer leur fonctionnement. La panne du 8 juin 2021 de Fastly en atteste. Les sites diffusés par ce CDN, comme celui du gouvernement britannique, de la Maison Blanche ou du Monde, ont été rendus indisponibles pendant plus d’une heure. Cela peut être pallié par l’utilisation de plusieurs CDN, comme le fait Disney+, afin de passer par un autre réseau en cas de problème.
Les CDN présentent certaines limites techniques. Le CDN est un service mutualisé. Il va devoir mettre en cache les contenus de l’ensemble de ses clients : or sa capacité de cache est limitée. Si le volume de contenus devient trop important, le CDN privilégiera le stockage des contenus les plus demandés, en dépit de la durée de cache prévue des autres contenus.
Résultat : la réelle durée de cache des objets sur le CDN peut difficilement être optimisée et le client aura peu de maîtrise dessus.
Cette limite technique peut être atténuée par des architectures adaptées avec un niveau de cache supplémentaire ou un stockage dédié, comme on le verra dans le prochain article, avec l’exemple d’un streamer musical.
Malgré certaines limites, le contexte actuel laisse présager une évolution croissante des CDN. Le trafic provenant des CDN devrait augmenter pour atteindre 72% du trafic total d’internet en 2022 selon Cisco [8].
Dans cet environnement exigeant en forte croissance, Nobori Partners peut vous accompagner dans l’optimisation, ou la mise en place d’un CDN, et vous conseiller afin de répondre à vos besoins spécifiques.