Jump to content
Калькуляторы

Высокая загрузка CPU из-за Spanning-tree высокий пинг после включения STP

Есть пять коммутаторов Catalyst 2950-48 которые подключены к Cisco 6509.

Причем к 6509 подключен транком только один из них. Остальные подключены цепочкой друг к другу.

На каждом порту 2950 свой влан.

Работает RSTP для каждого влана. На каждом 2950 stp настроен только для вланов которые на нем и используются. Остальные в транзите.

6509 является Bridge root для всех вланов.

 

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

Пинг вот такой:

Ответ от 10.0.9.78: число байт=32 время=378мс TTL=254
Ответ от 10.0.9.78: число байт=32 время=1мс TTL=254
Ответ от 10.0.9.78: число байт=32 время=609мс TTL=254
Ответ от 10.0.9.78: число байт=32 время=8мс TTL=254
Ответ от 10.0.9.78: число байт=32 время=451мс TTL=254
Ответ от 10.0.9.78: число байт=32 время=1мс TTL=254
Ответ от 10.0.9.78: число байт=32 время=503мс TTL=254
Ответ от 10.0.9.78: число байт=32 время=1мс TTL=254
Ответ от 10.0.9.78: число байт=32 время=549мс TTL=254
Ответ от 10.0.9.78: число байт=32 время=1мс TTL=254
Ответ от 10.0.9.78: число байт=32 время=391мс TTL=254
Ответ от 10.0.9.78: число байт=32 время=1мс TTL=254
Ответ от 10.0.9.78: число байт=32 время=392мс TTL=254
Ответ от 10.0.9.78: число байт=32 время=1мс TTL=254
Ответ от 10.0.9.78: число байт=32 время=473мс TTL=254
Ответ от 10.0.9.78: число байт=32 время=1мс TTL=254
Ответ от 10.0.9.78: число байт=32 время=515мс TTL=254

 

Проблема в STP рассылках которые грузят CPU первого коммутатора.

 

Как заставить коммутатор обрабатывать только нужные BPDU для своих вланов?

Или может быть неправильно настроен STP?

 

Пример настройки STP на 2950:

spanning-tree mode rapid-pvst
spanning-tree loopguard default
spanning-tree portfast bpdufilter default
no spanning-tree optimize bpdu transmission
spanning-tree extend system-id
no spanning-tree vlan 1-2449,2498-4094

Switch is in rapid-pvst mode
Root bridge for: none
EtherChannel misconfig guard is enabled
Extended system ID           is enabled
Portfast Default             is disabled
PortFast BPDU Guard Default  is disabled
Portfast BPDU Filter Default is enabled
Loopguard Default            is enabled
UplinkFast                   is disabled
BackboneFast                 is disabled
Pathcost method used         is short

 

Пример настройки на 6500:

spanning-tree mode rapid-pvst
spanning-tree extend system-id
no spanning-tree vlan 1-2449,2498-4094
spanning-tree vlan 2450-2497 priority 24576 

EtherChannel misconfig guard            is enabled
Extended system ID                      is enabled
Portfast Default                        is disabled
Portfast Edge BPDU Guard Default        is disabled
Portfast Edge BPDU Filter Default       is disabled
Loopguard Default                       is disabled
Platform PVST Simulation                is enabled
PVST Simulation Default                 is enabled but inactive in rapid-pvst mode
Bridge Assurance                        is enabled
UplinkFast                              is disabled
BackboneFast                            is disabled
Pathcost method used                    is short

Share this post


Link to post
Share on other sites

отключил spanning-tree на 2950, но всё равно проц грузиться spanning-tree

посмотрел дебаг

debug spanning-tree switch

debug spanning-tree bpdu transmit

 

на коммутатор идут STP пакеты с 6500 в каждый влан.

И CPU от этого грузиться. Пинг увеличивается. Хрен бы с пингом, но есть подозрение что IPTV картинка рассыпается тоже из-за этого.

Если снизить на 6500 кол-во поступающих на 2950 вланов с STP примерно до 90 то пинг нормализуется.

Получается не расчитан 2950 на такую схему работы где через него можно пропустить большое кол-во влан с STP!

Share this post


Link to post
Share on other sites

И какая загрузка процессора?

sh proc cpu | inc CPU

 

У меня такая же фигня (на части 2950, очень большой пинг до Management VLAN, однако при этом загрузка проца 25%. Так же в сети есть несколько 2950, на которых пинг низкий - там загрузка проца - 10%. В сети работает RPSVTP. Почему так происходит, ешё не разбирался. Однако до клиентских хостов проблем нет.

Share this post


Link to post
Share on other sites

И какая загрузка процессора?

sh proc cpu | inc CPU

 

У меня такая же фигня (на части 2950, очень большой пинг до Management VLAN, однако при этом загрузка проца 25%. Так же в сети есть несколько 2950, на которых пинг низкий - там загрузка проца - 10%. В сети работает RPSVTP. Почему так происходит, ешё не разбирался. Однако до клиентских хостов проблем нет.

Загрузка такая же как у вас. На отдельно стоящих коммутаторах без колбас загрузка не более 12%

Попробую настроить QoS и загнать в приоритет icmp чтоб пинг не раздражал.

UPD: Хотя это не поможет. Канал то не загружен.

Edited by mnemonic

Share this post


Link to post
Share on other sites

а зачем вам на каждом влане этом стп ? надеюсь на портах клиентов бпду фильтры и прочее стоят?

Share this post


Link to post
Share on other sites

Na 2950 max stp instances 64 i max vlan 250

Edited by applx

Share this post


Link to post
Share on other sites

а зачем вам на каждом влане этом стп ?

Я с помощью STP борюсь с появлением колец.

 

надеюсь на портах клиентов бпду фильтры и прочее стоят?

А зачем?

 

Na 2950 max stp instances 64

Instance - понятие MSTP, а не RPVSTP, не так ли?

Share this post


Link to post
Share on other sites

Na 2950 max stp instances 64

Instance - понятие MSTP, а не RPVSTP, не так ли?

НЕ так, читайте доку. PER VLAN STP не зря PER VLAN, что создает stp инстанс на каждый vlan, MSTP позволяет для одинаковой топологии VLAN создавать один инстанс, экономя ресурсы CPU.

Вам надо попробовать настроить MSTP.

 

надеюсь на портах клиентов бпду фильтры и прочее стоят?

А зачем?

Ну в целях безопасности, например, нет? Зачем клиентам слать stp bpdu, для каких целей? В сторону клиента должен быть portfast и bpdu-guard.

Share this post


Link to post
Share on other sites

Вам надо попробовать настроить MSTP.

Понятно, попробую на досуге.

В данный момент на 2950-48 из 63х вланов всего приземляется/транзитится только 6 (но я так понимаю всего создаётся 63 инстанса).

 

Зачем клиентам слать stp bpdu, для каких целей? В сторону клиента должен быть portfast и bpdu-guard.

Ну portfast на клиентских (у нас предприятие) само-собой, но в portfast емнип как раз и шлются bpdu'шки. На провайдеров - bpdu-filter (ибо у них MSTP на пользовательских портах).

Share this post


Link to post
Share on other sites

Вам надо попробовать настроить MSTP.

Понятно, попробую на досуге.

В данный момент на 2950-48 из 63х вланов всего приземляется/транзитится только 6 (но я так понимаю всего создаётся 63 инстанса).

 

Банальный вывод show spanning-tree должен показывать текущее состояние инстансов для каждого vlan.

 

Зачем клиентам слать stp bpdu, для каких целей? В сторону клиента должен быть portfast и bpdu-guard.

Ну portfast на клиентских (у нас предприятие) само-собой, но в portfast емнип как раз и шлются bpdu'шки. На провайдеров - bpdu-filter (ибо у них MSTP на пользовательских портах).

Ничего не понял. Я могу что-то упускать, но не могу припомнить, чтобы циска слала bpdu на portfast-порты. От абонента на коммутатор доступа не должно приходить никаких bpdu. Когда вы делаете portfast, циска вам сердечно сообщает, что лучше это все таки делать на access-портах, и вы заведомо берете за истину, что на том конце не может быть петель. Но с учетом того, что всякие d-link dir-300 и прочие микротики умеют таки stp и в состоянии слать bpdu, лучше себя заведомо обезопасить.

 

На счет предприятия - упустил, можно не ставить, конечно, bpdu-guard, если доверяете всем.

Просто как правило хорошего тона.

Share this post


Link to post
Share on other sites

Банальный вывод show spanning-tree должен показывать текущее состояние инстансов для каждого vlan.

c2950-lug#sh spanning-tree

VLAN0001
 Spanning tree enabled protocol rstp
 Root ID    Priority    32769
            Address     0008.3064.7c00
            Cost        12
            Port        49 (GigabitEthernet0/1)
            Hello Time   2 sec  Max Age 20 sec  Forward Delay 15 sec

 Bridge ID  Priority    32769  (priority 32768 sys-id-ext 1)
            Address     0016.c78a.44c0
            Hello Time   2 sec  Max Age 20 sec  Forward Delay 15 sec
            Aging Time 300

Interface        Role Sts Cost      Prio.Nbr Type
---------------- ---- --- --------- -------- --------------------------------
Gi0/1            Root FWD 4         128.49   P2p


VLAN0028
 Spanning tree enabled protocol rstp
 Root ID    Priority    24604
            Address     c84c.7566.7400
            Cost        7
            Port        49 (GigabitEthernet0/1)
            Hello Time   2 sec  Max Age 20 sec  Forward Delay 15 sec

 Bridge ID  Priority    32796  (priority 32768 sys-id-ext 28)
            Address     0016.c78a.44c0
            Hello Time   2 sec  Max Age 20 sec  Forward Delay 15 sec
            Aging Time 300

Interface        Role Sts Cost      Prio.Nbr Type
---------------- ---- --- --------- -------- --------------------------------
Fa0/1            Desg FWD 19        128.1    P2p
Fa0/4            Desg FWD 19        128.4    Edge P2p
Fa0/5            Desg FWD 19        128.5    Edge P2p
Fa0/6            Desg FWD 19        128.6    Edge P2p
Fa0/7            Desg FWD 19        128.7    Edge P2p
Fa0/8            Desg FWD 19        128.8    Edge P2p
Fa0/9            Desg FWD 19        128.9    Edge P2p
Fa0/11           Desg FWD 19        128.11   P2p
Fa0/12           Desg FWD 19        128.12   Edge P2p
Fa0/13           Desg FWD 19        128.13   Edge P2p
Fa0/14           Desg FWD 19        128.14   Edge P2p
Fa0/15           Desg FWD 19        128.15   Edge P2p
Fa0/18           Desg FWD 19        128.18   Edge P2p
Fa0/19           Desg FWD 19        128.19   Edge P2p
Fa0/20           Desg FWD 19        128.20   Edge P2p
Fa0/21           Desg FWD 19        128.21   Edge P2p
Fa0/22           Desg FWD 19        128.22   Edge P2p
Fa0/24           Desg FWD 19        128.24   Edge P2p
Fa0/25           Desg FWD 19        128.25   Edge P2p
Fa0/27           Desg FWD 19        128.27   Edge P2p
Fa0/28           Desg FWD 19        128.28   Edge P2p
Fa0/31           Desg FWD 19        128.31   Edge P2p
Fa0/47           Desg FWD 19        128.47   Edge P2p
Gi0/1            Root FWD 4         128.49   P2p



...

VLAN0351
 Spanning tree enabled protocol rstp
 Root ID    Priority    24927
            Address     2894.0fa3.e900
            Cost        8
            Port        49 (GigabitEthernet0/1)
            Hello Time   2 sec  Max Age 20 sec  Forward Delay 15 sec

 Bridge ID  Priority    33119  (priority 32768 sys-id-ext 351)
            Address     0016.c78a.44c0
            Hello Time   2 sec  Max Age 20 sec  Forward Delay 15 sec
            Aging Time 300

Interface        Role Sts Cost      Prio.Nbr Type
---------------- ---- --- --------- -------- --------------------------------
Gi0/1            Root FWD 4         128.49   P2p

1,28 - 351 - это и есть инстансы?

При этом VLAN #1 вообще нигде в сети не используется. #28 приземляется на этой циске. #351 на этой циске нет (не транзитом, никак).

 

На счет предприятия - упустил, можно не ставить, конечно, bpdu-guard, если доверяете всем.

Кстати затупил, у меня везде bdpu-guard по дефолту стоит. :)

 

Я могу что-то упускать, но не могу припомнить, чтобы циска слала bpdu на portfast-порты.

А мне почему-то казалось, что это как раз и есть метод борьбы с петлями - portfast + bpdu-guard. Циска шлёт bpdu на порты portfast (конечно же юзверские порты), когда возникает петля за этим портом то bpdu возвращяется обратно и bdpu-guard выключает порт.

Ну и счётчик BPDUшек на таких портах постоянно увеличивается.

Edited by dr Tr0jan

Share this post


Link to post
Share on other sites

1,28 - 351 - это и есть инстансы?

При этом VLAN #1 вообще нигде в сети не используется. #28 приземляется на этой циске. #351 на этой циске нет (не транзитом, никак).

Да. Как это VLAN 1 не используется, вывод же ясно говорит, что интерфейс Gi0/1 в первом vlan, порт в состоянии forwarding. Посмотрите вывод show interface gi0/1 switchport, возможно он native.

 

А мне почему-то казалось, что это как раз и есть метод борьбы с петлями - portfast + bpdu-guard. Циска шлёт bpdu на порты portfast (конечно же юзверские порты), когда возникает петля за этим портом то bpdu возвращяется обратно и bdpu-guard выключает порт.

Ну и счётчик BPDUшек на таких портах постоянно увеличивается.

Вполне возможно, что это так. Уточню для себя этот момент. В любом случае это не идет в разрез с тем, что bpdu-guard фильтрует входящий трафик : )

Share this post


Link to post
Share on other sites

Как это VLAN 1 не используется, вывод же ясно говорит, что интерфейс Gi0/1 в первом vlan

Да, конечно native.

Share this post


Link to post
Share on other sites

Вполне возможно, что это так. Уточню для себя этот момент. В любом случае это не идет в разрез с тем, что bpdu-guard фильтрует входящий трафик : )

Порт в режиме портфаст не генерирует TCN при изменении своего статуса но отправляет bpdu и это видно по счётчикам. Если на такой порт прилетит bpdu и не включен на порту bpdu-guard то порт перейдёт из edge в p2p режим. Если включен bpdu-guard то при получении bpdu порт перейдёт в состояние err-disabled. Если не надо чтоб порт дизаблился но не нужны bpdu можно использовать bpdu-filter - режутся и входящие и исходящие bpdu, но надо помнить что даже при включенной этой опции при загрузке коммутатора может пройти 3 bpdu.

Как то так насколько помню.

Share this post


Link to post
Share on other sites

Ну вот, более точная информация, спасибо.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this