16.6. Настройка ERPS
Назначение
ERPS (Ethernet Ring Protection Switching) – это протокол резервирования линии передачи данных с использованием кольцевой топологии сети.
Назначение механизма резервирования – при сбое на основной линии передачи данных за минимально возможное время переключить передаваемый поток данных на резервную линию.
Описание
Протокол ERPS повышает доступность и надежность Ethernet-сетей топологии “кольцо”. В случае отказа основной линии, ERPS обеспечивает переключение на резервную линию менее чем за одну секунду, а зачастую и менее чем за 50 миллисекунд.
ERPS работает путем объявления домена ERPS на кольце. В этом кольцевом домене один коммутатор, или узел, назначается главным узлом, а все остальные узлы - транзитными узлами. Один порт главного узла обозначен как основной порт, другой как вторичный. В штатном режиме работы главный узел блокирует вторичный порт для всего трафика, не относящегося к домену ERPS, что позволяет избежать образования петли в кольце. Сообщения “Keepalive” отправляются ведущим узлом через заданный интервал времени. Транзитные узлы в кольцевом домене будут пересылать сообщения ERPS.
В случае отказа основной линии, ведущий узел обнаруживает это либо по получению сообщения о разрыве канала, отправленного соседним с отказавшим каналом узлом, либо по истечению времени сообщения “Keepalive”. После обнаружения отказа канала связи ведущий узел открывает вторичный порт для передачи данных, чтобы перенаправить трафик.
Для получения более подробной информации см. документацию ITU-T RFC 3619.
Настройка
ERPS - это протокол с динамическим состоянием. Основное требование - включить ERPS на нужных коммутаторах и правильно настроить ERPS для конкретной топологии сети.
В данной главе приведены примеры конфигурации ERPS для типичных сетевых топологий.
Настройка ERPS для однокольцевой топологии
Перед началом настройки должны быть выполнены следующие требования:
Порты, подключенные к кольцу ERPS, должны быть настроены как магистральные, что позволит пропускать трафик VLAN.
Если в коммутаторе включено стекирование, порт кольца ERPS не должен находиться на ведомом коммутаторе.
Порты, входящие в кольцо ERPS, должны быть настроены как члены управляющей VLAN, что позволит отправлять и получать ERPS-пакеты.
STP на портах, подключенных к кольцу ERPS, должен быть отключен.
Только один узел может быть настроен в качестве главного узла.
Управляющая VLAN не должна быть настроена как L3-интерфейс.
На портах ERPS не должна быть включена функция VLAN mapping.
Native VLAN порта, подключенного к кольцу ERPS, не должна быть установлена как первичная управляющая VLAN или вторичная управляющая VLAN.
Ниже показана настройка коммутаторов в соответствии с представленной сетевой конфигурацией.

На всех коммутаторах настроены одинаковые домен и кольцо ERPS. Коммутатор “Switch1” настроен как главный узел ERPS, остальные настроены как транзитные узлы ERPS. Интерфейс “Agg11”, состоящий из портов “eth-0-9” и “eth-0-10”, настроен как первичный интерфейс на коммутаторе “Switch1”, а “eth-0-13” - как вторичный интерфейс.
В случае отсутствия конкретных указаний, настройка выполняется на всех коммутаторах.
Шаг 1: Вход в режим “Global config”
Switch# configure terminal
Шаг 2: Создание VLAN
Switch(config)# vlan database
Switch(config-vlan)# vlan 15
Switch(config-vlan)# exit
Шаг 3: Настройка портов
Как видно из схемы сетевой конфигурации, порты “eth-0-9” и “eth-0-10” коммутаторов “Switch1” и “Switch2” входят в “Agg 11” и подключаются друг к другу напрямую. Порты “eth-0-13” коммутаторов “Switch1” и “Switch3” подключаются друг к другу напрямую. Порты “eth-0-17” коммутаторов “Switch2” и “Switch3” подключаются друг к другу напрямую.
Настройка интерфейса “Agg 11” для коммутаторов “Switch1” и “Switch2”:
Switch(config)# interface eth-0-9
Switch(config-if)# no shutdown
Switch(config-if)# switchport mode trunk
Switch(config-if)# switchport trunk allowed vlan add 15
Switch(config-if)# static-channel-group 11
Switch(config-if)# exit
Switch(config)# interface eth-0-10
Switch(config-if)# no shutdown
Switch(config-if)# switchport mode trunk
Switch(config-if)# switchport trunk allowed vlan add 15
Switch(config-if)# static-channel-group 11
Switch(config-if)# exit
Switch(config)# interface agg11
Switch(config-if)# spanning-tree port disable
Настройка портов “eth-0-13” коммутаторов “Switch1” и “Switch3” :
Switch(config)# interface eth-0-13
Switch(config-if)# no shutdown
Switch(config-if)# switchport mode trunk
Switch(config-if)# switchport trunk allowed vlan add 15
Switch(config-if)# spanning-tree port disable
Switch(config-if)# exit
Настройка портов “eth-0-17” коммутаторов “Switch2” и “Switch3”:
Switch(config)# interface eth-0-17
Switch(config-if)# no shutdown
Switch(config-if)# switchport mode trunk
Switch(config-if)# switchport trunk allowed vlan add 15
Switch(config-if)# spanning-tree port disable
Switch(config-vlan)# exit
Шаг 4: Создание и включение ERPS-домена
На коммутаторе “Switch1”:
Switch(config)# erps 11
Switch(config)# erps 11 primary control vlan 15
Switch(config)# erps 11 mstp instance 0
Switch(config)# erps 11 ring 1 level primary
Switch(config)# erps 11 ring 1 mode master
Switch(config)# erps 11 ring 1 primary interface agg11
Switch(config)# erps 11 ring 1 secondary interface eth-0-13
Switch(config)# erps 11 ring 1 enable
Switch(config)# erps 11 enable
На коммутаторе “Switch2”:
Switch(config)# erps 11
Switch(config)# erps 11 primary control vlan 15
Switch(config)# erps 11 mstp instance 0
Switch(config)# erps 11 ring 1 level primary
Switch(config)# erps 11 ring 1 mode transit
Switch(config)# erps 11 ring 1 primary interface agg11
Switch(config)# erps 11 ring 1 secondary interface eth-0-17
Switch(config)# erps 11 ring 1 enable
Switch(config)# erps 11 enable
На коммутаторе “Switch3”:
Switch(config)# erps 11
Switch(config)# erps 11 primary control vlan 15
Switch(config)# erps 11 mstp instance 0
Switch(config)# erps 11 ring 1 level primary
Switch(config)# erps 11 ring 1 mode transit
Switch(config)# erps 11 ring 1 primary interface eth-0-17
Switch(config)# erps 11 ring 1 secondary interface eth-0-13
Switch(config)# erps 11 ring 1 enable
Switch(config)# erps 11 enable
Шаг 5: Выход из режима “Global config”
Switch(config)# end
Шаг 6: Проверка
Вывод результатов на коммутаторе “Switch1”:
Switch# show erps 11
ERPS domain ID: 11
ERPS domain name: ERPS0011
ERPS domain mode: normal
ERPS domain primary control VLAN ID: 15
ERPS domain sub control VLAN ID: 0
ERPS domain hello timer interval: 1 second(s)
ERPS domain fail timer interval: 3 second(s)
ERPS domain protected mstp instance: 0
ERPS ring ID: 1
ERPS ring level: primary
ERPS ring 1 node mode: master
ERPS ring 1 node state: complete
ERPS ring 1 primary interface name: agg11 state:unblock
ERPS ring 1 secondary interface name: eth-0-13 state:block
ERPS ring 1 stats:
Sent:
total packets:51
hello packets:47 ring-up-flush-fdb packets:2
ring-down-flush-fdb packets:2 link-down packets:0
edge-hello packets:0 major-fault packets:0
Received:
total packets:21
hello packets:21 ring-up-flush-fdb packets:0
ring-down-flush-fdb packets:0 link-down packets:0
edge-hello packets:0 major-fault packets:0
Вывод результатов на коммутаторе “Switch2”:
Switch# show erps 11
ERPS domain ID: 11
ERPS domain name: ERPS0011
ERPS domain mode: normal
ERPS domain primary control VLAN ID: 15
ERPS domain sub control VLAN ID: 0
ERPS domain hello timer interval: 1 second(s)
ERPS domain fail timer interval: 3 second(s)
ERPS domain protected mstp instance: 0
ERPS ring ID: 1
ERPS ring level: primary
ERPS ring 1 node mode: transit
ERPS ring 1 node state: link up
ERPS ring 1 primary interface name: agg11 state:unblock
ERPS ring 1 secondary interface name: eth-0-17 state:unblock
ERPS ring 1 stats:
Sent:
total packets:0
hello packets:0 ring-up-flush-fdb packets:0
ring-down-flush-fdb packets:0 link-down packets:0
edge-hello packets:0 major-fault packets:0
Received:
total packets:114
hello packets:113 ring-up-flush-fdb packets:1
ring-down-flush-fdb packets:0 link-down packets:0
edge-hello packets:0 major-fault packets:0
Вывод результатов на коммутаторе “Switch3”:
Switch# show erps 11
ERPS domain ID: 11
ERPS domain name: ERPS0011
ERPS domain mode: normal
ERPS domain primary control VLAN ID: 15
ERPS domain sub control VLAN ID: 0
ERPS domain hello timer interval: 1 second(s)
ERPS domain fail timer interval: 3 second(s)
ERPS domain protected mstp instance: 0
ERPS ring ID: 1
ERPS ring level: primary
ERPS ring 1 node mode: transit
ERPS ring 1 node state: link up
ERPS ring 1 primary interface name: eth-0-17 state:unblock
ERPS ring 1 secondary interface name: eth-0-13 state:unblock
ERPS ring 1 stats:
Sent:
total packets:0
hello packets:0 ring-up-flush-fdb packets:0
ring-down-flush-fdb packets:0 link-down packets:0
edge-hello packets:0 major-fault packets:0
Received:
total packets:130
hello packets:129 ring-up-flush-fdb packets:1
ring-down-flush-fdb packets:0 link-down packets:0
edge-hello packets:0 major-fault packets:0
Настройка топологии пересекающихся колец
Ниже показана настройка коммутаторов в соответствии с представленной сетевой конфигурацией.

На всех коммутаторах будет настроен одинаковый ERPS-домен. Коммутаторы “Switch1” - “Switch3” входят в первичное кольцо “ERPS 1”, коммутаторы “Switch2” - “Switch4” – в подкольцо “ERPS 2”. Коммутатор “Switch1” будет настроен как главный узел кольца “ERPS 1”, коммутаторы “Switch2” и “Switch3” будут настроены как транзитные узлы кольца “ERPS 1”. Коммутатор “Switch4” будет настроен как главный узел кольца “ERPS 2”. Кроме того, коммутатор “Switch2” будет настроен как пограничный узел, а коммутатор “Switch3” - как ассистирующий пограничный узел.
Порты, подключенные к кольцу ERPS, должны быть настроены как магистральные, что позволяет пропускать VLAN-трафик.
В случае отсутствия конкретных указаний, настройка выполняется на всех коммутаторах.
Шаг 1: Вход в режим “Global config”
Switch# configure terminal
Шаг 2: Создание VLAN
Switch(config)# vlan database
Switch(config-vlan)# vlan 11,12
Switch(config-vlan)# exit
Шаг 3: Настройка портов коммутаторов
Switch(config)# interface eth-0-9
Switch(config-if)# no shutdown
Switch(config-if)# switchport mode trunk
Switch(config-if)# switchport trunk allowed vlan add 11,12
Switch(config-if)# spanning-tree port disable
Switch(config-if)# exit
Switch(config)# interface eth-0-13
Switch(config-if)# no shutdown
Switch(config-if)# switchport mode trunk
Switch(config-if)# switchport trunk allowed vlan add 11,12
Switch(config-if)# spanning-tree port disable
Switch(config-if)# exit
Настройка портов “eth-0-20” коммутаторов “Switch2” и “Switch3”:
Switch(config)# interface eth-0-20
Switch(config-if)# no shutdown
Switch(config-if)# switchport mode trunk
Switch(config-if)# switchport trunk allowed vlan add 11,12
Switch(config-if)# spanning-tree port disable
Switch(config-if)# exit
Шаг 4: Создание и включение ERPS-домена
На коммутаторе “Switch1”:
Switch(config)# erps 1
Switch(config)# erps 1 primary control vlan 11
Switch(config)# erps 1 sub control vlan 12
Switch(config)# erps 1 mstp instance 0
Switch(config)# erps 1 ring 1 level primary
Switch(config)# erps 1 ring 1 mode master
Switch(config)# erps 1 ring 1 primary interface eth-0-9
Switch(config)# erps 1 ring 1 secondary interface eth-0-13
Switch(config)# erps 1 ring 1 enable
Switch(config)# erps 1 enable
На коммутаторе “Switch2”:
Switch(config)# erps 1
Switch(config)# erps 1 primary control vlan 11
Switch(config)# erps 1 sub control vlan 12
Switch(config)# erps 1 mstp instance 0
Switch(config)# erps 1 ring 1 level primary
Switch(config)# erps 1 ring 1 mode transit
Switch(config)# erps 1 ring 1 primary interface eth-0-9
Switch(config)# erps 1 ring 1 secondary interface eth-0-20
Switch(config)# erps 1 ring 1 enable
Switch(config)# erps 1 ring 2 level sub
Switch(config)# erps 1 ring 2 edge-mode edge
Switch(config)# erps 1 ring 2 edge interface eth-0-13
Switch(config)# erps 1 ring 2 common interface eth-0-20
Switch(config)# erps 1 ring 2 srpt disable
Switch(config)# erps 1 ring 2 enable
Switch(config)# erps 1 enable
На коммутаторе “Switch3”:
Switch(config)# erps 1
Switch(config)# erps 1 primary control vlan 11
Switch(config)# erps 1 sub control vlan 12
Switch(config)# erps 1 mstp instance 0
Switch(config)# erps 1 ring 1 level primary
Switch(config)# erps 1 ring 1 mode transit
Switch(config)# erps 1 ring 1 primary interface eth-0-13
Switch(config)# erps 1 ring 1 secondary interface eth-0-20
Switch(config)# erps 1 ring 1 enable
Switch(config)# erps 1 ring 2 level sub
Switch(config)# erps 1 ring 2 edge-mode assistant-edge
Switch(config)# erps 1 ring 2 edge interface eth-0-9
Switch(config)# erps 1 ring 2 common interface eth-0-20
Switch(config)# erps 1 ring 2 enable
Switch(config)# erps 1 enable
На коммутаторе “Switch4”:
Switch(config)# erps 1
Switch(config)# erps 1 sub control vlan 12
Switch(config)# erps 1 mstp instance 0
Switch(config)# erps 1 ring 2 level sub
Switch(config)# erps 1 ring 2 mode master
Switch(config)# erps 1 ring 2 primary interface eth-0-9
Switch(config)# erps 1 ring 2 secondary interface eth-0-13
Switch(config)# erps 1 ring 2 enable
Switch(config)# erps 1 enable
Шаг 5: Выход из режима “Global config”
Switch(config)# end
Шаг 6: Проверка
Вывод результата на коммутаторе “Switch1”:
Switch# show erps 1
ERPS domain ID: 1
ERPS domain name: ERPS001
ERPS domain mode: normal
ERPS domain primary control VLAN ID: 11
ERPS domain sub control VLAN ID: 12
ERPS domain hello timer interval: 1 second(s)
ERPS domain fail timer interval: 3 second(s)
ERPS domain protected mstp instance: 0
ERPS ring ID: 1
ERPS ring level: primary
ERPS ring 1 node mode: master
ERPS ring 1 node state: complete
ERPS ring 1 primary interface name: eth-0-9 state:unblock
ERPS ring 1 secondary interface name: eth-0-13 state:block
ERPS ring 1 stats:
Sent:
total packets:1310
hello packets:1303 ring-up-flush-fdb packets:3
ring-down-flush-fdb packets:4 link-down packets:0
edge-hello packets:0 major-fault packets:0
Received:
total packets:921
hello packets:921 ring-up-flush-fdb packets:0
ring-down-flush-fdb packets:0 link-down packets:0
edge-hello packets:0 major-fault packets:0
Вывод результата на коммутаторе “Switch2”:
Switch# show erps 1
ERPS domain ID: 1
ERPS domain name: ERPS001
ERPS domain mode: normal
ERPS domain primary control VLAN ID: 11
ERPS domain sub control VLAN ID: 12
ERPS domain hello timer interval: 1 second(s)
ERPS domain fail timer interval: 3 second(s)
ERPS domain protected mstp instance: 0
ERPS ring ID: 1
ERPS ring level: primary
ERPS ring 1 node mode: transit
ERPS ring 1 node state: link up
ERPS ring 1 primary interface name: eth-0-9 state:unblock
ERPS ring 1 secondary interface name: eth-0-20 state:unblock
ERPS ring 1 stats:
Sent:
total packets:0
hello packets:0 ring-up-flush-fdb packets:0
ring-down-flush-fdb packets:0 link-down packets:0
edge-hello packets:0 major-fault packets:0
Received:
total packets:988
hello packets:985 ring-up-flush-fdb packets:2
ring-down-flush-fdb packets:1 link-down packets:0
edge-hello packets:0 major-fault packets:0
ERPS ring ID: 2
ERPS ring level: sub
ERPS ring 2 node mode: transit
ERPS ring 2 edge node mode: edge
ERPS ring 2 node state: link up
ERPS ring 2 edge interface name: eth-0-13 state: unblock
ERPS ring 2 common interface name: eth-0-20 state: unblock
EPRS ring 2 SRPT is disabled
ERPS ring 2 stats:
Sent:
total packets:0
hello packets:0 ring-up-flush-fdb packets:0
ring-down-flush-fdb packets:0 link-down packets:0
edge-hello packets:0 major-fault packets:0
Received:
total packets:858
hello packets:856 ring-up-flush-fdb packets:1
ring-down-flush-fdb packets:1 link-down packets:0
edge-hello packets:0 major-fault packets:0
Вывод результата на коммутаторе “Switch3”:
Switch# show erps 1
ERPS domain ID: 1
ERPS domain name: ERPS001
ERPS domain mode: normal
ERPS domain primary control VLAN ID: 11
ERPS domain sub control VLAN ID: 12
ERPS domain hello timer interval: 1 second(s)
ERPS domain fail timer interval: 3 second(s)
ERPS domain protected mstp instance: 0
ERPS ring ID: 1
ERPS ring level: primary
ERPS ring 1 node mode: transit
ERPS ring 1 node state: link up
ERPS ring 1 primary interface name: eth-0-13 state:unblock
ERPS ring 1 secondary interface name: eth-0-20 state:unblock
ERPS ring 1 stats:
Sent:
total packets:0
hello packets:0 ring-up-flush-fdb packets:0
ring-down-flush-fdb packets:0 link-down packets:0
edge-hello packets:0 major-fault packets:0
Received:
total packets:645
hello packets:644 ring-up-flush-fdb packets:1
ring-down-flush-fdb packets:0 link-down packets:0
edge-hello packets:0 major-fault packets:0
ERPS ring ID: 2
ERPS ring level: sub
ERPS ring 2 node mode: transit
ERPS ring 2 edge node mode: assistant edge
ERPS ring 2 node state: link up
ERPS ring 2 edge interface name: eth-0-9 state: unblock
ERPS ring 2 common interface name: eth-0-20 state: unblock
ERPS ring 2 stats:
Sent:
total packets:0
hello packets:0 ring-up-flush-fdb packets:0
ring-down-flush-fdb packets:0 link-down packets:0
edge-hello packets:0 major-fault packets:0
Received:
total packets:645
hello packets:644 ring-up-flush-fdb packets:1
ring-down-flush-fdb packets:0 link-down packets:0
edge-hello packets:0 major-fault packets:0
Вывод результата на коммутаторе “Switch4”:
Switch# show erps 1
ERPS domain ID: 1
ERPS domain name: ERPS001
ERPS domain mode: normal
ERPS domain primary control VLAN ID: 0
ERPS domain sub control VLAN ID: 12
ERPS domain hello timer interval: 1 second(s)
ERPS domain fail timer interval: 3 second(s)
ERPS domain protected mstp instance: 0
ERPS ring ID: 2
ERPS ring level: sub
ERPS ring 2 node mode: master
ERPS ring 2 node state: complete
ERPS ring 2 primary interface name: eth-0-9 state:unblock
ERPS ring 2 secondary interface name: eth-0-13 state:block
ERPS ring 2 stats:
Sent:
total packets:814
hello packets:810 ring-up-flush-fdb packets:2
ring-down-flush-fdb packets:2 link-down packets:0
edge-hello packets:0 major-fault packets:0
Received:
total packets:774
hello packets:774 ring-up-flush-fdb packets:0
ring-down-flush-fdb packets:0 link-down packets:0
edge-hello packets:0 major-fault packets:0