Qu’est-ce qu’un CDN (Content Delivery Network) ?

Un Content Delivery Network (CDN ou réseau de diffusion de contenu en français) est un ensemble de serveurs situés à des emplacements différents et mis en réseau via internet. Il s’agit d’un excellent moyen de diffuser votre site Web ou application Web dans le monde. En recourant à un tel réseau, votre serveur se relie à une multitude d’autres serveurs. A l’aide d’un système de répartition, les contenus statiques de votre serveur Web sont transmis vers ce qu’on appelle des serveurs miroirs. Lorsque les utilisateurs chargent un contenu particulier de votre site Web, cette demande est transmise par un système d’acheminement des demandes vers le serveur miroir le plus adapté du Content delivery network pour délivrer les données correspondantes. Le nombre et la répartition des serveurs varient selon le fournisseur de réseau de diffusion de contenu, tout comme le degré d’intégration ainsi que la performance de la dorsale Internet (Internet Blackbone).

Voici comment sont livrées les données d’un CDN

Les utilisateurs ne peuvent pas savoir si les données d’un site proviennent directement du serveur sortant ou bien d’un serveur miroir, car tout ce processus se déroule en arrière-plan. Ils peuvent en revanche constater de faibles temps de chargement.

Les deux composants les plus importants dans ce processus sont le système de répartition (ou distribution) et le système d’acheminement des demandes (Request-Routing System). Le système de répartition transmet non seulement les contenus du serveur d’origine aux serveurs miroirs, mais il se charge également de leur actualité et de leur véracité. Deux procédures sont pour cela possibles : soit le système de distribution envoie les données modifiées et nouvelles directement vers tous les serveurs du Content Delivery Network, soit il envoie seulement un message informant que telles données se trouvent sur tel serveur miroir de manière à les rendre disponibles lors des demandes utilisateurs. Pour que ces demandes d’utilisateur parviennent aux bons serveurs au bon moment, le Request-Routing System est activé. Ce dernier fait en sorte que les demandes soient redirigées de manière optimale, et ceci en deux étapes.

Recherche du serveur miroir adéquat

Il s’agit dans un premier temps de trouver le serveur le plus adapté pour répondre à la demande utilisateur. Pour répondre à cet objectif, le système d’acheminement des demandes se base sur des indicateurs spécifiques, calculés avec différentes méthodes de mesure. On peut déterminer avec ces différents indicateurs s’il s’agit de connexions du côté du client Web ou du serveur. Il est possible, grâce aux valeurs de mesure du côté du serveur, qui comptent la charge générale sur les processeurs ou le nombre d’accès actifs sur le serveur, de déterminer quel serveur miroir utiliser, soit celui ayant la plus faible charge. Au regard des propriétés de la connexion entre le client et le serveur, le Request-Routing-System détermine le serveur avec la meilleure connexion au client.  Parmi les facteurs clé, on compte entre autres le temps de latence, le taux de transmission moyen, le taux de perte de paquets, mais aussi la proximité géographique. Des indicateurs côté client nous renseignent sur l’identité de l’utilisateur effectuant la demande. Le système les utilise par exemple s’il faut que les contenus soient délivrés en différentes qualités pour des clients standards et premium.

Par ailleurs, l’évaluation des différents indicateurs dépend toujours des données demandées : la génération de contenus dynamiques s’effectue plutôt avec un serveur ayant de bons indicateurs, tandis qu’une connexion stable entre client et serveur représente le b.a.-ba de l’utilisation de médias en streaming.

Redirection de la demande

Si le serveur cible est connu dans le CDN, l’étape suivante est la redirection de la demande via le Request-Routing-System. Il existe plusieurs procédés pour une telle redirection de demande, qui se différencient fondamentalement selon l’emplacement de la redirection, entre un serveur miroir, sur le client ou le réseau.

La redirection de la demande du client est une méthode simple à mettre en place : le client choisit le serveur miroir parmi une liste présentée. Elle présente toutefois l’inconvénient que le Content Delivery Network n’ait que peu d’influence sur l’attribution des serveurs. Une redirection http 302 est également simple à mettre en application et est équipée de bonnes informations sur le CDN. Le serveur de sortie répond dans ce cas par le code de statut http à la demande et informe le client du serveur miroir approprié, qui sera contacté automatiquement pour d’autres demandes. Le principal inconvénient de ce procédé est la duplication des connexions nécessaires.

La manière de redirection la plus fréquente est le Request-Routing basé sur le DNS (Domain Name System ou système de noms de domaine en français). La demande du client est transmise à un serveur DNS spécial au sein du Content Delivery Network, qui renvoie de son côté l’adresse IP d’un serveur miroir. Le plus grand désagrément de ce procédé est que les consultations répétées dans le DNS en ralentissent l’accès.

Pourquoi choisir un CDN

Grâce à des serveurs dispersés partout dans le monde, vos clients peuvent bénéficier de temps de chargement plus rapide et d’une plus petite exploitation de la capacité de la bande passante. En tant qu’exploitant, vous avez aussi des avantages considérables en utilisant un réseau de diffusion de contenu. La charge de votre serveur Web est non seulement allégée par la redirection des demandes, mais la sécurité des données de la mémoire tampon est aussi augmentée. Ainsi, les attaques DDoS ne peuvent pas atteindre le serveur de sortie. Quelques prérequis sont cependant nécessaires pour cela. Vous devez tenir les données sensibles telles que les données d’utilisateurs ou les mots de passe à l‘écart du CDN, car celles-ci présentent un risque d’attaque plus important, indépendamment du fait que cela implique des conflits fréquents dans la protection des données. L’attribution de contenus évacués d’un CDN à votre propre nom de domaine permet d’empêcher la propagation d’une potentielle cyberattaque sur un autre élément du site Web. L’énumération suivante résume les avantages d’un réseau de diffusion de contenu :

  • Les éléments statiques comme les pages HTML, les images, les feuilles de style, les documents ou scripts côté client sont sauvegardés dans la mémoire cache du serveur miroir et ne doivent plus être chargés depuis leur serveur Web par la suite. Cela permet de ménager le serveur, mais aussi de proposer des temps de chargement plus courts à vos utilisateurs. En conséquence, vous profiterez d’un taux de rebond réduit et d’un meilleur référencement sur les moteurs de recherche ;
  • La faible utilisation du serveur et des applications impliquées protège le serveur de surcharge, de dommages ou de défaillances éventuelles. Cela a des conséquences positives sur le matériel dont on a besoin pour l‘hébergement ;
  • Vous pouvez décider vous-même quels éléments statiques clients vous pouvez charger à partir du serveur vers le Content Delivery Network. Si vous ne transférez par exemple que les images de votre Blog, celles-ci peuvent être chargées parallèlement, ce qui accélèrera les temps de chargement ;
  • Ies sites Web profitent de cet envoi de données via un CDN pour le streaming de musiques et de vidéos, car de grandes quantités de données doivent être déplacées en peu de temps. Cela vaut aussi pour les retransmissions en live sur Interne ;
  • Les hausses du nombre de visiteurs ou encore les pics de visites sont maîtrisés facilement.  La recherche de serveurs miroirs aux charges plus légères par un Request-Routing-System s’avère très rentable, en particulier si vous proposez des fichiers en téléchargement ou si vous exploitez une boutique en ligne ;
  • Vous ne raccourcissez pas seulement les temps de chargement, mais vous diminuez également la charge sur la bande passante, avec laquelle sont liés les chargements de contenus ,
  • La sécurité de votre serveur et donc de ses données et des applications utilisées est augmentée avec un Content Delivery network, car les attaques sont reconnues à temps et aussitôt  détournées.