Anycast

редактировать
Методология сетевой адресации и маршрутизации Визуализация маршрутизации Anycast.

Anycast - это сеть с адресацией и маршрутизация методология, в которой один адрес назначения имеет несколько путей маршрутизации к двум или более конечным пунктам назначения. Маршрутизаторы выберут желаемый путь на основе количества переходов, расстояния, наименьшей стоимости, измерений задержки или на основе наименее загруженного маршрута. Сети Anycast широко используются для продуктов сети доставки контента (CDN), чтобы приблизить их контент к конечному пользователю.

Содержание
  • 1 Методы адресации
  • 2 Интернет-протокол версии 4
  • 3 Интернет-протокол версии 6
  • 4 Приложения
    • 4.1 Система доменных имен
    • 4.2 Переход IPv6
    • 4.3 Доставка контента сети
    • 4.4 Связь между Anycast и Multicast сетью
  • 5 Безопасность
  • 6 Надежность
  • 7 Уменьшение атак типа «отказ в обслуживании»
  • 8 Локальные и глобальные узлы
  • 9 См. также
  • 10 Ссылки
  • 11 Внешние ссылки
Методы адресации
Схемы маршрутизации
Unicast

Unicast.svg

Broadcast

Broadcast.svg

Multicast

Multicast.svg

Anycast

Anycast-BM.svg

Geocast

Geocast.svg

  • v
  • t

Интернет-протокол и другие системы сетевой адресации распознают пять основных методов адресации:

  • Одноадресная адресация использует взаимно однозначную связь между отправителем и получателем: каждый адрес назначения однозначно идентифицирует отдельную конечную точку получателя.
  • Широковещательная передача использует однозначную ассоциацию; одна дейтаграмма от одного отправителя направляется ко всем, возможно, нескольким конечным точкам, связанным с широковещательным адресом. Сеть автоматически реплицирует дейтаграммы по мере необходимости, чтобы охватить всех получателей в рамках широковещательной рассылки, которая обычно представляет собой всю сетевую подсеть.
  • Многоадресная адресация использует адресацию один-ко-многим или многие-ко -многие из многих ассоциаций; дейтаграммы направляются одновременно за одну передачу многим получателям. Он отличается от широковещательной передачи тем, что адрес назначения обозначает подмножество, а не обязательно все доступные узлы.
  • Anycast адресация - это ассоциация "один-к-одному из многих", при которой дейтаграммы направляются любому отдельному члену. группы потенциальных получателей, которые все идентифицируются одним и тем же адресом назначения. Алгоритм маршрутизации выбирает одного получателя из группы на основе наименее затратной метрики маршрутизации. На практике это означает, что пакеты направляются топологически ближайшему члену группы anycast. Anycasting в архитектуре Интернета был впервые описан в RFC 1546
  • Geocast - это доставка информации группе пунктов назначения в сети, идентифицированной их географическим местоположением. Это специализированная форма многоадресной адресации, используемая некоторыми протоколами маршрутизации для мобильных одноранговых сетей.
Интернет-протокол версии 4

Anycast может быть реализован с помощью Border Gateway Protocol (BGP). Несколько хостов (обычно в разных географических областях) получают один и тот же одноадресный IP-адрес, и через BGP объявляются разные маршруты к этому адресу. Маршрутизаторы считают, что это альтернативные маршруты к одному и тому же пункту назначения, хотя на самом деле это маршруты к разным пунктам назначения с одним и тем же адресом. Как обычно, маршрутизаторы выбирают маршрут в зависимости от используемой метрики расстояния (наименьшая стоимость, наименьшая загруженность, наименьшая длина). Выбор маршрута в этой настройке равносилен выбору пункта назначения.

Ошибка этого подхода заключается в том, что соединение с произвольным адресом может завершиться неудачно, потому что сеть может изменить маршрутизацию пакетов в середине соединения из-за перегрузки или изменений в сети, в результате чего изменится пункт назначения. промежуточное соединение, хотя новый пункт назначения не знает о соединении и не поддерживает состояние соединения. Эти условия обычно упоминаются как «переключатель PoP ». С обычным одноадресным адресом изменение маршрутизации не будет проблемой, поскольку это просто приведет к другому маршруту к тому же конечному пункту назначения. Все пакеты в рамках соединения обычно не должны следовать по одному и тому же пути. Но когда адрес на самом деле является произвольным адресом, маскирующимся под одноадресный адрес (как в этой схеме), изменение маршрутизации может быть изменением пункта назначения.

Из-за возможности «переключателя PoP» в IPv4, anycast обычно используется с протоколами без установления соединения на основе UDP, как способ предоставления высокая доступность и балансировка нагрузки для служб без сохранения состояния. Например, одним из хорошо известных приложений Anycast IPv4 является система доменных имен (DNS). Это хорошо подходит для Anycast, потому что это служба на основе UDP, обеспечивающая доступ без установления соединения к данным доменного имени, которые реплицируются на нескольких географически разнесенных серверах без сохранения состояния, с жесткими требованиями к доступности и масштабируемости.

Потому что anycast более подвержен ошибкам с протоколами, ориентированными на соединение, такими как TCP, где пункт назначения поддерживает состояние, он реже используется с этими протоколами. Некоторые настраиваемые стеки IP используют собственные методы для обеспечения восстановления протоколов с отслеживанием состояния при необходимости, смягчая проблемы из-за переключателей Anycast PoP. Эти методы обычно включают ту или иную форму виртуализации сетевых функций в форме перезаписи пакетов, как было продемонстрировано AWS HyperPlane и Google Maglev, и / или инкапсуляции пакетов, как изложено такими протоколами, как Generic Routing Encapsulation, IPOP.

Интернет-протокол версии 6

Anycast явно поддерживается в IPv6. RFC 4291, который охватывает архитектуру адресации IPv6, Зарезервирует идентификатор интерфейса 0 в подсети IPv6 как произвольный адрес «Маршрутизатор подсети». Кроме того, RFC 2526 резервирует блок из 128 идентификаторов интерфейсов внутри подсети как произвольные адреса.

Большинство маршрутизаторов IPv6 на пути передачи произвольного пакета через сеть не будут отличать его от одноадресного пакета, но требуется особая обработка от маршрутизаторов, находящихся рядом с местом назначения (то есть в пределах области действия произвольного адреса.), поскольку они требуются для маршрутизации пакета anycast к «ближайшему» интерфейсу в пределах этой области, который имеет правильный адрес anycast, в зависимости от того, какая мера расстояния (переходы, стоимость и т. д.) используется.

Метод, используемый в IPv4 для объявления нескольких маршрутов в BGP для многократно назначенных одноадресных адресов, также по-прежнему работает в IPv6 и может использоваться для маршрутизации пакетов к ближайшему из нескольких географически разнесенных хостов с тем же адресом. Этот подход, не зависящий от маршрутизаторов с поддержкой anycast, имеет те же сценарии использования, а также те же проблемы и ограничения, что и в IPv4.

Приложения

С развитием Интернета сетевые службы все чаще требуют высокой доступности. В результате работа сервисов anycast (RFC 4786 ) стала популярной среди сетевых операторов.

Система доменных имен

Все корневые серверы имен Интернета реализованы как кластеры хостов с произвольной адресацией. Все тринадцать корневых серверов A – M существуют в разных местах, из них одиннадцать - на разных континентах. (Корневые серверы B и H существуют в двух местах в США.) Серверы используют объявления с произвольным адресом для предоставления децентрализованной услуги. Это ускорило развертывание физических (а не логических) корневых серверов за пределами США. RFC 3258 документов, использующих произвольную адресацию для обеспечения авторитетного DNS услуги. Многие коммерческие поставщики DNS перешли на среду IP-адресации для повышения производительности и избыточности запросов, а также для реализации балансировки нагрузки.

переход с IPv6

В переходе с IPv4 на IPv6, Для обеспечения совместимости IPv6 с хостами IPv4 может быть развернута адресация anycast. Этот метод, 6to4, использует шлюз по умолчанию с IP-адресом 192.88.99.1, как описано в RFC 3068. Это позволяет нескольким поставщикам реализовывать шлюзы 6to4 без необходимости знать узлам адреса шлюзов каждого отдельного поставщика.

Сети доставки контента

Сети доставки контента могут использовать anycast для фактических соединений HTTP со своими центрами распространения или для DNS. Поскольку большинство HTTP-подключений к таким сетям запрашивают статический контент, такой как изображения и таблицы стилей, они обычно недолговечны и не сохраняют состояния в последующих сеансах TCP. Общая стабильность маршрутов и отсутствие состояния соединений делают anycast подходящим для этого приложения, даже если он использует TCP.

Связь между Anycast и многоадресной сетью

Точка рандеву Anycast может использоваться в Multicast Протокол обнаружения источника (MSDP) и его выгодное применение, поскольку Anycast RP - это внутридоменная функция, которая обеспечивает возможности резервирования и распределения нагрузки. Если используется несколько точек рандеву Anycast, IP-маршрутизация автоматически выберет топологически ближайшую точку встречи для каждого источника и приемника. Это обеспечит многоадресную сеть с требованиями отказоустойчивости.

Безопасность

Anycast позволяет любому оператору, информация о маршрутизации которого принимается промежуточным маршрутизатором, перехватывать любые пакеты, предназначенные для произвольного адреса. Хотя это на первый взгляд кажется небезопасным, он ничем не отличается от маршрутизации обычных IP-пакетов и не является более или менее безопасным. Как и в случае с обычной IP-маршрутизацией, тщательная фильтрация того, кому разрешено и не разрешено распространять анонсы маршрута, имеет решающее значение для предотвращения атак типа «человек посередине» или атак «черной дыры». Первое также можно предотвратить с помощью шифрования и аутентификации сообщений, например, используя Transport Layer Security, в то время как второе может быть нарушено луковой маршрутизацией.

Надежность

Anycast обычно высоконадежный, так как может обеспечивать автоматическое аварийное переключение. Приложения Anycast обычно имеют внешний «контрольный» мониторинг функции сервера и отменяют объявление маршрута в случае сбоя сервера. В некоторых случаях это делается фактическими серверами, которые объявляют маршрутизатору префикс anycast через OSPF или другой IGP. Если серверы умирают, маршрутизатор автоматически снимает объявление.

Функциональность «Heartbeat» важна, потому что, если объявление продолжается для отказавшего сервера, сервер будет действовать как «черная дыра» для ближайших клиентов; этот режим отказа является наиболее серьезным режимом отказа для любой системы. Даже в этом случае такой сбой приведет только к полному отказу клиентов, которые находятся ближе к этому серверу, чем к любому другому, и не вызовет глобального отказа.

Смягчение атак типа «отказ в обслуживании»

В атаках типа «отказ в обслуживании» несанкционированный сетевой хост может рекламировать себя как сервер Anycast для жизненно важной сетевой услуги., чтобы предоставить ложную информацию или просто заблокировать сервис.

Методологии Anycast в Интернете могут использоваться для распространения DDoS атак и снижения их эффективности: поскольку трафик направляется на ближайший узел, процесс, над которым злоумышленник не может контролировать, DDoS поток трафика будет распределен между ближайшими узлами. Таким образом, не все узлы могут быть затронуты. Это может быть причиной для развертывания произвольной адресации.

Однако эффективность этого метода для предотвращения атак сомнительна, поскольку одноадресные адреса (используемые для обслуживания) могут быть легко получены, по крайней мере, на IPv6. Теперь устаревший RFC 2373 определяет, что «произвольный адрес не должен использоваться в качестве адреса источника пакета IPv6». Следовательно, проверка связи с произвольным адресом вернет одноадресный адрес ближайшего узла, поскольку ответ должен поступать с одноадресного адреса. Затем злоумышленник может атаковать отдельные узлы из любого места, минуя любые методы адресации. Этот же метод работает с некоторыми, но не всеми, произвольными адресами IPv4. RFC 2373 также ограничивает произвольные адреса IPv6 только маршрутизаторами. Однако оба эти ограничения были сняты в RFC 4291.

Аутентификация произвольных передач может решить эту проблему.

Локальные и глобальные узлы

Некоторые развертывания Anycast в Интернете различают локальные и глобальные узлы в интересах местного сообщества, обращаясь преимущественно к локальным узлам. Примером является система доменных имен. Локальные узлы часто объявляются сообществом no-export BGP, чтобы хосты не объявляли о них своим партнерам, то есть объявление сохраняется в локальной области. Если развернуты как локальные, так и глобальные узлы, объявления от глобальных узлов часто добавляются в начале AS (т.е. AS добавляется еще несколько раз), чтобы сделать путь длиннее, так что объявление локального узла предпочтительнее, чем объявление. объявление глобального узла.

См. также
  • значок Интернет-портал
Ссылки
Внешние ссылки
Последняя правка сделана 2021-06-11 19:56:49
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте