Протокол SPBm как основа Extreme Automated Campus

в 18:29, , рубрики: Extreme Automated Campus, Extreme Networks, IEEE 8021aq, IT-стандарты, RFC6329, SPBm, Блог компании Extreme Networks, Сетевое оборудование, Сетевые технологии

Решения компании Extreme Networks «Extreme Automated Campus» обеспечивают возможность одновременного использования множества путей передачи и быстрого восстановления в случае аварии. Сеть, состоящая из множества физических коммутаторов, представляет собой один распределённый. Трафик, при этом, всегда идет по кратчайшему доступному пути.
«Extreme Automated Campus» — это в основе своей построение Ethernet Fabric на основе симбиоза стандартов IEEE 802.1ah, 802.1aq и RFC6329. Как это работает, почему это легко и удобно инсталлируется, масштабируется и администрируется раскроем в нашей статье.

image


“Data plane” фабрики — это реализация IEEE 802.1ah, когда ethernet пакет полностью, вместе с заголовком, инкапсулируется в новый ethernet пакет, собственно поэтому он и называется MAC-in-MAC или еще PBB (Provider Backbone Bridges). Так как MAC-in-MAC уже поддерживается аппаратно большинством выпускаемых на рынок чипсетов, это, собственно, и предопределило его большую популярность в сравнении с протоколом TRILL.

image

В заголовке 802.1ah, кроме MAC адресов и номера backbone VLAN, которые необходимы для пересылки пакетов между нодами фабрики, также передается поле I-SID (Individual Service ID), которое определяет принадлежность пользовательского трафика к тому или иному сервису. I-SID поле имеет длину 24 bit, соответственно теоретически фабрика может коммутировать более 16,7 млн различных сервисов.

image

«Control Plane» фабрики является протокол SPB «Shortest Path Bridging», который утверждён стандартом IEEE 802.1aq. Сам стандарт описывает два различных режима работы SPBv и SPBm, на основе VLAN и MAC-in-MAC соответственно. В нашем конкретном случае реализован SPBm. Стандарт вводит определенную новую терминологию:

image

BEB – Backbone Edge Bridge
BCB – Backbone Core Bridge
B-VLAN – Backbone VLAN
C-VLAN — Customer VLAN
UNI – User to Network Interface
NNI – Network to Network Interface
VSN – Virtual Service Network

Сами термины в пояснении не особо нуждаются, ну а тем, кто знаком с MPLS они напомнят такие применяемые термины как P-router, PE-router, LSP, L2/L3VPN …

Непосредственно логика работы SPBm реализуется с помощью протокола IS-IS. В RFC6329“IS-IS Extensions Supporting IEEE 802.1aq Shortest Path Bridging” описаны дополнительные TLV необходимые для корректной работы SPB.

image

Все коммутаторы, включенные в фабрику, сначала устанавливают соседство с помощью IS-IS и затем формируют L1 IS-IS area. Потом каждая нода вычисляет с помощью алгоритма Дейкстры SPT (Shortest Path Tree) от себя ко всем другим нодам. Далее с помощью IS-IS происходит заполнение FIB B-VLAN. Для B-VLAN отключены «flooding, broadcasting, learning», порты вручную тоже добавить нельзя. Собственно, именно поэтому магистральные МАС адреса всегда известны и находятся под операторским контролем, С-МАС инкапсулированы в 802.1ah заголовок и внутри фабрики никакого изучения этих МАС не происходит.
Для Unicast рассчитывается единственный вариант SPT в каждом настроенном B-VLAN. Пример заполненного FIB Unicast может выглядеть следующим образом.

Switch# show isis spbm unicast-fib
================================================================================
                          SPBM UNICAST FIB ENTRY INFO
================================================================================
DESTINATION          BVLAN SYSID          HOST-NAME    OUTGOING       COST
ADDRESS                                                INTERFACE
--------------------------------------------------------------------------------
00:16:ca:23:73:df   1000  0016.ca23.73df  SPBM-1        1/21            10
00:16:ca:23:73:df   2000  0016.ca23.73df  SPBM-1        1/21            10
00:18:b0:bb:b3:df   1000  0018.b0bb.b3df  SPBM-2        MLT-2           10
00:14:c7:e1:33:e0   1000  0018.b0bb.b3df  SPBM-2        MLT-2           10
00:18:b0:bb:b3:df   2000  0018.b0bb.b3df  SPBM-2        MLT-2           10
--------------------------------------------------------------------------------
 Total number of SPBM UNICAST FIB entries 5
--------------------------------------------------------------------------------

Для Multicast вычисляются все возможные пары SPT

image

Например, для сервиса терминируемого на 4-х BEB будет произведен расчёт 4 SPT для каждого B-VLAN. Каждое такое SPT рассчитывается на основе I-SID сконфигурированного сервиса и BEB который является рутом этого дерева. Каждая SPBM нода имеет свой мультикаст адресс для каждого VSN. Этот адрес (согласно стандарта) состоит из 2-х частей “Nickname/Source B-MAC” + “I-SID”

Например:

image

Source: 0A-BC-DE / ISID: fe-dc-ba (I-SID 16 702 650)
MMAC-DA: A3-BC-DE-FE-DC-BA

( A-сдвигается на место “MSB” верхних четыре бита; 3 – фиксированое значение)

Пример заполненного multicast FIB:

Switch:1(config)#show isis spbm multicast-fib
==========================================================================================
                              SPBM MULTICAST FIB ENTRY INFO
==========================================================================================
MCAST DA           ISID     BVLAN SYSID       HOST-NAME   OUTGOING-INTERFACES  INCOMING
                                                                                INTERFACE
------------------------------------------------------------------------------------------
03:00:07:e4:e2:02  15000066 1001  0077.0077.0077 Switch-25  1/33            MLT-2
03:00:08:e4:e2:02  15000066 1001  0088.0088.0088 Switch-33  1/50,1/33       40.40.40.40
03:00:41:00:04:4d  1101     4058  00bb.0000.4100 Switch-1(*)1/3,1/49,0.0.0.0 TunnelHQ
03:00:41:00:04:4f  1103     4058  00bb.0000.4100 Switch-1(*)1/3,1/49,0.0.0.0 cpp
------------------------------------------------------------------------------------------
Total number of SPBM MULTICAST FIB entries 4
------------------------------------------------------------------------------------------

Для предотвращения образования петель фабрика использует RPFC (Reverse Path Forwarding Check), логика работы которого обеспечивается также с помощью IS-IS. При RPFC трафик принимается только от валидного «source B-MAC/VLAN», остальные пакеты отбрасываются.
Собственно, после этого остается только прописать необходимые сервисы, настойка которых производится только на границе фабрики (то есть BEB коммутаторах).
Примеры поддерживаемых сервисов представлены ниже.

image

К особенностям при работе с IP мультикаст потоками необходимо отнести следующее:

  • В уже существующем VSN при получении IP мультикаст потока фабрика присваивает служебный I-SID (16000001 — 16600000) и рассылает эту информацию в виде TLV 185/186
  • После получения IGMP join в этом VSN, фабрика просчитывает SPT для служебного I-SID и заполняет FIB

Достоинства «Extreme Automated Campus»:

• Работает на открытых стандартах
• Поддержка стандартных инструментов Ethernet OAM – IEEE 802.1ag и ITU-T Y.1731
• IS-IS работает на уровне L2, не требуется настройка IP внутри фабрики
• SPT (Shortest path tree) рассчитывается на основе метрик и при этом нет заблокированных линков
• Нет необходимости настройки STP в ядре фабрики
• Все участники фабрики после расчётов обладают одним и тем же набором SPT
• Симметричный пути между любыми двумя узлами
• RPFC (Reverse Path Forwarding Check) устраняет петли
• Поддержка ECMP (Equal Cost Multiple Paths) для балансировки
• Поддержка рассылки мультикаста “1-many”, “many-1”, “many-many”
• Фабрика является одним виртуальным хопом для пользовательского трафика
• Работа фабрики поверх любой физической топологии: ring, full-mesh, partial-mesh, daisy-chain…
• Высокая масштабируемость до 1000 нод в одной фабрике
• Настройка сервисов только на границе фабрики
• Минимизация человеческого фактора
• Сходимость после сбоев до 200мс

UPD: Образ виртуальной машины VOSS для тестирования «Extreme Automated Campus» можно скачать на github.

Автор: NikolayN

Источник


* - обязательные к заполнению поля


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js