Коммутация LAN : Протокол STP

Общие сведения и настройка протокола связующего дерева (STP) в коммутаторах Catalyst

5 апреля 2016 - Машинный перевод
Другие версии: PDF-версия:pdf | Перевод, выполненный профессиональным переводчиком (23 марта 2008) | Английский (20 октября 2015) | Отзыв


Содержание


Введение

Протокол STP (Spanning Tree Protocol) - это протокол второго уровня, выполняемый на мостах и коммутаторах. Спецификация для STP называется IEEE 802.1D. Основная цель STP - предотвращение создания петель при наличии в сети избыточных путей. Петли приводят к серьезным сбоям в сети.

Предварительные условия

Требования

Для этого документа отсутствуют особые требования.

Используемые компоненты

Несмотря на то, что этот документ использует Cisco Catalyst 5500/5000 Коммутаторы, принципы связующего дерева, что подарки документа применимы к почти всем устройствам тот STP поддержки.

В представленных примерах используются следующие устройства:

Сведения, представленные в этом документе, были получены от устройств, работающих в специальной лабораторной среде. Все устройства, описанные в этом документе, были запущены с чистой (стандартной) конфигурацией. В рабочей сети необходимо изучить потенциальное воздействие всех команд до их использования.

Условные обозначения

Дополнительные сведения об условных обозначениях см. в документе Условные обозначения технических терминов Cisco.

Теоретические сведения

Конфигурации в этом документе применяются к Catalyst 2926G, 2948G, 2980G, 4500/4000, 5500/5000, и Коммутаторы 6500/6000, которые выполняют операционную систему Catalyst (CatOS). Информация о настройке STP на других платформах коммутаторов представлена в следующих документах:

Схема сети

В этом документе использованы параметры данной сети:

/image/gif/paws/5234/5-a.gif

Понятия

STP выполняется на мостах и коммутаторах, совместимых с 802.1D. Существуют различные разновидности STP, но наиболее популярным и широко внедряемым стандартом является 802.1D. Внедрение протокола STP на мостах и коммутаторах предназначено для предотвращения образования петель в сети. STP нужно использовать в тех случаях, когда требуются избыточные каналы связи, а не петли. В случае отказа в сети избыточные каналы так же важны, как и резервные копии. Сбой в работе активного модуля активирует резервные каналы с тем, чтобы пользователь мог продолжать использование сети. В случае отсутствия STP на мостах и коммутаторах эта ситуация может привести к образованию петли. Если два связанных коммутатора выполняют другие разновидности STP, они требуют, чтобы сходились другие сроки. Когда другие разновидности используются в коммутаторах, это создает проблемы синхронизации между Блокированием и Состояниями пересылки. Поэтому рекомендуется использовать те же разновидности STP. Рассмотрим следующую сеть:

5-b.gif

В этой сети планируется создание резервного канала между коммутатором А и коммутатором В. Однако в данной конфигурации возможно возникновение замкнутой петли. К примеру, широковещательная или многоадресная рассылка, которая передается со станции М на станцию N, будет просто циркулировать между двумя коммутаторами.

Но при выполнении STP на обоих коммутаторах сеть логически выглядит следующим образом:

/image/gif/paws/5234/5-c.gif

Эта информация относится к сценарию, представленному в схеме сети:

  • Коммутатор 15 является коммутатором опорной сети.

  • Переключается 12, 13, 14, 16, и 17 коммутаторы, которые подключают к рабочим станциям и PC.

  • Сеть определяет эти VLAN:

    • 1

    • 200

    • 201

    • 202

    • 203

    • 204

  • Доменным именем Транкингового протокола VLAN (VTP) является Doc STD.

Для обеспечения необходимой избыточности путей, а также во избежание возникновения петли STP определяет дерево, развертывающее все коммутаторы в расширенной сети. STP вводит некоторые избыточные пути данных в состояние ожидания (заблокированные), а другие пути оставляет в состоянии пересылки. Если в состоянии пересылки канал становится недоступным, STP перенастраивает сеть и перенаправляет потоки данных, используя для этого соответствующий резервный путь.

Описание технологии

Использование протокола STP предусматривает для всех коммутаторов в сети выбор корневого моста, который становится центральным узлом в сети. Все другие решения, касающиеся данной сети, в том числе какой порт заблокировать и для какого порта использовать режим пересылки, принимаются в соответствии с установками корневого моста. Среда коммутации, которая отличается от среды мостового соединения, обычно используется с несколькими VLAN. Обычно, при внедрении корневого моста в коммутируемую сеть корневой мост считается корневым коммутатором. У каждой VLAN, поскольку они являются отдельными доменами широковещательной рассылки, должен быть свой корневой мост. Маршрут для различных VLAN может находиться в одном коммутаторе или в нескольких коммутаторах.

Примечание: Очень важен выбор корневого коммутатора для конкретной VLAN. Пользователь может сам выбрать корневой коммутатор или позволить решать коммутаторам, какой из них более уязвим. Если процесс выбора корневого коммутатора не контролируется, в сети могут возникнуть квазиоптимальные пути.

Все коммутаторы обмениваются информацией для использования при выборе корневого коммутатора, а также для последующей настройки сети. Эту информацию переносят блоки данных протокола моста (BPDU). Каждый коммутатор сравнивает параметры в BPDU, которые коммутатор отправляет соседнему устройству, с параметрами, которые коммутатор получает от этого устройства.

В процессе выбора корневого коммутатора STP чем меньше значение, тем лучше. Если коммутатор А отображает идентификатор корневого коммутатора, который меньше идентификатора, отображаемого коммутатором B, то предпочтение отдается информации от коммутатора А. Коммутатор B останавливает рекламу своего идентификатора ROOT и принимает идентификатор ROOT коммутатора A.

Обратитесь к Настройке Дополнительные Функции STP для получения дополнительной информации о некоторых дополнительных функциях STP, таких как:

  • PortFast

  • Защита корня дерева STP

  • Защита от петель

  • Защита BPDU

Работа STP

Задача

Предварительные условия

Перед настройкой STP выберите коммутатор, чтобы быть root связующего дерева. Нужно выбрать самый централизованный коммутатор в сети, который не обязательно должен быть самым мощным. Все потоки данных в сети обрабатываются с позиции данного коммутатора. Кроме того, выберите наименее загруженный коммутатор в сети. Магистральные коммутаторы часто выступают в качестве корневого узла связующего дерева, поскольку эти коммутаторы обычно не подключены к конечным станциям. Также на них меньше влияют перемещения и изменения в сети.

После того как будет выбран корневой коммутатор, задайте соответствующие переменные для назначения этого коммутатора корневым. Единственная переменная, которую необходимо задать – это bridge priority. Если переменная приоритета моста коммутатора меньше, чем у всех остальных коммутаторов, другие коммутаторы автоматически выбирают этот коммутатор в качестве корневого.

Клиенты (конечные станции) на Портах коммутатора

Можно также выполнить команду set spantree portfast , на для каждого порта основание. При выборе переменной порта portfast, порт немедленно переключается из режима блокировки в режим пересылки. Команда portfast позволяет предотвратить периоды ожидания для тех клиентов, которые используют Novell Netware или DHCP для получения IP-адреса. Однако убедитесь, что вы не пользуетесь этой командой в случае соединения между коммутаторами. В этом случае данная команда может привести к петле. Задержка в течение 30-60 секунд при переходе из режима блокировки в режим пересылки предотвращает образование временной петли в сети при соединении двух коммутаторов.

Для большинства других переменных STP следует оставить их значения по умолчанию.

Правила функционирования

Этот раздел перечисляет правила для того, как работает STP. При первом подключении коммутаторов они запускают процесс выбора корневого коммутатора. Каждый коммутатор передает BPDU на коммутатор, подключенный напрямую, для каждой VLAN.

При прохождении BPDU через сеть каждый коммутатор сравнивает отправленный им блок данных BPDU с BPDU, полученными от соседей. Затем коммутаторы согласовывают между собой, какой коммутатор должен стать корневым. В процессе выбора побеждает коммутатор с наименьшим идентификатором моста в сети.

Примечание: Помните, что один корневой коммутатор определен для каждой VLAN. После завершения процесса идентификации корневого коммутатора, коммутаторы придерживаются следующих правил:

  • Правило STP 1— Все порты корневого коммутатора должны находиться в режиме пересылки.

    Примечание: В некоторых предельных условиях, которые включают порты с зацикливанием, существует исключение к этому правилу.

    Затем каждый коммутатор определяет лучший путь к корневому узлу. Это происходит путем сравнения информации во всех BPDU, которые коммутаторы получили на всех портах. Коммутатор использует порт с наименьшим количеством информации в BPDU в качестве пути к корневому коммутатору; порт с наименьшим количеством информации в BPDU является корневым портом. После обнаружения корневого порта коммутатор переходит к правилу 2.

  • Правило STP 2—Корневой порт должен находиться в режиме пересылки.

    Кроме того, коммутаторы в каждом сегменте ЛВС совместно определяют, какой коммутатор лучше всего использовать, чтобы переместить данные из этого сегмента в корневой мост. Этот коммутатор называется выделенным коммутатором.

  • Правило stp 3 — В сегменте одиночной LAN, порту назначенного коммутатора, который соединяется с тем сегментом LAN, должно быть размещено в режим пересылки.

  • Правило stp 4 — Все другие порты во всех (специфичных для VLAN) коммутаторах должно быть размещено в режим блокировки. Это правило относится только к тем портам, которые подключены к другим мостам или коммутаторам. STP не используется в портах, которые подключены к рабочим станциям или ПК. Эти порты остаются в состоянии пересылки.

    Примечание: Добавление или удаление VLAN, когда выполнения STP в связующем дереве для каждой VLAN (PVST / PVST +) режим вызывает перерасчет связующего дерева для того экземпляра VLAN и трафика, разрушены только для той VLAN. Другие сегменты VLAN на магистральном канале могут пересылать трафик в обычном режиме. Добавление или удаление виртуальных локальных сетей в режиме множественных связующих деревьев (MST) вызывает пересчет связующего дерева для этой VLAN, и трафик нарушается только для этого сегмента MST.

Примечание: По умолчанию связующее дерево работает на каждом порту. Отключение функции связующего дерева невозможно в коммутаторах на основании отдельных портов. Возможно отключение STP для каждой VLAN или глобально для всего коммутатора, хотя это не рекомендуется. Отключение функции связующего дерева требует большой осторожности, поскольку это приводит к появлению в сети петель уровня 2.

Пошаговые инструкции

Выполните следующие действия:

  1. Чтобы получить информацию о версии ПО, используемого коммутатором, выполните команду show version.

    Примечание: Все коммутаторы выполняют ту же версию программного обеспечения.

    Switch-15> (enable)show version
    WS-C5505 Software, Version McpSW: 4.2(1) NmpSW: 4.2(1)
    Copyright (c) 1995-1998 by Cisco Systems
    NMP S/W compiled on Sep  8 1998, 10:30:21
    MCP S/W compiled on Sep 08 1998, 10:26:29
    
    System Bootstrap Version: 5.1(2)
    
    Hardware Version: 1.0  Model: WS-C5505  Serial #: 066509927
    
    Mod Port Model      Serial #  Versions
    --- ---- ---------- --------- ----------------------------------------
    1   0    WS-X5530   008676033 Hw : 2.3
    Fw : 5.1(2)
    Fw1: 4.4(1)
    Sw : 4.2(1)

    В этом сценарии коммутатор 15 - оптимальный выбор для корневого коммутатора сети для всех VLAN, поскольку этот коммутатор является магистральным.

  2. Чтобы установить приоритет коммутатора равным 8192 для виртуальной сети или сетей, которые указывают vlan_id, выполните команду set spantree root vlan_id.

    Примечание: Приоритет по умолчанию для коммутаторов равен 32768. При установке приоритета с этой командой вы вызываете выбор Коммутатора 15 как корневой коммутатор, потому что Коммутатор 15 имеет самый низкий приоритет.

    Switch-15> (enable)set spantree root 1
    VLAN 1 bridge priority set to 8192.
    VLAN 1 bridge max aging time set to 20.
    VLAN 1 bridge hello time set to 2.
    VLAN 1 bridge forward delay set to 15.
    Switch is now the root switch for active VLAN 1.
    Switch-15> (enable) 
    
    Switch-15> (enable)set spantree root 200
    VLAN 200 bridge priority set to 8192.
    VLAN 200 bridge max aging time set to 20.
    VLAN 200 bridge hello time set to 2.
    VLAN 200 bridge forward delay set to 15.
    Switch is now the root switch for active VLAN 200.
    Switch-15> (enable) 
    
    Switch-15> (enable)set spantree root 201
    VLAN 201 bridge priority set to 8192.
    VLAN 201 bridge max aging time set to 20.
    VLAN 201 bridge hello time set to 2.
    VLAN 201 bridge forward delay set to 15.
    Switch is now the root switch for active VLAN 201.
    Switch-15> (enable)
    
    Switch-15> (enable)set spantree root 202
    VLAN 202 bridge priority set to 8192.
    VLAN 202 bridge max aging time set to 20.
    VLAN 202 bridge hello time set to 2.
    VLAN 202 bridge forward delay set to 15.
    Switch is now the root switch for active VLAN 202.
    Switch-15> 
    
    Switch-15> (enable)set spantree root 203
    VLAN 203 bridge priority set to 8192.
    VLAN 203 bridge max aging time set to 20.
    VLAN 203 bridge hello time set to 2.
    VLAN 203 bridge forward delay set to 15.
    Switch is now the root switch for active VLAN 203.
    Switch-15> 
    
    Switch-15> (enable)set spantree root 204
    VLAN 204 bridge priority set to 8192.
    VLAN 204 bridge max aging time set to 20.
    VLAN 204 bridge hello time set to 2.
    VLAN 204 bridge forward delay set to 15.
    Switch is now the root switch for active VLAN 204.
    Switch-15> (enable)

    Более краткий вариант этой команды приводит к тем же результатам, как показано на примере далее:

    Switch-15> (enable)set spantree root 1,200-204 
    VLANs 1,200-204 bridge priority set to 8189.
    VLANs 1,200-204 bridge max aging time set to 20.
    VLANs 1,200-204 bridge hello time set to 2.
    VLANs 1,200-204 bridge forward delay set to 15.
    Switch is now the root switch for active VLANs 1,200-204.
    Switch-15> (enable)

    Команда set spantree priority предоставляет третий способ определения корневого коммутатора:

    Switch-15> (enable)set spantree priority 8192 1
    Spantree 1 bridge priority set to 8192.
    Switch-15> (enable)

    Примечание: В этом сценарии все коммутаторы запустились с очищенных конфигураций. Следовательно, все коммутаторы начинают работать с приоритетом моста равным 32768. Если вы не уверены в том, что все коммутаторы в сети обладают приоритетом большим 8192, установите приоритет требуемого корневого моста равным 1. .

  3. Для того, чтобы настроить параметр PortFast на коммутаторах 12, 13, 14, 16 и 17, выполните команду set spantree portfast mod_num/port_num.

    Примечание: Только настройте эту установку на портах, которые соединяются с рабочими станциями или PC. Не включайте PortFast ни на каком порту, который соединяется с другим коммутатором.

    В этом примере показана настройка коммутатора 12. Другие коммутаторы можно настроить таким же образом. Коммутатор 12 поддерживает следующие подключения портов:

    • Порт 2/1 подсоединен к коммутатору-13.

    • Порт 2/2 подключен к Коммутатор-15.

    • Порт 2/3 подключается к коммутатору 16.

    • Порты 3/1 через 3/24 соединяются с PC.

    • Порты 4/1 через 4/24 соединяются с рабочими станциями UNIX.

    Используя эту информацию в качестве стартовой, выполните команду set spantree portfast на портах 3/1 - 3/24 и на портах 4/1 - 4/24:

    Switch-12> (enable)set spantree portfast 3/1-24 enable
    
    Warning: Spantree port fast start should only be enabled on ports connected
    to a single host.  Connecting hubs, concentrators, switches, bridges, etc. to
    a fast start port can cause temporary spanning-tree loops.  Use with caution.
    
    Spantree ports 3/1-24 fast start enabled.
    Switch-12> (enable) 
    
    Switch-12> (enable)set spantree portfast 4/1-24 enable
    
    Warning: Spantree port fast start should only be enabled on ports connected
    to a single host.  Connecting hubs, concentrators, switches, bridges, etc. to
    a fast start port can cause temporary spanning-tree loops.  Use with caution.
    
    Spantree ports 4/1-24 fast start enabled.
    Switch-12> (enable)
  4. Чтобы убедиться, что коммутатор 15 является корневым коммутатором на соответствующих VLAN, выполните команду show spantree vlan_id.

    Используя выходные данные этой команды, сравните MAC-адрес корневого коммутатора с МАС-адресом коммутатора, из которого поступила команда. Если адреса совпадают, коммутатор, в котором вы находитесь, является корневым коммутатором VLAN. Корневой порт 1/0 также указывает на то, что данный коммутатор является корневым. Вот пример выходных данных команды:

    Switch-15> (enable)show spantree 1
    VLAN 1
    spanning-tree enabled
    spanning-tree type          ieee
    
    Designated Root             00-10-0d-b1-78-00
    
    !--- This is the MAC address of the root switch for VLAN 1.
    
    Designated Root Priority    8192
    Designated Root Cost        0
    Designated Root Port        1/0
    Root Max Age   20 sec    Hello Time 2  sec   Forward Delay 15 sec
    
    Bridge ID MAC ADDR          00-10-0d-b1-78-00
    Bridge ID Priority          8192
    Bridge Max Age 20 sec    Hello Time 2  sec   Forward Delay 15 sec

    Эти выходные данные показывают, что коммутатор 15 является выделенным корневым коммутатором связующего дерева для VLAN 1. MAC-адрес выделенного корневого коммутатора, 00-10-0d-b1-78-00, соответствует MAC-адресу идентификатора моста коммутатора Switch 15, - 00-10-0d-b1-78-00. Другой индикатор, что этот коммутатор является выделенным корневым каталогом, - то, что порт выделенного корня является 1/0.

    В этих выходных данных от Коммутатора 12, коммутатор распознает Коммутатор 15 как Выделенный корневой каталог для VLAN 1:

    Switch-12> (enable)show spantree 1
    VLAN 1
    spanning-tree enabled
    spanning-tree type          IEEEDesignated Root             00-10-0d-b1-78-00
    
    !--- This is the MAC address of the root switch for VLAN 1.
    
    Designated Root Priority    8192
    Designated Root Cost        19
    Designated Root Port        2/3
    Root Max Age   20 sec    Hello Time 2  sec   Forward Delay 15 sec
    
    Bridge ID MAC ADDR          00-10-0d-b2-8c-00
    Bridge ID Priority          32768
    Bridge Max Age 20 sec    Hello Time 2  sec   Forward Delay 15 sec

    Примечание: Выходные данные команды vlan_id show spantree для других коммутаторов и VLAN могут также указать, что Коммутатор 15 является выделенным корневым каталогом для всех VLAN.

Проверка.

В данном разделе содержатся сведения для проверки работы текущей конфигурации.

Средство Output Interpreter (OIT) (только для зарегистрированных клиентов) поддерживает определенные команды show. Посредством OIT можно анализировать выходные данные команд show.

  • vlan_id show spantree — Показывает текущее состояние связующего дерева для этого ИДЕНТИФИКАТОРА VLAN, с точки зрения коммутатора, на котором вы выполняете команду.

  • show spantree summary Предоставляет сводку подключенных сетью VLAN портов связующего дерева.

Устранение неполадок

В этом разделе описывается процесс устранения неполадок конфигурации.

Стоимость пути протокола STP автоматически изменяется при изменении скорости/дуплекса порта

STP вычисляет стоимость пути на основе средней скорости (пропускная способность) ссылок между коммутаторами и стоимостью порта каждого кадра переадресации портов. Связующее дерево выбирает корневой порт на основании стоимости порта. Порт с наименьшей стоимостью пути к корневому мосту становится корневым портом. Корневой порт всегда находится в состоянии пересылки.

Если скорость/дуплекс порта изменяется, связующее дерево автоматически пересчитывает стоимость пути. Изменения в стоимости пути могут привести к изменениям в топологии связующего дерева.

Дополнительная информация о вычислении стоимости порта представлена в разделе "Подсчет и присвоение стоимости порта" документа "Настройка связующего дерева".

Команды устранения неполадок

Средство Output Interpreter (OIT) (только для зарегистрированных клиентов) поддерживает определенные команды show. Посредством OIT можно анализировать выходные данные команд show.

Примечание: Прежде чем выполнять какие-либо команды отладки , ознакомьтесь с документом "Важные сведения о командах отладки".

  • vlan_id show spantree — Показывает текущее состояние связующего дерева для этого ИДЕНТИФИКАТОРА VLAN, с точки зрения коммутатора, на котором вы выполняете команду.

  • show spantree summary Предоставляет сводку подключенных сетью VLAN портов связующего дерева.

  • show spantree statistics Отображает статистические сведения о связующем дереве.

  • show spantree backbonefast — Отображает, включена ли функция связующего дерева Backbone Fast Convergence.

  • show spantree blockedports только блокированные порты.

  • show spantree portstate — Определяет текущее состояние связующего дерева Порта Token Ring в связующем дереве.

  • show spantree portvlancost — Показывает стоимость пути для сетей VLAN на порте.

  • show spantree uplinkfast — Отображает настройки uplinkfast.

Перечень команд

Синтаксис: show version
В данном документе используется: show version
Синтаксис: set spantree root [vlan_id]
В данном документе используется: set spantree root 1
set spantree root 1,200-204
Синтаксис: set spantree {{priority} {vlan_id}}
В данном документе используется: настройте приоритет диапазона дерева 8192.1
Синтаксис: set spantree portfastmod_num/port_num {enable | disable}
В данном документе используется: set spantree portfast 3/1-24 enable
Синтаксис: show spantree {vlan_id}
В данном документе используется: show spantree 1

Связанные обсуждения сообщества поддержки Cisco

В рамках сообщества поддержки Cisco можно задавать и отвечать на вопросы, обмениваться рекомендациями и совместно работать со своими коллегами.


Дополнительные сведения


Document ID: 5234