EMZETT.
Увійти

Anycast

Коротко: Тип передавання, за якого одну й ту саму адресу призначення пропонують кілька серверів у різних місцях, а запит автоматично спрямовується до найближчого в мережевому сенсі.

Докладніше: Часто застосовується для глобально розподілених кореневих серверів DNS чи інфраструктури CDN: користувачі в Європі та США звертаються до однієї IP-адреси, але залежно від маршрутизації автоматично потрапляють до найближчого дата-центру, що знижує затримку й розподіляє навантаження.

Подробиці

  • Як це працює: Та сама IP-адреса одночасно оголошується за BGP кількома фізично окремими серверами в різних місцях. Кожен маршрутизатор сам вирішує, яким шляхом пересилати пакет, найчастіше за «довжиною AS-шляху» BGP, а не за географічною відстанню. З погляду клієнта це як і раніше звичайне з’єднання з одним IP.
  • Приклади: Резолвери DNS Cloudflare 1.1.1.1 і Google 8.8.8.8 оголошуються з десятків–сотень місць по всьому світу. 13 «адрес» кореневих серверів DNS (A–M) теж насправді адреси anycast, за кожною з яких сотні фізичних серверів.
  • Перевага перед балансуванням на основі DNS: У разі відмови майданчик просто перестає оголошувати маршрут за BGP, і трафік за секунди перенаправляється на наступний; клієнтам не треба оновлювати кеш DNS (TTL).
  • Обмеження: Підходить для служб без стану або добре реплікованих (резолвери DNS, периферійні сервери CDN, захист від DDoS). Якщо в служби довгоживучий стан сесії (наприклад, триває завантаження файлу), зміна цілі через оновлення BGP обірве з’єднання. У захисті від DDoS атакувальний трафік розподіляється по десятках світових майданчиків.

Див. також: Unicast, Multicast, балансування навантаження, DNS