Дерево страниц
Перейти к концу метаданных
Переход к началу метаданных

Протокол ERPS (Ethernet Ring Protection Switching) предназначен для повышения устойчивости и надежности сети передачи данных, имеющей кольцевую топологию, за счет снижения времени восстановления сети в случае аварии. Время восстановления не превышает 1 секунды, что существенно меньше времени перестройки сети при использовании протоколов семейства spanning tree.


Основные понятия и термины:

- RPL (Ring Protection Link) - резервный линк между коммутаторами, который будет заблокирован механизмом ERPS при нормальном режиме работы кольца (IDLE);
- RPL Owner - коммутатор, подключенный к RPL, который блокирует RPL Link при нормальном режиме работы кольца и разблокирует его при разрыве кольца;
- RPL Neighbor - коммутатор, напрямую связанный с RPL Owner через RPL Link. Также блокирует RPL Link при нормальном режиме работы кольца и разблокирует его при разрыве кольца;

- R-APS (Ring - Automatic Protection Switching) - протокол обмена сообщениями, определенный в Y.1731 и в G.8032. Используется для координации действий по защите кольца;
- RAPS VLAN (A-RPS Channel) - служебный VLAN, в котором передаются R-APS PDUs;
- Protected VLAN - VLANs для передачи DATA трафика. RPL Link блокирует передачу только в Protected VLAN.

Таймеры:
- Hold-Off Timer - используется при падении линка. На коммутаторах кольца, зафиксировавших аварию, запускается Hold-Off Timer, по истечении которого отправляется R-APS PDU Signal Fail. По дефолту таймер настроен на 0 сек;
- Guard Timer - Запускается на коммутаторах, фиксирующих изменение топологии (падение/поднятие линка). При этом отправляется R-APS PDU и запускается Guard Timer, до тех пор пока таймер не истек, все входящие R-APS pdu игнорируются. По дефолту таймер настроен на 500 мсек;
- WTR Timer - используется только RPL Owner для отложенной блокировки RPL порта. Таймер истечёт только в случае отсутствия изменений в топологии за время своего действия. По дефолту таймер настроен на 5 мин;
- Periodic Timer - интервал отправки R-APS PDUs.

Сообщения R-APS:
- Signal Fail (SF) - сигнализирует об обнаружении аварии;
- No Request (NR) - сигнализирует об устранении аварии или отсутствии сбоев в работе кольца;
- RPL Blocked (RB) - это сообщение отправляет RPL Owner и Neighbor, причем всегда совместно с No Request. Информирует о состоянии RPL линка.

Состояния кольца:

- IDLE - статус при нормальном режиме работы кольца, когда резервный линк между коммутаторами RPL Owner и RPL Neighbor заблокирован механизмом ERPS.
- PROTECTED - статус кольца в случае разрыва действущего линка/аварии, когда резервный линк между коммутаторами RPL Owner и RPL Neighbor разблокирован.
- PENDING - статус кольца, когда проблемный линк восстановлен, и запущен WTR таймер.


Важно!!! При настройке протокола ERPS в мультивендорной среде необходимо, чтобы все таймеры совпадали на всех участниках кольца.



Настроим ревертивное кольцо с подкольцом, использующим кольцо в качестве виртуального канала. Для прохождения служебного ERPS трафика в кольце используется VLAN 10 (R-APS VLAN), защищает VLAN 20, 30, 40, 200, 300, 400. Для прохождения служебного ERPS  трафика в подкольце используется VLAN 100, защищает VLAN 200, 300, 400. Так как кольцо будет использоваться в качестве виртуального канала для подкольца, в настройках коммутаторов, которые не знают о существовании подкольца (коммутаторы 1 и 2), необходимо указать все VLAN подкольца.

В качестве RPL линка в основном кольце возьмем линк между коммутаторами 1 и 2. В качестве RPL линка в подкольце возьмем линк между коммутаторами 5 и 6. RPL линк — это линк, который будет заблокирован при нормальном состоянии кольца, и разблокируется только в случае аварии на одном из линков кольца.

Линк между коммутаторами 3 и 4 для подкольца vlan 100 будет определяться как virtual link.

Примечания:

  • Подкольцо не умеет определять разрыв виртуального линка. Поэтому при разрыве этого линка в подкольце не разблокируется rpl-link.
  • По дефолту через интерфейс в режим trunk проходит дефолтный 1 VLAN. Поэтому данный VLAN необходимо или добавить в protected, или запретить его прохождение через интерфейс, чтобы избежать возникновение шторма.
  • RPL link блокирует прохождение трафика в protected VLAN. Но на семейство протоколов xSTP данная блокировка не растространяется. Поэтому необходимо запрещать прохождение STP bpdu через кольцевые порты.

Конфигурация коммутатора 1:

console(config)# no spanning-tree

console(config)# erps

console(config)# erps vlan 10

console(config-erps)# ring enable

console(config-erps)# port west te1/0/1

console(config-erps)# port east te1/0/2

console(config-erps)# protected vlan add 20,30,40,100,200,300,400

console(config-erps)# rpl west owner

console(config-erps)# exit

console(config)#

console(config)# interface range TengigabitEthernet1/0/1-2

console(config-if)# switchport mode trunk

console(config-if)# switchport trunk allowed vlan add 10,20,30,40,100,200,300,400

console(config-if)# switchport forbidden default-vlan

console(config-if)# exit

console(config)# spanning-tree bpdu filtering 

Конфигурация коммутатора 2:

console(config)# no spanning-tree

console(config)# erps

console(config)# erps vlan 10

console(config-erps)# ring enable

console(config-erps)# port west te1/0/1

console(config-erps)# port east te1/0/2

console(config-erps)# protected vlan add 20,30,40,100,200,300,400

console(config-erps)# rpl west neighbor

console(config-erps)# exit

console(config)#

console(config)# interface range TengigabitEthernet1/0/1-2

console(config-if)# switchport mode trunk

console(config-if)# switchport trunk allowed vlan add 10,20,30,40,100,200,300,400

console(config-if)# switchport forbidden default-vlan

console(config-if)# exit

console(config)# spanning-tree bpdu filtering 

Конфигурация коммутаторов 3, 4:

console(config)# no spanning-tree

console(config)# erps

console(config)# erps vlan 10

console(config-erps)# ring enable

console(config-erps)# port west tengigabitethernet1/0/1

console(config-erps)# port east tengigabitethernet1/0/2

console(config-erps)# protected vlan add 20,30,40

console(config-erps)# sub-ring vlan 100

console(config-erps)# exit

console(config)# erps vlan 100

console(config-erps)# ring enable

console(config-erps)# port west tengigabitethernet1/0/3

console(config-erps)# protected vlan add 200,300,400

console(config-erps)# exit

console(config)#

console(config)# interfaceTengigabitEthernet1/0/1

console(config-if)# switchport mode trunk

console(config-if)# switchport trunk allowed vlan add 10,20,30,40,100,200,300,400

console(config-if)# switchport forbidden default-vlan

console(config-if)# exit

console(config)# interfaceTengigabitEthernet1/0/2

console(config-if)# switchport mode trunk

console(config-if)# switchport trunk allowed vlan add 10,20,30,40,100,200,300,400

console(config-if)# switchport forbidden default-vlan

console(config-if)# exit

console(config)# interfaceTengigabitEthernet1/0/3

console(config-if)# switchport mode trunk

console(config-if)# switchport trunk allowed vlan add 100,200,300,400

console(config-if)# switchport forbidden default-vlan

console(config-if)# exit

console(config)# spanning-tree bpdu filtering 

Конфигурация коммутатора 5

console(config)#no spanning-tree

console(config)# erps

console(config)# erps vlan 100

console(config-erps)# ring enable

console(config-erps)# port west te1/0/1

console(config-erps)# port east te1/0/2

console(config-erps)# protected vlan add 200,300,400

console(config-erps)# rpl west owner

console(config-erps)# exit

console(config)#

console(config)# interface range TengigabitEthernet1/0/1-2

console(config-if)# switchport mode trunk

console(config-if)# switchport trunk allowed vlan add 100,200,300,400

console(config-if)# switchport forbidden default-vlan

console(config-if)# exit

console(config)# spanning-tree bpdu filtering 

Конфигурация коммутатора 6:

console(config)# no spanning-tree

console(config)# erps

console(config)# erps vlan 100

console(config-erps)# ring enable

console(config-erps)# port west te1/0/1

console(config-erps)# port east te1/0/2

console(config-erps)# protected vlan add 200,300,400

console(config-erps)# rpl west neighbor

console(config-erps) #exit

console(config)# interface range TengigabitEthernet1/0/1-2

console(config-if)# switchport mode trunk

console(config-if)# switchport trunk allowed vlan add 100,200,300,400

console(config-if)# switchport forbidden default-vlan

console(config-if)# exit

console(config)# spanning-tree bpdu filtering 

Статус колец можно посмотреть командами

console# show erps

console# show erps vlan 10

console# show erps vlan 100