Les voies mystérieuses du contenu ou disons un mot sur le CDN

Les voies mystérieuses du contenu ou disons un mot sur le CDN

Avertissement:
Cet article ne contient pas d'informations jusqu'alors inconnues des lecteurs familiers avec le concept de CDN, mais a la nature d'une revue technologique.

La première page Web est apparue en 1990 et ne faisait que quelques octets. Depuis lors, le contenu a évolué à la fois qualitativement et quantitativement. Le développement de l'écosystème informatique a conduit au fait que les pages Web modernes se mesurent en mégaoctets et que la tendance à l'augmentation de la bande passante du réseau ne fait que se renforcer chaque année. Comment les fournisseurs de contenu peuvent-ils couvrir de grandes échelles géographiques et fournir aux utilisateurs du monde entier un accès à l’information à haut débit ? Les réseaux de diffusion et de distribution de contenu, également appelés Content Delivery Network ou simplement CDN, doivent faire face à ces tâches.

Il y a de plus en plus de contenus « lourds » sur Internet. Dans le même temps, de nombreuses études montrent que les utilisateurs ne souhaitent pas utiliser les services Web si leur chargement prend plus de 4 à 5 secondes. Une vitesse de chargement du site trop faible entraîne une perte d'audience, ce qui entraînera certainement une diminution du trafic, de la conversion et donc du profit. Les réseaux de diffusion de contenu (CDN) éliminent en théorie ces problèmes et leurs conséquences. Mais en réalité, comme d'habitude, tout est décidé par les détails et les nuances d'un cas particulier, qui sont nombreuses dans ce domaine.

D'où est venue l'idée des réseaux distribués ?

Commençons par une brève excursion dans l'histoire et les définitions des termes. CDN est un réseau composé d'un groupe de machines serveurs situées à différents endroits pour permettre l'accès au contenu Internet couvrant un grand nombre d'utilisateurs. L'idée des réseaux distribués est d'avoir plusieurs points de présence (PoP) à la fois, situés en dehors du serveur source. Un tel système traitera plus rapidement l'ensemble des demandes entrantes, augmentant ainsi la réponse et la vitesse de transfert de toutes les données.

Le problème de la fourniture de contenu aux utilisateurs s'est posé avec acuité au plus fort du développement d'Internet, c'est-à-dire au milieu des années 90. Les serveurs de l'époque, dont les performances n'atteignaient même pas les ordinateurs portables phares modernes, pouvaient difficilement supporter la charge et ne pouvaient pas faire face au trafic toujours croissant. Microsoft dépense chaque année des centaines de millions de dollars en recherches liées à l'autoroute de l'information (les fameux 640 Ko de Bill Gates viennent immédiatement à l'esprit). Pour résoudre ces problèmes, nous avons dû utiliser la mise en cache hiérarchique, passer des modems à la fibre optique et analyser en détail la topologie du réseau. La situation rappelait celle d'une vieille locomotive qui roule le long des rails et est modernisée en cours de route par tous les moyens possibles pour augmenter la vitesse.

Déjà à la fin des années 90, les propriétaires de portails Web se sont rendu compte que pour réduire la charge et répondre aux demandes requises, ils devaient utiliser des serveurs intermédiaires. C’est ainsi qu’apparaissent les premiers CDN, distribuant du contenu statique depuis différents serveurs géographiquement dispersés à travers le monde. À peu près à la même époque, une activité de réseau distribué est apparue. Le plus grand (au moins l'un des plus grands) fournisseur de CDN au monde, Akamai, est devenu un pionnier dans ce domaine, commençant son parcours en 1998. Quelques années plus tard, le CDN s'est généralisé et les revenus provenant de la fourniture et de la contribution de contenu s'élevaient à des dizaines de millions de dollars par mois.

Aujourd’hui, nous tombons sur un CDN à chaque fois que nous visitons une page commerciale à fort trafic ou communiquons sur les réseaux sociaux. Le service est fourni par : Amazon, Cloudflare, Akamai, ainsi que de nombreux autres fournisseurs transnationaux. De plus, les grandes entreprises ont tendance à utiliser leurs propres CDN, ce qui leur apporte de nombreux avantages en termes de rapidité et de qualité de diffusion du contenu. Si Facebook ne disposait pas de réseaux distribués, mais se contentait d'un seul serveur d'origine situé aux États-Unis, le chargement d'un profil pour les utilisateurs d'Europe de l'Est pourrait prendre beaucoup plus de temps.

Quelques mots sur le CDN et le streaming

FutureSource Consulting a analysé l'industrie musicale et a conclu qu'en 2023, le nombre d'abonnements aux services de streaming musical atteindra près d'un demi-milliard de personnes. De plus, les services tireront plus de 90 % de leurs revenus du streaming audio. La situation de la vidéo est similaire : des termes tels que "Jouons", "concert en ligne" et "cinéma en ligne" sont déjà ancrés dans le lexique populaire. Apple, Google, YouTube et de nombreuses autres sociétés disposent de leurs propres services de streaming.

À ses débuts, le CDN était principalement utilisé pour les sites au contenu statique. Statique est une information qui ne change pas en fonction des actions de l'utilisateur, du temps et d'autres facteurs, c'est-à-dire n'est pas personnalisé. Mais l’essor des services de streaming vidéo et audio a ajouté un autre cas d’utilisation courant des réseaux distribués. Les serveurs intermédiaires, situés à proximité du public cible dans le monde entier, permettent de fournir un accès stable au contenu pendant les périodes de pointe, éliminant ainsi l'absence de goulots d'étranglement Internet.

Comment ça marche

L’essence de tous les CDN est à peu près la même : utiliser des intermédiaires pour pouvoir fournir plus rapidement le contenu au consommateur final. Cela fonctionne comme suit : l'utilisateur envoie une demande de téléchargement d'un fichier, elle est reçue par le serveur CDN, qui effectue un appel unique au serveur d'origine et donne le contenu à l'utilisateur. Parallèlement, le CDN met en cache les fichiers pendant une période de temps donnée et traite toutes les requêtes ultérieures depuis son propre cache. En option, ils peuvent également précharger des fichiers à partir du serveur source, ajuster la période de rétention du cache, compresser des fichiers lourds et bien plus encore. Dans la situation la plus idéale, l'hôte transmet l'intégralité du flux à un nœud CDN, qui utilise déjà ses propres ressources pour fournir du contenu aux utilisateurs. Il va sans dire qu'une mise en cache efficace des informations, ainsi que la distribution des requêtes non pas à un serveur, mais au réseau, entraîneront une charge de trafic plus équilibrée.

Les voies mystérieuses du contenu ou disons un mot sur le CDN
La deuxième caractéristique importante du fonctionnement du CDN est la réduction des délais de transmission des données (également appelés RTT - round trip time). Établir une connexion TCP, télécharger un contenu multimédia, un fichier JS, démarrer une session TLS, tout cela dépend du ping. Évidemment, plus vous êtes proche de la source, plus vite vous pouvez obtenir une réponse. Après tout, même la vitesse de la lumière a sa limite : environ 200 75 km/s via la fibre optique. Cela signifie que de Moscou à Washington, le retard sera d'environ XNUMX ms en RTT, et ce sans l'influence des équipements intermédiaires.

Pour mieux comprendre les problèmes résolus par les réseaux de distribution de contenu, voici une liste de solutions actuelles :

  • Google, Yandex, MaxCDN (utilisent des CDN gratuits pour distribuer les bibliothèques JS, ont plus de 90 points de présence dans la plupart des pays du monde) ;
  • Cloudinary, Cloudimage, Google (services et bibliothèques d'optimisation clients : images, vidéos, polices, etc.) ;
  • Jetpack, Incapsula, Swarmify, etc. (optimisation des ressources dans les systèmes de gestion de contenu : bitrix, wordpress, etc.) ;
  • CDNVideo, StackPath, NGENIX, Megafon (CDN pour la distribution de contenu statique, utilisé comme réseaux à usage général) ;
  • Imperva, Cloudflare (solutions pour accélérer le chargement des sites web).

Les 3 premiers types de CDN de la liste sont conçus pour transférer seulement une partie du trafic du serveur principal. Les 2 autres sont utilisés comme serveurs proxy à part entière avec transmission complète des canaux depuis l'hôte source.

À qui et quels avantages la technologie apporte-t-elle ?

En théorie, tout site Web qui vend ses produits/services à des entreprises ou à des particuliers (B2B ou B2C) peut bénéficier de la mise en œuvre d'un CDN. Il est important que son public cible, c'est-à-dire la base d’utilisateurs se trouvait en dehors de leur emplacement géographique. Mais même si ce n’est pas le cas, les réseaux de distribution contribueront à équilibrer la charge pour de gros volumes de contenu.

Ce n'est un secret pour personne que quelques milliers de threads suffisent à obstruer un canal de serveur. Par conséquent, la distribution d'émissions vidéo au grand public entraînera inévitablement la formation d'un goulot d'étranglement : la bande passante du canal Internet. On constate la même chose lorsqu’il y a beaucoup de petites images décousues sur un site internet (aperçus de produits par exemple). Le serveur d'origine utilise une connexion TCP lors du traitement d'un nombre quelconque de requêtes, ce qui mettra le téléchargement en file d'attente. L'ajout d'un CDN nécessite de répartir les requêtes sur plusieurs domaines et d'utiliser plusieurs connexions TCP, soulageant ainsi la charge du canal. Et la formule du délai aller-retour, même dans les scénarios les plus tristes, donne une valeur de 6-7 RRT et prend la forme : TCP+TLS+DNS. Cela inclut également les retards associés à l'activation du canal radio sur l'appareil et à la transmission du signal aux tours de téléphonie cellulaire.

Après avoir résumé les atouts de la technologie pour le commerce en ligne, les experts soulignent les points suivants :

  1. Mise à l'échelle rapide de l'infrastructure + bande passante réduite. Plus de serveurs = plus de points où les informations sont stockées. Par conséquent, un point traite moins de trafic par unité de temps, ce qui signifie qu'il peut avoir un débit inférieur. De plus, des outils d'optimisation entrent en jeu, vous permettant de faire face aux pics de charge sans perdre de temps.
  2. Ping inférieur. Nous avons déjà mentionné que les gens n'aiment pas attendre longtemps sur Internet. Par conséquent, un ping élevé contribue à des taux de rebond élevés. Le retard peut être dû à des problèmes de traitement des données sur le serveur, à l'utilisation d'équipements anciens ou simplement à une topologie de réseau mal pensée. La plupart de ces problèmes sont partiellement résolus par les réseaux de distribution de contenu. Bien qu'il soit important de noter ici que le véritable avantage de la mise en œuvre de la technologie ne sera visible que lorsque le « ping consommateur » dépassera 80-90 ms, et c'est la distance entre Moscou et New York.

    Les voies mystérieuses du contenu ou disons un mot sur le CDN

  3. Sécurité des données. Les DDos (attaques de virus par déni de service) visent à faire planter le serveur afin d'obtenir un avantage. Un serveur est beaucoup plus sensible aux vulnérabilités en matière de sécurité de l'information qu'un réseau distribué (installer l'infrastructure d'un géant comme CloudFlare n'est pas une tâche facile). Grâce à l'utilisation de filtres et à une répartition correcte des requêtes sur le réseau, vous pouvez facilement éviter les difficultés artificiellement créées lors de l'accès au trafic légitime.
  4. Distribution rapide du contenu et fonctions de service supplémentaires. La diffusion de grandes quantités d'informations sur un réseau de serveurs permettra de transmettre rapidement l'offre au consommateur final. Encore une fois, vous n’avez pas besoin de chercher bien loin des exemples – rappelez-vous simplement Amazon et AliExpress.
  5. La possibilité de « masquer » les problèmes avec le site principal. Il n'est pas nécessaire d'attendre que le DNS soit mis à jour : vous pouvez le transférer vers un nouvel emplacement et distribuer le contenu précédemment mis en cache. Cela peut à son tour améliorer la tolérance aux pannes.

Nous avons trié les avantages. Voyons maintenant quelles niches en bénéficient.

Entreprise de publicité

La publicité est le moteur du progrès. Pour éviter que le moteur ne grille, il doit être chargé modérément. Ainsi, le secteur de la publicité, essayant de s'adapter au monde numérique moderne, est confronté aux problèmes du « contenu lourd ». Les médias lourds font référence à la publicité multimédia (principalement des bannières animées et des vidéos) qui nécessite une bande passante réseau élevée. Un site Web multimédia met beaucoup de temps à se charger et peut se bloquer, mettant à rude épreuve les nerfs des utilisateurs. La plupart des gens abandonnent ces ressources avant même d’avoir téléchargé toutes les informations disponibles. Les agences de publicité peuvent profiter des CDN pour résoudre ces problèmes.

Продажи

Le commerce électronique doit constamment étendre sa couverture géographique. Un autre point important est la lutte contre les concurrents, qui sont nombreux dans tous les segments de marché. Si un site Web ne répond pas aux exigences des utilisateurs (notamment en prenant beaucoup de temps à charger), il ne sera pas populaire et ne sera pas en mesure de générer des conversions constamment élevées. La mise en œuvre d'un CDN devrait prouver son avantage dans le traitement des demandes de données provenant de différents emplacements. En outre, la répartition du trafic contribuera à éviter les pics de trafic et les pannes de serveur ultérieures.

Plateformes avec du contenu de divertissement

Toutes sortes de plateformes de divertissement conviennent ici, du téléchargement de films et de jeux au streaming de vidéos. Malgré le fait que la technologie fonctionne avec des données statiques, les données en streaming peuvent atteindre l'utilisateur plus rapidement via des répéteurs. Encore une fois, la mise en cache des informations CDN est un salut pour les propriétaires de grands portails : le stockage multimédia.

Jeux en ligne

Les jeux Internet doivent être placés dans une section distincte. Si la publicité nécessite une large bande passante, les projets en ligne sont encore plus exigeants en ressources. Les fournisseurs sont confrontés à un problème qui a deux faces : rapidité d'accès aux serveurs + garantie de performances de jeu élevées avec de superbes graphismes. Un CDN pour les jeux en ligne est l'opportunité de disposer de ce que l'on appelle des « zones push » où les développeurs peuvent stocker des jeux sur des serveurs situés à proximité des utilisateurs. Cela permet de réduire l’impact de la vitesse d’accès au serveur d’origine, et donc d’assurer un gameplay confortable partout.

Pourquoi CDN n'est pas une panacée

Les voies mystérieuses du contenu ou disons un mot sur le CDN
Malgré les avantages évidents, tout le monde ne s'efforce pas toujours d'introduire la technologie dans son entreprise. Pourquoi donc? Paradoxalement, certains inconvénients découlent des avantages, auxquels s'ajoutent quelques points supplémentaires liés au déploiement du réseau. Les spécialistes du marketing parleront magnifiquement de tous les avantages de la technologie, oubliant de mentionner qu’ils perdent tous leur sens dans un large éventail de conditions. Si nous examinons plus en détail les inconvénients du CDN, il convient de souligner :

  • Travaillez uniquement avec de la statique. Oui, la plupart des sites Web modernes ont un faible pourcentage de contenu dynamique. Mais là où les pages sont personnalisées, le CDN ne pourra pas aider (sauf peut-être décharger une grande quantité de trafic) ;
  • Délai de mise en cache. L'optimisation elle-même est l'un des principaux avantages des réseaux de distribution. Mais lorsque vous effectuez une modification sur le serveur d'origine, il faut du temps avant que le CDN la récupère sur tous ses serveurs ;
  • Blocages de masse. Si, pour une raison quelconque, l'adresse IP d'un CDN est interdite, alors tous les sites qui y sont hébergés sont fermés ;
  • Dans la plupart des cas, le navigateur établira deux connexions (au serveur d'origine et au CDN). Et ce sont des millisecondes supplémentaires d’attente ;
  • Liaison à l'adresse IP des projets (y compris ceux inexistants) qui lui étaient précédemment attribués. En conséquence, nous obtenons des classements compliqués de la part des robots de recherche Google et des difficultés à amener le site au sommet lors de la promotion SEO ;
  • Le nœud CDN est un point de défaillance potentiel. Si vous les utilisez, il est important de comprendre à l'avance comment fonctionne le routage du système et quelles erreurs peuvent survenir lors de l'utilisation du site ;
  • C'est banal, mais vous devez payer pour les services de diffusion de contenu. En général, les coûts sont proportionnels au volume du trafic, ce qui signifie que des contrôles peuvent être nécessaires pour planifier le budget.

Un fait important : même la proximité du CDN avec l'utilisateur ne garantit pas un ping faible. La route peut être construite depuis un client vers un hôte situé dans un autre pays ou même sur un autre continent. Cela dépend de la politique de routage d'un réseau particulier et de ses relations avec les opérateurs télécoms (peering). De nombreux grands fournisseurs de CDN proposent plusieurs forfaits, dont le coût affecte directement la proximité du point de présence lors de la fourniture du contenu aux utilisateurs cibles.

Il existe des opportunités : lancez votre propre CDN

Vous n'êtes pas satisfait des politiques des entreprises fournissant des services de réseau de distribution de contenu, mais votre entreprise a besoin de se développer ? Si possible, pourquoi ne pas essayer de lancer votre propre CDN. Cela a du sens dans les cas suivants :

  • Les coûts actuels de distribution de contenu ne répondent pas aux attentes et ne sont pas économiquement justifiés ;
  • Nous avons besoin d'un cache permanent, sans proximité avec d'autres sites sur le serveur et le canal ;
  • Le public cible se trouve dans une région où aucun point de présence CDN n'est disponible pour vous ;
  • La nécessité de personnaliser les paramètres lors de la diffusion du contenu ;
  • Il est nécessaire d'accélérer la diffusion de contenu dynamique ;
  • Soupçons de violation de la vie privée des utilisateurs et autres actions illégales de la part de services tiers.

Lancer un CDN nécessitera d'avoir un nom de domaine, plusieurs serveurs dans différentes régions (virtuels ou dédiés) et un outil de traitement des requêtes. N'oubliez pas d'installer des certificats SLL, de configurer et d'éditer des programmes pour diffuser du contenu statique (Nginx ou Apache) et de surveiller efficacement l'ensemble du système.

La configuration correcte des proxys de mise en cache fait l'objet d'un article séparé, nous ne décrirons donc pas ici en détail : où et quel paramètre définir correctement. Compte tenu des coûts de démarrage et du temps de déploiement d'un réseau, l'utilisation de solutions toutes faites peut s'avérer plus prometteuse. Mais il faut se laisser guider par la situation actuelle et prévoir plusieurs étapes à l’avance.

Avec le résultat que

CDN est un ensemble de capacités supplémentaires pour relayer votre trafic vers le grand public. Sont-ils nécessaires pour le commerce en ligne ? Oui et non, tout dépend du public auquel le contenu est destiné et des objectifs poursuivis par le propriétaire de l'entreprise.

Les projets régionaux et hautement spécialisés bénéficieront plus d’inconvénients que d’avantages de la mise en œuvre du CDN. Les requêtes arriveront toujours en premier sur le serveur source, mais via un intermédiaire. D'où une réduction douteuse du ping, mais des coûts mensuels bien précis d'utilisation du service. Si vous disposez d'un bon équipement réseau, vous pouvez facilement améliorer les algorithmes de sécurité des informations existants, rapprocher vos serveurs des utilisateurs et bénéficier gratuitement d'optimisations et de bénéfices en continu.

Mais ceux qui devraient vraiment penser aux serveurs intermédiaires sont les grandes entreprises dont l'infrastructure ne peut pas faire face au flux de trafic en constante augmentation. CDN se présente parfaitement comme une technologie qui vous permet de déployer rapidement un réseau sur une large géographie d'utilisateurs, de proposer des jeux en nuage confortables ou de vendre des produits sur une grande plate-forme commerciale.

Mais même avec un large public géographique, il est important de comprendre à l’avance pourquoi les réseaux de distribution de contenu sont nécessaires. L’accélération d’un site Web reste encore une tâche complexe, qui ne peut être résolue comme par magie par la mise en œuvre d’un CDN. N'oubliez pas des fonctionnalités aussi importantes que : le multiplateforme, l'adaptabilité, l'optimisation de la partie serveur, le code, le rendu, etc. Un audit technique préliminaire et des mesures adéquates pour éliminer les problèmes restent la solution optimale pour tout projet en ligne, quels que soient son objectif et son ampleur.

Comme la publicité

Vous pouvez commander dès maintenant serveurs puissantsqui utilisent les derniers processeurs et épique. Forfaits flexibles - de 1 cœur de processeur à 128 cœurs de processeur insensés, 512 Go de RAM, 4000 XNUMX Go de NVMe.

Les voies mystérieuses du contenu ou disons un mot sur le CDN

Source: habr.com

Ajouter un commentaire