В чем разница между одноадресным, anycast, широковещательным и многоадресным трафиком?


111

У меня никогда не было привилегии работать в среде, которая требовала сложной маршрутизации, или, если это требовалось, она была обработана выше по течению от меня. Я всегда использовал очень простые статические конфигурации маршрутизации и никогда не нуждался в какой-либо многопутевой маршрутизации - отсюда мое общее недоумение по этому вопросу. Я хотел бы лучше понять мультикастинг и anycasting.

  • В чем разница между одноадресным, anycast, широковещательным и многоадресным трафиком?
  • В каких ситуациях они обычно используются и почему (например, какие приложения используют какой метод)?
  • Как рассчитать объем широковещательного трафика для данного сегмента сети или широковещательного домена?
  • Каковы последствия безопасности для разрешения широковещательного и многоадресного трафика?

1
Это может помочь вам с многоадресной рассылкой. ixiacom.com/library/white_papers/display?skey=multicast
SpacemanSpiff

Ответы:


171

Проще говоря:

------------------------------------------------------------
| TYPE      | ASSOCIATIONS     | SCOPE           | EXAMPLE |
------------------------------------------------------------
| Unicast   | 1 to 1           | Whole network   | HTTP    | 
------------------------------------------------------------
| Broadcast | 1 to Many        | Subnet          | ARP     |
------------------------------------------------------------
| Multicast | One/Many to Many | Defined horizon | SLP     |
------------------------------------------------------------
| Anycast   | Many to Few      | Whole network   | 6to4    |
------------------------------------------------------------

Одноадресная передача используется, когда два сетевых узла должны общаться друг с другом. Это довольно просто, поэтому я не собираюсь тратить на это много времени. TCP по определению является протоколом Unicast, за исключением случаев, когда задействован Anycast (подробнее об этом ниже).

Когда вам нужно, чтобы трафик видел более двух узлов, у вас есть варианты.

Если все узлы находятся в одной подсети, широковещательная передача становится жизнеспособным решением. Все узлы в подсети увидят весь трафик. TCP-подобное состояние соединения не поддерживается. Широковещательная рассылка - это функция уровня 2 в протоколе Ethernet, а также функция уровня 3 в IPv4.

Многоадресная передача похожа на широковещательную рассылку, которая может пересекать подсети, но в отличие от широковещательной передачи не затрагивает все узлы. Узлы должны подписаться на многоадресную группу для получения информации. Протоколы многоадресной передачи обычно являются протоколами UDP, поскольку по определению состояние соединения не может поддерживаться. Узлы, передающие данные в многоадресную группу, не знают, какие узлы получают. По умолчанию интернет-маршрутизаторы не пропускают многоадресный трафик. Для внутреннего использования, однако, это вполне допустимо; Таким образом, «Определен горизонт» в приведенном выше графике. Многоадресная передача - это функция третьего уровня IPv4 и IPv6.

Чтобы использовать anycast, вы рекламируете одну и ту же сеть в нескольких точках Интернета и полагаетесь на вычисления по кратчайшему пути для направления клиентов в несколько местоположений. Что касается самих сетевых узлов, то они используют одноадресное соединение для связи с любыми вашими узлами. Чтобы узнать больше о Anycast, попробуйте: что такое «anycast» и чем он полезен? , Anycast - это также функция уровня 3, но она зависит от того, как происходит объединение маршрутов.


Примеры

Некоторые примеры того, как не-одноадресные методы используются в реальном Интернете.

Широковещательный
ARP - это широковещательный протокол, который используется стеками TCP / IP для определения способа отправки трафика на другие узлы в сети. Если пункт назначения находится в той же подсети, ARP используется для определения MAC-адреса, который идет к указанному IP-адресу. Это передача уровня 2 (Ethernet) на зарезервированный MAC-адрес FF: FF: FF: FF: FF: FF.

Кроме того, протокол просмотра машин Microsoft основан на широковещательной передаче. Временные решения, такие как WINS, были созданы, чтобы разрешить просмотр между подсетями. Это включает в себя широковещательную рассылку уровня 3 (IP), которая представляет собой IP-пакет с адресом назначения, указанным в качестве широковещательного адреса подсети (в 192.168.101.0/24 широковещательный адрес будет 192.168.101.255).

Протокол NTP позволяет широковещательный метод для объявления источников времени.

Multicast
Внутри корпоративной сети Multicast может доставлять видео в реальном времени на несколько узлов без необходимости иметь значительную полосу пропускания со стороны сервера, обеспечивающего передачу видео. Таким образом, вы можете иметь видеосервер, поддерживающий поток 720p только на соединении 100 Мб, и при этом обслуживать его до 3000 клиентов.

Когда Novell перешла от IPX к IP, им пришлось выбрать протокол рекламы услуг, чтобы заменить протокол SAP в IPX. В IPX, Служба Advertising Protocol, сделал общесетевые обявление каждый раз , когда он объявил , услуга была доступна. Поскольку в TCP / IP отсутствовал такой протокол глобального оповещения, Novell решила использовать вместо этого протокол, основанный на многоадресной передаче: протокол определения местоположения службы. Новые серверы объявляют о своих услугах в группе многоадресной рассылки SLP. Клиенты, ищущие определенные типы услуг, объявляют о своей потребности в многоадресной группе и прослушивают одноадресные ответы.

Принтеры HP по умолчанию объявляют о своем присутствии в многоадресной группе. С правильными инструментами очень легко узнать, какие принтеры доступны в вашей сети.

Протокол NTP также позволяет использовать многоадресный метод (IP 224.0.1.1) для объявления источников времени в областях за пределами только одной подсети.

Anycast
Anycast - это нечто особенное, так как поверх него находятся слои Unicast. Anycast объявляет одну и ту же сеть в разных частях сети, чтобы уменьшить количество сетевых скачков, необходимых для доступа к этой сети.

Протокол перехода 6v4 IPv6 использует Anycast. Шлюзы 6to4 объявляют о своем присутствии по определенному IP, 192.88.99.1. Клиенты, желающие использовать шлюз 6to4, отправляют трафик на 192.88.99.1 и доверяют сети для доставки запроса на подключение к маршрутизатору 6to4.

NTP-сервисы для особенно популярных NTP-хостов вполне могут быть anycast, но у меня нет доказательств этого. В протоколе нет ничего, что могло бы предотвратить это.

Другие сервисы используют Anycast для улучшения локальности данных для конечных пользователей. Google делает Anycast со своими поисковыми страницами в некоторых местах (и гео-IP в других). Корневые DNS-серверы используют Anycast по аналогичным причинам. Сам ServerFault просто может пойти туда, у них есть центры обработки данных в Нью-Йорке и Орегоне, но он еще не был там.


Проблемы сети

Избыточный широковещательный трафик может лишить все узлы в этой подсети полосы пропускания. В наши дни это не так важно для полнодуплексных портов GigE, но в полудуплексные 10 Мб дни широковещательный шторм может очень быстро остановить сеть. Те полудуплексные сети с одним большим доменом коллизий на всех узлах были особенно уязвимы для широковещательных штормов, поэтому сетевые книги, особенно старые, говорят, что следят за широковещательным трафиком. Коммутируемые / полнодуплексные сети намного сложнее остановить с помощью широковещательного шторма, но это все же может произойти. Трансляция необходима для правильного функционирования IP-сетей.

Многоадресная передача имеет такую ​​же возможность для злоупотреблений. Если один узел в многоадресной группе начнет отправлять огромные объемы трафика в эту группу, все подписанные узлы увидят весь этот трафик. Как и в случае широковещательной передачи, избыточный трафик Mcast может увеличить вероятность коллизий на таких соединениях, где это является проблемой.

Многоадресная рассылка является дополнительной функцией IPv4, но требуется для IPv6. Трансляция IPv4 заменяется многоадресной рассылкой в ​​IPv6 (см. Также: Почему IPv6 не может отправлять трансляции? ). Часто отключается в сетях IPv4. Не случайно включение многоадресной рассылки является одной из многих причин, по которой сетевые инженеры опасаются переходить на IPv6, прежде чем они это сделают.

Расчет того, сколько трафика слишком много трафика зависит от нескольких вещей

  • Полудуплексный или полнодуплексный: полудуплексные сети имеют гораздо меньшие допуски для трафика bcast / mcast.
  • Скорость сетевых портов: чем быстрее ваша сеть, тем меньше это становится проблемой. В дни Ethernet 10 Мб 5-10% трафика на порту может быть трафиком bcast, если не больше, но на GigE менее 1% (возможно, намного меньше) более вероятно.
  • Количество узлов в сети: чем больше узлов, тем больше неизбежного широковещательного трафика (ARP). Если вы используете определенные протоколы широковещательной рассылки, просмотр Windows или другие вещи, такие как пульс кластера, где начнутся проблемы, изменится.
  • Сетевые технологии: проводной Ethernet достаточно быстр, так что, пока вы используете современное оборудование, bcast / mcast вряд ли вызовет у вас проблемы. Беспроводная связь, с другой стороны, может страдать от чрезмерного широковещательного трафика, поскольку она является общей средой для всех узлов и, следовательно, в одной области коллизий.

В конце концов, трафик Bcast и Mcast лишают порты полосы пропускания. Когда вы начинаете беспокоиться, это сильно зависит от вашей индивидуальной сети и допуска к переменной производительности. В общем, количество сетевых узлов не масштабируется так быстро, как скорость сети, поэтому общее количество передаваемых данных в процентах от трафика со временем уменьшается.

Некоторые сети запрещают многоадресную рассылку по определенным причинам, а другие никогда не тратят время на ее настройку. Есть несколько многоадресных протоколов, которые могут раскрыть интересную информацию (SLP - один из таких) любому, кто слушает правильные вещи. Лично я не возражаю против незначительного многоадресного трафика, так как самое большое раздражение, которое я видел с ним, это зараженные захваты сети, когда я делаю некоторый анализ сети; и для этого есть фильтры.


4
+1. Широковещательные рассылки могут происходить и выполняются на обоих уровнях 2 и 3. Запрос ARP - это широковещательная передача уровня 2, в то время как запрос имени NetBIOS - широковещательная передача уровня 3.
Joeqwerty

1
Абсолютно фантастический ответ. Я бы +10, если бы мог. Мне особенно нравится ваше обсуждение SLP, так как у меня были проблемы, связанные с mcast.

11

Вот некоторая основная информация:

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

Широковещательная рассылка. Широковещательный трафик - это трафик, который отправляется с намерением быть «услышанным» всеми хостами в определенном сегменте сети. Примерами широковещательного трафика может быть запрос ARP, который является широковещательной передачей на физическом уровне (MAC-адрес FF-FF-FF-FF-FF-FF) или запрос имени NetBIOS, который является широковещательной передачей на сетевом уровне (что бы ни происходило быть широковещательным адресом для этой конкретной сети, например 64.28.42.63 для сети 64.28.42.0/26).

Многоадресная рассылка: Многоадресный трафик - это трафик, который отправляется с намерением быть «услышанным» определенной группой хостов в сегменте сети. Некоторый многоадресный трафик можно считать широковещательным трафиком, например трафик на адрес многоадресной рассылки 224.0.0.1, который является многоадресным трафиком, предназначенным для всех хостов в одном сегменте сети. Другим примером многоадресного трафика может быть трафик, отправленный на адрес многоадресной рассылки 224.0.0.9, который используется маршрутизаторами RIP для отправки информации о маршрутизации другим маршрутизаторам RIP в том же сегменте сети.

Я оставлю Anycast кому-то еще, поскольку я действительно не знаю так много об этом.


Я был действительно рад, что на него тоже ответили. Я тоже не знал, что такое anycast.
Котро

6

Anycast не является широко распространенным типом связи в IPv4, но присутствует в IPv6.

В IPv4 существует три типа связи: 1) одноадресная, 2) многоадресная, 3) широковещательная.

1) Одноадресный тип связи IPv4 . Сетевое устройство связывается с другим сетевым устройством. Адрес уровня 3, используемый для одноадресной передачи, - это адреса IPv4 класса A, класса B, класса C. Адрес уровня 2 - это одноадресный MAC-адрес.

Пример: просмотр веб-сайта, загрузка файла с использованием FTP, подключение к другому устройству с использованием SSH (Secure Shell) и т. Д.

2) Многоадресная рассылка IPv4 Тип связи «один ко многим». Сетевое устройство отправляет пакет данных IPv4, и он доставляется на устройства, которые заинтересованы в этом трафике. Адрес уровня 3, используемый для многоадресной рассылки IPv4, - это адреса IPv4 класса D (начинается с 224 до 239). Адрес уровня 2 для многоадресной рассылки IPv4 начинается с «01: 00: 5e».

Пример: IPTV, сообщения приветствия OSPF, сообщения приветствия EIGRP, обновления маршрута RIPv2.

3) IPv4 широковещательный тип связи «один ко всем». Сетевое устройство отправляет пакет данных IPv4, и оно будет доставлено всем устройствам в этом сегменте локальной сети. Проблема с широковещательным трафиком заключается в том, что широковещательные сообщения нарушают работу всех устройств в локальной сети и вызывают потерю пропускной способности.

Пример: сообщения DHCPv4 Discover

В IPv6 у нас есть Unicast, Multicast и Anycast. Концепция одноадресной и многоадресной передачи одинакова в IPv4 и IPv6, за исключением изменений в адресах IPv6 уровня 3, используемых для широковещательной и многоадресной рассылки, и адресов уровня 2, используемых для многоадресной рассылки. Адрес уровня 2, используемый для многоадресного трафика IPv6, начинается с «33:33:» (в Ipv4 это «01: 00: 5e»).

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

Проверьте ниже ссылку для более четкого объяснения о IPv6 Anycast.

http://www.omnisecu.com/tcpip/ipv6/unicast-multicast-anycast-types-of-network-communication-in-ipv6.php

Например, мой дом находится в Индии, и я хочу разрешить полное доменное имя " www.serverfault.com " в IP-адрес. Предположим, у меня есть три DNS-сервера, один из которых расположен в США, другой в Канаде, а другой в Индии, и все они предоставляют одну и ту же услугу. Лучший выбор - DNS-сервер из Индии, потому что он расположен недалеко от моего дома. Я получу более быстрый ответ и вызову меньше сетевого трафика, если воспользуюсь услугой рядом с моим домом. Anycast может найти сервер, который находится рядом с моим домом, и получить услугу с этого сервера.


0

Просто уточнение на anycast.

Anycast определенно не должен быть сгруппирован с другими * кастами. Однако, это не слой поверх одноадресный , потому что IS одноадресные. Термин просто используется для определения того, что один и тот же IP-адрес может существовать в нескольких местах. В этом отношении это броское неправильное использование «броска». Вроде как «WiFi» - это броский термин, основанный на термине «Hi-Fi», хотя эти два понятия не имеют ничего общего друг с другом.

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

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.