×

Paroles d’Expert

Dans cette série d’articles, un expert Limelight prend la parole pour partager ses connaissances aux lecteurs voulant en savoir plus sur l’écosystème CDN. Ce mois-ci, Thibaud Regeard, Solution Engineer basé à Paris, explique les bases de fonctionnement d’un CDN, son utilité et ses facteurs clés de performance.

Temps de lecture : 2 minutes

5 février 2020

Qu’est-ce qu’un CDN ?

Derrière cet énième acronyme se cache l’un des piliers du fonctionnement d’Internet tel que nous l’utilisons aujourd’hui. Ce Content Delivery Network (Réseau de Distribution de Contenu) représente un maillage de serveurs plus ou moins étendu de par le globe, et connectés non seulement ensemble mais avec d’autres réseaux. Rappelons que le concept d’Internet est bien une interconnexion de différents réseaux, qu’ils soient publics ou privés.

Mais pourquoi faire ?

La première raison d’être d’un CDN, c’est de permettre à un public plus large d’accéder à du contenu sur Internet : pour accéder à un serveur parisien, un Français ne sera que peut sujet à la latence requise pour parcourir le trajet aller-retour (RTT : Round-Trip-Time) jusqu’au contenu. Mais un utilisateur basé au Japon verra, lui, la différence.

 

Ainsi, intercaler un CDN entre les utilisateurs et le contenu fait office d’autoroute : on bénéficie d’un chemin plus direct, avec moins d’interconnexions, et potentiellement moins de congestion sur le trajet.

 

globe-CDN-infrastructure-Limelight

 

En effet, Internet présente parfois des routes jonchées d’interconnexions qui n’ont parfois rien à envier à une grande agglomération aux heures de pointe.

 

reseau-internet-Limelight

 

Cependant, même si l’utilisation d’un CDN permet à un utilisateur de rentrer au plus proche de sa localisation sur un réseau CDN (au moyen d’une interconnexion avec son FAI -Fournisseur d’Accès Internet) et d’en ressortir au plus proche de l’origine du contenu, des congestions peuvent subvenir au niveau de l’origine, lorsque tout le monde cherche à consulter la même série en VOD par exemple.

 

reseau-CDN-infrastructure-Limelight

 

Là-encore, le CDN a un rôle à jouer. Les PoPs qui recueillent les requêtes de ces utilisateurs peuvent faire office de mémoire tampon : une fois l’épisode de la série demandée à l’origine est rapatriée à l‘utilisateur, ce PoP va en garder une copie et le resservir directement aux utilisateurs dont la requête concernera ledit épisode et passera par ledit Pop.

 

On note ici deux points importants sur les PoPs :

  • ■ Ils doivent être suffisamment nombreux pour traiter les requêtes affluant de tous les utilisateurs
  • ■ Leur répartition doit être en accord avec leur position géographique, sans être trop nombreux. Cela permet de maximiser les chances pour leurs requêtes de se servir depuis un PoP directement, sans remonter à l’origine. Il s’agit d’ailleurs d’un KPI très utilisé : le Cache Efficiency, ou Cache Hit Ratio (le rapport entre les requêtes servies depuis les PoPs vs le total de requêtes).

 

Enfin, précisons que les données échangées sur Internet sont de plus en plus dynamiques et ne peuvent être réutilisées pour d’autres usagers (requête vers une base de données pour afficher son panier par exemple). Dans ce cas, la mise en mémoire cache s’avère inefficace, néanmoins les CDN bénéficient de techniques pour améliorer malgré tout ces requêtes qui doivent retourner vers le serveur origine à chaque occasion. Il s’agit d’optimisations liés aux différents protocoles sous-jacents à Internet, et qui sortent du périmètre de cet article.

 

Ainsi, le corolaire est de ne négliger aucun des 3 éléments-clés constituant un CDN moderne :

  • ■ 1. Les nœuds de réseau : il est nécessaire d’établir différents nœuds de réseau, déployés en différents points du globe. Ce sont ces nœuds, appelés PoPs (Point Of Presence) qui sont les portes d’entrée/sortie du réseau. il est donc important que ces points soient suffisants et stratégiquement répartis selon la zone couverte. Ces points gèrent les interconnexions, il est donc primordial que ces PoPs bénéficient de l’infrastructure permettant d’accueillir et de maintenir les composants matériels requis : composants réseau, serveurs… Il convient de passer par des Data Centers (en propre ou mutualisés) offrant l’espace d’hébergement, l’énergie et la sécurité adéquate.
  • ■ 2. Le maillage entre les nœuds de réseau : Il est d’un extrême importance. La densité et la capacité (débit) de ce réseau conditionnera le volume et les performances des données qui y transiteront. Plusieurs modèles existent, mais la tendance est plutôt à l’établissement de fibres noires dédiées (qu’elles soient possédées en propre ou bien louées), à forte bande passante, entre les différents nœuds. C’est ce que l’on appelle le backbone. Un autre modèle met en œuvre l’utilisation d’algorithmes de routage évolués afin de gérer ce backbone à travers l’Internet public (et donc une myriade de réseaux disparates). Les algorithmes doivent ici gérer l’établissement de routes dynamiques en fonction de l’état du réseau, des congestions, des équipements en panne, etc.
  • ■ 3. La capacité d’interconnection : Un CDN devra toujours porter attention à ses capacités d’interconnexion avec les autres réseaux. En effet, pour que les PoPs d’un CDN puissent échanger de grands flots de données, il convient qu’on leur en donne la possibilité ! Cela se fait au travers d’accord bilatéraux d’échange de trafic. Il s’agit ici d’accord dit de peering ou de transit, selon la nature du contrat. C’est (notapemment) grâce à ses interconnexions avec les réseaux des principaux FAI (Fournisseurs d’accès Internet) qu’un CDN va pouvoir échanger beaucoup de données de façon performante avec les utilisateurs finaux.

 

Pour aller plus loin, je vous invite à lire notre dernière étude de marché sur la perception et le comportement des consommateurs vidéos en 2019.