ERPS
Что такое ERPS?
ERPS (Ethernet Ring Protection Switching) — это протокол, позволяющий осуществлять резервирование канала на втором уровне модели OSI, определенный ITU-T под номером стандарта ITU-T G.8032/Y1344, поэтому также известный как G.8032. Он определяет сообщения протокола RAPS (Ring Auto Protection Switching) и механизм переключения на резервный канал.
Зачем нужен ERPS?
В коммутируемых сетях Ethernet для повышения надежности сети часто используются резервные каналы (например, кольцевые сети). Однако использование резервных каналов может создавать петли в сети, потенциально вызывая широковещательные штормы и нестабильность таблицы MAC-адресов, что влияет на качество связи с пользователями и даже может привести к обрывам связи.
Протокол ERPS, разработанный ITU-T и предназначенный для устранения петель, решает проблемы, присущие протоколам STP/RSTP/MSTP. Он не только обладает преимуществами высокой скорости сходимости, соответствует требованиям операторского класса по надежности и поддерживает множество методов работы в сети, но также имеет хорошую совместимость и обеспечивает взаимодействие с оборудованием других производителей. Поэтому протокол ERPS широко используется в сетях с петлями второго уровня.
Сравнение ERPS и других протоколов кольцевых сетей.
В таблице ниже сравниваются преимущества и недостатки ERPS и других протоколов кольцевых сетей.
Таблица 1-1. Протоколы кольцевой сети, поддерживаемые устройствами
| Протокол кольцевой сети | Преимущества | Ограничения |
|---|---|---|
| RRPP | Обладает высокой скоростью сходимости и соответствует требованиям к надежности операторского класса. | — RRPP поддерживает только кольцевые сети и только подкольца первого уровня. — RRPP — это проприетарный протокол Huawei, и он не обеспечивает совместимость с оборудованием других производителей. |
| STP/RSTP/MSTP | — Протокол STP (Spanning Tree Protocol) применим к любому типу сетей уровня 2. — Как стандартный протокол IEEE, STP обеспечивает совместимость с оборудованием других производителей. | Однако STP имеет низкую скорость сходимости, которая зависит от размера сети, и поэтому не может соответствовать требованиям к скорости сходимости для обеспечения надежности операторского класса. |
| SEP | — Протокол SEP применим к любому типу сетей уровня 2. — Он отличается высокой скоростью сходимости и соответствует стандартам надежности операторского класса. — Он может отображать топологическую информацию всего контура, что облегчает поиск неисправностей и техническое обслуживание. | SEP — это проприетарный протокол Huawei, и он не может обеспечить совместимость с оборудованием других производителей. |
| ERPS | — Высокая скорость сходимости, соответствующая стандартам надежности операторского класса. — Протокол ERPS является стандартным протоколом ITU-T, обеспечивающим совместимость с оборудованием других производителей. — Версия v2 поддерживает не только однокольцевые сети, но и многокольцевые сети, такие как пересекающиеся кольца. | Топология сети должна быть спланирована заранее, что делает настройку относительно сложной. |
Термины ERPS
Ethernet ring: Это закрытая физическая кольцевая сеть, которая состоит из множества узлов, каждый узел в кольце имеет только два порта, соединяющихся с этой кольцевой сетью.
Ring protection link: RPL — соединение в кольцевой сети. Когда кольцевая сеть исправна, это соединение заблокировано.
RPL owner node: узел, блокирующий RPL в нормальном состоянии и разблокирующий его в случае обрыва связи. Должен быть один на кольцо.
RPL neighbor node: должен находиться с другой стороны линка от RPL owner и также может участвовать в блокировке/разблокировке канала.
Interconnection node: Узел на пересечении колец. Его порты являются частями нескольких колец.
R-APS virtual channel: Это связь, которая создает соединение субкольца между двумя соединенными узлами за пределами субкольца.
major-ring: Полноценное кольцо, которое соединяется с узлами двумя портами.
sub-ring: Субкольцо, присоединенное к major-ring. Соединяется с узлами одним портом.
ERPS instance: Это набор защищаемых VLAN.
Revertive switch: При восстановлении канала порт RPL owner снова станет заблокированным, а сбойный линк — рабочим, т.е. кольцо, вернется в исходное состояние
Non-revertive switch: После восстановления канала возвращения в исходное состояние не произойдет. Трафик продолжит проходить через RPL.
Основные понятия ERPS
ERPS — это протокол, используемый для разрыва петель канального уровня Ethernet. В качестве базовой единицы он использует кольцо ERPS, блокируя порт, являющийся владельцем канала защиты кольца (RPL), и управляя другими обычными портами, заставляя состояния портов переключаться между состояниями «Пересылка (Forwarding) » и «Отбрасывание» (Discarding), тем самым устраняя петлю. В настоящее время существует две версии ERPS: ERPSv1 и ERPSv2. ERPSv2 полностью совместим с ERPSv1 и расширяет его функциональность для лучшего использования преимуществ ERPS.
Как показано на диаграмме ниже, для повышения надежности канала связи устройства A–D образуют двойной канал для подключения к вышестоящей сети. Этот метод доступа вводит новую петлю во всю сеть. Для устранения избыточных петель в сети и эффективного обеспечения связности канала необходимо активировать механизм разрыва петель. Мы можем развернуть протокол ERPS в сети, показанной на диаграмме ниже. Основные концепции протокола ERPS представлены ниже со ссылкой на эту диаграмму.

Кольцо ERPS
Кольцо ERPS состоит из группы взаимосвязанных коммутационных устройств уровня 2 (узлов), настроенных с использованием одной и той же управляющей VLAN, и является базовой единицей протокола ERPS. Кольцо ERPS делится на основное кольцо и субкольца. По умолчанию все кольца ERPS являются основными. Основное кольцо является замкнутым, в то время как субкольца являются открытыми и требуют настройки с помощью команд. Как показано на диаграмме, кольцо ERPS, состоящее из устройств A и D, является основным кольцом, а кольцо, состоящее из устройств C и F, является субкольцом. Настройка субколец поддерживается только в ERPSv2; она не поддерживается в ERPSv1.

Порты ERPS
Протокол ERPS определяет три основных типа портов: порт владельца RPL (RPL owner port), соседний порт RPL (RPL neighbor port) и обычный порт. Тип соседнего порта RPL поддерживается только в ERPSv2; он не поддерживается в ERPSv1.
Порт владельца RPL
Кольцо ERPS имеет только один порт владельца RPL, определяемый пользовательской конфигурацией. Петли в кольце ERPS предотвращаются путем блокировки порта владельца RPL при пересылке пользовательского трафика. Когда устройство, на котором расположен порт владельца RPL, получает сообщение об ошибке, указывающее на сбой в другом узле или канале связи в кольце ERPS, оно автоматически открывает порт владельца RPL, позволяя ему возобновить прием и передачу трафика, обеспечивая бесперебойный поток трафика. Канал связи, где расположен порт владельца RPL, называется каналом защиты кольца (RPL — Ring protection link).
Соседний порт RPL
Соседний порт RPL — это порт, непосредственно подключенный к порту владельца RPL. Введение роли соседнего порта RPL уменьшает количество обновлений записей в таблице FDB устройства, на котором размещен соседний порт RPL. В нормальных условиях как порт владельца RPL, так и соседний порт RPL блокируются для предотвращения петель. При сбое кольца ERPS как порт владельца RPL, так и соседний порт RPL открываются.
Обычные порты
В кольце ERPS все порты, кроме порта владельца RPL и соседнего порта RPL, являются обычными портами. Обычные порты отвечают за мониторинг состояния каналов связи своих непосредственно подключенных протоколов ERPS и оперативное уведомление других портов о любых изменениях состояния каналов связи.
Состояния портов ERPS делятся на два типа:
Пересылка (Forwarding): В состоянии «Пересылка» порт пересылает пользовательский трафик и принимает/отправляет сообщения протокола ERPS.
Отбрасывание (Discarding): В состоянии «Отбрасывание» порт не пересылает пользовательский трафик, но может отправлять и получать сообщения протокола ERPS.
VLAN
В ERPS существует два типа VLAN: VLAN для передачи данных и VLAN для управления. VLAN для передачи данных используются для передачи пакетов данных; VLAN для управления используются для передачи пакетов протокола ERPS. Каждое кольцо ERPS должно быть настроено с VLAN для управления. Когда порт присоединяется к кольцу ERPS, в котором настроен VLAN для управления, порт автоматически присоединяется к VLAN для управления. Разные кольца ERPS не могут использовать один и тот же идентификатор VLAN для управления.
Экземпляр ERPS кольца
Для устройств уровня 2, работающих по протоколу ERPS, VLAN, передающие сообщения и пакеты данных протокола ERPS, должны быть сопоставлены с экземплярами защиты. Только тогда протокол ERPS будет пересылать или блокировать эти сообщения в соответствии со своими принципами блокировки. В противном случае сообщения VLAN могут вызвать широковещательные штормы в зацикленной сети, что приведет к недоступности сети.
Таймеры
В протоколе ERPS в основном используются следующие таймеры: Guard Timer, WTR (Wait to Restore), Holdoff Timer и WTB (Wait to Block). Таймер WTB поддерживается только в ERPSv2; в ERPSv1 он не поддерживается.
Guard timer (Таймер защиты)
После сбоя канала связи или узла, соответствующее устройство отправляет сообщение NR (No Request) RAPS другим устройствам и одновременно запускает таймер защиты. Устройство не обрабатывает сообщения NR RAPS до истечения таймера, чтобы предотвратить получение просроченных сообщений NR RAPS. Если после истечения таймера сообщения NR RAPS поступают с других портов, состояние пересылки этого порта изменяется на «Пересылка».
WTR Timer (Таймер WTR, Wait to Restore)
При сбое устройства или канала связи порт RPL owner открывается. После устранения неисправности ранее неисправный порт может еще не перейти из состояния «Выключено» в состояние «Включено». Чтобы предотвратить нестабильность сети, вызванную немедленной блокировкой порта RPL owner, система запускает таймер WTR, когда порт RPL owner получает сообщение NR RAPS от другого порта. Если до истечения таймера получено сообщение SF (Signal Failed) RAPS от другого порта, таймер WTR выключается, и порт RPL owner не блокируется. Если до истечения таймера WTR не получено сообщение SF RAPS от другого порта, порт владельца RPL блокируется, и после истечения таймера WTR отправляется сообщение NRRB (No Request RPL Blocked) RAPS. Другие порты, получив это сообщение, затем устанавливают свое состояние пересылки в состояние «Пересылка».
Holdoff Timer (Таймер задержки)
В сетях уровня 2, работающих с ERPS, порядок переключения защиты может иметь различные требования. Например, в многоуровневых приложениях после сбоя сервера пользователи могут захотеть получить период времени для восстановления сервера, не сообщая об этом клиенту, то есть переключение защиты не произойдет немедленно. В этом случае можно установить соответствующий таймер задержки. При возникновении сбоя информация о нем не будет немедленно передана в ERPS; она будет передана только в том случае, если после истечения таймера задержки восстановление не произойдет.
WTB Timer (Таймер WTB, Wait to Block)
При сбросе состояния переключения порта (принудительное или ручное переключение) включается таймер WTB. Это связано с тем, что в кольце ERPS может существовать несколько узлов с блокировкой, переключаемых вручную. Операция сброса вступает в силу только после истечения таймера, предотвращая немедленную блокировку порта RPL owner и, таким образом, избегая колебаний в точке блокировки.
Таймер WTB не настраивается. Его значение равно значению таймера защиты плюс 5 секунд; значение по умолчанию — 7 секунд.
Switchback/Non-Switching-Back Mode (Режим переключения / без переключения)
После восстановления соединения ERPS можно настроить режим обратного переключения / без переключения, чтобы определить, будет ли повторно заблокирован порт RPL owner.
В режиме переключения, если неисправное соединение восстанавливается, порт RPL owner будет повторно заблокирован после истечения таймера WTR. Затем заблокированное соединение переключится обратно на RPL.
В режиме без переключения, если неисправное соединение восстанавливается, таймер WTR не запускается, и заблокированное соединение остается на исходном неисправном соединении, не переключаясь обратно на RPL.
По умолчанию кольцо ERPS находится в режиме переключения.
ERPSv1 поддерживает только режим переключения, в то время как ERPSv2 поддерживает оба режима.
Методы переключения точек перегрузки
Поскольку канал связи, на котором находится порт RPL owner, может иметь более высокую пропускную способность, рекомендуется рассмотреть возможность блокировки канала с более низкой пропускной способностью, чтобы позволить пользовательскому трафику вернуться к RPL для передачи. ERPS поддерживает ручное вмешательство в перегрузку портов посредством конфигурации, включая два метода переключения: принудительное переключение (Forced Switch, FS) и ручное переключение (Manual Switch, MS).
Принудительное переключение: Порты, настроенные для принудительного переключения, будут немедленно заблокированы независимо от того, неисправны ли другие каналы в кольце.
Ручное переключение: Процесс ручного переключения порта в кольце ERPS аналогичен принудительному переключению, за исключением того, что ручное переключение не будет работать, если состояние кольца не Idle или Pending.
В дополнение к принудительному и ручному переключению, ERPS также поддерживает операцию очистки. Эта функция в основном используется в следующих трех ситуациях:
- Очистка локально настроенных функций ручного и принудительного переключения.
- Когда кольцо ERPS находится в режиме отката, ручное инициирование действия отката до истечения таймера WTB или WTR.
- Когда кольцо ERPS находится в режиме без отката, действие отката запускается вручную.
Ручное переключение точек перегрузки поддерживается только в ERPSv2; в ERPSv1 оно не поддерживается.
Методы передачи сообщений RAPS в субкольцах
ERPSv2 поддерживает не только однокольцевые сети, но и многокольцевые сети, такие как сети с пересекающимися кольцами. В сетях с пересекающимися кольцами методы передачи сообщений RAPS в субкольцах делятся на два типа: виртуальный канал (VC) и невиртуальный канал (NVC).
Метод виртуального канала: Сообщения протокола RAPS в субкольцах передаются внутри основного кольца через пересекающиеся узлы. То есть, пересекающиеся узлы не завершают передачу сообщений протокола в субкольце. Блокирующие порты субкольца блокируют как сообщения протокола RAPS, так и трафик данных.
Метод невиртуального канала: Сообщения протокола RAPS в субкольцах завершаются на пересекающихся узлах. Блокирующие порты субкольца блокируют только трафик данных, а не сообщения протокола RAPS.
Как показано на диаграмме ниже, основное кольцо пересекается с двумя субкольцами. Левое субукольцо использует метод виртуального канала для передачи сообщений RAPS, а правое субкольцо использует метод невиртуального канала.

По умолчанию режим передачи сообщений RAPS в субкольце — невиртуальный канал. За исключением особого сценария сети, показанного на диаграмме ниже (когда каналы субкольца представляют собой несколько разрозненных частей), где режим виртуального канала является обязательным, для других сценариев сети рекомендуется использовать режим невиртуального канала по умолчанию. Как показано на схеме, каналы b и d принадлежат соответственно основному кольцу 1 и основному кольцу 2, тогда как к субкольцу принадлежат только каналы a и c. Каналы a и c являются двумя независимыми каналами и не могут воспринимать изменения в каналах друг друга. Поэтому в этом случае для передачи сообщений RAPS необходим виртуальный канал.

В таблице ниже сравниваются преимущества и недостатки двух методов передачи сообщений RAPS в субукольце: виртуального канала и невиртуального канала.
Таблица 1-2. Сравнение преимуществ и недостатков методов виртуального и невиртуального каналов.
| Метод передачи пакетов RAPS в субкольце | Преимущества | Ограничения |
|---|---|---|
| Виртуальный канал | Может применяться для специальных приложений сетевого взаимодействия с использованием виртуальных каналов. | На работу канала RAPS в подсети влияет топология подключенных сетей, что требует резервирования ресурсов и выделения идентификаторов управляющих VLAN в сети, где находится канал RAPS. |
| Невиртуальный канал | Не требует резервирования ресурсов или выделения идентификаторов управляющих VLAN в соседних сетях. | Не может применяться для специальных приложений сетевого взаимодействия с использованием виртуальных каналов. |
ERPSv1 против ERPSv2
В настоящее время существует две версии ERPS: ERPSv1 и ERPSv2. ERPSv1 была выпущена ITU-T в июне 2008 года, а ERPSv2 — в августе 2010 года. ERPSv2 полностью совместима с ERPSv1 и расширяет её функциональность. Различия между ERPSv1 и ERPSv2 показаны в таблице ниже.
Таблица 1-3. Сравнение ERPSv1 и ERPSv2
| Функции | ERPSv1 | ERPSv2 |
|---|---|---|
| Создание кольца | Поддерживается только создание одного кольца; настройка субколец не поддерживается. | Поддерживается создание нескольких колец, при этом можно настроить основное и субкольца. |
| Настройка ролей портов | Поддерживается настройка портов RPL owner и обычных портов. | Помимо настройки портов RPL owner и обычных портов, поддерживается также настройка портов RPL neighbor. |
| Настройка уведомления об изменении топологии сети | Эта функция не поддерживается. | Эта функция поддерживается. |
| Передача сообщений R-APS через субкольцо с использованием виртуальных или невиртуальных каналов | Эта функция не поддерживается. | Эта функция поддерживается. |
| Режим обратного переключения / без переключения | Режим обратного переключения является режимом по умолчанию; настройка не поддерживается, и режим без переключения не поддерживается. | Поддерживается настройка как режима обратного переключения, так и режима без переключения. |
| Ручное переключение точек блокировки | Эта функция не поддерживается. | Эта функция поддерживается, и поддерживаются как принудительное, так и ручное переключение. |
Поскольку ERPSv2 полностью совместим с ERPSv1, рекомендуется настраивать ERPSv2, если все устройства в текущем кольце ERPS поддерживают как ERPSv1, так и ERPSv2.
Сообщения протокола ERPS
Протокол ERPS использует только один тип сообщений: сообщение RAPS PDU. Сообщение RAPS PDU содержит информацию о кольце ERPS и передается по кольцу ERPS для обеспечения связи между портами различных устройств. Базовый формат сообщения RAPS PDU показан на рисунках 1-6:

Основной формат сообщения RAPS PDU и значение каждого поля показаны в таблице ниже:
Таблица 1-4. Значение полей сообщения RAPS PDU
| Имя поля | Длина | Описание |
|---|---|---|
| MEL | 3 бита | Определяет уровень экземпляра обслуживания. |
| Version | 5 бит | 0x00: Версия v1 0x01: Версия v2 |
| OpCode | 8 бит | Фиксированное значение 0x28, указывающее, что этот PDU является PDU RAPS. |
| Flags | 8 бит | Фиксированное значение 0x00, это поле игнорируется во время приема. |
| TLV Offset | 8 бит | Фиксированное значение 0x20, указывающее, что TLV в сообщении начинается через 32 байта после этого поля. |
| Специфическая информация R-APS | 32×8 бит | Это поле содержит информацию о кольцевой сети RAPS и является основным полем PDU RAPS. В некоторых подполях этого поля существуют различия между версиями ERPSv1 и ERPSv2. |
| TLV | Без ограничений | Описывает информацию, которая должна быть загружена в сообщение, где End TLV — фиксированное значение 0x00. |


Значения каждого подполя в разделе «Специфическая информация RAPS» приведены в таблице ниже:
Таблица 1-5. Значения каждого подполя в разделе «Специфическая информация RAPS»
| Имя поля | Длина | Описание |
|---|---|---|
| Request/State | 4 бита | Указывает, является ли эта информация запросом или информацией о текущем состоянии: 1101: FS (Принудительное переключение) RAPS 1110: Сообщение о событии 1011: SF (Сбой сигнала) RAPS 0111: MS (Ручное переключение) RAPS 0000: NR (Нет запроса) RAPS Другое: Зарезервированное поле |
| Reserved 1 | 4 бита | Для ERPSv1 это поле имеет значение «Зарезервировано 1», что указывает на зарезервированное поле для будущих ответов на сообщения или идентификации типа защиты. Для ERPSv2 это поле имеет значение «Подкод»: — если значение поля «Запрос/Состояние» равно 1110, это поле равно 0000, что указывает на запрос на обновление записи в таблице FDB. — Если поле «Запрос/Состояние» принимает другие значения, это поле состоит из одних нулей, является зарезервированным полем и будет игнорироваться во время приема. |
| Sub-code | 8 бит | Идентифицирует информацию о состоянии: RB (RPL заблокирован, 1 бит): RB=1 указывает на блокировку канала RPL; RB=0 указывает на разблокировку канала RPL. Устройства, не являющиеся владельцами RPL, устанавливают это поле в 0 при отправке PDU RPL. DNF (Не очищать, 1 бит): DNF=1 указывает, что буфер FDB не должен очищаться при получении текущего сообщения; DNF=0 указывает, что буфер FDB может быть очищен при получении текущего сообщения. BPR (Ссылка на заблокированный порт, 1 бит): Флаг заблокированного порта. 0 указывает на блокировку первого порта, а 1 — на блокировку второго порта. Это поле поддерживается только в ERPSv2. Зарезервированный статус: Зарезервированное поле. Это поле устанавливается в 0 во время передачи и игнорируется при приеме. В ERPSv1 это поле имеет 6 бит, а в ERPSv2 — 5 бит. |
| Node ID | 6х8 бит | Идентифицирует MAC-адрес устройства кольцевого узла RAPS. Это поле носит информационный характер и не влияет на работу защитного переключения кольцевого узла RAPS. |
| Reserved 2 | 24х8 бит | Зарезервированное поле. Во время передачи это поле устанавливается в нули и игнорируется во время приема. |
ERPS с одним кольцом
ERPS — это стандартный протокол кольцевой сети, специально разработанный для канального уровня Ethernet, с кольцом ERPS в качестве базовой единицы. В кольце ERPS для предотвращения петель может быть активирован механизм разрыва петель, блокирующий порт владельца RPL для устранения петли. При сбое связи в кольцевой сети устройства, работающие по протоколу ERPS, могут быстро открыть заблокированный порт, выполнить переключение на резервный канал и восстановить связь между узлами в кольцевой сети. ERPS Single Ring означает настройку только одного кольца ERPS в сети ERPS. Как ERPSv1, так и ERPSv2 поддерживают настройку кольцевых сетей ERPS Single Ring.
В этом разделе в основном используются примеры для ознакомления с основными принципами реализации ERPS в сети с одним кольцом, следуя процессу: нормальная связь -> сбой связи -> восстановление связи (включая операции переключения защиты).
Нормальное состояние соединения
Как показано на схеме ниже, связь между устройствами в кольцевой сети, состоящей из устройства A и устройства E, нормальна.
- Для предотвращения образования петель ERPS сначала блокирует порт RPL owner. Если настроен порт RPL neighbor, он также будет заблокирован. Другие порты могут нормально перенаправлять служебный трафик.
- Порт RPL owner в кольцевой сети ERPS отправляет сообщения NRRB RAPS другим узлам в кольцевой сети с интервалом в 5 секунд, указывая на то, что текущее соединение в кольцевой сети ERPS находится в нормальном состоянии.

Сбой канала связи
Как показано на диаграмме ниже, при сбое канала связи между устройством D и устройством E протокол ERPS инициирует механизм защитного переключения. Он блокирует порты на обоих концах поврежденного канала, а затем открывает порт RPL owner и порт RPL neighbor. Эти два порта возобновляют прием и отправку пользовательского трафика, обеспечивая тем самым бесперебойную передачу данных. Конкретный процесс выглядит следующим образом:
- Устройства D и E обнаруживают сбой канала связи, блокируют порты на поврежденном канале и обновляют свои записи в базе данных FDB.
- Устройства D и E отправляют сообщения SF RAPS, содержащие сообщение о сбое локального канала связи. То есть, как только обнаруживается сбой канала связи, устройства D и E непрерывно отправляют три одинаковых сообщения SF RAPS, а затем продолжают отправлять их стабильно с интервалом в 5 секунд.
- Другие устройства, получающие сообщения SF RAPS от устройств D и E, обновляют свои записи в базе данных FDB. После получения этого сообщения RAPS устройство C (устройство, содержащее порт RPL owner) открывает порт RPL owner и обновляет свои собственные записи в базе данных FDB. Аналогично, когда устройство B (устройство, на котором расположен порт RPL neighbor) получает сообщение RAPS, оно открывает порт RPL neighbor и обновляет свои собственные записи в базе данных файлов (FDB).

Восстановление канала связи
После восстановления соединения, если кольцо ERPS настроено в режиме переключения, устройство, содержащее порт RPL onwer, повторно заблокирует трафик на канале RPL, и неисправный канал будет повторно использован для завершения передачи пользовательского трафика. Если кольцо ERPS настроено в режиме без переключения, заблокированный канал останется на исходном неисправном канале и не переключится обратно на RPL. В качестве примера рассмотрим режим переключения. Конкретный процесс восстановления выглядит следующим образом:
- Когда соединение между устройством D и устройством E восстановлено, устройства D и E, чтобы предотвратить получение просроченных сообщений протокола NR RAPS, запускают каждый таймер защиты. До истечения таймера они не будут получать другие сообщения протокола NR RAPS. Одновременно устройства D и E будут отправлять сообщения NR RAPS наружу.
- Когда устройство C (устройство, содержащее порт RPL owner) получает сообщение NR RAPS, оно запускает таймер WTR. Когда этот таймер истекает, порт RPL owner блокируется, и сообщения NRRB RAPS отправляются наружу.
- После получения сообщения протокола NRRB RAPS от устройства C, устройства D и E открывают ранее заблокированные порты на своих устройствах, прекращают отправку сообщений протокола NR RAPS и завершают обновление записей FDB. Другие устройства, получив сообщение протокола NRRB RAPS от устройства C, также завершают обновление своих записей FDB.
ERPS с несколькими кольцами
Создание ERPS с несколькими кольцами подразумевает настройку нескольких колец ERPS в сети ERPS. ERPSv1 поддерживает только однокольцевую сеть, в то время как ERPSv2 поддерживает как базовую однокольцевую, так и многокольцевую сеть. В многокольцевой сети ERPS есть как основное кольцо, так и субкольца. Метод передачи сообщений RAPS в субкольцах делится на передачу по виртуальному каналу и передачу по невиртуальному каналу в зависимости от того, попадает ли сообщение в основное кольцо.
В этом разделе в качестве примера используется сеть с пересекающимися кольцами, в которой передача сообщений RAPS по невиртуальному каналу осуществляется в субкольцах, и объясняется принцип реализации ERPS в многокольцевой сети в соответствии с процессом: нормальное состояние соединения -> сбой канала связи -> восстановление канала связи.
Нормальное состояние соединения
Как показано на диаграмме, кольцо ERPS, состоящее из устройств от A до E, является основным кольцом; кольцо ERPS, состоящее из устройств B, C и F, является субкольцом 1; а кольцо ERPS, состоящее из устройств C, D и G, является субкольцом 2. Все кольца обмениваются данными в нормальном режиме.
Для предотвращения петель каждое из трех колец ERPS блокирует свой собственный порт RPL owner.
Порт RPL owner основного кольца отправляет сообщения NRRB RAPS другим узлам в основном кольце с интервалом в 5 секунд. Аналогично, порты RPL owner субколец 1 и 2 также отправляют сообщения NRRB RAPS другим узлам в своих соответствующих кольцах с интервалом в 5 секунд. Протокольные сообщения в основном кольце передаются только по основному кольцу; сообщения из двух субколец заканчиваются на узле пересечения и не попадают в основное кольцо.
Поток трафика между ПК1 и сетью верхнего уровня — это ПК1<->Устройство F<->Устройство B<->Устройство A<->Роутер 1, а поток трафика между ПК2 и сетью верхнего уровня — это ПК2<->Устройство G<->Устройство D<->Устройство E<->Роутер 2.

Сбой канала связи
Как показано на диаграмме ниже, при сбое канала связи между устройством D и устройством G протокол ERPS инициирует механизм защитного переключения, блокируя оба конца неисправного канала. Субкольцо 2 откроет порт RPL owner, восстановив прием и передачу пользовательского трафика. Пользовательский трафик ПК1 остается неизменным. Для обеспечения бесперебойного нисходящего трафика для ПК2, пересекающиеся узлы, устройства C и D, должны объявить об изменении топологии субкольца 2 в основное кольцо. Конечный поток трафика между ПК2 и сетью верхнего уровня выглядит следующим образом: ПК2<->Устройство G<->Устройство C<->Устройство B<->Устройство A<->Устройство E<->Роутер 2. Конкретная обработка выглядит следующим образом:
- Устройства D и G обнаруживают сбой канала связи, блокируют порты на неисправном канале и обновляют свои записи в базе данных FDB.
- Устройство G отправляет сообщение SF RAPS, содержащее сообщение о сбое локального порта в субкольце 2. В частности, при обнаружении сбоя канала связи устройство G отправляет три последовательных идентичных сообщения SF RAPS, а затем продолжает отправлять сообщения SF RAPS с интервалом в 5 секунд.
- Устройство G (устройство, содержащее порт RPL owner) открывает порт RPL owner и обновляет свою запись в базе данных файловой системы (FDB).
- После получения этого сообщения SF RAPS, пересекающийся узел Устройство C в главном кольце обновляет свою запись в FDB. Устройство C и Устройство D, обнаружив это изменение топологии сети, отправляют сообщения Event в главном кольце, чтобы объявить об изменении топологии сети в субкольце 2.
- Другие узлы главного кольца, получив сообщения Event, обновляют свои записи в FDB.

Восстановление канала связи
После восстановления канала связи, если каждое кольцо ERPS настроено в режиме переключения, устройство, содержащее порт RPL owner, повторно заблокирует трафик на канале RPL, и неисправный канал будет повторно использован для завершения передачи пакетов. Если кольцо ERPS настроено в режиме без переключения, заблокированный канал останется на исходном неисправном канале и не переключится обратно на RPL. В качестве примера рассмотрим режим переключения. Конкретный процесс восстановления выглядит следующим образом:
- Когда канал связи между устройствами D и G восстановлен, устройства D и G, чтобы предотвратить получение просроченных пакетов протокола RAPS, запускают каждый таймер защиты и не будут получать другие пакеты протокола RAPS до истечения таймера. Одновременно устройства D и G будут отправлять пакеты NR RAPS в пределах субдкольца 2.
- Устройство G (устройство, содержащее порт RPL owner) запускает таймер WTR. Когда таймер WTR истекает, Устройство G блокирует порт RPL owner, открывает порт восстановленного канала связи и одновременно отправляет исходящие пакеты NRRB RAPS.
- Когда Устройство D получает сообщение NRRB RAPS от Устройства G, оно открывает ранее заблокированные порты на своем устройстве, прекращает отправку сообщений NR RAPS и обновляет свои записи FDB. Устройство C, получив сообщение NRRB RAPS от Устройство G, также обновляет свои записи FDB.
- После того, как Устройство C и Устройство D обновят свои записи FDB, они отправляют сообщения Event внутри основного кольца, чтобы объявить об изменении топологии в субкольце 2.
- Другие узлы основного кольца, получив сообщения Event, обновляют свои записи FDB.
- В конечном итоге, пользовательский трафик на ПК2 вернется к нормальному потоку канала связи.
Быстрое обнаружение ERPS
Быстрое обнаружение ERPS подразумевает настройку режима быстрого обнаружения в сети ERPS для высокопроизводительного переключения резервного канала. ERPSv1 не поддерживает этот режим, в то время как ERPSv2 поддерживает развертывание в базовых однокольцевых сетях и сценариях с субкольцевыми сетями без виртуальных каналов.
В режиме быстрого обнаружения ERPS в однокольцевом сценарии устройство, содержащее порт RPL owner, непрерывно отправляет двунаправленные сообщения обнаружения в сеть для достижения обнаружения неисправностей на уровне миллисекунд; в многокольцевом сценарии устройства на периферии отправляют сообщения обнаружения устройствам в субкольцевых сетях. Как только соединение устройства обрывается, порт, который должен получать сообщения обнаружения, получает аппаратное прерывание для обнаружения отказа устройства, тем самым быстро реализуя переключение защиты.
В этом разделе объясняется принцип быстрого обнаружения в режиме быстрого обнаружения ERPS, следуя процессу: нормальное состояние соединения -> сбой канала связи -> восстановление канала связи.
Сценарий с одним кольцом
Нормальное состояние соединения
Как показано на диаграмме ниже, четыре устройства, от Устройство A до Устройство D, образуют кольцевую сеть ERPS, и все устройства находятся в состоянии ожидания (IDLE). Устройство A (устройство, на котором расположен порт RPL owner) периодически отправляет пакеты обнаружения из двух направлениях (Direction_W и Direction_E) через два порта-члена ERPS в кольце. Два порта-члена ERPS других устройств в кольце могут принимать этот пакет и пересылать его с соседнего интерфейса обратно на Устройство A.

Сбой соединения
Когда порт на устройстве B, подключенном к устройству C, выходит из строя, устройства A и B в направлении Direction_E, а также устройства C, D и A в направлении Direction_W получают события тайм-аута для быстрого обнаружения неисправности. В это время порт RPL owner устройства A открывается, его MAC-адрес обновляется, и прием и передача трафика восстанавливаются, обеспечивая бесперебойный поток трафика.
Восстановление канала связи
Когда порт на устройстве B, подключенном к устройству C, восстанавливается после неисправности, пакеты обнаружения на всех устройствах принимаются в обычном режиме. После истечения таймера WTR устройство A, настроенное с портом RPL owner, запускает событие переключения через пакеты обнаружения для быстрого обнаружения восстановления неисправности. В это время порт RPL owner устройства A блокируется.
Быстрое обнаружение ERPS улучшает производительность переключения защиты устройств и не влияет на состояние ERPS самих устройств или портов.
Сценарий с несколькими кольцами
Нормальное состояние соединения
Как показано на диаграмме ниже, устройства A и D образуют основное кольцо кольцевой сети ERPS, а устройства C и F — субкольцо ERPS.
Все устройства в основном и субкольце находятся в состоянии ожидания (IDLE). Устройства C и D периодически отправляют пакеты обнаружения в двух направлениях (направление W и направление E) через назначенные порты субкольца ERPS. Два порта-члена ERPS других устройств в кольце могут принимать эти пакеты и пересылать их через свои смежные интерфейсы. Наконец, пакеты в направлении E принимаются и обрабатываются портом субкольца устройства D, а пакеты в направлении W принимаются и обрабатываются портом субкольца устройства C.

Сбой соединения
Когда порт на устройстве D, подключенном к устройству E, выходит из строя, устройство D в направлении Direction_E, а также устройства E, F и C в направлении Direction_W получают события тайм-аута для быстрого обнаружения неисправности. В это время порт RPL owner устройства E и порт RPL neighbor устройства F открываются, и MAC-адрес обновляется для восстановления приема и передачи трафика, обеспечивая бесперебойный поток трафика.
Восстановление соединения
Когда порт на устройстве D, подключенном к устройству E, восстанавливается после неисправности, пакеты обнаружения на всех устройствах принимаются нормально. После истечения таймера WTR устройство E с настроенным портом RPL owner запускает событие переключения через пакеты обнаружения для быстрого обнаружения восстановления неисправности. В это время порт RPL owner устройства A блокируется.
Быстрое обнаружение ERPS повышает производительность переключения защиты устройства и не влияет на состояние ERPS самого устройства или порта.
Дополнительная информация
- Ethernet Switch Configuration Guide (S1700, S5700, S6700 Series Ethernet Switches)
- (eBook) High-Quality, High-Reliability Industrial Park Network Solutions
Источник: https://info.support.huawei.com/info-finder/encyclopedia/zh/ERPS.html#fig_dc_fd_erps_000401
