6.4. Настройка PIM-DM
Назначение
Protocol Independent Multicasting-Dense Mode (PIM-DM) - это протокол многоадресной маршрутизации, предназначенный для эффективной работы в глобальных сетях (WAN) с плотно распределенными группами. Он помогает географически разнесенным узлам сети экономить полосу пропускания и снижает трафик за счет одновременной доставки одного потока информации в несколько мест.
Описание
PIM-DM предполагает, что когда источник начинает отправку, все узлы сети получают мультикаст-пакеты.
PIM-DM использует RPF для предотвращения шторма мультикаст-пакетов в случае возникновения зацикливания. Если в некоторых областях сети нет членов группы, PIM-DM отключает ветвь пересылки, устанавливая состояние “Prune”. Состояние “Prune” имеет ограниченное время жизни. По истечении этого срока данные снова будут пересылаться по ранее отключенной ветви. Когда в отключенной области появляется новый член группы, она вновь становится пересылочной.
Реализация PIM-DM на коммутаторе основана на IETF RFC 3973.
Настройка
PIM-DM - это протокол с динамическим состоянием. Основное требование - включить PIM-DM на нужных интерфейсах.
Все состояния мультикаст-групп поддерживаются динамически посредством сообщений “IGMP Report”, “IGMP Leave” и PIM.
Ниже приведена настройка PIM-DM на коммутаторах в соответствии с представленной конфигурацией сети.
В данном примере поток многоадресных данных поступает на порт “eth-0-1” коммутатора “Switch1”, сетевой узел-потребитель подключен к “eth-0-1” коммутатора “Switch2”.
В случае отсутствия конкретных указаний, настройка выполняется на обоих коммутаторах.
Шаг 1: Вход в режим “Global config”
Switch# configure terminal
Шаг 2: Настройка порта, включение PIM-DM
На коммутаторе “Switch1”:
Switch1(config)# interface eth-0-1
Switch1(config-if)# no shutdown
Switch1(config-if)# no switchport
Switch1(config-if)# ip address 11.1.1.1/24
Switch1(config-if)# ip pim dense-mode
Switch1(config-if)# exit
Switch1(config)# interface eth-0-9
Switch1(config-if)# no shutdown
Switch1(config-if)# no switchport
Switch1(config-if)# ip address 12.1.1.1/24
Switch1(config-if)# ip pim dense-mode
Switch1(config-if)# exit
На коммутаторе “Switch2”:
Switch2(config)# interface eth-0-1
Switch2(config-if)# no shutdown
Switch2(config-if)# no switchport
Switch2(config-if)# ip address 22.1.1.2/24
Switch2(config-if)# ip pim dense-mode
Switch2(config-if)# exit
Switch2(config)# interface eth-0-9
Switch2(config-if)# no shutdown
Switch2(config-if)# no switchport
Switch2(config-if)# ip address 12.1.1.2/24
Switch2(config-if)# ip pim dense-mode
Switch2(config-if)# exit
Шаг 3: Создание статических маршрутов
На коммутаторе “Switch1”:
Switch1(config)# ip route 22.1.1.0/24 12.1.1.2
На коммутаторе “Switch2”:
Switch2(config)# ip route 11.1.1.0/24 12.1.1.1
Шаг 4: Выход из режима “Global config”
Switch(config)# end
Шаг 5: Проверка
Вывод информации о интерфейсе PIM-DM на коммутаторе “Switch1”:
Switch1# show ip pim dense-mode interface
Address Interface VIFIndex Ver/ Nbr
Mode Count
11.1.1.1 eth-0-1 0 v2/D 0
12.1.1.1 eth-0-9 1 v2/D 1
Вывод информации о PIM-DM-соседях на коммутаторе "Switch1":
```console
Switch1# show ip pim dense -mode neighbor
Neighbor-Address Interface Uptime/Expires Ver
12.1.1.2 eth-0-9 00:01:00/00:01:44 v2
Вывод таблицы многоадресной IP-маршрутизации на коммутаторе “Switch1”:
Switch1# show ip pim dense-mode mroute
PIM-DM Multicast Routing Table
(11.1.1.2, 225.1.1.1)
Source directly connected on eth-0-1
State-Refresh Originator State: Originator
Upstream IF: eth-0-1
Upstream State: Forwarding
Assert State: NoInfo
Downstream IF List:
eth-0-9, in 'olist':
Downstream State: NoInfo
Assert State: NoInfo
Вывод таблицы многоадресной IP-маршрутизации на коммутаторе “Switch2”:
Switch2# show ip pim dense-mode mroute
PIM-DM Multicast Routing Table
(11.1.1.2, 225.1.1.1)
RPF Neighbor: none
Upstream IF: eth-0-9
Upstream State: AckPending
Assert State: NoInfo
Downstream IF List:
eth-0-1, in 'olist':
Downstream State: NoInfo
Assert State: NoInfo