Независимая от протокола многоадресная передача (PIM ) - это семейство протоколов многоадресной маршрутизации для сетей Internet Protocol (IP), которые обеспечивают один-ко-многим и многие- ко многим распределение данных по LAN, WAN или Интернет. Это называется независимым от протокола, поскольку PIM не включает собственный механизм обнаружения топологии, а вместо этого использует информацию о маршрутизации, предоставляемую другими протоколами маршрутизации . PIM не зависит от конкретного протокола одноадресной маршрутизации; он может использовать любой протокол одноадресной маршрутизации, используемый в сети. PIM не создает свои собственные таблицы маршрутизации. PIM использует таблицу одноадресной маршрутизации для пересылки по обратному пути.
Существует четыре варианта PIM:
PIM-SM обычно используется в системах IPTV для маршрутизации многоадресных потоков между VLAN, подсетями или локальными сетями.
Существует две версии PIM. Версии несовместимы напрямую, хотя могут сосуществовать в одной сети. Сетевое оборудование может реализовывать обе версии. PIMv2 имеет следующие улучшения по сравнению с PIMv1: Для каждой группы используется один RP. Обнаружение RP выполняется маршрутизатором начальной загрузки (BSR). Группы могут быть разреженными или плотными; Интерфейсы могут быть как. Общие улучшения гибкости и эффективности протокола.
Protocol Independent Multicast - Sparse-Mode (PIM-SM ) - это протокол для эффективная маршрутизация Интернет-протокола (IP) пакетов в многоадресные группы, которые могут охватывать глобальные и междоменные интернет. Протокол назван протокол-независимым, потому что он не зависит от какого-либо конкретного протокола одноадресной маршрутизации для обнаружения топологии, и разреженным режимом, потому что он подходит для групп, в которых очень низкий процент узлов (и их маршрутизаторов ) подпишется на сеанс многоадресной рассылки. В отличие от более ранних протоколов многоадресной маршрутизации с плотным режимом, таких как DVMRP и плотная многоадресная маршрутизация, которые лавировали пакеты по сети, а затем отсекали ветви, где не было получателей, PIM-SM явно создает дерево от каждого отправителя к получателям в группе многоадресной рассылки.
Маршрутизатор получает явные сообщения присоединения / сокращения от тех соседних маршрутизаторов, у которых есть члены группы нисходящего потока.
После того, как другие маршрутизаторы, которые должны получать эти групповые пакеты, подписались, RP откажется от подписки на эту группу многоадресной рассылки, если ему также не потребуется пересылать пакеты на другой маршрутизатор или узел. Кроме того, маршрутизаторы будут использовать пересылку по обратному пути, чтобы гарантировать отсутствие петель для пересылки пакетов между маршрутизаторами, которые хотят принимать многоадресные пакеты.
Плотный режим многоадресной передачи - это один из режимов, который многоадресная передача может использовать для построения дерева для отправки пакетов в подписчики многоадресной рассылки. Это альтернатива разреженному режиму.
Основное предположение, лежащее в основе плотного режима, состоит в том, что поток многоадресных пакетов имеет получатели в большинстве мест. Разреженный режим предполагает относительно меньшее количество приемников. Плотный режим идеален для групп, в которых многие узлы подписываются на получение многоадресных пакетов, поэтому большинство маршрутизаторов должны принимать и пересылать эти пакеты (группы с высокой плотностью).
Эта разница проявляется в начальном поведении и механизмах двух протоколов. В плотном режиме используется довольно простой подход к обработке многоадресной IP-маршрутизации. Источник изначально передает каждому маршрутизатору, напрямую подключенному к нему. Эти соседние маршрутизаторы далее пересылают данные своим соседям. Когда маршрутизатор не желает получать данные этой группы (если нет других соседних маршрутизаторов PIM и ни один хост не заинтересован в группе), он отправляет сообщение Prune, чтобы указать на отсутствие интереса. После получения сообщения Prune маршрутизатор изменит свое состояние так, чтобы он не пересылал эти пакеты через этот интерфейс. Если каждый интерфейс на маршрутизаторе удаляется, маршрутизатор также будет отсечен.
В старых версиях Cisco IOS PIM-DM повторно лавинно перенаправлял весь многоадресный трафик каждые 3 минуты. Это нормально для многоадресной рассылки небольшого объема, но не для многоадресных потоков пакетов с более высокой пропускной способностью. Более поздние версии Cisco IOS поддерживают новую функцию, называемую обновлением состояния PIM Dense Mode, начиная с 12.1 (5) T. Эта функция использует сообщения обновления состояния PIM для обновления состояния Prune на исходящих интерфейсах. Еще одно преимущество состоит в том, что изменения топологии распознаются быстрее. По умолчанию сообщения обновления состояния PIM отправляются каждые 60 секунд.
Кроме того, маршрутизаторы будут использовать пересылку обратного пути, чтобы гарантировать отсутствие петель для пересылки пакетов между маршрутизаторами, которые хотят получать многоадресные пакеты. Когда пакет данных получен на интерфейсе, отличном от RPF, требуется механизм для предотвращения петель. Если интерфейс не-RPF является LAN, отправляется сообщение Assert. Маршрутизаторы без пересылки затем отправляют Prune на свой интерфейс RPF, если им не нужен многоадресный поток. Только один такой Prune отправляется во время перехода к отсутствию интерфейсов в списке исходящих интерфейсов (OILIST). Приемник LAN Prune задерживает действие на него на 3 секунды, так что если другому маршрутизатору LAN все еще нужен многоадресный поток, он может отправить сообщение PIM Join, чтобы противодействовать (отменить) Prune. («Этому маршрутизатору это не нужно, но мне все равно!»)
Предположим, что маршрутизатор завершил работу, а через некоторое время получатель запрашивает многоадресный поток с сообщением IGMP. Затем маршрутизатор отправляет сообщение Graft. Фактически, «эй, мне нужен этот многоадресный поток прямо здесь».