Подробности за реализацията на протоколите RSTP и собственосттa на Extended Ring Redundancy

В интернет можете да намерите много материали за протокола RSTP. В тази статия предлагам да сравим протокола RSTP с проприетарния протокол на Phoenix Contact – Extended Ring Redundancy.

Подробности за реализацията на RSTP

Общи сведения

Време на сближаване – 1-10 c
Възможни топологии – произволно

Съществува разпространено мнение, че RSTP позволява свързването на комутатори само в пръстен:

Подробности за реализацията на протоколите RSTP и собственосттa на Extended Ring Redundancy
Но RSTP позволява да свързвате комутатори по произволен начин. Например, с такава топология RSTP ще се справи.

Подробности за реализацията на протоколите RSTP и собственосттa на Extended Ring Redundancy

Принцип на работа

RSTP свежда всяка топология до дърво. Един от комутаторите става център на топологията – коренен комутатор. Коренният комутатор пропуска през себе си най-голямо количество данни.

Принципът на действие на RSTP е следният:

  1. подаване на захранване на комутаторите;
  2. избор на коренен комутатор;
  3. останалите комутатори определят най-бързия път до коренния комутатор;
  4. останалите канали се блокират и стават резервни.

Избор на коренен комутатор

Комутаторите с RSTP обменят BPDU пакети. BPDU е сервизен пакет, който съдържа информация за RSTP. BPDU има два типа:

  • Configuration BPDU.
  • Topology Change Notification.

Configuration BPDU се използва за изграждане на топология. Той се изпраща само от коренния комутатор. Configuration BPDU съдържа:

  • идентификатор на отправителя (Bridge ID);
  • идентификатор на коренния комутатор (Root Bridge ID);
  • идентификатор на порта, от който е изпратен този пакет (Port ID);
  • стойност на маршрута до коренния комутатор (Root Path Cost).

Topology Change Notification може да изпрати всеки комутатор. Те се изпращат при промяна на топологията.

След включване всички комутатори смятат себе си за коренни. Те започват да предават BPDU пакети. Когато комутатор получи BPDU с по-малък Bridge ID от собствения си, той спира да се смята за коренен.

Bridge ID се състои от две стойности – MAC адрес и Bridge Priority. MAC адреса не можем да променим. Bridge Priority по подразбиране е 32768. Ако не променим Bridge Priority, коренен става комутаторът с най-малък MAC адрес. Комутаторът с най-малък MAC адрес е най-старият и, може би, не най-ефективният. Препоръчва се ръчно да определите коренния комутатор на топологията. За целта на коренния комутатор трябва да зададете малък Bridge Priority (например, 0). Също така може да бъде определен резервен коренен комутатор, задавайки му малко по-висок Bridge Priority (например, 4096).

Подробности за реализацията на протоколите RSTP и собственосттa на Extended Ring Redundancy
Избор на пътя до кореновия комутатор

Кореновият комутатор разпространява пакети BPDU до всички активни портове. BPDU има поле Path Cost. Path Cost обозначава цената на пътя. Колкото по-висока е цената на пътя, толкова по-дълго време отнема пакетът да премине по него. Когато BPDU премине през порт, цената се добавя в полето Path Cost. Добавеното число се нарича Port Cost.

Подробности за реализацията на протоколите RSTP и собственосттa на Extended Ring Redundancy

Към Path Cost се добавя определена стойност, когато BPDU преминава през определен порт. Тази стойност, която се добавя, се нарича Port Cost и може да бъде определена ръчно или автоматично. Port Cost може да бъде определен ръчно или автоматично.

Когато некореновият комутатор има няколко алтернативни пътища до кореновия комутатор, той избира най-бързия. Той сравнява Path Cost на тези пътища. Портът, от който е дошъл BPDU с най-нисък Path Cost, става коренов порт (Root Port).

Подробности за реализацията на протоколите RSTP и собственосттa на Extended Ring Redundancy

Подробности за реализацията на протоколите RSTP и собственосттa на Extended Ring Redundancy

Подробности за реализацията на протоколите RSTP и собственосттa на Extended Ring Redundancy

Цените на портовете, които се присвояват автоматично, могат да бъдат видени в таблицата:

Скорост на предаване на порта
Цена на порта

10 Мб/с
2 000 000

100 Мб/с
200 000

1 Гб/с
20 000

10 Гб/с
2 000

Роли и статуси на портовете

Портовете на комутатора имат няколко статуса и роли.

Статуси на портовете (за STP):

  • Disabled – неактивен.
  • Blocking – слуша BPDU, но не предава. Данни не се предават.
  • Listening – слуша и предава BPDU. Данни не се предават.
  • Learning – слуша и предава BPDU. Подготвя се за предаване на данни – запълва таблицата с MAC адреси.
  • Forwarding – предава данни, слуша и предава BPDU.

Времето за конвергенция на STP е 30-50 секунди. След включване на комутатора всички портове преминават през всички статуси. Във всеки статус портът остава няколко секунди. Поради този принцип на работа STP има така дълго време за конвергенция. RSTP има по-малко статуси на портовете.

Статуси на портовете (за RSTP):

  • Discarding – неактивен.
  • Discarding – слуша BPDU, но не предава. Данни не се предават.
  • Discarding – слуша и предава BPDU. Данни не се предават.
  • Learning – слуша и предава BPDU. Подготвя се за предаване на данни – запълва таблицата с MAC адреси.
  • Forwarding – предава данни, слуша и предава BPDU.
  • В RSTP статусовете Disabled, Blocking и Listening са обединени в един – Discarding.

Роли на портовете:

  • Root port – порт, през който се предават данни. Той служи за най-бързия маршрут до кореновия комутатор.
  • Designated port – порт, през който се предават данни. Определен за всеки сегмент на LAN.
  • Alternate port – порт, през който данните не се предават. Той е алтернативен път до кореновия комутатор.
  • Backup port – порт, през който данните не се предават. Той служи като резервен път за сегмента, в който вече е свързан един порт с поддръжка на RSTP. Backup port се използва, ако два канала на превключвателя са свързани към един сегмент (чети хъб).
  • Disabled port – на този порт RSTP е изключен.

Изборът на Root Port е описан по-горе. Как се избира Designated port?

П първо да определим какво е LAN сегмент. LAN сегмент – това е колизионен домейн. За превключвателя или маршрутизатора всеки порт образува отделен колизионен домейн. LAN сегмент – канал между превключватели или маршрутизатори. Ако говорим за хъб, то при него всички портове са в един колизионен домейн.

На един сегмент може да се назначи само един Designated Port.

В случай на сегменти, където вече има Root Port’ове, всичко е ясно. Вторият порт на сегмента става Designated Port.

Подробности за реализацията на протоколите RSTP и собственосттa на Extended Ring Redundancy

Но остават резервни канали, където ще има един Designated Port и един Alternate Port. Как ще се избират те? Designated Port ще бъде портът с най-ниския Path Cost до кореновия превключвател. Ако Path Cost са равни, Designated Port ще бъде този порт, който е разположен на превключвател с най-ниския Bridge ID. Ако и Bridge ID също са равни, Designated Port става порт с най-ниския номер. Вторият порт ще бъде Alternate.

Подробности за реализацията на протоколите RSTP и собственосттa на Extended Ring Redundancy

Подробности за реализацията на протоколите RSTP и собственосттa на Extended Ring Redundancy

Остана последният момент: кога на порту се назначава роля на Backup? Както вече бе споменато, Backup port се използва само когато два канала на превключвателя са свързани към един сегмент, тоест към хъб. В този случай Designated Port се избира точно по същите критерии:

  • Най-нисък Path Cost до кореновия превключвател.
  • Най-нисък Bridge ID.
  • Най-нисък Port ID.

Максимален брой устройства в мрежата

Стандартът IEEE 802.1D не установява строги изисквания за броя на устройствата в LAN с RSTP. Но стандартът препоръчва да не се използват повече от 7 превключвателя в една клонка (не повече от 7 хопа), т.е. не повече от 15 в пръстен. При превишаване на това значение времето на конвергенция на мрежата започва да се увеличава.

Подробности за реализацията на ERR.

Общи сведения

Време на сближаване

Времето на конвергенция на ERR е 15 мс. При максимален брой превключватели в пръстен и наличие на свързване на пръстени – 18 мс.

Възможни топологии

ERR не позволява свободно обединяване на устройства, както RSTP. ERR има ясни топологии, които могат да се използват:

  • Пръстен
  • Дублиран пръстен
  • Свързване до три пръстена

Подробности за реализацията на протоколите RSTP и собственосттa на Extended Ring Redundancy
Пръстен

Подробности за реализацията на протоколите RSTP и собственосттa на Extended Ring Redundancy

Когато ERR свързва всички комутатори в едно пръстеновидно схеми, на всеки комутатор трябва да се конфигурират портове, които да участват в изграждането на пръстена.

Двойно пръстеновидно
Подробности за реализацията на протоколите RSTP и собственосттa на Extended Ring Redundancy

Комутаторите могат да бъдат свързани в двойно пръстеновидно, което значително увеличава надеждността на пръстена.

Ограничения на двойното пръстеновидно:

  • Двойното пръстеновидно не може да се използва за свързване на комутатори с други пръстенови схеми. За това е необходимо да се използва Ring Coupling.
  • Двойното пръстеновидно не може да се използва за свързване на пръстенови схеми.

Подробности за реализацията на протоколите RSTP и собственосттa на Extended Ring Redundancy

Подробности за реализацията на протоколите RSTP и собственосттa на Extended Ring Redundancy
Свързване на пръстенови схеми

Подробности за реализацията на протоколите RSTP и собственосттa на Extended Ring Redundancy

При свързването в мрежата не може да има повече от 200 устройства.

Свързването на пръстеновите схеми предполага обединение на останалите пръстенови схеми в още един пръстен.

Ако пръстенът се свързва със свързването на пръстенови схеми чрез един комутатор, то това се нарича свързване на пръстенови схеми чрез един комутатор. Ако към свързването на пръстенови схеми се свързват два комутатора от локалния пръстен, това ще бъде свързване чрез два комутатора.

При свързването чрез един комутатор на устройството са ангажирани и двата порта. Времето за свързване в този случай ще бъде около 15-17 мс. При такова свързване комутаторът за свързване ще бъде точка на отказ, тъй като при загуба на този комутатор се губи всичко в пръстена. Свързването чрез два комутатора позволява да се избегне това.

Подробности за реализацията на протоколите RSTP и собственосттa на Extended Ring Redundancy

Подробности за реализацията на протоколите RSTP и собственосттa на Extended Ring Redundancy

Възможно е свързването на дублирани пръстенови схеми.

Подробности за реализацията на протоколите RSTP и собственосттa на Extended Ring Redundancy

Path Control
Подробности за реализацията на протоколите RSTP и собственосттa на Extended Ring Redundancy

Функцията Path Control позволява конфигурирането на портове, през които данните ще се предават в нормален режим на работа. Ако каналът се провали и мрежата се пренастрои на резервна топология, след възстановяването на канала, мрежата ще се пренастрои обратно на зададената топология.

Тази функция позволява спестяване от резервен кабел. Освен това винаги ще бъде известна използваната топология за отстраняване на проблеми.

Основната топология превключва на резервната за 15 мс. Обратното превключване при възстановяване на мрежата ще отнеме около 30 мс.

Ограничения:

  • Не може да бъде използвана заедно с Dual Ring.
  • Функцията трябва да бъде активирана на всички комутатори в мрежата.
  • Един от комутаторите се конфигурира като основен Path Control.
  • Автоматичното преминаване на основната топология след възстановяване се осъществява за 1 секунда по подразбиране (този параметър може да бъде променен чрез SNMP в диапазона от 0 s до 99 s).

Принцип на работа

Подробности за реализацията на протоколите RSTP и собственосттa на Extended Ring Redundancy

Принцип на работа на ERR

За пример вземаме шест комутатора – 1-6. Комутаторите са свързани в пръстен. Всеки комутатор използва два порта за свързване с пръстена и съхранява статусите им. Комутаторите предават статусите на портовете помежду си. Тези данни устройствата използват за установяване на началното състояние на портовете.

Подробности за реализацията на протоколите RSTP и собственосттa на Extended Ring Redundancy
Портовете имат само две роли – Блокиран и Forwarding.

Комутаторът с най-голям MAC адрес блокира своя порт. Всички останали портове в пръстена предават данни.

Ако Blocked port спре да работи, следващият порт с най-голям MAC адрес става Blocked.

След зареждане комутаторите започват да изпращат Ring Protocol Data Unit (R-PDU). R-PDU се предава чрез multicast. R-PDU е съобщение за услуги, подобно на BPDU в RSTP. R-PDU съдържа статусите на портовете на комутатора и неговия MAC адрес.

Алгоритъм на действие при отказ на канала
Когато каналът отказва, комутаторите изпращат R-PDU, за да уведомят за промяна в статусите на портовете.

Алгоритъм на действие при възстановяване на канала
Когато отказалият канал се пусне в работа, комутаторите изпращат R-PDU, за да уведомят за промяна в статусите на портовете.

Комутаторът с най-голям MAC адрес става новият коренен комутатор.

Отказалият канал става резервен.

Подробности за реализацията на протоколите RSTP и собственосттa на Extended Ring Redundancy

Подробности за реализацията на протоколите RSTP и собственосттa на Extended Ring Redundancy

Подробности за реализацията на протоколите RSTP и собственосттa на Extended Ring Redundancy

Подробности за реализацията на протоколите RSTP и собственосттa на Extended Ring Redundancy

Подробности за реализацията на протоколите RSTP и собственосттa на Extended Ring Redundancy

След възстановяване един от портовете на канала остава блокиран, а вторият преминава в състояние forwarding. Блокиран порт става портът с най-висока скорост. Ако скоростите са равни, блокиран ще стане портът на комутатора с най-голям MAC адрес. Този принцип позволява да се блокира порт, който ще премине от състояние blocked в състояние forwarding с максимална скорост.

Подробности за реализацията на протоколите RSTP и собственосттa на Extended Ring Redundancy

Максимален брой устройства в мрежата

Максималният брой комутатори в ERR пръстен е 200.

Взаимодействие между ERR и RSTP

RSTP може да се използва в комбинация с ERR. Но пръстенът на RSTP и пръстенът на ERR трябва да се пресичат само през един комутатор.

Подробности за реализацията на протоколите RSTP и собственосттa на Extended Ring Redundancy

Резюме

ERR е отлично решение за организиране на стандартни топологии. Например, пръстен или дублирана пръстен.

Подробности за реализацията на протоколите RSTP и собственосттa на Extended Ring Redundancy

Подробности за реализацията на протоколите RSTP и собственосттa на Extended Ring Redundancy

Тези топологии често се използват за резервиране в индустриални обекти.

Освен това, с помощта на ERR втората топология може да бъде реализирана по-малко надеждно, но по-бюджетно. Това може да се постигне с дублиран пръстен.

Подробности за реализацията на протоколите RSTP и собственосттa на Extended Ring Redundancy

Но не винаги може да се приложи ERR. Има достатъчно екзотични схеми. С един от нашите клиенти тестувахме следната топология.

Подробности за реализацията на протоколите RSTP и собственосттa на Extended Ring Redundancy

В този случай прилагането на ERR не е възможно. За тази схема използвахме RSTP. Клиентът имаше строго изискване за време на конвергенция – по-малко от 3 секунди. За да постигнем това време, беше необходимо точно да се определят кореновите суичове (основен и резервен), а също така и цената на портовете в ръчен режим.

В резултат на това, ERR значително печели по време на конвергенция, но не предоставя такава гъвкавост, каквато предлага RSTP.

Източник: habr.com

Купете надежден хостинг за сайтове със защита от DDoS, VPS и VDS сървъри 🔥 Купете надежден хостинг за сайтове със защита от DDoS, VPS и VDS сървъри | ProHoster