PIM и IGMP#

Описание#

Протокол PIM может быть настроен на любом интерфейсе каждого маршрутизатора. Каждый маршрутизатор должен иметь заданную точку коммуникационной встречи - Rendevouz Point, из которой будут впоследствии выстраиваться однонаправленные общие деревья для дальнейшего их распространения через групповые рассылки.

Трафик от источников в рамках групповой рассылки поступает в точку коммуникационной встречи, после чего получатели данного трафика извлекают его из общего с помощью протокола IGMP.

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

Операционная система поддерживает протокол IGMP версии 2 и версии 3, которая предоставляют возможность избирательных групповых рассылок на основе отправителя.

Настройка#

Пример настройки#

Пример базовой конфигурации групповых рассылок между тремя маршрутизаторами.

../../../../_images/fakel_multicast_schema.png

Настройка на маршрутизаторе 1:

set interfaces ethernet eth2 address '172.16.0.2/24'
set interfaces ethernet eth1 address '100.64.0.1/24'
set protocols ospf area 0 network '172.16.0.0/24'
set protocols ospf area 0 network '100.64.0.0/24'
set protocols igmp interface eth1
set protocols pim interface eth1
set protocols pim interface eth2
set protocols pim rp address 172.16.255.1 group '224.0.0.0/4'

Настройка на маршрутизаторе 2:

set interfaces ethernet eth1 address '10.0.0.1/24'
set interfaces ethernet eth2 address '172.16.1.2/24'
set protocols ospf area 0 network '10.0.0.0/24'
set protocols ospf area 0 network '172.16.1.0/24'
set protocols pim interface eth1
set protocols pim interface eth2
set protocols pim rp address 172.16.255.1 group '224.0.0.0/4'

Настройка на маршрутизаторе 3:

set interfaces dummy dum0 address '172.16.255.1/24'
set interfaces ethernet eth0 address '172.16.0.1/24'
set interfaces ethernet eth1 address '172.16.1.1/24'
set protocols ospf area 0 network '172.16.0.0/24'
set protocols ospf area 0 network '172.16.255.0/24'
set protocols ospf area 0 network '172.16.1.0/24'
set protocols pim interface dum0
set protocols pim interface eth0
set protocols pim interface eth1
set protocols pim rp address 172.16.255.1 group '224.0.0.0/4'

Список команд#

Основные настройки#

set protocols pim interface <interface-name>#

Активирует использование протокола PIM на выбранном интерфейсе, чтобы обеспечить взаимодействие с соседствующими узлами в рамках протокола PIM.

set protocols pim rp address <address> group <multicast-address/mask-bits>#

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

set protocols igmp interface eth1#

Активирует использованием протокола IGMP на выбранном интерфейсе, чтобы протокол PIM мог использовать получаемые с данного интерфейса отчеты и запросы по протоколу IGMP. По умолчанию используется протокол IGMP версии 3.

Детальные настройки#

set protocols pim interface <interface> dr-priority <value>#

Задает для интерфейса приоритет в рамках протокола PIM, который влияет на выбор узла сети в качестве основного маршрутизатора сегмента сети. Чем больше значение, тем выше приоритет при выборе основного маршрутизатора. Значение приоритета задается в диапазоне 1 - 4294967295. Значение по умолчанию по умолчанию - 1),

set protocols pim int <interface> hello <seconds>#

Задает для интерфейса временной интервал отправки сообщений Hello в рамках протокола PIM. Значение интервала задается в диапазоне 1 - 180.

set protocols pim rp keep-alive-timer <seconds>#

Задает тайм-аут для передачи потока данных о состоянии (S,G) из базы TIB. Значение тайм-аута задается в диапазоне 31 - 60000. 31 секунда выбрана в качестве минимального значения, так как некоторые аппаратные платформы не способны эффективно обрабатывать поток данных в течение более, чем 30 секунд.

set protocols igmp interface <interface> join <multicast-address> source <IP-address>#

Добавляет выбранный интерфейс в группу рассылки путем задания адреса групповой рассылки и IP адреса отправителя.

set protocols igmp interface <interface> query-interval <seconds>#

Задает для интерфейса временной интервал для обработки запросов IGMP от хостов, которые будут использоваться протоколом PIM. Значение временного интервала задается в диапазоне 1 - 1800.

set protocols igmp interface <interface> query-max-response-time <deciseconds>#

Задает для интерфейса тайм-аут для обработки входящих запросов IGMP. Если отчет не поступил на данный интерфейс в течение указанного времени, состояния (S,G) или (*,G) из базы TIB считаются истекшими. Значение тайм-аута задается в диапазоне 10 - 250.

set protocols igmp interface <interface> version <version-number>#

Определяет для выбранного интерфейса, какая версия протокола IGMP - 2 или 3 - будет использоваться. По умолчанию используется протокол IGMP версии 3.