Comment Fonctionne Anycast pour rapprocher le Contenu de Vos Visiteurs

Lorsque vous tapez www.someplace.com dans la barre d’adresse de votre navigateur et appuyez sur entrée, le site s’affiche dans votre navigateur en (espérons-le) quelques secondes. Il y a un certain nombre de choses qui se passent dans les coulisses pour acheminer votre demande vers ce site afin que vous puissiez voir le contenu. Le protocole BGP (Border gateway protocol) garantit que votre demande arrive sur le serveur de ce site via le meilleur itinéraire via Internet.

Il existe quelques méthodologies pour adresser le serveur cible, et dans cet article, nous discuterons de l’une d’entre elles, l’adressage anycast, en détail.

Qu’est-ce qu’Anycast ?

Dans anycast, une collection de serveurs partagent la même adresse IP et envoient des données d’un ordinateur source au serveur qui est topographiquement le plus proche. Cela permet de réduire les coûts de latence et de bande passante, d’améliorer le temps de chargement pour les utilisateurs et d’améliorer la disponibilité. Il est important de se rappeler que topographiquement plus proche ne signifie pas intrinsèquement plus proche géographiquement, bien que ce soit souvent le cas.

Anycast est lié au protocole BGP qui garantit que tous les voisins d’un routeur connaissent les réseaux qui peuvent être atteints par ce routeur et la distance topographique à ces réseaux. Le principe principal d’anycast est qu’une plage d’adresses IP est annoncée dans les messages BGP de plusieurs routeurs. Au fur et à mesure que cela se propage sur Internet, les routeurs savent lequel de leurs voisins fournit le chemin topographique le plus court vers l’adresse IP annoncée.

Méthodes d’adressage

Ces autres méthodes d’adressage primaires sont disponibles pour acheminer le trafic.

  • L’adressage monodiffusion utilise une association un à un, où chaque adresse de destination est identifiée de manière unique en tant que point de terminaison de récepteur unique. Les déploiements DNS traditionnels sont configurés avec des adresses de monodiffusion.
  • L’adressage de multidiffusion utilise une association de plusieurs un à un unique, où les datagrammes sont acheminés d’un seul expéditeur vers plusieurs points de terminaison sélectionnés dans une seule transmission, à l’aide d’une adresse de groupe de multidiffusion. Une utilisation courante de la multidiffusion est le streaming audio, où l’audio est publié via un adressage de multidiffusion et les clients captent le flux routé en tant que canal.
  • L’adressage de diffusion utilise une association un-à-plusieurs, où les datagrammes sont acheminés d’un expéditeur unique vers tous les autres points finaux connectés en une seule transmission, à l’aide d’une adresse de diffusion. Le réseau réplique automatiquement les datagrammes selon les besoins pour tous les segments de réseau (liens) contenant un récepteur éligible.

DNS Anycast

Avec l’Unicast, les résolveurs de clients DNS peuvent être configurés avec plusieurs cibles de serveur de noms DNS. Dans le cas où le résolveur ne reçoit aucune réponse du premier serveur de la liste, il attendra généralement une valeur de délai d’attente avant de passer au deuxième serveur (et aux serveurs suivants) de la liste des résolveurs. La prochaine fois que le résolveur devra effectuer une recherche, il ne « se souviendra » pas que les serveurs de la liste n’étaient pas réactifs, et il commencera à interroger le premier serveur de la liste même s’il est toujours indisponible. Selon le système d’exploitation du client, cela peut prendre de une à cinq secondes lorsqu’il tourne dans la liste des résolveurs à chaque fois, tentant le serveur défaillant.

Les résolveurs clients DNS configurés avec des adresses anycast éliminent pratiquement cette latence, car la résolution est gérée par le protocole de routage. Dans le diagramme ci-dessous, un poste de travail client DNS unique, configuré avec l’adresse IP DNS anycast de 123.10.10.10, est montré effectuant une résolution DNS par rapport à ses trois serveurs de noms DNS les plus proches déployés à l’aide de la même adresse IP anycast.

Le résolveur DNS du client peut résoudre l’un des trois serveurs DNS indiqués ci-dessus. Le routage de couche 3 enverrait les paquets de notre client DNS via le routeur R1 en raison de la topologie de routage. En cas d’échec du routeur R1 ou du serveur A, les paquets de notre client DNS seraient automatiquement redirigés vers le serveur DNS le plus proche via les routeurs R2 et R3. De plus, la route vers notre serveur A serait supprimée des tables de routage, empêchant ainsi toute utilisation ultérieure de ce serveur de noms. Le serveur A ne sera pas utilisé tant qu’il n’est pas restauré et que l’adresse IP anycast est réinjectée sur le réseau.

Faisons une analogie avec la vie quotidienne pour rendre tout cela un peu plus compréhensible.

Imaginez que les chaussures que vous vouliez sont en vente et disponibles dans toutes les succursales d’une chaîne de grands magasins. Tout comme dans anycast, vous pouvez être desservi sur de nombreux sites identiques, sans aucune raison de préférer un site spécifique. Vous entrez donc « Marks and Spencer » dans Waze, et le navigateur vous emmènera dans la succursale disponible la plus proche pour acheter ces chaussures. Si la route menant à l’embranchement le plus proche est bloquée, Waze vous emmènera à l’embranchement le plus proche.

Pourquoi Anycast?

La question que vous vous posez peut-être est de savoir pourquoi utiliser le routage anycast au lieu du routage unicast plus simple, qui acheminera votre demande vers cette même adresse IP.

Le routage monodiffusion est certainement adéquat et approprié pour un site avec un seul serveur Web pour accueillir une quantité modérée de trafic. Imaginez que vous êtes assis avec votre ordinateur dans un café sur le Canal Grande et que vous accédez à www.venicegazette.com , qui a 843 visites par heure. Ce site aura un serveur Web et votre demande sera rapidement acheminée vers cette adresse de monodiffusion.

Cependant, ce ne sera pas si simple lors du prochain accès www.dailyplanet.com pour lire le dernier article de Lois Lane. Comme ce journal compte des millions d’abonnés, il existe plusieurs serveurs Web avec chacun la même adresse IP, dispersés géographiquement, pour répondre aux demandes.

Les avantages d’anycast dans un tel scénario sont:

  • Amélioration des performances – Le trafic est acheminé avec une latence négligeable pour l’utilisateur, comme indiqué ci-dessus
  • Fiabilité du service – Avec des serveurs redondants, le service est plus hautement disponible. Par exemple, si le serveur de Paris est en maintenance, le service sera automatiquement acheminé vers un serveur disponible avec le meilleur itinéraire suivant.
  • Équilibrage de charge – Le routage vers plusieurs serveurs équilibrera efficacement la charge entre les serveurs, améliorant la vitesse du site
  • Réduit l’impact des attaques DoS – L’attaque par déni de service sera probablement localisée sur un serveur et n’aura donc pas d’impact sur l’ensemble du service

Anycast dans Incapsula

Pour fournir ces avantages, Incapsula (maintenant Imperva Cloud Application Security) fait utilisation d’anycast dans son réseau CDN. Lorsque les utilisateurs finaux établissent une connexion avec une adresse IP d’Incapsula dans une plage IP anycastée, ils atteignent le POP d’Incapsula le plus proche d’eux.

Consultez ces services Incapsula qui utilisent des adresses IP anycasted:

  • Système DNS d’Incapsula
  • Service de protection IP

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée.