Cisco как сделать коммутатор корневым
В этом документе описана процедура переноса автономного коммутатора Cisco Catalyst серии 6500 в систему виртуальной коммутации Cisco Catalyst 6500.
Примечание. В этом документе указаны только общие шаги, необходимые для переноса. Непосредственный порядок действий зависит от текущей конфигурации коммутатора и может незначительно отличаться от описываемой процедуры.
Предварительные условия
Требования
Компания Cisco рекомендует ознакомиться со следующими темами:
Представление о системах виртуальной коммутации (VSS). Для получения дополнительной информации обратитесь к документу Общие принципы систем виртуальной коммутации.
Используемые компоненты
Сведения, содержащиеся в этом документе, касаются коммутаторов Cisco Catalyst серии 6500 с супервизором VS-S720-10G-3C/XL под управлением ПО Cisco IOS ® Software Release 12.2(33)SXH1 или более позднего выпуска.
Сведения, представленные в этом документе, были получены от устройств, работающих в специальной лабораторной среде. При работе в действующей сети необходимо понимать последствия выполнения любой команды.
Условные обозначения
Подробные сведения об условных обозначениях см. в документе Условное обозначение технических терминов Cisco.
Общие сведения
Система виртуальной коммутации (VSS) — новая оригинальная функция коммутаторов Cisco Catalyst 6500, фактически позволяющая представить два физических шасси как единый логический элемент. Такая технология несет в себе обширный потенциал модернизации корпоративных офисных комплексов и центров обработки данных, включая режим высокой доступности, обеспечение масштабируемости и производительности, а также управление и техническое обслуживание.
Текущая реализация VSS позволяет объединить два физических коммутатора Cisco Catalyst серии 6500 в один логически управляемый объект. Этот принцип проиллюстрирован на рисунке: включив VSS, можно управлять двумя шасси 6509 как одним шасси с 18 слотами.
Процесс переноса
Поддержка оборудования и программного обеспечения
VSS — программная функция, доступная только в коммутаторах Cisco Catalyst серии 6500. Для ее включения и использования требуются следующие компоненты:
Пути переноса
В следующей таблице перечислен ряд возможных путей переноса в систему VSS: Эта конфигурация носит ориентировочный характер и не является исчерпывающей.
Обзор схемы переноса
Общая конфигурация в автономной среде
Функции и протоколы, действующие между ядром 3-го уровня (L3) и распределительной топологией 2-го/3-го уровней:
Протоколы маршрутизации IP
Каналы портов 3-го уровня или и функция маршрутизации IP EqualCost MultiPath
Функции и протоколы, действующие между распределительной топологией 2-го/3-го уровней и уровнем доступа:
Протокол STP (Spanning Tree Protocol)
Протоколы маршрутизации на первом переходе (FHRP)
Политики: QoS, ACL
Групповые каналы 2-го уровня, сети VLAN, каналы портов
Перенос в систему VSS
Процесс переноса состоит из нескольких шагов. Каждый шаг поясняется в этом разделе.
Порядок переноса между ядром и распределительным уровнем:
настройка канала MultiChassis EtherChannel (MEC);
изменение конфигурации маршрутизации IP и удаление команд, переставших быть необходимыми.
Порядок переноса между распределительным уровнем и уровнем доступа:
настройка канала MEC;
сохранение в действии протокола STP;
изменение команд FHRP;
переносом QoS и политик с помощью в MEC посредством списков ACL (при необходимости);
перенос конфигурации групповых каналов 2-го уровня в MEC.
Пошаговый процесс переноса
Выполните следующие действия:
В первоначальной автономной конфигурации обычно применяется выравнивание нагрузки от трафика между распределительными коммутаторами с использованием механизмов распределения нагрузки VLAN и конфигурации HSRP.
Измените конфигурации HSRP и STP таким образом, чтобы для всех потоков активным стал коммутатор Distribution-1, а соседние устройства обнаружили это изменение и направляли весь трафик коммутатору Distribution-1.
Остановите физические интерфейсы коммутатора Distribution-2, чтобы изолировать его от сети.
После окончательного выбытия коммутатора Distribution-2 из сети можно переключить его в режим VSS без помех для полезного трафика.
Установите новый супервизор (VS-SUP720-10G), если он не был установлен ранее, и проверьте его состояние.
Скопируйте программное обеспечение Cisco IOS, совместимое с системой VSS, на носитель sup-bootdisk:
Обновите настройку bootvar для загрузки ПО Cisco IOS, скопированного на sup-bootdisk:
Для работы коммутатора Distribution-2 в режиме VSS необходим канал виртуального коммутатора (VSL). VSL можно организовать на основе текущего канала PortChannel между коммутаторами Distribution-1 и Distribution-2.
Настройте атрибуты виртуального коммутатора:
номер домена виртуальной коммутации (уникален в пределах сети);
номер виртуального коммутатора (уникален в пределах домена);
канал виртуальной коммутации (VSL).
Переведите коммутатор Distribution-2 в режим VSS.
Примечание. Выполните в консоли коммутатора следующую команду:
Проверьте перевод коммутатора Distribution-2 в режим VSS.
Коммутатор Distribution-2 успешно переведен и работает в режиме VSS. Шаги предварительной настройки можно выполнить и после перевода коммутатора Distribution-1. Вместе с тем, предварительная настройка помогает уменьшить потери пакетов во время переноса.
Для предварительной настройки коммутатора Switch-1 в системе VSS выполните следующие шаги:
настройте MEC с использованием локальных интерфейсов коммутатора Switch-1; интерфейсы коммутатора Switch-2 (в данный момент — Distribution-1) можно добавить к MEC после его перевода в режим VSS;
переместите конфигурацию интерфейса в MEC;
переместите политики QoS и ACL в MEC.
Настройте соседние устройства для канала PortChannelВ этот момент соединения между коммутатором Switch-1 системы VSS и его соседними устройствами нет. Поэтому канал порта можно настроить, не нарушая движение трафика через коммутатор Distribution-1.
В системе VSS активное и резервное шасси используют запрограммированный в активное шасси MAC-адрес и IP-адрес сети VLAN. HSRP более не требуется.
Переместите виртуальные IP-адреса HSRP на интерфейсы VLAN.
Удалите конфигурацию HSRP с интерфейсов VLAN.
Примечание. Записи ARP оконечных устройств будут по-прежнему указывать на MAC-адреса HSRP. До истечения периода действия этих записей или отправки очередного пакета ARP для обновления кэша связь будет недоступна.
Включите функцию NSF-SSO для используемых протоколов маршрутизации IP. VSS упрощает настройку маршрутизации, снимая необходимость в некоторых сетевых операторах. По этой причине данные операторы могут быть удалены.
VSS Switch-1
Измените конфигурацию STP таким образом, чтобы коммутатор Switch-1 системы VSS стал корневым для всех сетей VLAN.
Проверьте конфигурацию и подключение коммутатора VSS Switch-1.
Включите интерфейсы VSS коммутатора Switch-1.
Проверьте связь на 2-м уровне с другими устройствами уровня доступа.
Проверьте связь на 3-м уровне с другими устройствами уровня ядра.
После проверки связи с коммутатором Switch-1 системы VSS остановите интерфейсы коммутатора Distribution-1 для переключения трафика на систему VSS.
Повторите шаги по настройке коммутатора Distribution-1 для его перевода в предпочтительный резервный режим VSS.
После загрузки резервного коммутатора VSS конфигурация активного коммутатора VSS автоматически синхронизируется с резервным коммутатором VSS. При загрузке интерфейсы резервной VSS (Switch-2) находятся в отключенном состоянии.
Завершите настройку виртуального коммутатора.
Для автоматического задания конфигурации резервного виртуального коммутатора на активном виртуальном коммутаторе можно выполнить эту команду:
Примечание. Помните, что команда switch accept mode virtual начиная с выпуска ПО Cisco IOS 12.2 SXI более не требуется, поскольку конфигурации объединяются автоматически.
Добавьте к MEC интерфейсы коммутатора Switch-2.
Перенос в систему VSS завершен. В этот момент работают оба коммутатора системы VSS, и нагрузка от трафика выравнивается между всеми восходящими интерфейсами.
Предположим, что STP находится в состоянии сходимости. Что произойдет, если я возьму кабель и соединю свитч Н напрямую с корневым свитчем А? Root Bridge «увидит», что у него появился новый задействованный порт, и отошлет по нему BPDU.
Свитч Н, получив этот фрейм с нулевой стоимостью, определит стоимость маршрута через новый порт как 0+19 =19 при том, что стоимость его корневого порта равна 76. После этого порт свитча Н, который ранее пребывал в состоянии disabled, пройдёт все стадии transition и переключится в режим передачи только через 50 секунд. Если к данному свитчу подключены другие устройства, то все они на 50 секунд потеряют соединение с корневым свитчем и с сетью в целом.
Аналогичным образом поступает свитч G, получив от свитча Н фрейм BPDU с уведомлением о стоимости 19. Он меняет стоимость своего назначенного порта на 19+19= 38 и переназначает его в качестве нового корневого порта, потому что стоимость его прежнего Root Port равна 57, что больше 38. При этом снова начинаются все стадии переназначения портов длительностью 50 с, и, в конечном итоге, вся сеть обрушивается.
Теперь давайте рассмотрим, что будет происходить в аналогичной ситуации при использовании RSTP. Корневой свитч точно так же отошлет BPDU подключившемуся к нему свитчу Н, но сразу после этого заблокирует свой порт. Получив этот фрейм, свитч Н определит, что данный маршрут имеет меньшую стоимость, чем его корневой порт, и тут же его заблокирует. После этого Н вышлет корневому свитчу Proposal с просьбой открыть новый порт, потому что его стоимость меньше, чем стоимость уже имеющегося корневого порта. После того, как корневой свитч согласится с просьбой, он разблокирует свой порт и отошлет Agreement свитчу Н, после чего последний сделает новый порт своим корневым портом.
Свитч F, проанализировав стоимости, увидит, что маршрут к корневому свитчу через нижний порт будет стоить 57 при том, что уже имеющийся маршрут через верхний порт стоит 38, и оставит всё как есть. Узнав об этом, свитч G заблокирует порт, обращенный к F, и будет пересылать трафик корневому свитчу по новому маршруту G-H-A.
Пока свитч F не получит Proposal/Agreement от свитча G, он будет держать свой нижний порт заблокированным, чтобы предотвратить образование петель. Таким образом, вы видите, что RSTP – это очень быстрый протокол, который не создает в сети проблем, свойственных STP.
Теперь давайте перейдём к рассмотрению команд. Вам нужно зайти в режим глобальной конфигурации свитча и выбрать режим PVST или RPVST с помощью команды spanning-tree mode <pvst/rpvst>. Затем вам нужно решить, как изменить приоритет конкретной VLAN. Для этого используется команда spanning-tree vlan <номер сети VLAN> priority < значение >. Из последнего видеоурока вы должны помнить, что приоритет представляет собой число, кратное 4096 и по умолчанию это число равно 32768 плюс номер сети VLAN. Если вы выбрали VLAN1, то приоритет по умолчанию будет 32768+1= 32769.
Зачем может понадобиться изменять приоритет сетей? Мы знаем, что BID состоит из числового значения приоритета и MAC-адреса. MAC-адрес устройства невозможно изменить, он имеет постоянное значение, поэтому можно изменить только величину приоритета.
Предположим, что существует крупная сеть, где все устройства Cisco соединены по круговой схеме. При этом по умолчанию активирован PVST, поэтому системой будет выбран корневой свитч. Если все устройства имеют одинаковый приоритет, то преимущество будет иметь свитч с самым старым MAC-адресом. Однако это может быть 10-12 летний коммутатор устаревшей модели, у которого даже не хватает мощности и производительности «возглавлять» такую обширную сеть.
В то же время у вас в сети может быть новейший свитч за несколько тысяч долларов, который в силу большего значения MAC-адреса вынужден «подчиняться» старому свитчу ценой в пару сотен долларов. Если старый свитч становится корневым коммутатором, это свидетельствует о серьезной ошибке дизайна сети.
Поэтому вы должны зайти в настройки нового свитча и присвоить ему минимальное значение приоритета, например, 0. При использовании VLAN1 суммарное значение приоритета будет равно 0+1=1, и все остальные устройства постоянно будут считать его корневым свитчем.
Теперь вообразим такую ситуацию. Если корневой свитч по какой-то причине становится недоступным, вы можете захотеть, чтобы новым корневым свитчем стал не любой коммутатор с низшим приоритетом, а какой-то конкретный свитч с лучшими сетевыми функциями. В этом случае в настройках Root Bridge используется команда, назначающая основной и второстепенный корневые свитчи: spanning-tree vlan <номер сети VLAN> root <основной/второстепенный>. Значение приоритета для основного свитча Primary будет равно 32768 – 4096 – 4096 = 24576. Для второстепенного свитча Secondary оно вычисляется по формуле 32768 – 4096 = 28672.
Вы можете не вводить эти числа вручную – система сделает это для вас автоматически. Таким образом, корневым будет свитч с приоритетом 24576, а при его недоступности – свитч с приоритетом 28672 при том, что приоритет всех остальных свитчей по умолчанию не меньше 32768. Так следует поступать, если вы не хотите, чтобы система автоматически назначала корневой свитч.
Если вы хотите посмотреть настройки протокола STP, нужно использовать команду show spanning-tree summary. Давайте теперь рассмотрим все изученные сегодня темы с помощью Packet Tracer. Я использую топологию сети из 4-х свитчей модели 2690, это не имеет значения, поскольку все модели свитчей Cisco поддерживают STP. Они соединены друг с другом так, что сеть образует замкнутый круг.
По умолчанию устройства Cisco работают в режиме PSTV+, то есть для конвергенции каждому порту потребуется не более 20 с. Панель симуляции позволяет изобразить отправку трафика и просмотреть параметры работы созданной сети.
Вы видите, что представляет собой фрейм STP BPDU. Если вы видите обозначение версии 0, значит, перед вами STP, потому что для RSTP используется версия 2. Здесь приведено также значение Root ID, состоящее из приоритета и MAC-адреса корневого свитча, и равное ему значение Bridge ID.
Эти величины равны, поскольку стоимость маршрута к корневому свитчу для SW0 равна 0, следовательно, он сам является корневым свитчем. Таким образом, после включения свитчей благодаря использованию STP произошел автоматический выбор Root Bridge и сеть заработала. Вы видите, что для предотвращения петли верхний порт Fa0/2 свитча SW2 был переведен в состояние Blocking, на что указывает оранжевый цвет маркера.
Перейдем к консоли настроек свитча SW0 и используем пару команд. Первая это команда show spanning-tree, после ввода которой на экране нам будет показана информация о режиме PSTV+ для сети VLAN1. Если мы будем использовать несколько VLAN, в нижней части окна появится еще один блок информации для второй и последующих используемых сетей.
Вы видите, что протокол STP доступен по стандарту IEEE, что означает использование PVSTP+. Технически это не является стандартом .1d. Здесь также приведена информация Root ID: приоритет 32769, MAC-адрес корневого устройства, стоимость 19 и т.д. Далее следует информация Bridge ID, в которой расшифровывается значение приоритета 32768 +1, и следует другой MAC-адрес. Как видите, я ошибся — свитч SW0 не является корневым свитчем, корневой свитч имеет другой MAC-адрес, приведенный в параметрах Root ID. Я думаю, это связано с тем, что SW0 получил фрейм BPDU с информацией о том, что какой-то свитч в сети имеет большие основания играть роль корневого. Сейчас мы это рассмотрим.
(примечание переводчика: Root ID – идентификатор корневого свитча, одинаковый для всех устройств одной и той же сети VLAN, работающей по протоколу STP, Bridge ID – идентификатор локального свитча в составе Root Bridge, который может быть разным для разных свитчей и разных VLAN).
Еще одно обстоятельство, которое указывает на то, что SW0 не является корневым свитчем – это то, что корневой свитч не имеет Root Port, а в данном случае имеется и Root Port, и Designated Port, находящиеся в состоянии forwarding. Вы также видите тип соединения p2p, или «точка-точка». Это означает, что порты fa0/1 и fa0/2 напрямую соединены с соседними свитчами.
Если бы какой-то порт был подсоединен к хабу, тип соединения обозначался бы как shared, позже мы это рассмотрим. Если я введу команду для просмотра итоговой информации show spanning-tree summary, мы увидим, что данный свитч находится в режиме PVSTP, далее идет перечисление недоступных функций порта.
Далее показано состояние и количество портов, обслуживающих VLAN1: blocking 0, listening 0, learning 0, в состоянии forwarding в режиме STP находится 2 порта.
Перед тем, как перейти к свитчу SW2, посмотрим на настройки свитча SW1. Для этого мы используем ту же команду show spanning-tree.
Еще одним признаком корневого свитча является то, что у него нет Root-портов, оба порта обозначаются как Designated. Если все порты показаны как Designated и находятся в состоянии forwarding, то перед вами корневой свитч.
Свитч SW3 содержит аналогичную информацию, и теперь я перехожу к SW2, потому что один из его портов находится в состоянии Blocking. Я использую команду show spanning-tree и мы видим, что информация Root ID и значение приоритета такие же, как и у остальных свитчей.
Далее указано, что один из портов является Alternative. Пусть вас это не смущает, стандарт 802.1d называет это Blocking Port, а в PVSTP заблокированный порт всегда обозначается как Alternative. Итак, этот альтернативный Fa0/2 порт находится в заблокированном состоянии, а порт Fa0/1 выступает в качестве Root Port.
Заблокированный порт находится в сегменте сети между свитчем SW0 и свитчем SW2, благодаря чему у нас не образуется петля. Как видите, свитчи использую соединение типа p2p, потому что к ним не подсоединены никакие другие устройства.
У нас имеется сеть, сходящаяся по протоколу STP. Теперь я возьму кабель и соединю напрямую свитч SW2 с коневым свитчем SW1. После этого все порты SW2 станут обозначаться оранжевыми маркерами.
Если использовать команду show spanning-tree summary, мы увидим, что сначала два порта находятся в состоянии Listening, затем переходят в состояние Learning и через несколько секунд в состояние Forwarding, при этом цвет маркера меняется на зеленый. Если сейчас ввести команду show spanning-tree, видно, что Fa0/1, который раньше был Root-портом, теперь перешел в состояние блокировки и стал называться Alternative-портом.
Порт Fa0/3, к которому подсоединен кабель корневого свитча, стал Root-портом, а порт Fa0/2 превратился в назначенный Designated-порт. Давайте ещё раз рассмотрим происходящий процесс конвергенции. Я отсоединю кабель SW2-SW1 и вернусь к предыдущей топологии. Вы видите, что порты SW2 сначала блокируются и снова становятся оранжевыми, затем последовательно переходят через состояния Listening и Learning и оказываются в состоянии Forwarding. При этом один порт становится зеленым, а второй, соединенный со свитчем SW0, остается оранжевым. Процесс сходимости занял довольно длительное время, таковы издержки работы STP.
Теперь давайте рассмотрим, как работает RSTP. Начнем со свитча SW2 и введем в его настройках команду spanning-tree mode rapid-pvst. У данной команды есть всего два варианта параметров: pvst и rapid-pvst, я использую второй. После ввода команды свитч переходит в режим RPVST, проверить это можно командой show spanning-tree.
Я снова соединяю кабелем свитч SW2 напрямую с корневым свитчем SW1 –посмотрим, как быстро произойдет схождение. Я набираю команду show spanning-tree summary и вижу, что два порта свитча находятся в состоянии Blocking, 1 в состоянии Forwarding.
Вы видите, что схождение произошло практически мгновенно, так что можете судить, насколько RSTP быстрее, чем STP. Далее мы можем использовать команду spanning-tree portfast default, которая переведет все порты свитча в режим portfast по умолчанию. Это актуально в случае, если большинство портов свитча являются Edge-портами, напрямую соединенными с хостами. Если у нас имеется какой-то порт, не являющийся Edge, мы настраиваем его обратно в режим spanning-tree.
Для настройки работы с VLAN можно использовать команду spanning-tree vlan < номер > с параметрами priority (задает приоритет свитча для spanning-tree) или root (назначает свитч корневым). Мы используем команду spanning-tree vlan 1 priority, указав в качестве приоритета любое число, кратное 4096, в диапазоне от 0 до 61440. Таким образом можно вручную изменить приоритет любой VLAN.
Можно набрать команду spanning-tree vlan 1 root с параметрами primary или secondary, чтобы настроить основной или резервный root-порт для конкретной сети. Если я использую spanning-tree vlan 1 root primary, данный порт будет основным корневым портом для сети VLAN1.
Я введу команду show spanning-tree, и мы увидим, что данный свитч SW2 имеет приоритет 24577, MAC-адреса Root ID и Bridge ID совпадают, значит, теперь он стал корневым свитчем.
Вы видите, насколько быстро произошло схождение и смена роли свитчей. Сейчас я отменю режим основного свитча командой no spanning-tree vlan 1 root primary, после чего его приоритет вернется к предыдущему значению 32769, а роль корневого свитча снова перейдет к SW1.
Посмотрим, как работает portfast. Я введу команду int f0/1, зайду в настройки данного порта и использую команду spanning-tree, после чего система выдаст подсказки значений параметров.
Далее я использую команду spanning-tree portfast, которую можно ввести с параметрами disable (отключает функцию portfast для данного порта) или trunk (включает функцию portfast для данного порта даже в режиме транка).
Если ввести spanning-tree portfast, то функция просто включится на данном порту. Для активации функции BPDU Guard нужно использовать команду spanning-tree bpduguard enable, команда spanning-tree bpduguard disable отключает данную функцию.
Я быстро расскажу ещё об одной вещи. Если для VLAN1 интерфейс свитча SW2 в направлении SW3 будет заблокирован, то при других параметрах настройки для другой VLAN, например, VLAN2, этот же интерфейс может стать корневым портом. Таким образом в системе может реализовываться механизм балансировки нагрузки трафика – в одном случае данный сегмент сети не используется, в другом – используется.
Я покажу, что происходит, когда при подключении хаба у нас возникает shared-интерфейс. Я добавлю хаб на схему и соединю его со свитчем SW2 двумя кабелями.
Команда show spanning-tree отразит следующую картину.
Fa0/5 (левый нижний порт свитча) становится backup-портом, а порт Fa0/4 (правый нижний порт свитча) становится назначенным designated-портом. Тип обоих портов – общий, или shared. Это означает, что сегмент интерфейсов хаб-свитч является общей сетью.
Благодаря использованию RSTP мы получили разделение на альтернативный и резервный порты. Если мы переведём свитч SW2 в режим pvst командой spanning-tree mode pvst, то увидим, что интерфейс Fa0/5 снова перешел в состояние Alternative, потому что сейчас нет отличия между backup-портом и alternative-портом.
Это был очень длинный урок, и если вы чего-то не поняли, советую пересмотреть его ещё раз.
Спасибо, что остаётесь с нами. Вам нравятся наши статьи? Хотите видеть больше интересных материалов? Поддержите нас оформив заказ или порекомендовав знакомым, 30% скидка для пользователей Хабра на уникальный аналог entry-level серверов, который был придуман нами для Вас: Вся правда о VPS (KVM) E5-2650 v4 (6 Cores) 10GB DDR4 240GB SSD 1Gbps от $20 или как правильно делить сервер? (доступны варианты с RAID1 и RAID10, до 24 ядер и до 40GB DDR4).
STP (Spanning Tree Protocol) — сетевой протокол (или семейство сетевых протоколов) предназначенный для автоматического удаления циклов (петель коммутации) из топологии сети на канальном уровне в Ethernet-сетях. Первоначальный протокол STP описан в стандарте 802.1D. Позже появилось несколько новых протоколов (RSTP, MSTP, PVST, PVST+), отличающихся некоторыми особенностями в алгоритме работы, в скорости, в отношении к VLANам и ряде других вопросов, но в целом решающих ту же задачу похожими способами. Все их принято обобщённо называть STP-протоколами.
Протокол STP в своё время был разработан мамой Интернета Радией Перлман (Radia Perlman), а позже, в начале 90х превратился в стандарт IEEE 802.1D.
В настоящее время протокол STP (или аналогичный) поддерживается почти всеми Ethernet-коммутаторами, как реальными, так и виртуальными, за исключением самых примитивных.
Алгоритм действия STP (Spanning Tree Protocol)
- После включения коммутаторов в сеть, по умолчанию каждый коммутатор считает себя корневым (root).
- Каждый коммутатор начинает посылать по всем портам конфигурационные Hello BPDU пакеты раз в 2 секунды, максимальный промежуток 20 секунд.
- Если мост получает BPDU с идентификатором моста (Bridge ID) меньшим, чем свой собственный, он прекращает генерировать свои BPDU и начинает ретранслировать BPDU с этим идентификатором. Таким образом в конце концов в этой сети Ethernet остаётся только один мост, который продолжает генерировать и передавать собственные BPDU. Он и становится корневым мостом (root bridge).
- Остальные мосты ретранслируют BPDU корневого моста, добавляя в них собственный идентификатор и увеличивая счетчик стоимости пути (path cost).
- Для каждого сегмента сети, к которому присоединены два и более портов мостов, происходит определение designated port — порта, через который BPDU, приходящие от корневого моста, попадают в этот сегмент.
- После этого все порты в сегментах, к которым присоединены 2 и более портов моста, блокируются за исключением root port и designated port.
- Корневой мост продолжает посылать свои Hello BPDU раз в 2 секунды.
BPDU кадр
Bridge Protocol Data Unit
- Protocol Identifier размер 2 байта
- Protocol Version Identifier размер 1 байт
- BPDU Type размер 1 байт
- Flags размер 1 байт
- Root Identifier размер 8 байт
- Root Path Cost размер 4 байт
- Bridge Identifier размер 8 байт
- Port Identifier размер 2 байт
- Message Age размер 2 байт
- Max Age размер 2 байт
- Hello Time размер 2 байт
- Forward Delay размер 2 байт
Вот как выглядит BPDU кадр STP
Состояния портов:
1. Блокировка (blocking)
2. Прослушивание (listening)
3. Обучение (learning)
4. Передача (forwarding)
Настройка stp
Обща схема примера работы и настройки STP. Два коммутатора соединенных двумя линками, видно то STP уже работает и один порт у второго коммутатора погашен чтобы не было петли
Что такое и как настроить протокол STP (Spanning Tree Protocol) в Cisco-01
Посмотрим на первом коммутаторе настройки stp. Логинимся и вводим команду
Видим, что это рутовый коммутатор и все порты в состоянии передача.
Что такое и как настроить протокол STP (Spanning Tree Protocol) в Cisco-02
Смотрим, тоже на втором коммутаторе.
Что такое и как настроить протокол STP (Spanning Tree Protocol) в Cisco-03
Видим, что это не рутовый коммутатор. Интерфейс Fa0/2 является рутовым портом. Fa0/3 ждет в запасе.
Теперь предположим, что интерфейс Fa0/2 упал, что будет. Для примера выключим его. Заходим на 1 коммутатор.
Что такое и как настроить протокол STP (Spanning Tree Protocol) в Cisco-04
Видим, что линк пропал
Что такое и как настроить протокол STP (Spanning Tree Protocol) в Cisco-05
Зайдем в этот момент на второй коммутатор и посмотрим состояние портов.
Видим, что порт Fa0/3 в состоянии обучения
Что такое и как настроить протокол STP (Spanning Tree Protocol) в Cisco-06
теперь в состоянии передачи, прошло около 20 секунд и линк поднялся.
Что такое и как настроить протокол STP (Spanning Tree Protocol) в Cisco-07
Восстановим на первом коммутаторе Fa0/2 командой
Что такое и как настроить протокол STP (Spanning Tree Protocol) в Cisco-08
И видим, что все мгновенно восстановилось.
Что такое и как настроить протокол STP (Spanning Tree Protocol) в Cisco-09
Все же переключение в 20 секунд очень нехорошо, поэтому уже придуманы улучшенные версии протокола rstp и lacp, но о них в следующих публикациях.
Как настроить RSTP на коммутаторах Cisco
RSTP или как его еще называют в более развернутом виде Rapid spanning tree protocol, по сути тот же STP но более быстрый где время сходимости мгновение, вы потеряете один пакет.
Включить RSTP можно командой с режиме глобального конфигурирования, где нужно изменить режим на rapid-pvst.
Все теперь при падении одного линка, время схождения между коммутаторами будет 1 секунда, очень быстро, как видите RSTP, гораздо лучше STP и настраивается одной командой.
Многоуровневая схема сети ( рис. 6.1в) характеризуется избыточными устройствами и соединениями, что обеспечивает высокую надежность . Однако избыточные соединения могут приводить к образованию маршрутных петель, что, в свою очередь , может привести к зацикливанию передаваемых пакетов, широковещательному шторму и падению сети.
Из рис. 6.7 следует, что от узла Hosti до Hostj существует 5 различных путей (1, 2, 3, 4, 5).
Рис. 6.7. Избыточные пути в многоуровневой модели сети
Множество путей могут образовывать маршрутные петли ( рис. 6.8), приводящие к зацикливанию кадров в какой-либо петле.
Поэтому к топологии сети предъявляются два противоположных требования:
- с одной стороны, для повышения надежности необходимы избыточные устройства и маршруты (соединения);
- с другой стороны, топология сети должна быть древовидной, т.е. не должна иметь маршрутных петель.
Для разрешения этих противоречивых требований был разработан протокол охватывающего (покрывающего) дерева (Spanning-Tree Protocol - STP), который при наличии избыточных физических соединений прокладывает логические маршруты так, чтобы топология сети была древовидной. Алгоритм STA , реализующий протокол STP , автоматически выключает избыточные маршруты, образующие маршрутные петли. Избыточные соединения могут быть автоматически активизированы при выходе из строя соединений основного маршрута.
Таким образом, коммутаторы используют алгоритм STA , чтобы перевести в резервное состояние избыточные пути, которые не соответствуют иерархической древовидной топологии. Запасные избыточные пути задействуются, если основные выходят из строя. Протокол STP используется для создания логической иерархии без петель, т.е. при наличии физических петель, логические петли отсутствуют ( рис. 6.9).
При этом топология сети будет древовидной и каждый конечный узел будет характеризоваться единственным путем до главного или корневого (root) коммутатора К ( рис. 6.9). Причем, расстояние от каждого узла до корневого коммутатора будет минимальным.
Для работы STP каждый коммутатор периодически каждые 2 секунды рассылает служебные Hello-кадры ( Bridge Protocol Data Unit - BPDU) во все свои порты, чтобы позволить другим коммутаторам знать о его существовании. Кадры BPDU содержат идентификаторы коммутаторов ( bridge ID - BID) и портов, эта информация используется, чтобы выбрать корневой коммутатор сети. Расстояние до корневого коммутатора также передается в кадрах BPDU. Для выбора корневого коммутатора администратор может устанавливать коммутаторам приоритет (также как в протоколе OSPF при выборе маршрутизатора DR). При одинаковых приоритетах выбор производится на основании идентификаторов BID . Коммутатор с наименьшим значением BID становится корневым.
В исходном состоянии каждый коммутатор считает себя корневым. Когда приходит служебный Hello- кадр BPDU с меньшим (с лучшим) значением идентификатора BID , коммутатор обновляет свое состояние и рассылает обновленные кадры BPDU другим коммутаторам. Если же приходит кадр BPDU с худшим (с большим) значением BID , то кадр отбрасывается, состояние коммутатора не модифицируется.
Идентификатор коммутатора BID представляет собой число размером 8 байт , где 6 младших байт отображают МАС- адрес блока управления коммутатора, а два старших байта - задаваемый администратором приоритет, который может изменяться от 1 до 65536 ( по умолчанию 32768). Причем, при использовании виртуальных локальных сетей VLAN два старших байта приоритета разделены на два поля: поле собственно приоритета и поле расширения идентификатора ID ( рис. 6.10).
Поле расширения идентификатора ID размером в 12 бит служит для идентификации VLAN . При этом общее значение приоритета (два старших байта) изменяется кратно 4096. Таким образом, задав приоритет, администратор определит корневой коммутатор . При одинаковых значениях приоритета и одинаковых расширениях ID идентификатора BID будет определяться МАС-адресом блока управления коммутатора. С учетом того, что по умолчанию управляющей является VLAN1, то приоритет по умолчанию будет 32769.
Задание приоритета некоторому коммутатору Switch-A1 , который администратор решает сделать корневым, производится по команде:
Читайте также: