В настоящее время для повышения надежности и производительности каналов связи в распоряжении
Протокол связующего дерева Spanning Tree Protocol (STP) является протоколом 2 уровня модели OSI, который позволяет строить древовидные, свободные от петель, конфигурации связей между коммутаторами локальной сети. Помимо этого, алгоритм обеспечивает возможность автоматического резервирования альтернативных каналов связи между коммутаторами на случай выхода активных каналов из строя.
В настоящее время существуют следующие версии протоколов связующего дерева:
Если для обеспечения избыточности между коммутаторами создается несколько соединений, то могут возникать коммутационные петли. Петля предполагает существование нескольких маршрутов по промежуточным сетям, а сеть с несколькими маршрутами между источником и приемником отличается повышенной отказоустойчивостью. Хотя наличие избыточных каналов связи очень полезно, петли, тем не менее, создают проблемы, самые актуальные из которых:
Широковещательный шторм.
Распространение широковещательных сообщений в сетях с петлями представляет серьезную проблему. Предположим, что первый кадр, поступивший от одного из узлов, является широковещательным. Тогда все коммутаторы будут пересылать кадры бесконечно, как показано на рис. 11.1 (пример 1), используя всю доступную полосу пропускания сети и блокируя передачу других кадров во всех сегментах.
Множественные копии кадров.
Еще одна проблема заключается в том, что коммутатор нередко получает несколько копий одного кадра, одновременно приходящих из нескольких участков сети. В этом случае
Множественные петли.
Одна из самых сложных проблем — это множественные петли, образующиеся в объединенной сети. Возможно появление петли внутри других петель. Если за этим последует широковещательный шторм, то сеть не сможет выполнять коммутацию кадров.
(рис 11.1) Примеры петель между коммутаторами
Для решения этих проблем и был разработан протокол связующего дерева, который был определен в стандарте
Коммутаторы, поддерживающие протокол
Для построения устойчивой активной топологии с помощью протокола
Процесс вычисления связующего дерева начинается с выбора корневого моста (Root Bridge), от которого будет строиться дерево. В качестве корня дерева выбирается коммутатор с наименьшим значением идентификатора моста. Идентификатор моста — это 8-байтное поле, которое состоит из 2-х частей: приоритета моста (2 байта), назначаемого администратором сети, и МАС-адреса блока управления коммутатора (6 байт). При сравнении идентификаторов двух коммутаторов сначала сравниваются значения приоритетов. Корневым мостом становится коммутатор с наименьшим значением приоритета. Если они одинаковы (по умолчанию приоритет равен 32768), то корневой мост определяется по наименьшему МАС-адресу.
Для того чтобы в качестве корневого моста было выбрано определенное устройство (исходя из структуры сети), администратор может вручную назначить соответствующему коммутатору наименьший приоритет.
Второй этап работы
Когда процесс выбора корневого моста завершен, оставшиеся коммутаторы сети определяют стоимость каждого возможного пути от себя до корня дерева. Стоимость пути рассчитывается как суммарное условное время на передачу данных от порта данного коммутатора до порта корневого моста. Условное время сегмента рассчитывается как время передачи одного бита информации через канал с определенной полосой пропускания. Стоимости пути по умолчанию для каждого канала определены в стандарте
Сравнив стоимости всех возможных маршрутов до корня, каждый коммутатор выбирает среди них один с наименьшим значением стоимости. Порт, соединяющий коммутатор с этим маршрутом, становится корневым портом. В случае если минимальные стоимости пути нескольких маршрутов окажутся одинаковыми, корневым портом станет порт, имеющий наименьшее значение идентификатора порта.
(рис 11.2) Пример функционирование протокола STP
Третий шаг работы
Каждый сегмент в коммутируемой сети имеет один назначенный порт. Этот порт функционирует как единственный порт моста, т.е. принимает кадры от сегмента и передает их в направлении корневого моста через корневой порт данного коммутатора. Коммутатор, содержащий назначенный порт для данного сегмента, называется назначенным мостом (Designated Bridge) этого сегмента. Назначенный порт сегмента определяется путем сравнения значений стоимости пути всех маршрутов от данного сегмента до корневого моста. Им становится порт, имеющий наименьшее значение стоимости, среди всех портов, подключенных к данному сегменту. Если минимальные значения стоимости пути окажутся одинаковыми у двух или нескольких портов, то для выбора назначенного порта сегмента
У корневого моста все порты являются назначенными, а их расстояние до корня полагается равным нулю. Корневого порта у корневого моста нет.
После выбора корневых и назначенных портов все остальные порты коммутаторов сети переводятся в состояние Blocking ("Блокировка"), то есть такое, при котором они принимают и передают только кадры BPDU. При таком выборе активных портов в сети исключаются петли, и оставшиеся связи образуют связующее дерево.
Вычисление связующего дерева происходит при включении коммутатора и при изменении топологии. Эти вычисления требуют периодического обмена информацией между коммутаторами связующего дерева, что достигается при помощи специальных кадров, называемых блоками данных протокола моста — BPDU (
Коммутатор отправляет BPDU, используя уникальный МАС-адрес порта в качестве адреса-источника и многоадресный МАС-адрес протокола
Существует три типа кадров BPDU:
Коммутаторы обмениваются BPDU через равные интервалы времени (по умолчанию 2 сек.), что позволяет им отслеживать состояние топологии сети.
| поля | Байты |
|---|---|
| Идентификатор протокола (Protocol Identifier) | 2 |
| Версия протокола (Protocol Version Identifier) | 1 |
| Тип BPDU (BPDU Type) | 1 |
| Флаги ( | 1 |
| Идентификатор корневого моста (Root Identifier) | 8 |
| Расстояние до корневого моста (Root | 2 |
| Идентификатор моста ( | 8 |
| Идентификатор порта (Port Identifier) | 2 |
| Время жизни сообщения (Message Age) | 2 |
| Максимальное время жизни сообщения (Max Age) | 2 |
| Время приветствия (Hello Time) | 2 |
| Задержка смены состояний (Forward | 2 |
Кадр BPDU состоит из следующих полей:
Protocol Identifier) — 2 байта. Значение всегда равно 0;Protocol Version Identifier) — 1 байт. Значение всегда равно 0;BPDU Type) — 1 байт. Значение "00" — конфигурационный BPDU, "01" — изменение топологии;Flags) — 1 байт. Бит 1 — флаг изменения топологии, бит 8 — флаг подтверждения изменения топологии;Root Identifier) — 8 байтов. Идентификатор текущего корневого моста;Root Path Cost ) — 2 байта. Суммарная стоимость пути до корневого моста;Bridge Identifier) — 8 байтов. Идентификатор текущего моста;Port Identifier) — 2 байта. Уникальный идентификатор порта, который отправил этот BPDU;Message Age) — 2 байта. Нефиксированный временной интервал в секундах, прошедший с момента отправки BPDU корневым мостом. Служит для выявления устаревших сообщений BPDU. Первоначальное значение равно нулю. По мере передачи кадра BPDU по сети каждый коммутатор добавляет ко времени жизни сообщения время его задержки данным коммутатором. По умолчанию оно равно 1 сек. Значение параметра Message Age должно быть меньше значения таймера Max Age;Max Age) — 2 байта. Временной интервал в секундах, определяющий максимальное время хранения конфигурации Hello Time) — 2 байта. Временной интервал в секундах, через который посылаются кадры BPDU;Forward Delay ) — 2 байта. Временной интервал в секундах, в течение которого порт коммутатора находится в состояниях "Прослушивание" и "Обучение".В процессе построения топологии сети каждый порт коммутатора проходит несколько стадий:
(рис 11.3) Состояния портов
В процессе нормальной работы корневой мост продолжает генерировать служебные кадры BPDU, а остальные коммутаторы продолжают их принимать своими корневыми портами и ретранслировать назначенными. Если по истечении максимального времени жизни сообщения (по умолчанию — 20 секунд) корневой порт любого коммутатора сети не получит служебный кадр BPDU, то он инициализирует новую процедуру построения связующего дерева.
Для того чтобы все коммутаторы сети имели возможность получить точную информацию о конфигурации связующего дерева, в протоколе
Hello Time — это интервал времени, через который корневой мост отправляет конфигурационные BPDU. Значение таймера Hello Time, настроенное на корневом мосте, будет определять значения таймеров Hello Time на всех некорневых коммутаторах, т.к. они просто пересылают конфигурационные BPDU, когда получают их от корня. Значение таймера Hello Time по умолчанию 2 секунды: диапазон возможных значений от 1 до 10 секунд.
Forward Delay — это интервал времени, в течение которого порт коммутатора находится в состояниях "Прослушивание" и "Обучение". Такая задержка смены состояний необходима, чтобы исключить возможность временного возникновения альтернативных маршрутов при неодновременной смене состояний портов во время 15 секунд. диапазон возможных значений от 4 до 30 секунд.
Max Age — это интервал времени, в течение которого коммутатор хранит параметры текущей конфигурации связующего дерева. Значение таймера Max Age устанавливается корневым мостом и позволяет гарантировать, что все коммутаторы сети обладают одинаковой информацией о времени хранения конфигурации 20 секунд, диапазон возможных значений от 6 до 40 секунд.
Значения таймеров Hello Time, Forward
Коммутатор отправляет BPDU с уведомлением об изменении топологии (
TCN BPDU отправляется коммутатором в тот сегмент сети, к которому подключен его корневой порт. Эти BPDU будут передаваться через интервал Hello до тех пор, пока коммутатор не получит подтверждение
(рис 11.4) Процесс уведомления об изменении топологии
Когда корневой мост получает TCN BPDU или сам изменяет топологию, он устанавливает во всех передаваемых конфигурационных BPDU флаг изменения топологии (
Управляемые коммутаторы D-Link при настройке функции
Рассмотрим пример настройки
(рис 11.5) Схема сети
Настройка коммутатора 1
enable stp config stp version stp
32768)
config stp priority 4096 instance_id 0
config stp ports 1-24 edge true
Настройка коммутатора 2
enable stp config stp version stp config stp ports 1-24 edge true
Протокол Rapid
Основные понятия и терминология протоколов
(рис 11.6) Состояния портов протоколов STP и RSTP
| Состояние порта | Административное состояние порта коммутатора | Порт изучает МАС-адреса? | Состояние порта | Роль порта в активной топологии |
|---|---|---|---|---|
| Disable | Disabled | Нет | Исключен (Disabled) | |
| Disable | Enabled | Нет | Исключен (Disabled) | |
| Blocking | Enabled | Да | Исключен (Alternate, Backup) | |
| Listening | Enabled | Да | Включен (Root, Designated) | |
| Enabled | Да | Включен (Root, Designated) | ||
| Forwarding | Enabled | Да | Forwarding | Включен (Root, Designated) |
Выбор активной топологии завершается присвоением протоколом
Корневой порт — это порт коммутатора, который имеет по сети кратчайшее расстояние (в терминах стоимости пути) до корневого коммутатора.
Порт является назначенным, если он посылает BPDU с наилучшими параметрами в тот сегмент, к которому подключен.
Роли "корневой порт" и "назначенный порт" включают порт в активную топологию.
В
(рис 11.7) Корневой порт
(рис 11.8) Назначенный порт
Альтернативный порт предлагает альтернативный основному маршруту путь в направлении корневого моста и может заменить корневой порт в случае выхода его из строя.
(рис 11.9) Альтернативный порт
Резервный порт предназначен для резервирования пути, предоставляемого назначенным портом в направлении сегментов сети, и не может гарантировать альтернативное подключение к корневому мосту. Резервные порты существуют только в конфигурациях, где есть два или более соединения данного моста с данной сетью (сегментом сети).
(рис 11.10) Резервный порт
Формат кадра BPDU протокола
0000 0000 и показывает, что BPDU не содержит никакой информации протокола Процесс построения связующего дерева у протоколов
| поле | Байты |
|---|---|
| Идентификатор протокола (Protocol Identifier) | 2 |
| Версия протокола (Protocol Version Identifier) | 1 |
| Тип BPDU (BPDU Type) | 1 |
| Флат ( | 1 |
| Идентификатор корневого моста (Root Identifier) | 8 |
| Расстояние до корневого моста (Root | 2 |
| Идентификатор моста ( | 8 |
| Идентификатор порта (Port Identifier) | 2 |
| Время жизни сообщения (Message Age) | 2 |
| Максимальное время жизни сообщения (Max Age) | 2 |
| Время приветствия (Hello Time) | 2 |
| Задержка смены состояний (Forward | 2 |
| Длина версии 1 (Version 1 Length) | 1 |
(рис 11.11) Формат кадра BPDU протокола RSTP
Граничным портом (Edge Port) объявляется порт, непосредственно подключенный к сегменту сети, в котором не могут быть созданы петли. Например, порт подключен к рабочей станции, которая может периодически включаться или выключаться и активизировать механизм уведомления об изменении топологии или чтобы избежать распространения вычислений
При работе протокола
Порты, удовлетворяющие, по крайней мере, одному из следующих условий, автоматически рассматриваются протоколом
Администратор сети может вручную включать или выключать статусы Edge и
(рис 11.12) Граничные порты и порты "точка — точка"
На рис. 11.13 показан процесс работы механизма предложений и соглашений. Коммутаторы АиВ соединены между собой каналом типа "точка — точка". Предположим, что коммутатор А является корневым мостом сети. Коммутатор А посылает коммутатору В кадр BPDU с установленным флагом Proposal (шаг 1 на рис. 11.12 ), предлагая себя в качестве назначенного моста этого сегмента (BPDU-предложение будет передаваться только в том случае, если порт находится в состоянии
Порт является синхронизированным "in-sync", если он удовлетворяет следующим критериям:
Discarding в стабильной топологии);Чтобы продемонстрировать действие метода синхронизации на различные типы портов, предположим, что в коммутаторе В имеются граничные порты p3 и р5 и назначенный порт p4. Порты p3 и p5 уже удовлетворяют одному из условий синхронизации. Чтобы находиться в режиме синхронизации (шаг 2 на рис. 11.12 ), коммутатору В необходимо заблокировать порт р4, переведя его в состояние .
После того, как коммутатор В убедится, что все порты синхронизированы, он разблокирует свой новый корневой порт (шаг 3 на рис. 11.12 ) и отправит через него коммутатору А согласие на предложение. Это сообщение является копией BPDU-предложения, в котором вместо бита Proposal установлен бит Agreement. Благодаря этому порт pi коммутатора А точно знает, какому предложению соответствует полученное согласие.
После этого коммутатор А мгновенно переведет свой назначенный порт р1 в состояние продвижения.
(рис 11.13) Механизм предложений и соглашений
Находясь в заблокированном состоянии порт р4 коммутатора В начнет отсылать предложения нижележащему коммутатору и пытаться быстро перейти в состояние продвижения (шаг 4 на рис. 11.12 ).
1. Определение изменений топологии.
В протоколе
TC While равным удвоенному интервалу Hello для всех неграничных назначенных портов и корневого порта. While Timer — это интервал времени, в течение которого мост TC While, запущенным на порте, в BPDU, отправляемых через него, будет установлен бит ТС.2. Распространение информации об изменении топологии.
Когда коммутатор получает от соседа BPDU с установленным битом ТС, происходит следующее:
TC While и отправляет BPDU с установленным битом ТС через все неграничные порты (Коммутатор-отправитель BPDU с битом ТС непосредственно распространяет информацию об изменении топологии через всю сеть (в отличие от Forward и Max Age.
(рис 11.14) Новый механизм изменения топологии
Протокол
| Параметр | Скорость канала | Рекомендованное значение | Рекомендованный диапазон | Диапазон значений |
|---|---|---|---|---|
| Стоимость пути | 10 Мбит/с | 2 000 000 | 200 000— 20 000 000 | 1— 200 000 000 |
| Стоимость пути | 100 Мбит/с | 200 000 | 20 000— 2 000 000 | 1— 200 000 000 |
| Стоимость пути | 1 Гбит/с | 20 000 | 2 000—200 000 | 1— 200 000 000 |
| Стоимость пути | 10 Гбит/с | 2 000 | 200—20 000 | 1— 200 000 000 |
Протокол
Каждый порт хранит переменную, определяющую тип протокола, используемого в соответствующем сегменте. При включении порта активизируется таймер задержки миграции (Migration delay timer) длительностью 3 секунды. При запуске этого таймера текущий режим (
Предположим, что коммутаторы А и В (рис 11.14) работают в режиме
(рис 11.15) Пример совместной работы коммутаторов STP и RSTP
Коммутатор А получает эти BPDU и после истечения периода времени, установленного таймером задержки миграции, переходит на этом порте в режим работы
Следует отметить, что если бы в этом частном случае коммутатор С был удален из сегмента, то коммутатор А остался бы работать в режиме
Настройка протокола
(рис 11.16) Схема сети
Настройка коммутатора 1
enable stp config stp version rstp
32768)
config stp priority 4096 instance_id 0
config stp ports 1-24 edge true
Настройка коммутатора 2
enable stp config stp version rstp config stp ports 1-24 edge true
Несмотря на то, что протокол
Протокол Multiple
Протокол
(рис 11.17) Физическая и логическая топология региона MST
(рис 11.18) Регион MST
Для того чтобы два и более коммутатора принадлежали одному региону
Конфигурация
Внутри коммутируемой сети может быть создано множество
Протокол
Internal Spanning Tree (IST) — специальная копия связующего дерева, которая по умолчанию существует в каждом
Common Spanning Tree (CST) — единое связующее
Common and Internal Spanning Tree (CIST) — единое связующее дерево, объединяющее
(рис 11.19) Логическая структура MSTP
Single Spanning Tree (SST) Bridge — мост, поддерживающий только-единственное связующее дерево,
По умолчанию все VLAN данного
MSTI обладают следующими характеристиками:
Для того чтобы каждая MSTI представляла собой отдельную от
Формат
Прежде чем начать рассматривать вопрос вычисления активной топологии
(рис 11.20) Формат MSTP BPDU
Процесс вычисления в
Первоначально каждый коммутатор сети считает себя корневым мостом
Коммутатор перестанет заявлять себя в качестве корневого моста
Одновременно с выбором корневого моста
Им становится коммутатор, обладающий наименьшей внешней стоимостью пути к корню
В случае наличия в регионе коммутаторов с одинаковой стоимостью пути в качестве
Протокол
При наличии в регионе отдельных связующих деревьев MSTI, для каждой MSTI, независимо от остальных, выбирается региональный корневой мост MSTI (MSTIRegional Root). Им становится коммутатор, обладающий наименьшим значением идентификатора моста среди всех коммутаторов данной MSTI этого
Протокол
Дополнительно в MSTI используется еще одна роль, которая может быть присвоена порту, — мастер-порт (Master Port).
Роли портов
Корневой порт (Root Port) — это порт, который обладает минимальной стоимостью пути от коммутатора до корневого моста
Назначенный порт (Designated Port) — это порт, обладающий наименьшей стоимостью пути от подключенного сегмента сети до корневого моста
Альтернативный/резервный порт (Alternate/Backup Port) — это порт, который обеспечивает подключение, если происходит потеря соединения с какими-либо коммутаторами или сегментами сети.
Роли портов MSTI определяют роли каждого порта коммутатора, участвующего в построении активной топологии MSTI внутри границы региона.
Корневой порт (Root Port) — это порт, который обладает минимальной стоимостью пути от коммутатора до регионального корневого моста MSTI (в случае если мост не является региональным корнем для этой MSTI).
Назначенный порт (Designated Port) — это порт, обладающий наименьшей стоимостью пути от подключенного сегмента сети до регионального корневого моста MSTI.
(рис 11.21) Роли портов
(рис 11.22) Пример топологии MSTP
Альтернативый/резервный порт (Alternate/Backup Port) — это порт, который обеспечивает подключение, если происходит потеря соединения с какими-либо коммутаторами или сегментами сети.
Мастер-порт (Master Port) — это порт, который обеспечивает подключение региона к корневому мосту
Протокол
Рассмотрим пример топологии Instance 0.
0 и их региональный мост В протоколе
Learning ("Обучение") — порт может принимать/отправлять кадры BPDU, изучать МАС-адреса и строить
Forwarding ("Продвижение") — в этом состоянии порт может передавать пользовательские кадры, изучать новые МАС-адреса и принимать/отправлять кадры BPDU;
Discarding ("Отбрасывание") — в этом состоянии порт может только принимать кадры BPDU, передача пользовательского трафика и изучение МАС-адресов не выполняется.
При вычислении активной
С помощью команды config на коммутаторах D-Link можно настроить максимальное число переходов между устройствами внутри региона, прежде чем кадр BPDU будет отброшен. Значение счетчика переходов устанавливается региональным корневым мостом MSTI или 1 каждым портом коммутатора, получившим кадр BPDU.
20.
После того как значение счетчика станет равным 0, кадр BPDU будет отброшен и информация, хранимая портом, будет помечена как устаревшая.
Следует отметить, что коммутаторы не изменяют данные, хранимые в полях Max Age и Message Age конфигурационных BPDU, при их передаче через коммутаторы Message Age изменяется только коммутаторами, расположенными на границе региона, чтобы обеспечить совместимость с мостами
Ниже приведены основные шаги, которые позволяют настроить протокол
32768.Рассмотрим пример, показанный на рис. 11.22 . В сети созданы две
(рис 11.23) Схема сети
Настройка коммутатора 1
config vlan default delete 1-8,17-24 create vlan v2 tag 2 config vlan v2 add untagged 1-8 create vlan v3 tag 3 config vlan v3 add untagged 17-24
enable stp config stp version mstp config stp mst_config_id name dlink revision_level 1 create stp instance_id 2 config stp instance_id 2 add_vlan 2 create stp instance_id 3 config stp instance_id 3 add_vlan 3 config stp priority 4096 instance_id 0 config stp priority 4096 instance_id 2 config stp priority 4096 instance_id 3 config stp ports 7,23 edge true
Настройка коммутатора 2
config vlan default delete 1-8,17-24 create vlan v2 tag 2 config vlan v2 add untagged 1-8 create vlan v3 tag 3 config vlan v3 add untagged 17-24
enable stp config stp version mstp config stp mst_config_id name dlink revision_level 1 create stp instance_id 2 config stp instance_id 2 add_vlan 2 create stp instance_id 3 config stp instance_id 3 add_vlan 3 config stp ports 7,23 edge true
Рассмотрим второй пример настройки протокола
В примере, показанном на рис. 11.23 , каждая VLAN привязывается к одной копии связующего дерева. Порты 25 и 26 являются маркированными портами обеих VLAN. Порт 25 используется в качестве активного канала связи для VLAN v2, порт 26 используется в качестве активного канала связи для VLAN v3. Т.к. для каждой VLAN будет построена своя собственная активная
Настройка коммутатора 1
config vlan default delete 1-8,17-24 create vlan v2 tag 2 config vlan v2 add tagged 25-26 config vlan v2 add untagged 1-8 create vlan v3 tag 3 config vlan v3 add tagged 25-26 config vlan v3 add untagged 17-24
enable stp config stp version mstp config stp mst_config_id name dlink revision_level 1 create stp instance_id 2 config stp instance_id 2 add_vlan 2 create stp instance_id 3 config stp instance_id 3 add_vlan 3 config stp ports 7,23 edge true
Настройка коммутатора 2
config vlan default delete 1-8,17-24 create vlan v2 tag 2 config vlan v2 add tagged 25-26 config vlan v2 add untagged 1-8 create vlan v3 tag 3 config vlan v3 add tagged 25-26 config vlan v3 add untagged 17-24
enable stp config stp version mstp config stp mst_config_id name dlink revision_level 1 create stp instance_id 2 config stp instance_id 2 add_vlan 2 create stp instance_id 3 config stp instance_id 3 add_vlan 3 config stp mst_ports 25 instance_id 2 priority 96 config stp mst_ports 26 instance_id 2 priority 128 config stp mst_ports 25 instance_id 3 priority 128 config stp mst_ports 26 instance_id 3 priority 96 config stp ports 7,23 edge true
(рис 11.24) Балансировка нагрузки с помощью MSTP
Функция
На рис. 11.25 показана ситуация, когда к порту управляемого коммутатора подключен неуправляемый коммутатор, порты которого соединены с образованием петли. В этом случае в сети может возникнуть широковещательный шторм и ее работоспособность будет нарушена.
Функция предназначена для отслеживания таких ситуаций и временного блокирования тех портов коммутатора, на которых обнаружены петли, тем самым предотвращая проблемы в сети. Коммутатор определяет наличие петли, когда отправленный им кадр BPDU вернулся назад на другой его порт. В этом случае порт-источник кадра BPDU и порт-приемник будут автоматически заблокированы и администратору сети будет отправлен служебный пакет-уведомление. Порты будут находиться в заблокированном состоянии до истечения периода времени, установленного таймером LBD
(рис 11.25) Пример работы функции LoopBack Detection Independent STP
В отличие от
Следует отметить, что функция
Существуют два режима работы этой функции: Port-Based и VLAN-Based (начиная с LBD версии v.4.00).
В режиме Port-Based при обнаружении петли происходит автоматическая блокировка порта, и никакой трафик через него не передается.
В режиме VLAN-Based порт будет заблокирован для передачи трафика только той VLAN, в которой обнаружена петля. Остальной трафик через этот порт будет передаваться.
В качестве примера приведем настройку функций
Настройка функции STP LoopBack Detection
enable stp config stp ports 1-24 state enable edge true lbd enable config stp lbd_recover_timer 60
Настройка функции LoopBack Detection Independent STP (Port-Based)
enable loopdetect config loopdetect recover_timer 60 config loopdetect interval 10 config loopdetect mode port-based config loopdetect ports 1-24 state enabled
Настройка функции LoopBack Detection Independent STP (VLAN-Based)
enable loopdetect config loopdetect recover_timer 60 config loopdetect interval 10 config loopdetect mode vlan-based config loopdetect ports 1-24 state enabled
recover_timer — интервал времени в секундах, через который будет проверяться статус заблокированного функцией LBD порта. Если установить значение таймера равным 0, заблокированный порт не сможет быть автоматически разблокирован и для его восстановления потребуется вмешательство администратора. Значение таймера задается глобально на коммутаторе.
loopdetect interval — временной интервал в секундах между отсылаемыми кадрами ECTP (Ethernet Configuration Testing Protocol).
Из-за ошибок в конфигурации или вредоносных атак в сети может возникнуть ситуация, когда корневой мост получит кадр BPDU, содержащий лучший приоритет, и потеряет свою позицию. При настройке протоколов restrictedrole можно ограничить роли выполняемые портом в активной топологии. При активизации этого параметра порт не будет выбран в качестве корневого порта даже в том случае, если получит BPDU с наилучшим приоритетом. После выбора корневого порта этот порт будет выбран в качестве альтернативного. По умолчанию функция restrictedrole отключена.
Настройка коммутатора
enable stp config stp version rstp config stp priority 32768 instance_id 0 config stp ports 1-24 edge true restricted_role true restricted_tcn true state enable config stp ports 25-28 edge false state enable fbpdu enable
Агрегирование каналов связи (
(рис 11.26) Пример агрегированного канала связи между коммутаторами
В отличие от протокола
Включенные в агрегированный канал порты называются членами группы агрегирования (Link Aggregation Group).
Один из портов в группе выступает в качестве мастера-порта (master port). Так как все порты агрегированной группы должны работать в одном режиме, конфигурация мастера-порта распространяется на все порты в группе. Таким образом, при конфигурировании портов в группе агрегирования достаточно настроить мастер-порт.
Важным моментом при реализации объединения портов в агрегированный канал является распределение трафика по ним. Если пакеты одного сеанса будут передаваться по разным портам агрегированного канала, то может возникнуть проблема на более высоком уровне модели OSI. Например, если два или более смежных кадров одного сеанса станут передаваться через разные порты агрегированного канала, то из-за неодинаковой длины очередей в их буферах может возникнуть ситуация, когда из-за неравномерной
В коммутаторах D-Link по умолчанию используется алгоритм mac_source (МАС-адрес источника).
(рис 11.27) Распределение потоков данных по каналам агрегированной линии связи для алгоритма mac_source_dest
Объединение каналов следует рассматривать как вариант настройки сети, используемый преимущественно для соединений "коммутатор — коммутатор" или "коммутатор — файл-сервер", требующих более высокой скорости передачи, чем может обеспечить одиночная линия связи. Также эту функцию можно применять для повышения надежности важных каналов связи. В случае повреждения линии связи объединенный канал быстро перенастраивается (не более чем за 1 сек.), а риск дублирования и изменения порядка кадров незначителен.
Программное обеспечение коммутаторов D-Link поддерживает два типа агрегирования каналов связи:
При статическом агрегировании каналов (установлено по умолчанию), все настройки на коммутаторах выполняются вручную, и они не допускают динамических изменений в агрегированной группе.
Для организации динамического агрегирования каналов между коммутаторами и другими сетевыми устройствами используется протокол управления агрегированным каналом —
Для того чтобы динамический канал обладал функцией автосогласования, рекомендуется порты, входящие в агрегированную группу, с одной стороны канала настраивать как активные, а с другой — как пассивные.
Следует отметить, что у портов, объединяемых в агрегированный канал, нижеперечисленные характеристики должны обладать одинаковыми настройками:
При объединении портов в агрегированный канал на них не должны быть настроены функции аутентификации 802.1Х, зеркалирования трафика и блокировки портов.
Рассмотрим пример, показанный на рис. 11.28 . Для повышения пропускной способности канала связи между коммутатором 1, к которому подключен сервер, и коммутатором 2, к которому подключены пользователи, требуется объединить порты коммутаторов в статический агрегированный канал.
(рис 11.28) Схема сети
На коммутаторах необходимо выполнить следующую настройку:
Настройка коммутатора 1
create link_aggregation group_id 1 type static config link_aggregation algorithm mac_destination
config link_aggregation group_id 1 master_port 21 ports 21,22,23,24 state enabled
Настройка коммутатора 2
create link_aggregation group_id 1 type static config link_aggregation algorithm mac_source
config link_aggregation group_id 1 master_port 21 ports 21,22,23,24 state enabled
Рассмотрим пример настройки коммутаторов при создании динамического агрегированного канала связи.
(рис 11.29) Схема сети
Настройка коммутатора 1
create link_aggregation group_id 1 type lacp create link_aggregation group_id 2 type lacp config link_aggregation algorithm mac_destination
config link_aggregation group_id 1 master_port 1 ports 1-4 state enabled
config lacp_port 1-8 mode active
Настройка коммутаторов 2 и 3 (на портах 1-4 этих коммутаторов включено автосогласование)
create link_aggregation group_id 1 type lacp config link_aggregation algorithm mac_source config link_aggregation group_id master_port 1 ports 1-4 state enabled
В настоящее время для повышения надежности и производительности каналов связи в распоряжении
Протокол связующего дерева Spanning Tree Protocol (STP) является протоколом 2 уровня модели OSI, который позволяет строить древовидные, свободные от петель, конфигурации связей между коммутаторами локальной сети. Помимо этого, алгоритм обеспечивает возможность автоматического резервирования альтернативных каналов связи между коммутаторами на случай выхода активных каналов из строя.
В настоящее время существуют следующие версии протоколов связующего дерева:
Если для обеспечения избыточности между коммутаторами создается несколько соединений, то могут возникать коммутационные петли. Петля предполагает существование нескольких маршрутов по промежуточным сетям, а сеть с несколькими маршрутами между источником и приемником отличается повышенной отказоустойчивостью. Хотя наличие избыточных каналов связи очень полезно, петли, тем не менее, создают проблемы, самые актуальные из которых:
Широковещательный шторм.
Распространение широковещательных сообщений в сетях с петлями представляет серьезную проблему. Предположим, что первый кадр, поступивший от одного из узлов, является широковещательным. Тогда все коммутаторы будут пересылать кадры бесконечно, как показано на рис. 11.1 (пример 1), используя всю доступную полосу пропускания сети и блокируя передачу других кадров во всех сегментах.
Множественные копии кадров.
Еще одна проблема заключается в том, что коммутатор нередко получает несколько копий одного кадра, одновременно приходящих из нескольких участков сети. В этом случае
Множественные петли.
Одна из самых сложных проблем — это множественные петли, образующиеся в объединенной сети. Возможно появление петли внутри других петель. Если за этим последует широковещательный шторм, то сеть не сможет выполнять коммутацию кадров.
(рис 11.1) Примеры петель между коммутаторами
Для решения этих проблем и был разработан протокол связующего дерева, который был определен в стандарте
Коммутаторы, поддерживающие протокол
Для построения устойчивой активной топологии с помощью протокола
Процесс вычисления связующего дерева начинается с выбора корневого моста (Root Bridge), от которого будет строиться дерево. В качестве корня дерева выбирается коммутатор с наименьшим значением идентификатора моста. Идентификатор моста — это 8-байтное поле, которое состоит из 2-х частей: приоритета моста (2 байта), назначаемого администратором сети, и МАС-адреса блока управления коммутатора (6 байт). При сравнении идентификаторов двух коммутаторов сначала сравниваются значения приоритетов. Корневым мостом становится коммутатор с наименьшим значением приоритета. Если они одинаковы (по умолчанию приоритет равен 32768), то корневой мост определяется по наименьшему МАС-адресу.
Для того чтобы в качестве корневого моста было выбрано определенное устройство (исходя из структуры сети), администратор может вручную назначить соответствующему коммутатору наименьший приоритет.
Второй этап работы
Когда процесс выбора корневого моста завершен, оставшиеся коммутаторы сети определяют стоимость каждого возможного пути от себя до корня дерева. Стоимость пути рассчитывается как суммарное условное время на передачу данных от порта данного коммутатора до порта корневого моста. Условное время сегмента рассчитывается как время передачи одного бита информации через канал с определенной полосой пропускания. Стоимости пути по умолчанию для каждого канала определены в стандарте
Сравнив стоимости всех возможных маршрутов до корня, каждый коммутатор выбирает среди них один с наименьшим значением стоимости. Порт, соединяющий коммутатор с этим маршрутом, становится корневым портом. В случае если минимальные стоимости пути нескольких маршрутов окажутся одинаковыми, корневым портом станет порт, имеющий наименьшее значение идентификатора порта.
(рис 11.2) Пример функционирование протокола STP
Третий шаг работы
Каждый сегмент в коммутируемой сети имеет один назначенный порт. Этот порт функционирует как единственный порт моста, т.е. принимает кадры от сегмента и передает их в направлении корневого моста через корневой порт данного коммутатора. Коммутатор, содержащий назначенный порт для данного сегмента, называется назначенным мостом (Designated Bridge) этого сегмента. Назначенный порт сегмента определяется путем сравнения значений стоимости пути всех маршрутов от данного сегмента до корневого моста. Им становится порт, имеющий наименьшее значение стоимости, среди всех портов, подключенных к данному сегменту. Если минимальные значения стоимости пути окажутся одинаковыми у двух или нескольких портов, то для выбора назначенного порта сегмента
У корневого моста все порты являются назначенными, а их расстояние до корня полагается равным нулю. Корневого порта у корневого моста нет.
После выбора корневых и назначенных портов все остальные порты коммутаторов сети переводятся в состояние Blocking ("Блокировка"), то есть такое, при котором они принимают и передают только кадры BPDU. При таком выборе активных портов в сети исключаются петли, и оставшиеся связи образуют связующее дерево.
Вычисление связующего дерева происходит при включении коммутатора и при изменении топологии. Эти вычисления требуют периодического обмена информацией между коммутаторами связующего дерева, что достигается при помощи специальных кадров, называемых блоками данных протокола моста — BPDU (
Коммутатор отправляет BPDU, используя уникальный МАС-адрес порта в качестве адреса-источника и многоадресный МАС-адрес протокола
Существует три типа кадров BPDU:
Коммутаторы обмениваются BPDU через равные интервалы времени (по умолчанию 2 сек.), что позволяет им отслеживать состояние топологии сети.
| поля | Байты |
|---|---|
| Идентификатор протокола (Protocol Identifier) | 2 |
| Версия протокола (Protocol Version Identifier) | 1 |
| Тип BPDU (BPDU Type) | 1 |
| Флаги ( | 1 |
| Идентификатор корневого моста (Root Identifier) | 8 |
| Расстояние до корневого моста (Root | 2 |
| Идентификатор моста ( | 8 |
| Идентификатор порта (Port Identifier) | 2 |
| Время жизни сообщения (Message Age) | 2 |
| Максимальное время жизни сообщения (Max Age) | 2 |
| Время приветствия (Hello Time) | 2 |
| Задержка смены состояний (Forward | 2 |
Кадр BPDU состоит из следующих полей:
Protocol Identifier) — 2 байта. Значение всегда равно 0;Protocol Version Identifier) — 1 байт. Значение всегда равно 0;BPDU Type) — 1 байт. Значение "00" — конфигурационный BPDU, "01" — изменение топологии;Flags) — 1 байт. Бит 1 — флаг изменения топологии, бит 8 — флаг подтверждения изменения топологии;Root Identifier) — 8 байтов. Идентификатор текущего корневого моста;Root Path Cost ) — 2 байта. Суммарная стоимость пути до корневого моста;Bridge Identifier) — 8 байтов. Идентификатор текущего моста;Port Identifier) — 2 байта. Уникальный идентификатор порта, который отправил этот BPDU;Message Age) — 2 байта. Нефиксированный временной интервал в секундах, прошедший с момента отправки BPDU корневым мостом. Служит для выявления устаревших сообщений BPDU. Первоначальное значение равно нулю. По мере передачи кадра BPDU по сети каждый коммутатор добавляет ко времени жизни сообщения время его задержки данным коммутатором. По умолчанию оно равно 1 сек. Значение параметра Message Age должно быть меньше значения таймера Max Age;Max Age) — 2 байта. Временной интервал в секундах, определяющий максимальное время хранения конфигурации Hello Time) — 2 байта. Временной интервал в секундах, через который посылаются кадры BPDU;Forward Delay ) — 2 байта. Временной интервал в секундах, в течение которого порт коммутатора находится в состояниях "Прослушивание" и "Обучение".В процессе построения топологии сети каждый порт коммутатора проходит несколько стадий:
(рис 11.3) Состояния портов
В процессе нормальной работы корневой мост продолжает генерировать служебные кадры BPDU, а остальные коммутаторы продолжают их принимать своими корневыми портами и ретранслировать назначенными. Если по истечении максимального времени жизни сообщения (по умолчанию — 20 секунд) корневой порт любого коммутатора сети не получит служебный кадр BPDU, то он инициализирует новую процедуру построения связующего дерева.
Для того чтобы все коммутаторы сети имели возможность получить точную информацию о конфигурации связующего дерева, в протоколе
Hello Time — это интервал времени, через который корневой мост отправляет конфигурационные BPDU. Значение таймера Hello Time, настроенное на корневом мосте, будет определять значения таймеров Hello Time на всех некорневых коммутаторах, т.к. они просто пересылают конфигурационные BPDU, когда получают их от корня. Значение таймера Hello Time по умолчанию 2 секунды: диапазон возможных значений от 1 до 10 секунд.
Forward Delay — это интервал времени, в течение которого порт коммутатора находится в состояниях "Прослушивание" и "Обучение". Такая задержка смены состояний необходима, чтобы исключить возможность временного возникновения альтернативных маршрутов при неодновременной смене состояний портов во время 15 секунд. диапазон возможных значений от 4 до 30 секунд.
Max Age — это интервал времени, в течение которого коммутатор хранит параметры текущей конфигурации связующего дерева. Значение таймера Max Age устанавливается корневым мостом и позволяет гарантировать, что все коммутаторы сети обладают одинаковой информацией о времени хранения конфигурации 20 секунд, диапазон возможных значений от 6 до 40 секунд.
Значения таймеров Hello Time, Forward
Коммутатор отправляет BPDU с уведомлением об изменении топологии (
TCN BPDU отправляется коммутатором в тот сегмент сети, к которому подключен его корневой порт. Эти BPDU будут передаваться через интервал Hello до тех пор, пока коммутатор не получит подтверждение
(рис 11.4) Процесс уведомления об изменении топологии
Когда корневой мост получает TCN BPDU или сам изменяет топологию, он устанавливает во всех передаваемых конфигурационных BPDU флаг изменения топологии (
Управляемые коммутаторы D-Link при настройке функции
Рассмотрим пример настройки
(рис 11.5) Схема сети
Настройка коммутатора 1
enable stp config stp version stp
32768)
config stp priority 4096 instance_id 0
config stp ports 1-24 edge true
Настройка коммутатора 2
enable stp config stp version stp config stp ports 1-24 edge true
Протокол Rapid
Основные понятия и терминология протоколов
(рис 11.6) Состояния портов протоколов STP и RSTP
| Состояние порта | Административное состояние порта коммутатора | Порт изучает МАС-адреса? | Состояние порта | Роль порта в активной топологии |
|---|---|---|---|---|
| Disable | Disabled | Нет | Исключен (Disabled) | |
| Disable | Enabled | Нет | Исключен (Disabled) | |
| Blocking | Enabled | Да | Исключен (Alternate, Backup) | |
| Listening | Enabled | Да | Включен (Root, Designated) | |
| Enabled | Да | Включен (Root, Designated) | ||
| Forwarding | Enabled | Да | Forwarding | Включен (Root, Designated) |
Выбор активной топологии завершается присвоением протоколом
Корневой порт — это порт коммутатора, который имеет по сети кратчайшее расстояние (в терминах стоимости пути) до корневого коммутатора.
Порт является назначенным, если он посылает BPDU с наилучшими параметрами в тот сегмент, к которому подключен.
Роли "корневой порт" и "назначенный порт" включают порт в активную топологию.
В
(рис 11.7) Корневой порт
(рис 11.8) Назначенный порт
Альтернативный порт предлагает альтернативный основному маршруту путь в направлении корневого моста и может заменить корневой порт в случае выхода его из строя.
(рис 11.9) Альтернативный порт
Резервный порт предназначен для резервирования пути, предоставляемого назначенным портом в направлении сегментов сети, и не может гарантировать альтернативное подключение к корневому мосту. Резервные порты существуют только в конфигурациях, где есть два или более соединения данного моста с данной сетью (сегментом сети).
(рис 11.10) Резервный порт
Формат кадра BPDU протокола
0000 0000 и показывает, что BPDU не содержит никакой информации протокола Процесс построения связующего дерева у протоколов
| поле | Байты |
|---|---|
| Идентификатор протокола (Protocol Identifier) | 2 |
| Версия протокола (Protocol Version Identifier) | 1 |
| Тип BPDU (BPDU Type) | 1 |
| Флат ( | 1 |
| Идентификатор корневого моста (Root Identifier) | 8 |
| Расстояние до корневого моста (Root | 2 |
| Идентификатор моста ( | 8 |
| Идентификатор порта (Port Identifier) | 2 |
| Время жизни сообщения (Message Age) | 2 |
| Максимальное время жизни сообщения (Max Age) | 2 |
| Время приветствия (Hello Time) | 2 |
| Задержка смены состояний (Forward | 2 |
| Длина версии 1 (Version 1 Length) | 1 |
(рис 11.11) Формат кадра BPDU протокола RSTP
Граничным портом (Edge Port) объявляется порт, непосредственно подключенный к сегменту сети, в котором не могут быть созданы петли. Например, порт подключен к рабочей станции, которая может периодически включаться или выключаться и активизировать механизм уведомления об изменении топологии или чтобы избежать распространения вычислений
При работе протокола
Порты, удовлетворяющие, по крайней мере, одному из следующих условий, автоматически рассматриваются протоколом
Администратор сети может вручную включать или выключать статусы Edge и
(рис 11.12) Граничные порты и порты "точка — точка"
На рис. 11.13 показан процесс работы механизма предложений и соглашений. Коммутаторы АиВ соединены между собой каналом типа "точка — точка". Предположим, что коммутатор А является корневым мостом сети. Коммутатор А посылает коммутатору В кадр BPDU с установленным флагом Proposal (шаг 1 на рис. 11.12 ), предлагая себя в качестве назначенного моста этого сегмента (BPDU-предложение будет передаваться только в том случае, если порт находится в состоянии
Порт является синхронизированным "in-sync", если он удовлетворяет следующим критериям:
Discarding в стабильной топологии);Чтобы продемонстрировать действие метода синхронизации на различные типы портов, предположим, что в коммутаторе В имеются граничные порты p3 и р5 и назначенный порт p4. Порты p3 и p5 уже удовлетворяют одному из условий синхронизации. Чтобы находиться в режиме синхронизации (шаг 2 на рис. 11.12 ), коммутатору В необходимо заблокировать порт р4, переведя его в состояние .
После того, как коммутатор В убедится, что все порты синхронизированы, он разблокирует свой новый корневой порт (шаг 3 на рис. 11.12 ) и отправит через него коммутатору А согласие на предложение. Это сообщение является копией BPDU-предложения, в котором вместо бита Proposal установлен бит Agreement. Благодаря этому порт pi коммутатора А точно знает, какому предложению соответствует полученное согласие.
После этого коммутатор А мгновенно переведет свой назначенный порт р1 в состояние продвижения.
(рис 11.13) Механизм предложений и соглашений
Находясь в заблокированном состоянии порт р4 коммутатора В начнет отсылать предложения нижележащему коммутатору и пытаться быстро перейти в состояние продвижения (шаг 4 на рис. 11.12 ).
1. Определение изменений топологии.
В протоколе
TC While равным удвоенному интервалу Hello для всех неграничных назначенных портов и корневого порта. While Timer — это интервал времени, в течение которого мост TC While, запущенным на порте, в BPDU, отправляемых через него, будет установлен бит ТС.2. Распространение информации об изменении топологии.
Когда коммутатор получает от соседа BPDU с установленным битом ТС, происходит следующее:
TC While и отправляет BPDU с установленным битом ТС через все неграничные порты (Коммутатор-отправитель BPDU с битом ТС непосредственно распространяет информацию об изменении топологии через всю сеть (в отличие от Forward и Max Age.
(рис 11.14) Новый механизм изменения топологии
Протокол
| Параметр | Скорость канала | Рекомендованное значение | Рекомендованный диапазон | Диапазон значений |
|---|---|---|---|---|
| Стоимость пути | 10 Мбит/с | 2 000 000 | 200 000— 20 000 000 | 1— 200 000 000 |
| Стоимость пути | 100 Мбит/с | 200 000 | 20 000— 2 000 000 | 1— 200 000 000 |
| Стоимость пути | 1 Гбит/с | 20 000 | 2 000—200 000 | 1— 200 000 000 |
| Стоимость пути | 10 Гбит/с | 2 000 | 200—20 000 | 1— 200 000 000 |
Протокол
Каждый порт хранит переменную, определяющую тип протокола, используемого в соответствующем сегменте. При включении порта активизируется таймер задержки миграции (Migration delay timer) длительностью 3 секунды. При запуске этого таймера текущий режим (
Предположим, что коммутаторы А и В (рис 11.14) работают в режиме
(рис 11.15) Пример совместной работы коммутаторов STP и RSTP
Коммутатор А получает эти BPDU и после истечения периода времени, установленного таймером задержки миграции, переходит на этом порте в режим работы
Следует отметить, что если бы в этом частном случае коммутатор С был удален из сегмента, то коммутатор А остался бы работать в режиме
Настройка протокола
(рис 11.16) Схема сети
Настройка коммутатора 1
enable stp config stp version rstp
32768)
config stp priority 4096 instance_id 0
config stp ports 1-24 edge true
Настройка коммутатора 2
enable stp config stp version rstp config stp ports 1-24 edge true
Несмотря на то, что протокол
Протокол Multiple
Протокол
(рис 11.17) Физическая и логическая топология региона MST
(рис 11.18) Регион MST
Для того чтобы два и более коммутатора принадлежали одному региону
Конфигурация
Внутри коммутируемой сети может быть создано множество
Протокол
Internal Spanning Tree (IST) — специальная копия связующего дерева, которая по умолчанию существует в каждом
Common Spanning Tree (CST) — единое связующее
Common and Internal Spanning Tree (CIST) — единое связующее дерево, объединяющее
(рис 11.19) Логическая структура MSTP
Single Spanning Tree (SST) Bridge — мост, поддерживающий только-единственное связующее дерево,
По умолчанию все VLAN данного
MSTI обладают следующими характеристиками:
Для того чтобы каждая MSTI представляла собой отдельную от
Формат
Прежде чем начать рассматривать вопрос вычисления активной топологии
(рис 11.20) Формат MSTP BPDU
Процесс вычисления в
Первоначально каждый коммутатор сети считает себя корневым мостом
Коммутатор перестанет заявлять себя в качестве корневого моста
Одновременно с выбором корневого моста
Им становится коммутатор, обладающий наименьшей внешней стоимостью пути к корню
В случае наличия в регионе коммутаторов с одинаковой стоимостью пути в качестве
Протокол
При наличии в регионе отдельных связующих деревьев MSTI, для каждой MSTI, независимо от остальных, выбирается региональный корневой мост MSTI (MSTIRegional Root). Им становится коммутатор, обладающий наименьшим значением идентификатора моста среди всех коммутаторов данной MSTI этого
Протокол
Дополнительно в MSTI используется еще одна роль, которая может быть присвоена порту, — мастер-порт (Master Port).
Роли портов
Корневой порт (Root Port) — это порт, который обладает минимальной стоимостью пути от коммутатора до корневого моста
Назначенный порт (Designated Port) — это порт, обладающий наименьшей стоимостью пути от подключенного сегмента сети до корневого моста
Альтернативный/резервный порт (Alternate/Backup Port) — это порт, который обеспечивает подключение, если происходит потеря соединения с какими-либо коммутаторами или сегментами сети.
Роли портов MSTI определяют роли каждого порта коммутатора, участвующего в построении активной топологии MSTI внутри границы региона.
Корневой порт (Root Port) — это порт, который обладает минимальной стоимостью пути от коммутатора до регионального корневого моста MSTI (в случае если мост не является региональным корнем для этой MSTI).
Назначенный порт (Designated Port) — это порт, обладающий наименьшей стоимостью пути от подключенного сегмента сети до регионального корневого моста MSTI.
(рис 11.21) Роли портов
(рис 11.22) Пример топологии MSTP
Альтернативый/резервный порт (Alternate/Backup Port) — это порт, который обеспечивает подключение, если происходит потеря соединения с какими-либо коммутаторами или сегментами сети.
Мастер-порт (Master Port) — это порт, который обеспечивает подключение региона к корневому мосту
Протокол
Рассмотрим пример топологии Instance 0.
0 и их региональный мост В протоколе
Learning ("Обучение") — порт может принимать/отправлять кадры BPDU, изучать МАС-адреса и строить
Forwarding ("Продвижение") — в этом состоянии порт может передавать пользовательские кадры, изучать новые МАС-адреса и принимать/отправлять кадры BPDU;
Discarding ("Отбрасывание") — в этом состоянии порт может только принимать кадры BPDU, передача пользовательского трафика и изучение МАС-адресов не выполняется.
При вычислении активной
С помощью команды config на коммутаторах D-Link можно настроить максимальное число переходов между устройствами внутри региона, прежде чем кадр BPDU будет отброшен. Значение счетчика переходов устанавливается региональным корневым мостом MSTI или 1 каждым портом коммутатора, получившим кадр BPDU.
20.
После того как значение счетчика станет равным 0, кадр BPDU будет отброшен и информация, хранимая портом, будет помечена как устаревшая.
Следует отметить, что коммутаторы не изменяют данные, хранимые в полях Max Age и Message Age конфигурационных BPDU, при их передаче через коммутаторы Message Age изменяется только коммутаторами, расположенными на границе региона, чтобы обеспечить совместимость с мостами
Ниже приведены основные шаги, которые позволяют настроить протокол
32768.Рассмотрим пример, показанный на рис. 11.22 . В сети созданы две
(рис 11.23) Схема сети
Настройка коммутатора 1
config vlan default delete 1-8,17-24 create vlan v2 tag 2 config vlan v2 add untagged 1-8 create vlan v3 tag 3 config vlan v3 add untagged 17-24
enable stp config stp version mstp config stp mst_config_id name dlink revision_level 1 create stp instance_id 2 config stp instance_id 2 add_vlan 2 create stp instance_id 3 config stp instance_id 3 add_vlan 3 config stp priority 4096 instance_id 0 config stp priority 4096 instance_id 2 config stp priority 4096 instance_id 3 config stp ports 7,23 edge true
Настройка коммутатора 2
config vlan default delete 1-8,17-24 create vlan v2 tag 2 config vlan v2 add untagged 1-8 create vlan v3 tag 3 config vlan v3 add untagged 17-24
enable stp config stp version mstp config stp mst_config_id name dlink revision_level 1 create stp instance_id 2 config stp instance_id 2 add_vlan 2 create stp instance_id 3 config stp instance_id 3 add_vlan 3 config stp ports 7,23 edge true
Рассмотрим второй пример настройки протокола
В примере, показанном на рис. 11.23 , каждая VLAN привязывается к одной копии связующего дерева. Порты 25 и 26 являются маркированными портами обеих VLAN. Порт 25 используется в качестве активного канала связи для VLAN v2, порт 26 используется в качестве активного канала связи для VLAN v3. Т.к. для каждой VLAN будет построена своя собственная активная
Настройка коммутатора 1
config vlan default delete 1-8,17-24 create vlan v2 tag 2 config vlan v2 add tagged 25-26 config vlan v2 add untagged 1-8 create vlan v3 tag 3 config vlan v3 add tagged 25-26 config vlan v3 add untagged 17-24
enable stp config stp version mstp config stp mst_config_id name dlink revision_level 1 create stp instance_id 2 config stp instance_id 2 add_vlan 2 create stp instance_id 3 config stp instance_id 3 add_vlan 3 config stp ports 7,23 edge true
Настройка коммутатора 2
config vlan default delete 1-8,17-24 create vlan v2 tag 2 config vlan v2 add tagged 25-26 config vlan v2 add untagged 1-8 create vlan v3 tag 3 config vlan v3 add tagged 25-26 config vlan v3 add untagged 17-24
enable stp config stp version mstp config stp mst_config_id name dlink revision_level 1 create stp instance_id 2 config stp instance_id 2 add_vlan 2 create stp instance_id 3 config stp instance_id 3 add_vlan 3 config stp mst_ports 25 instance_id 2 priority 96 config stp mst_ports 26 instance_id 2 priority 128 config stp mst_ports 25 instance_id 3 priority 128 config stp mst_ports 26 instance_id 3 priority 96 config stp ports 7,23 edge true
(рис 11.24) Балансировка нагрузки с помощью MSTP
Функция
На рис. 11.25 показана ситуация, когда к порту управляемого коммутатора подключен неуправляемый коммутатор, порты которого соединены с образованием петли. В этом случае в сети может возникнуть широковещательный шторм и ее работоспособность будет нарушена.
Функция предназначена для отслеживания таких ситуаций и временного блокирования тех портов коммутатора, на которых обнаружены петли, тем самым предотвращая проблемы в сети. Коммутатор определяет наличие петли, когда отправленный им кадр BPDU вернулся назад на другой его порт. В этом случае порт-источник кадра BPDU и порт-приемник будут автоматически заблокированы и администратору сети будет отправлен служебный пакет-уведомление. Порты будут находиться в заблокированном состоянии до истечения периода времени, установленного таймером LBD
(рис 11.25) Пример работы функции LoopBack Detection Independent STP
В отличие от
Следует отметить, что функция
Существуют два режима работы этой функции: Port-Based и VLAN-Based (начиная с LBD версии v.4.00).
В режиме Port-Based при обнаружении петли происходит автоматическая блокировка порта, и никакой трафик через него не передается.
В режиме VLAN-Based порт будет заблокирован для передачи трафика только той VLAN, в которой обнаружена петля. Остальной трафик через этот порт будет передаваться.
В качестве примера приведем настройку функций
Настройка функции STP LoopBack Detection
enable stp config stp ports 1-24 state enable edge true lbd enable config stp lbd_recover_timer 60
Настройка функции LoopBack Detection Independent STP (Port-Based)
enable loopdetect config loopdetect recover_timer 60 config loopdetect interval 10 config loopdetect mode port-based config loopdetect ports 1-24 state enabled
Настройка функции LoopBack Detection Independent STP (VLAN-Based)
enable loopdetect config loopdetect recover_timer 60 config loopdetect interval 10 config loopdetect mode vlan-based config loopdetect ports 1-24 state enabled
recover_timer — интервал времени в секундах, через который будет проверяться статус заблокированного функцией LBD порта. Если установить значение таймера равным 0, заблокированный порт не сможет быть автоматически разблокирован и для его восстановления потребуется вмешательство администратора. Значение таймера задается глобально на коммутаторе.
loopdetect interval — временной интервал в секундах между отсылаемыми кадрами ECTP (Ethernet Configuration Testing Protocol).
Из-за ошибок в конфигурации или вредоносных атак в сети может возникнуть ситуация, когда корневой мост получит кадр BPDU, содержащий лучший приоритет, и потеряет свою позицию. При настройке протоколов restrictedrole можно ограничить роли выполняемые портом в активной топологии. При активизации этого параметра порт не будет выбран в качестве корневого порта даже в том случае, если получит BPDU с наилучшим приоритетом. После выбора корневого порта этот порт будет выбран в качестве альтернативного. По умолчанию функция restrictedrole отключена.
Настройка коммутатора
enable stp config stp version rstp config stp priority 32768 instance_id 0 config stp ports 1-24 edge true restricted_role true restricted_tcn true state enable config stp ports 25-28 edge false state enable fbpdu enable
Агрегирование каналов связи (
(рис 11.26) Пример агрегированного канала связи между коммутаторами
В отличие от протокола
Включенные в агрегированный канал порты называются членами группы агрегирования (Link Aggregation Group).
Один из портов в группе выступает в качестве мастера-порта (master port). Так как все порты агрегированной группы должны работать в одном режиме, конфигурация мастера-порта распространяется на все порты в группе. Таким образом, при конфигурировании портов в группе агрегирования достаточно настроить мастер-порт.
Важным моментом при реализации объединения портов в агрегированный канал является распределение трафика по ним. Если пакеты одного сеанса будут передаваться по разным портам агрегированного канала, то может возникнуть проблема на более высоком уровне модели OSI. Например, если два или более смежных кадров одного сеанса станут передаваться через разные порты агрегированного канала, то из-за неодинаковой длины очередей в их буферах может возникнуть ситуация, когда из-за неравномерной
В коммутаторах D-Link по умолчанию используется алгоритм mac_source (МАС-адрес источника).
(рис 11.27) Распределение потоков данных по каналам агрегированной линии связи для алгоритма mac_source_dest
Объединение каналов следует рассматривать как вариант настройки сети, используемый преимущественно для соединений "коммутатор — коммутатор" или "коммутатор — файл-сервер", требующих более высокой скорости передачи, чем может обеспечить одиночная линия связи. Также эту функцию можно применять для повышения надежности важных каналов связи. В случае повреждения линии связи объединенный канал быстро перенастраивается (не более чем за 1 сек.), а риск дублирования и изменения порядка кадров незначителен.
Программное обеспечение коммутаторов D-Link поддерживает два типа агрегирования каналов связи:
При статическом агрегировании каналов (установлено по умолчанию), все настройки на коммутаторах выполняются вручную, и они не допускают динамических изменений в агрегированной группе.
Для организации динамического агрегирования каналов между коммутаторами и другими сетевыми устройствами используется протокол управления агрегированным каналом —
Для того чтобы динамический канал обладал функцией автосогласования, рекомендуется порты, входящие в агрегированную группу, с одной стороны канала настраивать как активные, а с другой — как пассивные.
Следует отметить, что у портов, объединяемых в агрегированный канал, нижеперечисленные характеристики должны обладать одинаковыми настройками:
При объединении портов в агрегированный канал на них не должны быть настроены функции аутентификации 802.1Х, зеркалирования трафика и блокировки портов.
Рассмотрим пример, показанный на рис. 11.28 . Для повышения пропускной способности канала связи между коммутатором 1, к которому подключен сервер, и коммутатором 2, к которому подключены пользователи, требуется объединить порты коммутаторов в статический агрегированный канал.
(рис 11.28) Схема сети
На коммутаторах необходимо выполнить следующую настройку:
Настройка коммутатора 1
create link_aggregation group_id 1 type static config link_aggregation algorithm mac_destination
config link_aggregation group_id 1 master_port 21 ports 21,22,23,24 state enabled
Настройка коммутатора 2
create link_aggregation group_id 1 type static config link_aggregation algorithm mac_source
config link_aggregation group_id 1 master_port 21 ports 21,22,23,24 state enabled
Рассмотрим пример настройки коммутаторов при создании динамического агрегированного канала связи.
(рис 11.29) Схема сети
Настройка коммутатора 1
create link_aggregation group_id 1 type lacp create link_aggregation group_id 2 type lacp config link_aggregation algorithm mac_destination
config link_aggregation group_id 1 master_port 1 ports 1-4 state enabled
config lacp_port 1-8 mode active
Настройка коммутаторов 2 и 3 (на портах 1-4 этих коммутаторов включено автосогласование)
create link_aggregation group_id 1 type lacp config link_aggregation algorithm mac_source config link_aggregation group_id master_port 1 ports 1-4 state enabled
Для получения официальных документов о завершении программы дополнительного профессионального образования (удостоверения о повышении квалификации, дипломов о профессиональной переподготовке и MBA) необходимо предоставить:
Внимание! Вы можете не заказывать доставку бумажной версии официального документы, а скачать его в электронном виде и распечатать самостоятельно. Информация о выданном документе в течение 1 месяца загружается в Федеральную информационную систему «Федеральный реестр сведений о документах об образовании и (или) о квалификации, документах об обучении» - ФИС ФРДО.
Доступ на новый сайт осуществляется с использованием адреса электронной почты, который был указан вами при регистрации на "старом". Мы постарались перенести все ваши данные с прежнего ресурса, однако не исключена вероятность потери части информации.
При возникновении проблемы со входом, воспользуйтесь функцией сброса пароля
Если вы обнаружите несоответствия, пожалуйста, сообщите нам.