Коммутаторы : ??????????? Cisco Catalyst ????? 4500

Высокое потребление ресурсов ЦПУ в программных коммутаторах Cisco IOS Catalyst 4500

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


Содержание


Введение

Коммутаторы серии Catalyst 4500, включая коммутаторы Catalyst 4948, обладают сложной методологией обработки пакетов трафика, связанного с ЦП. Часто возникающей на этих коммутаторах проблемой является высокая загрузка ЦП. Данный документ содержит подробную информацию об архитектуре ЦП управления пакетами и о том, как определить причины высокой загрузки ЦП на этих коммутаторах. В документе также перечислены несколько распространенных сетевых сценариев и сценариев настройки, которые могут послужить причиной высокой загрузки ЦП коммутаторов серии Catalyst 4500.

Примечание: При выполнении операционной системы Catalyst (CatOS) - основанные коммутаторы 4500/4000 Series катализатора сошлитесь на документ Загрузка ЦПУ на Catalyst 4500/4000, 2948G, 2980G, и 4912G Коммутаторы Который Программное обеспечение CatOS Выполнения.

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

Требования

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

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

Сведения, содержащиеся в данном документе, касаются следующих версий программного и аппаратного обеспечения:

  • Коммутаторы серии Catalyst 4500

  • Catalyst коммутаторы серии 4948

Примечание: Этот документ применяет только к Cisco IOS� программные коммутаторы и не Коммутаторы под управлением CatOS.

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

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

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

Общие сведения

Прежде чем вы посмотрите на архитектуру обработки пакетов ЦПУ и устраните неполадки высокой загрузки ЦП, необходимо понять другие пути, которыми аппаратные передающие коммутаторы и маршрутизаторы на основе ПО Cisco IOS используют ЦПУ. Самым распространенным заблуждением является то, что высокая загрузка ЦПУ означает уменьшение ресурсов устройства и опасность аварийного отказа. Проблема недостатка пропускной способности является одним из симптомов высокой загрузки ЦПУ маршрутизаторов Cisco IOS. Однако, проблема недостатка пропускной способности никогда не свидетельствует о высокой загрузке ЦП, если речь идет об аппаратных пересылающих коммутаторах типа Catalyst 4500. Catalyst 4500 был разработан для пересылки пакетов в аппаратных специализированных интегральных микросхемах (ASIC) и достижения скоростей пересылки трафика до 102 миллионов пакетов в секунду (Mpps).

ЦП Catalyst 4500 осуществляет следующие функции:

  • Управление настроенными программными протоколами, например:

    • Протокол STP (Spanning Tree Protocol)

    • Протокол маршрутизации

    • Протокол CDP (Cisco Discovery Protocol)

    • Протокол агрегации портов (PAgP)

    • Транкинговый протокол VLAN (VTP)

    • Протокол динамического группирования магистралей (DTP)

  • Конфигурация/динамические записи программ к аппаратным ASIC, например:

    • Списки управления доступом (ACL)

    • Записи CEF

  • Внутренне управляет различными компонентами, например:

    • Линейные карты Питания над Ethernet (PoE)

    • Источники питания

    • Вентиляционный блок

  • Управляет доступом к коммутатору, например:

    • Telnet

    • Консоль

    • Упрощенный протокол управления сетью (SNMP)

  • Передает пакеты через путь к программному обеспеченю, например:

    • Межсетевой пакетный обмен (IPX) - пакеты для маршрутизации, которые только поддерживаются в пути к программному обеспеченю

    • Фрагментация максимального размера передаваемого блока данных (MTU)

Согласно этому списку, высокая загрузка ЦП может следовать из получения или процесса пакетов ЦПУ. Некоторые пакеты, посланные на обработку, могут иметь большое значение для работы сети. Примером таких значительных пактов являются BPDU настроек топологии связующего дерева. Однако, другие пакеты могут быть программно пересылаемым трафиком данных. Для выполнения следующих сценариев необходимо, чтобы коммутирующая ASIC отправляла пакеты на обработку центральному процессору:

  • Пакеты, которые скопированы к ЦПУ, но оригинальные пакеты коммутированы в аппаратных средствах

    Примером является обучение MAC-адреса узла.

  • Пакеты, которые переданы к ЦПУ для обработки

    Примеры таких устройств:

    • Обновления протокола маршрутизации

    • BPDU

    • Намеренная или неумышленная лавинная рассылка трафика

  • Пакеты, которые переданы к ЦПУ для передачи

    Примером являются пакеты, которые требуют IPX или Маршрутизации AppleTalk.

Общие сведения об архитектуре ЦП управления пакетами Catalyst 4500

Catalyst 4500 для того, чтобы проводить различия между типами трафика, предназначенного ЦП, обладает встроенным механизмом качества обслуживания (QoS). Данный механизм осуществляет это разграничение на основании информации пакетов уровня 2 (L2)/уровня 3 (L3)/ уровня 4 (L4). Supervisor packet Engine обладает 16 очередями для обработки различных типов событий или пакетов. Эти очереди показаны на Рисунке 1. В Таблице 1 перечислены очереди и типы пакетов в каждой очереди. Наличие 16 очередей позволяет Catalyst 4500 формировать очереди пакетов на основании их типов или приоритетов.

Рисунок 1 – Catalyst 4500 использует несколько очередей ЦП

http://www.cisco.com/c/dam/en/us/support/docs/switches/catalyst-4000-series-switches/65591-cat4500-high-cpu-1.gif

Таблица 1 – описание очереди Catalyst 4500

Количество очереди Название очереди Пакеты, с очередями
0 Esmp Пакеты ESMP1 (внутренние используемые для управления пакет) для ASIC линейной карты или другого управления компонента
1 Control Пакеты уровня управления L2, такие как STP, CDP, PAgP, LACP2 или UDLD3
2 Host Learning Кадры с MAC-адресами неизвестного источника, которые скопированы к ЦПУ для построения таблицы пересылки L2
3, 4, 5 L3 Fwd Highest, L3 Fwd High/Medium, L3 Fwd Low Пакеты, которые должны быть переданы в программном обеспечении, таком как туннели GRE4, Если ARP5 не решен для IP - адреса назначения, пакеты, переданы этой очереди.
6, 7, 8 L2 Fwd Highest, L2 Fwd High/Medium, L2 Fwd Low Пакеты, которые переданы в результате мостового соединения
  • Протоколы, которые не поддерживаются в аппаратных средствах, таких как IPX и пакеты для маршрутизации AppleTalk, соединены к ЦПУ
  • Запрос ARP и ответ
  • Пакеты с MAC - адресом назначения коммутатора, интерфейс SVI6/L3 соединен, если пакеты не могут маршрутизироваться в аппаратных средствах из-за:
    • !--- Параметры IP-заголовка
    • Истекший TTL7
    • НЕИНКАПСУЛЯЦИЯ ARPA
9, 10 L3 Rx High, L3 Rx Low Трафик уровня управления L3, например, протоколы маршрутизации, который предназначен для Примеров IP-адресов ЦПУ, включает Telnet, SNMP и SSH8.
11 RPF Failure Пакеты групповой адресации, которые отказали проверку RPF9
12 ACL fwd(snooping) Пакеты, которые обработаны DHCP10 snooping, динамической проверкой ARP или функциями IGMP11 snooping
13 ACL log, unreach Пакеты, которые попали на ACE12 с ключевым словом log или пакеты, которые были отброшены из-за отказа ACL или недостаточности маршрута к адресу назначения Такие пакеты требуют генерации сообщений о недоступности ICMP.
14 ACL sw processing Пакеты, которые плывутся на плоскодонке к ЦПУ из-за отсутствия дополнительных аппаратных ресурсов ACL, таких как TCAM13, для ACL безопасности
15 MTU Fail/Invalid Пакеты, которые должны быть фрагментированы, потому что максимальный размер передаваемого блока данных выходного интерфейса меньше, чем размер пакета

1 ESMP = даже простой протокол управления.

2 LACP = Протокол управления агрегацией каналов.

3 UDLD = Обнаружение однонаправленного канала.

4 GRE = общая инкапсуляции маршрутов.

5 ARP = Протокол переопределения адресов.

6 SVI = Коммутируемый виртуальный интерфейс.

7 TTL = Время жизни.

8 SSH = Протокол Secure Shell.

9 RPF = пересылка по обратному пути

10 DHCP = протокол динамической конфигурации хоста.

11 IGMP = Протокол управления группами Internet.

12 ACE = Запись контроля доступа.

13 TCAM = Троичное ассоциативное запоминающее устройство.

Следующие очереди являются специальными:

  • L2 Fwd Highest или L3 Fwd Highest

  • L2 Fwd High/Medium или L3 Fwd High/Medium

  • L2 Fwd Low или L3 Fwd Low

  • L3 Rx High или L3 Rx Low

Пакеты помещены в очередь в эти очереди на основе метки QoS, которая является значением точки кода дифференцированных услуг (DSCP) от IP-типа сервисов (ToS). For example, packets with a DSCP of 63 are queued to the L3 Fwd Highest queue. You can see the packets that are received and dropped for these 16 queues in the output of the show platform cpu packet statistics all command. The output of this command is very long. Issue the show platform cpu packet statistics command in order to show only the nonzero events. An alternate command is the show platform cpuport command. Only use the show platform cpuport command if you run Cisco IOS Software Release 12.1(11)EW or earlier. This command has since been deprecated. However, this older command was a part of the show tech-support command in Cisco IOS Software releases earlier than Cisco IOS Software Release 12.2(20)EWA.

Для поиска и устранения любых неисправностей необходимо использовать команду show platform cpu packet statistics.

Switch#show platform cpu packet statistics all

!--- Output suppressed.

Total packet queues 16

Packets Received by Packet Queue

Queue                  Total           5 sec avg 1 min avg 5 min avg 1 hour avg
---------------------- --------------- --------- --------- --------- ----------
Esmp                                 0         0         0         0          0
Control                             48         0         0         0          0
Host Learning                        0         0         0         0          0
L3 Fwd High                          0         0         0         0          0
L3 Fwd Medium                        0         0         0         0          0
L3 Fwd Low                           0         0         0         0          0
L2 Fwd High                          0         0         0         0          0
L2 Fwd Medium                        0         0         0         0          0
L2 Fwd Low                           0         0         0         0          0
L3 Rx High                           0         0         0         0          0
L3 Rx Low                            0         0         0         0          0
RPF Failure                          0         0         0         0          0
ACL fwd(snooping)                    0         0         0         0          0
ACL log, unreach                     0         0         0         0          0
ACL sw processing                    0         0         0         0          0
MTU Fail/Invalid                     0         0         0         0          0

Packets Dropped by Packet Queue

Queue                  Total           5 sec avg 1 min avg 5 min avg 1 hour avg
---------------------- --------------- --------- --------- --------- ----------
Esmp                                 0         0         0         0          0
Control                              0         0         0         0          0
Host Learning                        0         0         0         0          0
L3 Fwd High                          0         0         0         0          0
L3 Fwd Medium                        0         0         0         0          0
L3 Fwd Low                           0         0         0         0          0
L2 Fwd High                          0         0         0         0          0
L2 Fwd Medium                        0         0         0         0          0
L2 Fwd Low                           0         0         0         0          0
L3 Rx High                           0         0         0         0          0
L3 Rx Low                            0         0         0         0          0
RPF Failure                          0         0         0         0          0
ACL fwd(snooping)                    0         0         0         0          0
ACL log, unreach                     0         0         0         0          0
ACL sw processing                    0         0         0         0          0
MTU Fail/Invalid                     0         0         0         0          0

ЦП Catalyst 4500 присваивает весовые коэффициенты различным очередям, перечисленным в Таблице 1. ЦП присваивает весовые коэффициенты на основании важности или типа и на основании приоритета трафика или DSCP. ЦП обслуживает очередь на основании ее относительного веса. Например, если в ожидании находятся контрольный пакет, такой как BPDU, и эхо-запрос ICMP, ЦП первым обслужит контрольный пакет. Чрезмерное количество низкоприоритетного или менее важного трафика не лишает ЦП способности обрабатывать пакеты или управлять системой. Механизм гарантирует, что сеть останется стабильной даже при высокой загрузке ЦП. Необходимо понимать, что способность сети оставаться стабильной является критически важной характеристикой.

Существует еще одна очень важная деталь настройки обработки пакетов центральным процессором Catalyst 4500. Если ЦП уже обслужил высокоприоритетные пакеты или продолжает обработку, но имеет в настоящий период времени свободные циклы ЦП, то ЦП обслуживает низкоприоритетные очереди пакетов или выполняет процессы более низкого приоритета в фоновом режиме. Высокая загрузка ЦП в результате обработки низкоприоритетных пакетов или фоновых процессов считается нормальной, потому что ЦП постоянно старается использовать все доступное время. Таким способом ЦП борется за максимальную производительность коммутатора и сети без ущерба для стабильности коммутатора. Catalyst 4500 считает ЦП подлежащим использованию до тех пор, пока он не будет использоваться на 100 процентов в один квант времени.

Программное обеспечение Cisco IOS релиза 12.2(25)EWA2 и более поздних обладает улучшенными механизмами обработки пакетов и процессов центральным процессором и усовершенствованным учетом. Поэтому рекомендуется использовать эти релизы на вашем оснащении Catalyst 4500.

Определение причины высокой загрузки ЦП Catalyst 4500

Даже при понимании архитектуры обработки пакетов центральным процессором Catalyst 4500 и его строения, может возникнуть желание определить, почему загрузка ЦП Catalyst 4500 является высокой. Catalyst 4500 обладает командами и средствами, необходимыми для определения главной причины высокой загрузки ЦП. После определения причины администраторы могут выполнить одно из следующих действий:

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

На Рисунке 2 изображена методология поиска и устранения неисправностей при определении основной причины высокой загрузки ЦП Catalyst 4500.

Рисунок 2 – Методология поиска и устранения причин высокой загрузки ЦП на коммутаторах Catalyst 4500

http://www.cisco.com/c/dam/en/us/support/docs/switches/catalyst-4000-series-switches/65591-cat4500-high-cpu-2.gif

Основные шаги поиска и устранения причин следующие:

  1. Выполнить команду show processes cpu для определения процессов Cisco IOS, потребляющих циклы ЦП.

  2. Выполнить команду show platform health для дальнейшего определения процессов, специфичных для данной платформы.

  3. Если самым активным процессом является K2CpuMan Review, необходимо выполнить команду show platform cpu packet statistics для определения трафика, попадающего на ЦП.

    Если активность не была вызвана процессом K2CpuMan Review, необходимо пропустить шаг 4 и перейти к шагу 5.

  4. Если это необходимо, определить пакеты, попадающие на ЦП, при помощи Средства поиска и устранения неисправностей для анализа трафика, пунктом назначения которого является ЦП.

    Примером средств поиска и устранения неисправностей является анализатор коммутируемых портов (SPAN) центрального процессора.

  5. Этот документ анализа и Устранение неполадок раздела Общая Высокая загрузка CPU Utilization�Problems для типичных причин.

    Если определить основную причину так и не удалось, необходимо связаться со службой Технической поддержки Cisco.

Базовые показатели использование ЦПУ

Важный первый шаг должен знать загрузку ЦПУ коммутатора для конфигурации и сетевой установки. Для определения загрузки ЦП на коммутаторе Catalyst 4500 необходимо выполнить команду show processes cpu. При добавлении дополнительных настроек к установкам сети или при изменении сетевых шаблонов трафика может понадобиться обновление информации об исходном уровне загрузки ЦП. На Рисунке 2упоминается это требование.

Приведенные ниже выходные данные принадлежат полностью загруженному Catalyst 4507R. Устойчивое состояние ЦП, необходимое для осуществления функций управления данным коммутатором, наблюдается при загрузке от около 32 до 38 процентов:

Switch#show processes cpu 
CPU utilization for five seconds: 38%/1%; one minute: 32%; five minutes: 32%
 PID Runtime(ms)   Invoked      uSecs   5Sec   1Min   5Min TTY Process
   1           0        63          0  0.00%  0.00%  0.00%   0 Chunk Manager
   2          60     50074          1  0.00%  0.00%  0.00%   0 Load Meter
   3           0         1          0  0.00%  0.00%  0.00%   0 Deferred Events

!--- Output suppressed.

  27         524    250268          2  0.00%  0.00%  0.00%   0 TTY Background
  28         816    254843          3  0.00%  0.00%  0.00%   0 Per-Second Jobs
  29      101100      5053      20007  0.00%  0.01%  0.00%   0 Per-minute Jobs
  30    26057260  26720902        975 12.07% 11.41% 11.36%   0 Cat4k Mgmt HiPri
  31    19482908  29413060        662 24.07% 19.32% 19.20%   0 Cat4k Mgmt LoPri
  32        4468    162748         27  0.00%  0.00%  0.00%   0 Galios Reschedul
  33           0         1          0  0.00%  0.00%  0.00%   0 IOS ACL Helper
  34           0         2          0  0.00%  0.00%  0.00%   0 NAM Manager

Пятисекундная загрузка ЦП выражается как:

x%/y%

X % представляет общее использование CPU, и y % представляет ЦПУ, который потрачен в Interrupt Levels. При поиске и устранении неисправностей на коммутаторах Catalyst 4500 необходимо сфокусироваться только на общей загрузке ЦП.

Поймите команду show processes cpu на Коммутаторах Catalyst 4500

Эти выходные данные show processes cpu показывают, что существует два процесса, которые используют ЦПУ — Cat4k Mgmt HiPri и Cat4k Mgmt LoPri . Эти два процесса объединяют множественные определяемые платформой процессы, которые выполняют существенные функции управления на Catalyst 4500. Эта плоскость управления процессом процессов, а также пакеты данных, которые должны быть с программной коммутацией или обработаны.

Для того, чтобы увидеть какие из процессов, специфичных для данной платформы, используют ЦП в контексте Cat4k Mgmt HiPri и Cat4k Mgmt LoPri, необходимо выполнить команду show platform health.

Каждый из процессов, специфичных для данной платформы, имеет целевой/ожидаемый уровень загрузки ЦП. Когда этот процесс находится в пределах целевого уровня, ЦП выполняет его как высокоприоритетный. Выходные данные команды show processes cpu показывают, что нагрузкой является Cat4k Mgmt HiPri. Если процесс превышает целевой/ожидаемый уровень загрузки, то он выполняется как низкоприоритетный. Выходные данные команды show processes cpu считают, что дополнительной нагрузкой является Cat4k Mgmt LoPri. Cat4k Mgmt LoPri также используется для выполнения фоновых и других низкоприоритетных процессов, таких как проверка согласованности и чтение счетчиков интерфейса. Данный механизм позволяет ЦП выполнять высокоприоритетные процессы тогда, когда это необходимо, а остающиеся простаивающие ЦП циклы используются для низкоприоритетных процессов. Небольшое превышение загрузки целевого ЦП или моментальный всплеск загрузки не являются проблемами, требующими изучения.

Switch#show platform health 
                     %CPU   %CPU    RunTimeMax   Priority  Average %CPU  Total
                     Target Actual Target Actual   Fg   Bg 5Sec Min Hour  CPU
Lj-poll                1.00   0.02      2      1  100  500    0   0    0  1:09
GalChassisVp-review    3.00   0.29     10      3  100  500    0   0    0  11:15
S2w-JobEventSchedule  10.00   0.32     10      7  100  500    0   0    0  10:14
Stub-JobEventSchedul  10.00  12.09     10      6  100  500   14  13    9  396:35
StatValueMan Update    1.00   0.22      1      0  100  500    0   0    0  6:28
Pim-review             0.10   0.00      1      0  100  500    0   0    0  0:22
Ebm-host-review        1.00   0.00      8      0  100  500    0   0    0  0:05
Ebm-port-review        0.10   0.00      1      0  100  500    0   0    0  0:01
Protocol-aging-revie   0.20   0.00      2      0  100  500    0   0    0  0:00
Acl-Flattener  e       1.00   0.00     10      0  100  500    0   0    0  0:00
KxAclPathMan create/   1.00   0.00     10      5  100  500    0   0    0  0:39
KxAclPathMan update    2.00   0.00     10      0  100  500    0   0    0  0:00
KxAclPathMan reprogr   1.00   0.00      2      0  100  500    0   0    0  0:00
TagMan-RecreateMtegR   1.00   0.00     10      0  100  500    0   0    0  0:00
K2CpuMan Review       30.00  10.19     30     28  100  500   14  13    9  397:11
K2AccelPacketMan: Tx  10.00   2.20     20      0  100  500    2   2    1  82:06
K2AccelPacketMan: Au   0.10   0.00      0      0  100  500    0   0    0  0:00
K2AclMan-taggedFlatA   1.00   0.00     10      0  100  500    0   0    0  0:00
K2AclCamMan stale en   1.00   0.00     10      0  100  500    0   0    0  0:00
K2AclCamMan hw stats   3.00   1.04     10      5  100  500    1   1    0  39:36
K2AclCamMan kx stats   1.00   0.00     10      5  100  500    0   0    0  13:40
K2AclCamMan Audit re   1.00   0.00     10      5  100  500    0   0    0  13:10
K2AclPolicerTableMan   1.00   0.00     10      1  100  500    0   0    0  0:38
K2L2 Address Table R   2.00   0.00     12      5  100  500    0   0    0  0:00
K2L2 New Static Addr   2.00   0.00     10      1  100  500    0   0    0  0:00
K2L2 New Multicast A   2.00   0.00     10      5  100  500    0   0    0  0:01
K2L2 Dynamic Address   2.00   0.00     10      0  100  500    0   0    0  0:00
K2L2 Vlan Table Revi   2.00   0.00     12      9  100  500    0   0    0  0:01
K2 L2 Destination Ca   2.00   0.00     10      0  100  500    0   0    0  0:00
K2PortMan Review       2.00   0.72     15     11  100  500    1   1    0  37:22
Gigaport65535 Review   0.40   0.07      4      2  100  500    0   0    0  3:38
Gigaport65535 Review   0.40   0.08      4      2  100  500    0   0    0  3:39
K2Fib cam usage revi   2.00   0.00     15      0  100  500    0   0    0  0:00
K2Fib IrmFib Review    2.00   0.00     15      0  100  500    0   0    0  0:00
K2Fib Vrf Default Ro   2.00   0.00     15      0  100  500    0   0    0  0:00
K2Fib AdjRepop Revie   2.00   0.00     15      0  100  500    0   0    0  0:00
K2Fib Vrf Unpunt Rev   2.00   0.01     15      0  100  500    0   0    0  0:23
K2Fib Consistency Ch   1.00   0.00      5      2  100  500    0   0    0  29:25
K2FibAdjMan Stats Re   2.00   0.30     10      4  100  500    0   0    0  6:21
K2FibAdjMan Host Mov   2.00   0.00     10      4  100  500    0   0    0  0:00
K2FibAdjMan Adj Chan   2.00   0.00     10      0  100  500    0   0    0  0:00
K2FibMulticast Signa   2.00   0.01     10      2  100  500    0   0    0  2:04
K2FibMulticast Entry   2.00   0.00     10      7  100  500    0   0    0  0:00
K2FibMulticast Irm M   2.00   0.00     10      7  100  500    0   0    0  0:00
K2FibFastDropMan Rev   2.00   0.00      7      0  100  500    0   0    0  0:00
K2FibPbr route map r   2.00   0.06     20      5  100  500    0   0    0  16:42
K2FibPbr flat acl pr   2.00   0.07     20      2  100  500    0   0    0  3:24
K2FibPbr consolidati   2.00   0.01     10      0  100  500    0   0    0  0:24
K2FibPerVlanPuntMan    2.00   0.00     15      4  100  500    0   0    0  0:00
K2FibFlowCache flow    2.00   0.01     10      0  100  500    0   0    0  0:23
K2FibFlowCache flow    2.00   0.00     10      0  100  500    0   0    0  0:00
K2FibFlowCache adj r   2.00   0.01     10      0  100  500    0   0    0  0:20
K2FibFlowCache flow    2.00   0.00     10      0  100  500    0   0    0  0:06
K2MetStatsMan Review   2.00   0.14      5      2  100  500    0   0    0  23:40
K2FibMulticast MET S   2.00   0.00     10      0  100  500    0   0    0  0:00
K2QosDblMan Rate DBL   2.00   0.12      7      0  100  500    0   0    0  4:52
IrmFibThrottler Thro   2.00   0.01      7      0  100  500    0   0    0  0:21
K2 VlanStatsMan Revi   2.00   1.46     15      7  100  500    2   2    1  64:44
K2 Packet Memory Dia   2.00   0.00     15      8  100  500    0   1    1  45:46
K2 L2 Aging Table Re   2.00   0.12     20      3  100  500    0   0    0  7:22
RkiosPortMan Port Re   2.00   0.73     12      7  100  500    1   1    1  52:36
Rkios Module State R   4.00   0.02     40      1  100  500    0   0    0  1:28
Rkios Online Diag Re   4.00   0.02     40      0  100  500    0   0    0  1:15
RkiosIpPbr IrmPort R   2.00   0.02     10      3  100  500    0   0    0  2:44
RkiosAclMan Review     3.00   0.06     30      0  100  500    0   0    0  2:35
MatMan Review          0.50   0.00      4      0  100  500    0   0    0  0:00
Slot 3 ILC Manager R   3.00   0.00     10      0  100  500    0   0    0  0:00
Slot 3 ILC S2wMan Re   3.00   0.00     10      0  100  500    0   0    0  0:00
Slot 4 ILC Manager R   3.00   0.00     10      0  100  500    0   0    0  0:00
Slot 4 ILC S2wMan Re   3.00   0.00     10      0  100  500    0   0    0  0:00
Slot 5 ILC Manager R   3.00   0.00     10      0  100  500    0   0    0  0:00
Slot 5 ILC S2wMan Re   3.00   0.00     10      0  100  500    0   0    0  0:00
Slot 6 ILC Manager R   3.00   0.00     10      0  100  500    0   0    0  0:00
Slot 6 ILC S2wMan Re   3.00   0.00     10      0  100  500    0   0    0  0:00
Slot 7 ILC Manager R   3.00   0.00     10      0  100  500    0   0    0  0:00
Slot 7 ILC S2wMan Re   3.00   0.00     10      0  100  500    0   0    0  0:00
EthHoleLinecardMan(1   1.66   0.04     10      0  100  500    0   0    0  1:18
EthHoleLinecardMan(2   1.66   0.02     10      0  100  500    0   0    0  1:18
EthHoleLinecardMan(6   1.66   0.17     10      6  100  500    0   0    0  6:38
                     -------------
%CPU Totals          212.80  35.63

Поймите Команду show platform health на Коммутаторах Catalyst 4500

Команда show platform health предоставляет большую информацию, которая важна только для инженера - разработчика. In order to troubleshoot high CPU utilization, look for a higher number in the %CPU actual column in the output. Also, be sure to glance at the right side of that row in order to verify the CPU usage of that process in the 1 minute and 1 hour average %CPU columns. Sometimes, processes momentarily peak but do not hold the CPU for a long time. Some of the momentarily high CPU utilization happens during hardware programming or optimization of the programming. For example, a spike of CPU utilization is normal during the hardware programming of a large ACL in the TCAM.

В выходных данных команды show platform health в разделе Общие сведения о результатах выполнения команды show processes cpu на коммутаторах Catalyst 4500 наибольшее количество циклов ЦП используется процессами Stub-JobEventSchedul и K2CpuMan Review. Таблица 2 содержит некоторую общую информацию о распространенных процессах, появляющихся в выходных данных команды show platform health.

Таблица 2 – Описание Определяемых платформой Процессов от Команды show platform health

Определяемое платформой имя процесса Описание
Pim-review Управление состоянием шасси/линейной картой
Ebm Модуль моста Ethernet, такой как устаревание и мониторинг
Acl-Flattener / K2AclMan Процесс объединения ACL
KxAclPathMan - Path TagMan-Review Управление состоянием ACL и обслуживание
K2CpuMan Review Процесс, который выполняет пересылку пакетов программного обеспечения, Если вы видите высокую загрузку ЦП из-за этого процесса, исследуйте пакеты, которые поражают ЦПУ использованием команды show platform cpu packet statistics.
K2AccelPacketMan Драйвер, который взаимодействует с модулем обработки пакетов для передавания пакеты, которые предназначены от ЦПУ
K2AclCamMan Управляет аппаратным обеспечением TCAM ввод/вывода для QoS и характеристик безопасности
K2AclPolicerTableMan Управляет ограничителями ввод/вывода
K2L2 Представляет собой пересылающую подсистему L2 для Catalyst 4500, работающих под управлением ПО Cisco IOS Эти процессы отвечают за поддержание различных таблиц L2.
K2PortMan Review Управляет различными связанными с портом функциями программирования
K2Fib Управление FIB1
K2FibFlowCache Управление кэш-памятью PBR2
K2FibAdjMan Управление таблицы соседей FIB
K2FibMulticast Управляет записями FIB групповой адресации
K2MetStatsMan Review Управляет статистикой MET3
K2QosDblMan Review Управляет QoS DBL4
IrmFibThrottler Thro Модуль IP routing
K2 L2 Aging Table Re Управляет функцией устаревания L2
GalChassisVp-review Мониторинг состояния шасси
S2w-JobEventSchedule Управляет протоколами S2W5 для мониторинга состояния линейных карт
Stub-JobEventSchedul Фиктивный модуль на основе ASIC мониторинг линейной карты и обслуживание
RkiosPortMan Port Re Мониторинг состояния порта и обслуживание
Rkios Module State R Мониторинг линейной карты и обслуживание
EthHoleLinecardMan Управляет GBICs6 в каждой из линейных карт

1 FIB = база данных переадресации.

2 PBR =маршрутизация на основе политик.

3 MET = Таблица многоадресных расширений.

4 DBL = Динамическое ограничение буфера.

5 S2W = serial-to-wire.

6 GBIC = соединитель гигабитовой сети Ethernet.

Поиск и устранение распространенных неисправностей, связанных с проблемами высокой загрузки ЦП

Данный раздел содержит описание некоторых распространенных проблем, связанных с высокой загрузкой ЦП, на коммутаторах Catalyst 4500.

Высокая загрузка ЦП по причине процесса коммутации пакетов

Одной из наиболее распространенных причин высокой загрузки ЦП является занятость ЦП обработкой пакетов для программной пересылки или управлением пакетами. Примером программно пересылаемых пакетов являются IPX пакеты или пакеты управления, такие как BPDU. Небольшое количество таких пакетов обычно отправляется центральному процессору. Однако, постоянное наличие большого количества пакетов может означать ошибку настройки или сетевое событие. Необходимо определить причину событий, приведших к пересылке пакетов на обработку центральному процессору. Определение этих причин позволит наладить уровень загрузки ЦП.

Некоторыми распространенными причинами высокой загрузки ЦП, связанной с процессами коммутации пакетов, являются:

Другие причины для коммутатора пакетов к ЦПУ:

  • Фрагментация MTU – необходимо убедиться в том, что все интерфейсы на пути пакета имеют одинаковый MTU.

  • ACL с TCP отмечает кроме установленного

  • Маршрутизация IP версии 6 (IPv6) — Это поддерживается только через коммутируемый путь программного обеспечения.

  • GRE — Поддерживается только при помощи программно коммутируемого пути.

  • Отказ от трафика во входящем или исходящем ACL маршрутизатора (RACL)

    Примечание: Это находится с ограниченной скоростью в EW1 программного обеспечения Cisco IOS версии 12.1(13) и позже.

    Под интерфейсом ACL необходимо выполнить команду no ip unreachables.

  • Чрезмерный ARP и трафик DHCP поражают ЦПУ для обработки из-за большого числа напрямую подключенных узлов

    Если вы подозреваете атаку DHCP, используйте DCHP, snooping для трафика DHCP rate-limit от любого определенного порта хоста.

  • Избыточный полинг SNMP, вызванный допустимым или некорректным поведением конечной станции

Большое число экземпляров порта связующего дерева

Catalyst 4500 поддерживает 3000 экземпляров порта связующего дерева или активных портов в На Связующее дерево VLAN + (PVST +) режим. Эта поддержка осуществляется на всех модулях Supervisor Engine, кроме Supervisor Engine II+, II+TS и Catalyst 4948. Supervisor Engine II+, II+TS и Catalyst 4948 поддерживают до 1500 портов. Если данные рекомендации по количеству портов STP будут превышены, коммутатор продемонстрирует высокую загрузку ЦП.

http://www.cisco.com/c/dam/en/us/support/docs/switches/catalyst-4000-series-switches/65591-cat4500-high-cpu-3.gif

На данной схеме показан Catalyst 4500 с тремя магистральными портами, каждый из которых включает от 1 до 100 VLAN. Это равно 300 портам связующего дерева. В общем случае, можно рассчитать количество портов связующего дерева по формуле:

Total number of STP instances = Number of access ports + Sum of all VLANs 
that are carried in each of the trunks

На данной схеме портов доступа нет, но три магистрали содержат от 1 до 100 VLAN:

Total number of STP instances = 0 + 100 + 100 + 100 = 300

Шаг 1: Проверить процессы Cisco IOS при помощи команды show processes cpu.

Данный раздел описывает команды, используемые администратором для уменьшения проблемы высокой загрузки ЦП. При выполнении команды show processes cpu вы увидите, что в основном ЦП используют два главных процесса: Cat4k Mgmt LoPri и Spanning Tree. При наличии только этой информации можно сделать вывод о том, что процесс связующего дерева поглощает значительную часть циклов ЦП.

Switch#show processes cpu 
CPU utilization for five seconds: 74%/1%; one minute: 73%; five minutes: 50%
 PID Runtime(ms)   Invoked      uSecs   5Sec   1Min   5Min TTY Process
   1           4       198         20  0.00%  0.00%  0.00%   0 Chunk Manager
   2           4       290         13  0.00%  0.00%  0.00%   0 Load Meter

!--- Output suppressed.

  25         488        33      14787  0.00%  0.02%  0.00%   0 Per-minute Jobs
  26       90656    223674        405  6.79%  6.90%  7.22%   0 Cat4k Mgmt HiPri
  27      158796     59219       2681 32.55% 33.80% 21.43%   0 Cat4k Mgmt LoPri 
  28          20      1693         11  0.00%  0.00%  0.00%   0 Galios Reschedul
  29           0         1          0  0.00%  0.00%  0.00%   0 IOS ACL Helper
  30           0         2          0  0.00%  0.00%  0.00%   0 NAM Manager

!--- Output suppressed.

  41           0         1          0  0.00%  0.00%  0.00%   0 SFF8472
  42           0         2          0  0.00%  0.00%  0.00%   0 AAA Dictionary R
  43       78564     20723       3791 32.63% 30.03% 17.35%   0 Spanning Tree 
  44         112       999        112  0.00%  0.00%  0.00%   0 DTP Protocol
  45           0       147          0  0.00%  0.00%  0.00%   0 Ethchnl

Шаг 2 ---- -------------------------------- --------- : Проверить процессы, специфичные для Catalyst 4500, при помощи команды show platform health.

Длят того, чтобы понять какие из специфичных для платформы процессы загружают ЦП, необходимо выполнить команду show platform health. Из следующих выходных данных видно, что больше всех использует ЦП процесс K2CpuMan Review, задача обработки пакетов, связанных с ЦП:

Switch#show platform health
%CPU   %CPU    RunTimeMax   Priority  Average %CPU  Total
                     Target Actual Target Actual   Fg   Bg 5Sec Min Hour  CPU

!--- Output suppressed.

TagMan-RecreateMtegR   1.00   0.00     10      0  100  500    0   0    0  0:00
K2CpuMan Review       30.00  37.62     30     53  100  500   41  33    1  2:12
K2AccelPacketMan: Tx  10.00   4.95     20      0  100  500    5   4    0  0:36
K2AccelPacketMan: Au   0.10   0.00      0      0  100  500    0   0    0  0:00
K2AclMan-taggedFlatA   1.00   0.00     10      0  100  500    0   0    0  0:00

Шаг 3: Проверить очередь ЦП, получающую трафик, для того, чтобы определить связанный с ЦП трафик.

Для того чтобы проверить, какая очередь ЦП получает пакеты, связанные с ЦП, необходимо выполнить команду show platform cpu packet statistics. Выходные данные в этом разделе свидетельствуют, что очередь управления получает большое количество пакетов. Используйте информацию из Таблицы 1 и выводы, полученные в Шаге 1. Можно определить, что пакетами, которые обрабатывает ЦП, и причиной высокой загрузки ЦП являются BPDU и их обработка.

Switch#show platform cpu packet statistics

!--- Output suppressed.

Total packet queues 16
Packets Received by Packet Queue

Queue                  Total           5 sec avg 1 min avg 5 min avg 1 hour avg
---------------------- --------------- --------- --------- --------- ----------
Esmp                            202760       196       173       128         28
Control                         388623      2121      1740       598         16

Packets Dropped by Packet Queue

Queue                  Total           5 sec avg 1 min avg 5 min avg 1 hour avg
---------------------- --------------- --------- --------- --------- ----------
Control                          17918         0        19        24          3

Шаг 4. : Определить основную причину.

Выполните команду show spanning-tree summary. Можно проверить, является ли прием BPDU следствием большого количества портов связующего дерева. Выходные данные ясно определяют основную причину:

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

!--- Output suppressed.

Name                   Blocking Listening Learning Forwarding STP Active
---------------------- -------- --------- -------- ---------- ----------
2994 vlans                   0          0        0       5999       5999

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

 Совет.Необходимо убедиться в том, что порты IP телефонов не были настроены как магистральные. Это является распространенной неправильной настройкой. Порты IP телефонов необходимо настраивать при помощи настройки голосовой VLAN. Такая конфигурация создает псевдо-магистраль, но не требует вручную удалять ненужные VLAN. Для получения дополнительной информации о настройке голосовых портов обратитесь к разделу Настройка голосовых интерфейсов руководства по настройке программного обеспечения. IP телефоны, произведенные не Cisco, не поддерживают таких голосовых VLAN или дополнительных настроек VLAN. При использовании таких телефонов порты необходимо будет удалять вручную.

Переадресация ICMP; пакеты маршрутизации на том же интерфейсе

Пакеты маршрутизации на том же интерфейсе, или вход трафика и выход на том же L3 интерфейсе, могут привести к переадресации ICMP коммутатором. Если коммутатору известно, что устройство следующего прыжка до пункта назначения находится в той же подсети, что и отправляющее устройство, коммутатор генерирует перенаправление ICMP источнику. Сообщение о перенаправлении указывает источнику отправить пакет непосредственно устройству следующего прыжка. Сообщение также означает, что устройство следующего прыжка обладает лучшим маршрутом до пункта назначения, маршрутом на один прыжок меньшим, чем у коммутатора.

На схеме в данном разделе ПК А взаимодействует с сетевым сервером. Шлюз ПК А, настроенный по умолчанию, указывает на IP-адрес интерфейса VLAN 100. Однако, маршрутизатор следующего прыжка, позволяющий Catalyst 4500 достичь пункта назначения находится в той же подсети, что и ПК А. Лучшим путем в этом случае является отправка прямо на "Router". Catalyst 4500 посылает сообщение перенаправления ICMP ПК А. Сообщение указывает ПК А послать пакет, предназначенный сетевому серверу через Router, вместо того, чтобы посылать через Catalyst 4500. Однако, в большинстве случаев конечные устройства не отвечают на перенаправление ICMP. Недостаток ответов приводит к тому, что Catalyst 4500 тратит большое количество циклов ЦП на генерацию таких перенаправлений ICMP для всех пакетов, которые Catalyst пересылает через тот же интерфейс в качестве исходящих пакетов.

http://www.cisco.com/c/dam/en/us/support/docs/switches/catalyst-4000-series-switches/65591-cat4500-high-cpu-4.gif

По умолчанию перенаправление ICMP включено. Чтобы отключить его, необходимо выполнить команду no ip icmp redirects. Выполните эту команду под соответствующим SVI или интерфейсом L3.

Примечание: Так как IP icmp перенаправляет, команда по умолчанию, это не видимо в выходных данных команды show running-configuration.

Шаг 1: Проверить процессы Cisco IOS при помощи команды show processes cpu.

Выполните команду show processes cpu. В основном ЦП используют два главных процесса: Cat4k Mgmt LoPri и IP Input. При наличии только этой информации можно сделать вывод о том, что обработка IP пакетов поглощает значительную часть загрузки ЦП.

Switch#show processes cpu 
CPU utilization for five seconds: 38%/1%; one minute: 32%; five minutes: 32%
 PID Runtime(ms)   Invoked      uSecs   5Sec   1Min   5Min TTY Process
   1           0        63          0  0.00%  0.00%  0.00%   0 Chunk Manager
   2          60     50074          1  0.00%  0.00%  0.00%   0 Load Meter
   3           0         1          0  0.00%  0.00%  0.00%   0 Deferred Events

!--- Output suppressed.

  27         524    250268          2  0.00%  0.00%  0.00%   0 TTY Background
  28         816    254843          3  0.00%  0.00%  0.00%   0 Per-Second Jobs
  29      101100      5053      20007  0.00%  0.01%  0.00%   0 Per-minute Jobs
  30    26057260  26720902        975  5.81%  6.78%  5.76%   0 Cat4k Mgmt HiPri
  31    19482908  29413060        662 19.64% 18.20% 20.48%   0 Cat4k Mgmt LoPri

!--- Output suppressed.

  35          60       902          0  0.00%  0.00%  0.00%   0 DHCP Snooping
  36   504625304 645491491        781 72.40% 72.63% 73.82%   0 IP Input

Шаг 2 ---- -------------------------------- --------- : Проверить процессы, специфичные для Catalyst 4500, при помощи команды show platform health.

Выходные данные команды show platform health подтверждают использование ЦП для обработки пактов, связанных с ЦП.

Switch#show platform health
%CPU   %CPU    RunTimeMax   Priority  Average %CPU  Total
                     Target Actual Target Actual   Fg   Bg 5Sec Min Hour  CPU

--- Output suppressed.

TagMan-RecreateMtegR   1.00   0.00     10      0  100  500    0   0    0  0:00
K2CpuMan Review      330.00  19.18    150     79   25  500   20  19   18 5794:08
K2AccelPacketMan: Tx  10.00   4.95     20      0  100  500    5   4    0  0:36
K2AccelPacketMan: Au   0.10   0.00      0      0  100  500    0   0    0  0:00
K2AclMan-taggedFlatA   1.00   0.00     10      0  100  500    0   0    0  0:00

Шаг 3: Проверить очередь ЦП, получающую трафик, для того, чтобы определить связанный с ЦП трафик.

Для того чтобы проверить, какая очередь ЦП получает пакеты, связанные с ЦП, необходимо выполнить команду show platform cpu packet statistics. Можно видеть, что очередь L3 Fwd Low получает достаточно большое количество трафика.

Switch#show platform cpu packet statistics

!--- Output suppressed.

Packets Received by Packet Queue

Queue                  Total           5 sec avg 1 min avg 5 min avg 1 hour avg
---------------------- --------------- --------- --------- --------- ----------
Esmp                          48613268        38        39        38         39
Control                      142166648        74        74        73         73
Host Learning                  1845568         2         2         2          2
L3 Fwd High                         17         0         0         0          0
L3 Fwd Medium                     2626         0         0         0          0
L3 Fwd Low                  4717094264      3841      3879      3873       3547
L2 Fwd Medium                        1         0         0         0          0
L3 Rx High                      257147         0         0         0          0
L3 Rx Low                      5325772        10        19        13          7
RPF Failure                        155         0         0         0          0
ACL fwd(snooping)             65604591        53        54        54         53
ACL log, unreach              11013420         9         8         8          8

Шаг 4. : Определить основную причину.

В данном случае необходимо использовать ЦП SPAN для того, чтобы определить трафик, попадающий на ЦП. Для получения информации о ЦП SPAN см. раздел данного документа Средство 1: Отслеживание трафика ЦП при помощи SPAN — программное обеспечение Cisco IOS релиза 12.1(19)EW и более поздние. Необходимо выполнить анализ трафика и конфигурации при помощи команды show running-configuration. В таком случае пакет будет маршрутизироваться через тот же интерфейс, что приведет к проблеме перенаправления ICMP для каждого пакета. Эта основная причина является одной из обычных причин для высокой загрузки ЦП на Catalyst 4500.

Можно ожидать, что устройство определения источника будет действовать на переадресацию ICMP, которую передает Catalyst 4500, и измените следующий переход для назначения. Однако, не все устройства отвечают на перенаправление ICMP. Если устройство не отвечает, Catalyst 4500 приходится отправлять перенаправления для каждого пакета, полченного коммутатором с устройства-отправителя. Такие перенаправления могут поглощать большую долю ресурсов ЦП. Решением является отключение ICMP. Необходимо выполнить под интерфейсом команду no ip redirects.

Такой сценарий может возникнуть при настройке вторичных IP-адресов. При включении вторичных IP-адресов, перенаправление IP автоматически отключено. Необходимо убедится в том, что оно не было включено вручную.

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

IPX или маршрутизация AppleTalk

Catalyst 4500 поддерживает IPX и Маршрутизацию AppleTalk через путь переадресации программного обеспечения только. При конфигурации, содержащей эти протоколы, повышенная загрузка ЦП является нормальной.

Примечание: Коммутация IPX и трафика AppleTalk в той же VLAN не требует коммутации в контексте процесса. Только пакеты, которые должны маршрутизироваться, требуют передачи пути к программному обеспеченю.

Шаг 1: Проверить процессы Cisco IOS при помощи команды show processes cpu.

Выполните команду show processes cpu, чтобы проверить какой из процессов Cisco IOS поглощает ресурсы ЦП. В выходных данных этой команды обратите внимание на, то, что верхним процессом является Cat4k Mgmt LoPri:

witch#show processes cpu 
CPU utilization for five seconds: 87%/10%; one minute: 86%; five minutes: 87%
 PID Runtime(ms)   Invoked      uSecs   5Sec   1Min   5Min TTY Process
   1           4        53         75  0.00%  0.00%  0.00%   0 Chunk Manager

!--- Output suppressed.

  25        8008   1329154          6  0.00%  0.00%  0.00%   0 Per-Second Jobs
  26      413128     38493      10732  0.00%  0.02%  0.00%   0 Per-minute Jobs
  27   148288424 354390017        418  2.60%  2.42%  2.77%   0 Cat4k Mgmt HiPri
  28   285796820 720618753        396 50.15% 59.72% 61.31%   0 Cat4k Mgmt LoPri

Шаг 2 ---- -------------------------------- --------- : Проверить процессы, специфичные для Catalyst 4500, при помощи команды show platform health.

Выходные данные команды show platform health подтверждают использование ЦП для обработки пактов, связанных с ЦП.

Switch#show platform health
                     %CPU   %CPU    RunTimeMax   Priority  Average %CPU  Total
                     Target Actual Target Actual   Fg   Bg 5Sec Min Hour  CPU

!--- Output suppressed.

TagMan-RecreateMtegR   1.00   0.00     10      4  100  500    0   0    0  0:00
K2CpuMan Review       30.00  27.39     30     53  100  500   42  47   42  4841:
K2AccelPacketMan: Tx  10.00   8.03     20      0  100  500   21  29   26  270:4

Шаг 3: Проверить очередь ЦП, получающую трафик, для того, чтобы определить связанный с ЦП трафик.

Для определения типа трафика, попадающего на ЦП, необходимо выполнить команду show platform cpu packet statistics.

Switch#show platform cpu packet statistics

!--- Output suppressed.

Packets Received by Packet Queue

Queue                  Total           5 sec avg 1 min avg 5 min avg 1 hour avg
---------------------- --------------- --------- --------- --------- ----------
Esmp                          48613268        38        39        38         39
Control                      142166648        74        74        73         73
Host Learning                  1845568         2         2         2          2
L3 Fwd High                         17         0         0         0          0
L3 Fwd Medium                     2626         0         0         0          0
L3 Fwd Low                     1582414         1         1         1          1
L2 Fwd Medium                        1         0         0         0          0
L2 Fwd Low                   576905398      1837      1697      1938       1515
L3 Rx High                      257147         0         0         0          0
L3 Rx Low                      5325772        10        19        13          7
RPF Failure                        155         0         0         0          0
ACL fwd(snooping)             65604591        53        54        54         53
ACL log, unreach              11013420         9         8         8          8

Шаг 4. : Определить основную причину.

Так как администратор настроил маршрутизацию IPX и AppleTalk, определение основной причины является стандартной. Но для того, чтобы подтвердить, необходимо SPAN трафик ЦП и убедиться в том, что трафик, который вы видите, является ожидаемым трафиком. Для получения информации о ЦП SPAN см. раздел данного документа Средство 1: Отслеживание трафика ЦП при помощи SPAN — программное обеспечение Cisco IOS релиза 12.1(19)EW и более поздние.

В этом случае администратор должен обновить исходное значение загрузки ЦП на текущее значение. Catalyst 4500 ведет себя корректно, когда ЦП обрабатывает программно коммутируемые пакеты.

Обучение хоста

Если MAC-адрес уже не находится в таблице MAC-адресов, Catalyst 4500 изучает MAC-адреса различных хостов. Коммутирующий модуль пересылает копию пакета с новым МАС-адресом центральному процессору.

Все интерфейсы виртуальной локальной сети (VLAN) (уровень 3) использование шасси базируют аппаратный адрес как свой MAC-адрес. В результате в таблице MAC-адресов нет записи, и пакеты, предназначенные к этим интерфейсам виртуальной локальной сети (VLAN), не переданы к ЦПУ для обработки.

Если коммутатор должен изучить чрезмерное количество новых МАС-адресов, может возникнуть высокая загрузка ЦП.

Шаг 1: Проверить процессы Cisco IOS при помощи команды show processes cpu.

Для проверки того, какой процесс Cisco IOS поглощает ресурсы ЦП, необходимо выполнить команду show processes cpu. �In эти выходные данные command, заметьте, что главный процесс является Cat4k Mgmt LoPri :

Switch#show processes cpu
CPU utilization for five seconds: 89%/1%; one minute: 74%; five minutes: 71%
 PID Runtime(ms)   Invoked      uSecs   5Sec   1Min   5Min TTY Process
   1           4        53         75  0.00%  0.00%  0.00%   0 Chunk Manager

!--- Output suppressed.

  25        8008   1329154          6  0.00%  0.00%  0.00%   0 Per-Second Jobs
  26      413128     38493      10732  0.00%  0.02%  0.00%   0 Per-minute Jobs
  27   148288424 354390017        418 26.47% 10.28% 10.11%   0 Cat4k Mgmt HiPri
  28   285796820 720618753        396 52.71% 56.79% 55.70%   0 Cat4k Mgmt LoPri

Шаг 2 ---- -------------------------------- --------- : Проверить процессы, специфичные для Catalyst 4500, при помощи команды show platform health.

Выходные данные команды show platform health подтверждают использование ЦП для обработки пактов, связанных с ЦП.

Switch#show platform health
                     %CPU   %CPU    RunTimeMax   Priority  Average %CPU  Total
                     Target Actual Target Actual   Fg   Bg 5Sec Min Hour  CPU

!--- Output suppressed.

TagMan-RecreateMtegR   1.00   0.00     10      4  100  500    0   0    0  0:00
K2CpuMan Review       30.00  46.88     30     47  100  500   30  29   21  265:01
K2AccelPacketMan: Tx  10.00   8.03     20      0  100  500   21  29   26  270:4

Шаг 3: Проверить очередь ЦП, получающую трафик, для того, чтобы определить связанный с ЦП трафик.

Для определения типа трафика, попадающего на ЦП, необходимо выполнить команду show platform cpu packet statistics.

Switch#show platform cpu packet statistics

!--- Output suppressed.

Packets Received by Packet Queue

Queue                  Total           5 sec avg 1 min avg 5 min avg 1 hour avg
---------------------- --------------- --------- --------- --------- ----------
Esmp                          48613268        38        39        38         39
Control                      142166648        74        74        73         73
Host Learning                  1845568      1328      1808      1393       1309
L3 Fwd High                         17         0         0         0          0
L3 Fwd Medium                     2626         0         0         0          0
L3 Fwd Low                     1582414         1         1         1          1
L2 Fwd Medium                        1         0         0         0          0
L2 Fwd Low                   576905398        37         7         8          5
L3 Rx High                      257147         0         0         0          0
L3 Rx Low                      5325772        10        19        13          7
RPF Failure                        155         0         0         0          0
ACL fwd(snooping)             65604591        53        54        54         53
ACL log, unreach              11013420         9         8         8          8

Шаг 4. : Определить основную причину.

Выходные данные команды show platform health показывают, что используемый коммутатор видит большое количество новых МАС-адресов. Такая ситуация часто является результатом нестабильности сетевой топологии. Например, если топология связующего дерева изменяется, коммутатор генерирует уведомление о смене топологии (TCN). В режиме PVST+ генерация TCN уменьшает время жизни на 15 секунд. Записи МАС-адресов будут сброшены, если в течение определенного периода времени они не будут выучены снова. В случае быстрого STP (RSTP) (IEEE 802.1w) или MST (IEEE 802.1s) эти записи немедленно устаревают, если с другого коммутатора приходит TCN. Это устаревание приводит к тому, что МАС-адреса должны быть выучены заново. Это является не самой большой проблемой, если топология меняется редко. Однако, может произойти чрезмерное количество изменений топологии из-за нестабильной линии, неисправного коммутатора или портов узла, на которых не включена защита PortFast. Большое количество сбросов МАС таблицы может привести к последующему переизучению. Следующим шагом в определении основной причины является поиск неисправностей сети. Коммутатор работает, как положено, и посылает пакеты центральному процессору для изучения адреса узла. Необходимо определить и починить неисправное устройство, производящее чрезмерное количество TCN.

Используемая сеть может содержать множество устройств, посылающих трафик в пакетах, которые приводят к устареванию МАС-адресов и последующему их переизучению коммутатором. В таком случае для решения проблемы необходимо увеличить время устаревания таблицы МАС-адресов. При более длительном времени устаревания коммутатор будет сохранять МАС-адреса устройств в таблице более длительный период, пока они не устареют.

caution  Предупреждение.Такое изменение времени устаревания можно выполнять только после тщательного анализа. Если в сети присутствуют мобильные устройства, то такое изменение может привести к образованию черной дыры трафика.

Из аппаратных ресурсов (TCAM) для ACL безопасности

Catalyst 4500 программирует настроенные ACL с использованием TCAM Cisco. TCAM позволяет применение ACL в путях аппаратной переадресации. Наличие или отсутствие ACL в путях переадресации не влияет на производительность коммутатора. Производительность является постоянной вне зависимости от размера ACL, так как производительность поиска в ACL является скоростью линии. Тем не менее, TCAM является ограниченным ресурсом. Поэтому, настроив чрезмерное количество записей ACL, можно переполнить емкость TCAM. На Таблице 3 изображено количество ресурсов TCAM, доступных на каждом модуле Supervisor Engine Catalyst 4500 и коммутаторах.

Емкость TCAM таблицы 3₩½-на механизмах/Коммутаторах супервизора Catalyst 4500

Продукт TCAM функции (на направление) TCAM QoS (на направление)
Supervisor Engine II +/II+TS 8192 записи с 1024 масками 8192 записи с 1024 масками
Supervisor Engine III/IV/V и Catalyst 4948 16,384 записи с 2048 масками 16,384 записи с 2048 масками
Supervisor Engine V-10GE и 4948-10GE Catalyst 16,384 записи с 16,384 масками 16,384 записи с 16,384 масками

Коммутатор использует TCAM функции для программирования ACL безопасности, такого как RACL и ACL VLAN (VACL). Коммутатор также может использовать эту функцию для таких функциональных возможностей безопасности как IPSG для динамических ACL. Коммутатор использует QoS TCAM для того, чтобы программировать классификацию и политику списков контроля доступа.

Если при программировании списка контроля доступа безопасности у Catalyst 4500 исчерпаются ресурсы TCAM, выполнение ACL будет частично выполняться через программный путь. Пакеты, попадающие на такие ACE обрабатываются программным обеспечением, что вызывает высокую загрузку ЦП. ACL программируется сверху вниз. Другими словами, если ACL не поместится в TCAM, то ACE, находящиеся внизу ACL, не будут запрограммированы в TCAM.

При переполнении TCAM возникает предупреждение:

%C4K_HWACLMAN-4-ACLHWPROGERRREASON: (Suppressed 1times) Input(null, 12/Normal) 
Security: 140 - insufficient hardware TCAM masks.
%C4K_HWACLMAN-4-ACLHWPROGERR: (Suppressed 4 times) Input Security: 140 - hardware TCAM 
limit, some packet processing will be software switched.

Это сообщение об ошибке можно увидеть в выходных данных команды show logging. Сообщение окончательно указывает, что некоторая обработка программного обеспечения будет иметь место и, следовательно, �there может быть высокой загрузкой ЦП.

Примечание: При изменении большого ACL вы видите это сообщение кратко, прежде чем измененный ACL будет запрограммирован снова в TCAM.

Шаг 1: Проверить процессы Cisco IOS при помощи команды show processes cpu.

Выполните команду show processes cpu. Как можно видеть, загрузка ЦП является высокой, потому что процесс Cat4k Mgmt LoPri использует большинство циклов ЦП.

Switch#show processes cpu
CPU utilization for five seconds: 99%/0%; one minute: 99%; five minutes: 99%
 PID Runtime(ms)   Invoked      uSecs   5Sec   1Min   5Min TTY Process
   1           0        11          0  0.00%  0.00%  0.00%   0 Chunk Manager
   2        9716    632814         15  0.00%  0.00%  0.00%   0 Load Meter
   3         780       302       2582  0.00%  0.00%  0.00%   0 SpanTree Helper

!--- Output suppressed.

  23       18208   3154201          5  0.00%  0.00%  0.00%   0 TTY Background
  24       37208   3942818          9  0.00%  0.00%  0.00%   0 Per-Second Jobs
  25     1046448    110711       9452  0.00%  0.03%  0.00%   0 Per-minute Jobs
  26   175803612 339500656        517  4.12%  4.31%  4.48%   0 Cat4k Mgmt HiPri
  27   835809548 339138782       2464 86.81% 89.20% 89.76%   0 Cat4k Mgmt LoPri
  28       28668   2058810         13  0.00%  0.00%  0.00%   0 Galios Reschedul

Шаг 2 ---- -------------------------------- --------- : Проверить процессы, специфичные для Catalyst 4500, при помощи команды show platform health.

Выполните команду show platform health. Можно видеть, что ЦП используется задачей обработки пакетов, связанных с ЦП, K2CpuMan Review.

Switch#show platform health
%CPU   %CPU    RunTimeMax   Priority  Average %CPU  Total
                     Target Actual Target Actual   Fg   Bg 5Sec Min Hour  CPU
Lj-poll                1.00   0.01      2      0  100  500    0   0    0  13:45
GalChassisVp-review    3.00   0.20     10     16  100  500    0   0    0  88:44
S2w-JobEventSchedule  10.00   0.57     10      7  100  500    1   0    0  404:22
Stub-JobEventSchedul  10.00   0.00     10      0  100  500    0   0    0  0:00
StatValueMan Update    1.00   0.09      1      0  100  500    0   0    0  91:33
Pim-review             0.10   0.00      1      0  100  500    0   0    0  4:46
Ebm-host-review        1.00   0.00      8      4  100  500    0   0    0  14:01
Ebm-port-review        0.10   0.00      1      0  100  500    0   0    0  0:20
Protocol-aging-revie   0.20   0.00      2      0  100  500    0   0    0  0:01
Acl-Flattener          1.00   0.00     10      5  100  500    0   0    0  0:04
KxAclPathMan create/   1.00   0.00     10      5  100  500    0   0    0  0:21
KxAclPathMan update    2.00   0.00     10      6  100  500    0   0    0  0:05
KxAclPathMan reprogr   1.00   0.00      2      1  100  500    0   0    0  0:00
TagMan-InformMtegRev   1.00   0.00      5      0  100  500    0   0    0  0:00
TagMan-RecreateMtegR   1.00   0.00     10     14  100  500    0   0    0  0:18
K2CpuMan Review       30.00  91.31     30     92  100  500  128 119   84  13039:02
K2AccelPacketMan: Tx  10.00   2.30     20      0  100  500    2   2    2  1345:30
K2AccelPacketMan: Au   0.10   0.00      0      0  100  500    0   0    0  0:00

Шаг 3: Проверить очередь ЦП, получающую трафик, для того, чтобы определить связанный с ЦП трафик.

Необходимо четко понимать очереди ЦП и то, какой тип трафика попадает в какую очередь ЦП. Выполните команду show platform cpu packet statistics. Можно видеть, что наибольшее количество пакетов получает очередь ACL sw processing. Поэтому ясно, что причиной высокой загрузки ЦП является переполнение TCAM.

Switch#show platform cpu packet statistics

!--- Output suppressed.

Packets Received by Packet Queue

Queue                  Total           5 sec avg 1 min avg 5 min avg 1 hour avg
---------------------- --------------- --------- --------- --------- ----------
Control                       57902635        22        16        12          3
Host Learning                   464678         0         0         0          0
L3 Fwd Low                      623229         0         0         0          0
L2 Fwd Low                    11267182         7         4         6          1
L3 Rx High                         508         0         0         0          0
L3 Rx Low                      1275695        10         1         0          0
ACL fwd(snooping)              2645752         0         0         0          0
ACL log, unreach              51443268         9         4         5          5
ACL sw processing            842889240      1453      1532      1267       1179

Packets Dropped by Packet Queue

Queue                  Total           5 sec avg 1 min avg 5 min avg 1 hour avg
---------------------- --------------- --------- --------- --------- ----------
L2 Fwd Low                        3270         0         0         0          0
ACL sw processing                12636         0         0         0          0

Шаг 4. : Необходимо решить эту проблему.

В Шаге 3 была определена основная причина в таком сценарии. Необходимо удалить ACL, приведший к переполнению, или уменьшить этот ACL, чтобы избежать переполнения. Также для оптимизации настройки ACL и программирования оборудования необходимо ознакомиться с руководством по настройке Настройка параметров сетевой безопасности с помощью списков контроля доступа (ACL).

Регистрационное Ключевое слово в ACL

Регистрация поддержек Catalyst 4500 пакетной подробности, которые поражают любую определенную запись ACL, но чрезмерная регистрация может вызвать высокую загрузку ЦП. Необходимо избегать использования ключевых слов log, за исключением этапа обнаружения трафика. На протяжении этапа обнаружения трафика, необходимо идентифицировать трафик, проходящий через используемую сеть, для которого не были однозначно настроены ACE. Не нужно использовать ключевое слово log для сбора статистики. Для сообщений log в программном обеспечении Cisco IOS релиза 12.1(13)EW и более поздних скорость является ограниченной. При использовании сообщений log для подсчета количества пакетов, совпадающих с ACL, этот подсчет будет неточным. Для получения точной статистики необходимо использовать команду show access-list. Определение такой основной причины является более легким, так как просмотр настроек или log сообщений может выявить использование функциональной возможности регистрации ACL.

Шаг 1: Проверить процессы Cisco IOS при помощи команды show processes cpu.

Для проверки того, какой процесс Cisco IOS поглощает ресурсы ЦП, необходимо выполнить команду show processes cpu. В выходных данных этой команды видно, что ведущим процессом является Cat4k Mgmt LoPri:

Switch#show processes cpu
CPU utilization for five seconds: 99%/0%; one minute: 99%; five minutes: 99%
 PID Runtime(ms)   Invoked      uSecs   5Sec   1Min   5Min TTY Process
   1           0        11          0  0.00%  0.00%  0.00%   0 Chunk Manager
   2        9716    632814         15  0.00%  0.00%  0.00%   0 Load Meter

!--- Output suppressed.

  26   175803612 339500656        517  4.12%  4.31%  4.48%   0 Cat4k Mgmt HiPri
  27   835809548 339138782       2464 86.81% 89.20% 89.76%   0 Cat4k Mgmt LoPri
  28       28668   2058810         13  0.00%  0.00%  0.00%   0 Galios Reschedul

Шаг 2 ---- -------------------------------- --------- : Проверить процессы, специфичные для Catalyst 4500, при помощи команды show platform health.

Проверить процессы, специфичные для платформы, которые используют ЦП. Выполните команду show platform health. При рассмотрении выходных данных обратите внимание, что большинство циклов ЦП используются процессом K2CpuMan Review. Такая активность означает, что ЦП занят, так как он обрабатывает предназначающиеся ему пакеты.

Switch#show platform health
                      %CPU   %CPU    RunTimeMax   Priority  Average %CPU  Total
                     Target Actual Target Actual   Fg   Bg 5Sec Min Hour  CPU
Lj-poll                1.00   0.01      2      0  100  500    0   0    0  13:45
GalChassisVp-review    3.00   0.20     10     16  100  500    0   0    0  88:44
S2w-JobEventSchedule  10.00   0.57     10      7  100  500    1   0    0  404:22
Stub-JobEventSchedul  10.00   0.00     10      0  100  500    0   0    0  0:00
StatValueMan Update    1.00   0.09      1      0  100  500    0   0    0  91:33
Pim-review             0.10   0.00      1      0  100  500    0   0    0  4:46
Ebm-host-review        1.00   0.00      8      4  100  500    0   0    0  14:01
Ebm-port-review        0.10   0.00      1      0  100  500    0   0    0  0:20
Protocol-aging-revie   0.20   0.00      2      0  100  500    0   0    0  0:01
Acl-Flattener          1.00   0.00     10      5  100  500    0   0    0  0:04
KxAclPathMan create/   1.00   0.00     10      5  100  500    0   0    0  0:21
KxAclPathMan update    2.00   0.00     10      6  100  500    0   0    0  0:05
KxAclPathMan reprogr   1.00   0.00      2      1  100  500    0   0    0  0:00
TagMan-InformMtegRev   1.00   0.00      5      0  100  500    0   0    0  0:00
TagMan-RecreateMtegR   1.00   0.00     10     14  100  500    0   0    0  0:18
K2CpuMan Review       30.00  91.31     30     92  100  500  128 119   84  13039:02
K2AccelPacketMan: Tx  10.00   2.30     20      0  100  500    2   2    2  1345:30
K2AccelPacketMan: Au   0.10   0.00      0      0  100  500    0   0    0  0:00

Шаг 3: Проверить очередь ЦП, получающую трафик, для того, чтобы определить связанный с ЦП трафик.

Для определения типа трафика, попадающего на ЦП, необходимо выполнить команду show platform cpu packet statistics. В выходных данных этой команды, можно видеть, что прием пакетов происходит благодаря ключевому слову ACL log:

Switch#show platform cpu packet statistics

!--- Output suppressed.

Total packet queues 16
Packets Received by Packet Queue

Queue             Total                5 sec avg 1 min avg 5 min avg 1 hour avg
----------------- -------------------- --------- --------- --------- ----------
Control                     1198701435        35        35        34         35
Host Learning                   874391         0         0         0          0
L3 Fwd High                        428         0         0         0          0
L3 Fwd Medium                    12745         0         0         0          0
L3 Fwd Low                     2420401         0         0         0          0
L2 Fwd High                      26855         0         0         0          0
L2 Fwd Medium                   116587         0         0         0          0
L2 Fwd Low                   317829151        53        41        31         31
L3 Rx High                        2371         0         0         0          0
L3 Rx Low                     32333361         7         1         2          0
RPF Failure                       4127         0         0         0          0
ACL fwd (snooping)           107743299         4         4         4          4
ACL log, unreach            1209056404      1987      2125      2139       2089

Packets Dropped by Packet Queue

Queue             Total                5 sec avg 1 min avg 5 min avg 1 hour avg
----------------- -------------------- --------- --------- --------- ----------
ACL log, unreach             193094788       509       362       437        394

Шаг 4. : Необходимо решить эту проблему.

В Шаге 3 была определена основная причина в таком сценарии. Для предотвращения этой проблемы необходимо удалить ключевое слово log из всех списков контроля доступа. В программном обеспечении Cisco IOS релиза 12.1(13)EW1 и более поздних скорость таких пакетов ограничена и поэтому загрузка ЦП не будет слишком высокой. Для отслеживания совпадений с ACL необходимо использовать счетчики списка доступа. Счетчики списка контроля можно увидеть в выходных данных команды show access-list acl_id.

Циклы пересылки данных Уровня 2

Циклы пересылки данных Уровня 2 могут быть вызваны плохой реализацией Протокола STP (STP) и различных проблем, которые могут влиять на STP.

Шаг 1: Проверить процессы Cisco IOS при помощи команды show processes cpu

Данный раздел описывает команды, используемые администратором для уменьшения проблемы высокой загрузки ЦП. При выполнении команды show processes cpu вы увидите, что в основном ЦП используют два главных процесса: Cat4k Mgmt LoPri и Spanning Tree. При наличии только этой информации можно сделать вывод о том, что процесс связующего дерева поглощает значительную часть циклов ЦП.

Switch#show processes cpu
CPU utilization for five seconds: 74%/1%; one minute: 73%; five minutes: 50%
 PID Runtime(ms)   Invoked      uSecs   5Sec   1Min   5Min TTY Process
   1           4       198         20  0.00%  0.00%  0.00%   0 Chunk Manager
   2           4       290         13  0.00%  0.00%  0.00%   0 Load Meter

!---�Output suppressed.

  25         488        33      14787  0.00%  0.02%  0.00%   0 Per-minute Jobs
  26       90656    223674        405  6.79%  6.90%  7.22%   0 Cat4k Mgmt HiPri
  27      158796     59219       2681 32.55% 33.80% 21.43%   0 Cat4k Mgmt LoPri 
  28          20      1693         11  0.00%  0.00%  0.00%   0 Galios Reschedul
  29           0         1          0  0.00%  0.00%  0.00%   0 IOS ACL Helper
  30           0         2          0  0.00%  0.00%  0.00%   0 NAM Manager

!--- Output suppressed.

  41           0         1          0  0.00%  0.00%  0.00%   0 SFF8472
  42           0         2          0  0.00%  0.00%  0.00%   0 AAA Dictionary R
  43       78564     20723       3791 32.63% 30.03% 17.35%   0 Spanning Tree 
  44         112       999        112  0.00%  0.00%  0.00%   0 DTP Protocol
  45           0       147          0  0.00%  0.00%  0.00%   0 Ethchnl

Шаг 2 ---- -------------------------------- --------- : Проверить процессы, специфичные для Catalyst 4500, при помощи команды show platform health

Длят того, чтобы понять какие из специфичных для платформы процессы загружают ЦП, необходимо выполнить команду show platform health. Из следующих выходных данных видно, что больше всех использует ЦП процесс K2CpuMan Review, задача обработки пакетов, связанных с ЦП:

Switch#show platform health
%CPU   %CPU    RunTimeMax   Priority  Average %CPU  Total
                     Target Actual Target Actual   Fg   Bg 5Sec Min Hour  CPU

!--- Output suppressed.

TagMan-RecreateMtegR   1.00   0.00     10      0  100  500    0   0    0  0:00
K2CpuMan Review       30.00  37.62     30     53  100  500   41  33    1  2:12
K2AccelPacketMan: Tx  10.00   4.95     20      0  100  500    5   4    0  0:36
K2AccelPacketMan: Au   0.10   0.00      0      0  100  500    0   0    0  0:00
K2AclMan-taggedFlatA   1.00   0.00     10      0  100  500    0   0    0  0:00

Шаг 3: Проверить очередь ЦП, получающую трафик, для того, чтобы определить связанный с ЦП трафик

Для того чтобы проверить, какая очередь ЦП получает пакеты, связанные с ЦП, необходимо выполнить команду show platform cpu packet statistics. Выходные данные в этом разделе свидетельствуют, что очередь управления получает большое количество пакетов. Используйте информацию из Таблицы 1 и выводы, полученные в Шаге 1. Можно определить, что пакетами, которые обрабатывает ЦП, и причиной высокой загрузки ЦП являются BPDU и их обработка.

Switch#show platform cpu packet statistics

!--- Output suppressed.

Total packet queues 16
Packets Received by Packet Queue

Queue                  Total           5 sec avg 1 min avg 5 min avg 1 hour avg
---------------------- --------------- --------- --------- --------- ----------
Esmp                            202760       196       173       128         28
Control                         388623      2121      1740       598         16

Packets Dropped by Packet Queue

Queue                  Total           5 sec avg 1 min avg 5 min avg 1 hour avg
---------------------- --------------- --------- --------- --------- ----------
Control                          17918         0        19        24          3

Шаг 4. : Определите основную причину и устраните проблему

Обычно можно выполнить эти шаги для устранения проблем (в зависимости от ситуации, некоторые шаги не быть необходимыми):

  1. Обнаружение зацикливания.

  2. Обнаружьте область петли.

  3. Прерывание зацикливания.

  4. Исправьте причину для петли.

  5. Восстановление redunancy.

Каждый из шагов объяснен подробно при Устранении проблем Циклов пересылки данных - Устранение проблем STP на Коммутаторах Catalyst Рабочее системное ПО Cisco IOS.

Шаг 5: Реализуйте усовершенствованные опции STP

Другие причины высокой загрузки ЦП

Существует несколько других известных причин высокой загрузки ЦП:

Чрезмерные откидные створки ссылки

Когда один или больше подключенных ссылок начинает колебаться чрезмерно, Catalyst 4500 показывает высокую загрузку ЦП. Такое случается в релизах программного обеспечения Cisco IOS более ранних, чем релиз 12.2(20)EWA.

Шаг 1: Проверить процессы Cisco IOS при помощи команды show processes cpu.

Выполните команду show processes cpu, чтобы проверить какой из процессов Cisco IOS поглощает ресурсы ЦП. В выходных данных этой команды обратите внимание на, то, что верхним процессом является Cat4k Mgmt LoPri:

Switch#show processes cpu
CPU utilization for five seconds: 96%/0%; one minute: 76%; five minutes: 68%
 PID Runtime(ms)   Invoked      uSecs   5Sec   1Min   5Min TTY Process
   1           0         4          0  0.00%  0.00%  0.00%   0 Chunk Manager
   2        9840    463370         21  0.00%  0.00%  0.00%   0 Load Meter
   3           0         2          0  0.00%  0.00%  0.00%   0 SNMP Timers

!--- Output suppressed.

  27   232385144 530644966        437 13.98% 12.65% 12.16%   0 Cat4k Mgmt HiPri
  28   564756724 156627753       3605 64.74% 60.71% 54.75%   0 Cat4k Mgmt LoPri
  29        9716   1806301          5  0.00%  0.00%  0.00%   0 Galios Reschedul

Шаг 2 ---- -------------------------------- --------- : Проверить процессы, специфичные для Catalyst 4500, при помощи команды show platform health.

Из выходных данных команды show platform health видно, что ЦП использует процесс KxAclPathMan create. Это процесс создания внутренних путей.

Switch#show platform health
                     %CPU   %CPU    RunTimeMax   Priority  Average %CPU  Total
                     Target Actual Target Actual   Fg   Bg 5Sec Min Hour  CPU
Lj-poll                1.00   0.03      2      0  100  500    0   0    0  9:49
GalChassisVp-review    3.00   1.11     10     62  100  500    0   0    0  37:39
S2w-JobEventSchedule  10.00   2.85     10      8  100  500    2   2    2  90:00
Stub-JobEventSchedul  10.00   5.27     10      9  100  500    4   4    4  186:2
Pim-review             0.10   0.00      1      0  100  500    0   0    0  2:51
Ebm-host-review        1.00   0.00      8      4  100  500    0   0    0  8:06
Ebm-port-review        0.10   0.00      1      0  100  500    0   0    0  0:14
Protocol-aging-revie   0.20   0.00      2      0  100  500    0   0    0  0:00
Acl-Flattener          1.00   0.00     10      5  100  500    0   0    0  0:00
KxAclPathMan create/   1.00  69.11     10      5  100  500   42  53   22  715:0
KxAclPathMan update    2.00   0.76     10      6  100  500    0   0    0  86:00
KxAclPathMan reprogr   1.00   0.00      2      1  100  500    0   0    0  0:00
TagMan-InformMtegRev   1.00   0.00      5      0  100  500    0   0    0  0:00
TagMan-RecreateMtegR   1.00   0.00     10    227  100  500    0   0    0  0:00
K2CpuMan Review       30.00   8.05     30     57  100  500    6   5    5  215:0
K2AccelPacketMan: Tx  10.00   6.86     20      0  100  500    5   5    4  78:42

Шаг 3: Определить основную причину.

Включить регистрацию сообщений о переходе линии в состояние up/down. По умолчанию регистрация отключена. Ее включение позволит быстро уменьшить количество неисправных линий. Для всех интерфейсов необходимо выполнить команду logging event link-status. Для того, чтобы легко осуществить включение на диапазоне интерфейсов, можно использовать команду interface range, как показано в примере:

Switch#configure terminal
Enter configuration commands, one per line. End with CNTL/Z.
Switch(config)#interface range gigabitethernet 5/1 - 48
Switch(config-if-range)#logging event link-status
Switch(config--if-range)#end
Switch#show logging

!--- Output suppressed.

3w5d: %LINK-3-UPDOWN: Interface GigabitEthernet5/24, changed state to down
3w5d: %LINK-3-UPDOWN: Interface GigabitEthernet5/24, changed state to up
3w5d: %LINK-3-UPDOWN: Interface GigabitEthernet5/24, changed state to down
3w5d: %LINK-3-UPDOWN: Interface GigabitEthernet5/24, changed state to up
3w5d: %LINK-3-UPDOWN: Interface GigabitEthernet5/24, changed state to down
3w5d: %LINK-3-UPDOWN: Interface GigabitEthernet5/24, changed state to up

После определения неисправного или нестабильного интерфейса его необходимо отключить для того, чтобы устранить проблему высокой загрузки ЦП. В программном обеспечении Cisco IOS релиза 12.2(20)EWA и более поздних поведение Catalyst 4500 при подобных условиях нестабильности линий было усовершенствовано. Поэтому это влияние на ЦП теперь не так велико, как до усовершенствования. Необходимо помнить, что этот процесс является фоновым. Высокая загрузка ЦП по этой причине не вызывает никаких нежелательных явлений на коммутаторах Catalyst 4500.

Скачки в загрузке ЦПУ, должной fib проверку согласованности

Catalyst 4500 может показать мгновенные скачки в загрузке ЦПУ во время проверки согласованности Таблицы FIB. Таблица FIB – это таблица пересылки L3, созданная процессом CEF. Проверка согласованности поддерживает согласованность таблицы FIB программного обеспечения Cisco IOS и записей оборудования. Такая согласованность отвечает за правильную маршрутизацию пакетов. Проверка происходит каждые 2 секунды и использует низкоприоритетный фоновый процесс. Этот процесс является нормальным поведением системы и не пересекается с другими высокоприоритетными процессами или пакетами.

Выходные данные команды show platform health показывают, что большую часть ресурсов ЦП поглощает K2Fib Consistency Ch.

Примечание: Средняя загрузка ЦПУ для этого процесса незначительна более чем минута или час, который подтверждает, что проверка является коротким периодическим изучением. Этот фоновый процесс использует только простаивающие циклы ЦП.

Switch#show platform health 
                     %CPU   %CPU    RunTimeMax   Priority  Average %CPU  Total
                     Target Actual Target Actual   Fg   Bg 5Sec Min Hour  CPU
Lj-poll                1.00   0.02      2      1  100  500    0   0    0  1:09
GalChassisVp-review    3.00   0.29     10      3  100  500    0   0    0  11:15

!--- Output suppressed.

K2Fib cam usage revi   2.00   0.00     15      0  100  500    0   0    0  0:00
K2Fib IrmFib Review    2.00   0.00     15      0  100  500    0   0    0  0:00
K2Fib Vrf Default Ro   2.00   0.00     15      0  100  500    0   0    0  0:00
K2Fib AdjRepop Revie   2.00   0.00     15      0  100  500    0   0    0  0:00
K2Fib Vrf Unpunt Rev   2.00   0.01     15      0  100  500    0   0    0  0:23
K2Fib Consistency Ch   1.00  60.40      5      2  100  500    0   0    0 100:23
K2FibAdjMan Stats Re   2.00   0.30     10      4  100  500    0   0    0  6:21
K2FibAdjMan Host Mov   2.00   0.00     10      4  100  500    0   0    0  0:00
K2FibAdjMan Adj Chan   2.00   0.00     10      0  100  500    0   0    0  0:00
K2FibMulticast Signa   2.00   0.01     10      2  100  500    0   0    0  2:04

Высокая загрузка ЦП в хосте K2FibAdjMan перемещает процесс

Catalyst 4500 может отобразить высокую загрузку ЦП в процессе перемещения Хоста K2FibAdjMan. Эта высокая загрузка видна в выходных данных команды show platform health. Множество МАС-адресов часто устаревают или изучаются новыми портами, что приводит к высокой загрузке ЦП. Значение по умолчанию mac-address-table aging-time составляет 5 минут или 300 секунд. Обходной путь для этой проблемы должен увеличить время тренировки MAC-адреса, или можно спроектировать сеть во избежание большого числа шагов MAC-адреса. Программное обеспечение Cisco IOS релиза 12.2(18)EW и более поздних усовершенствовало данный процесс для поглощения меньшего количества ресурсов ЦП. Обратитесь к дефекту номер CSCed15021(только для зарегистрированных пользователей).

Switch#show platform health
                     %CPU   %CPU    RunTimeMax   Priority  Average %CPU  Total
                     Target Actual Target Actual   Fg   Bg 5Sec Min Hour  CPU
Lj-poll                1.00   0.02      2      1  100  500    0   0    0  1:09
GalChassisVp-review    3.00   0.29     10      3  100  500    0   0    0  11:15
S2w-JobEventSchedule  10.00   0.32     10      7  100  500    0   0    0  10:14

!--- Output suppressed.

K2FibAdjMan Stats Re   2.00   0.30     10      4  100  500    0   0    0  6:21
K2FibAdjMan Host Mov   2.00  18.68     10      4  100  500   25  29   28  2134:39
K2FibAdjMan Adj Chan   2.00   0.00     10      0  100  500    0   0    0  0:00
K2FibMulticast Signa   2.00   0.01     10      2  100  500    0   0    0  2:04
K2FibMulticast Entry   2.00   0.00     10      7  100  500    0   0    0  0:00

Можно модифицировать максимальное время устаревания MAC-адреса в режиме глобальной конфигурации. Синтаксис команды является секундами mac-address-table aging-time для маршрутизатора и секунды mac-address-table aging-time [vlan-id vlan] для Коммутатора Catalyst. Для получения дополнительной информации обратитесь к Справочнику по командам сервисов коммутации Cisco IOS.

Высокая загрузка ЦП в порту RkiosPortMan процесс рассмотрения

Catalyst 4500 может отобразить высокую загрузку ЦП в порту RkiosPortMan Процесс рассмотрения в выходных данных команды show platform health в программном обеспечении Cisco IOS версии 12.2 (25) EWA и 12.2 (25) EWA1. CSCeh08768 идентификатора ошибки Cisco (только зарегистрированные клиенты) вызывает высокий коэффициент использования, какое программное обеспечение Cisco IOS версии 12.2 (25) EWA2 решает. Этот процесс является фоновым и не влияет на стабильность коммутаторов Catalyst 4500.

Switch#show platform health
                     %CPU   %CPU    RunTimeMax   Priority  Average %CPU  Total
                     Target Actual Target Actual   Fg   Bg 5Sec Min Hour  CPU
Lj-poll                1.00   0.02      2      1  100  500    0   0    0  1:09
GalChassisVp-review    3.00   0.29     10      3  100  500    0   0    0  11:15
S2w-JobEventSchedule  10.00   0.32     10      7  100  500    0   0    0  10:14

!--- Output suppressed.

K2 Packet Memory Dia   2.00   0.00     15      8  100  500    0   1    1  45:46
K2 L2 Aging Table Re   2.00   0.12     20      3  100  500    0   0    0  7:22
RkiosPortMan Port Re   2.00  87.92     12      7  100  500   99  99   89  1052:36
Rkios Module State R   4.00   0.02     40      1  100  500    0   0    0  1:28
Rkios Online Diag Re   4.00   0.02     40      0  100  500    0   0    0  1:15

Высокая загрузка ЦП, когда связано с IP-телефоном с использованием магистральных портов

Если порт настроен и для опции голосового VLAN и для опции VLAN доступа, действия порта как с несколькими VLAN порт доступа. Преимуществом является то, что только VLAN, настроенные как голосовые VLAN и VLAN доступа, объединяются магистралью.

VLAN, подключенные магистралями к телефону, увеличивают количество единиц STP. Коммутатор управляет единицами STP. Управление увеличивающимся количеством единиц STP увеличивает и загрузку ЦП.

Транкинг всех VLAN приводит также к попаданию в телефонную линию ненужного широковещательного, многоадресного и неизвестного однонаправленного трафика.

Switch#show processes cpu
CPU utilization for five seconds: 69%/0%; one minute: 72%; five minutes: 73%
 PID Runtime(ms)   Invoked      uSecs   5Sec   1Min   5Min TTY Process 
   1           4       165         24  0.00%  0.00%  0.00%   0 Chunk Manager    
   2       29012    739091         39  0.00%  0.00%  0.00%   0 Load Meter       
   3       67080     13762       4874  0.00%  0.00%  0.00%   0 SpanTree Helper  
   4           0         1          0  0.00%  0.00%  0.00%   0 Deferred Events  
   5           0         2          0  0.00%  0.00%  0.00%   0 IpSecMibTopN     
   6     4980144    570766       8725  0.00%  0.09%  0.11%   0 Check heaps      
  26   539173952 530982442       1015 13.09% 13.05% 13.20%   0 Cat4k Mgmt HiPri 
  27   716335120 180543127       3967 17.61% 18.19% 18.41%   0 Cat4k Mgmt LoPri 
  33     1073728     61623      17424  0.00%  0.03%  0.00%   0 Per-minute Jobs  
  34  1366717824 231584970       5901 38.99% 38.90% 38.92%   0 Spanning Tree    
  35     2218424  18349158        120  0.00%  0.03%  0.02%   0 DTP Protocol     
  36        5160    369525         13  0.00%  0.00%  0.00%   0 Ethchnl          
  37      271016   2308022        117  0.00%  0.00%  0.00%   0 VLAN Manager     
  38      958084   3965585        241  0.00%  0.01%  0.01%   0 UDLD             
  39        1436     51011         28  0.00%  0.00%  0.00%   0 DHCP Snooping    
  40         780     61658         12  0.00%  0.00%  0.00%   0 Port-Security    
  41     1355308  12210934        110  0.00%  0.01%  0.00%   0 IP Input         

Высокая загрузка ЦП с RSPAN и управляющими пакетами Уровня 3

Управляющие пакеты Уровня 3, которые перехвачены с RSPAN, предназначены к ЦПУ, а не просто интерфейсу Назначения RSPAN, который вызывает высокую загрузку CPU. Управляющие пакеты L3 перехвачены статическими записями CAM с форвардом к действию ЦПУ. Статические записи CAM являются глобальным ко всем VLAN. Во избежание ненужного затопления ЦПУ используйте ДЛЯ КАЖДОЙ VLAN функция Точки пересечения Контрольного трафика, доступная в Cisco IOS Software Release 12.2 (37) SG и позже.

Switch(config)# access-list hardware capture mode vlan

Статические ACL установлены наверху во входном TCAM функции для получения управляющих пакетов, предназначенных к известным адресам групповой IP-адресации в 224.0.0.* диапазон. Статические ACL установлены во время начальной загрузки и появляются перед любым ACL настройки пользователя. Статические ACL всегда поражаются сначала и перехватывают контрольный трафик к ЦПУ на всех VLAN.

ДЛЯ КАЖДОЙ VLAN функция точки пересечения контрольного трафика предоставляет выборочный, для каждой VLAN соединяют режим автоматического управления каналом получения контрольного трафика. Соответствующие статические записи CAM во входном TCAM функции лишены законной силы в новом режиме. Управляющие пакеты перехвачены функцией определенный ACL, подключенный к VLAN, на которых включено snooping или средства маршрутизации. Нет никакой функции определенного ACL, подключенного к VLAN RSPAN. Поэтому все управляющие пакеты уровня 3, полученные от VLAN RSPAN, не переданы ЦПУ.

Средства поиска и устранения неисправностей для анализа трафика, предназначенного ЦП

Как показано в настоящем документе, трафик, предназначающийся ЦП, является одной из самых распространенных причин высокой загрузки ЦП на Catalyst 4500. Трафик, предназначающийся ЦП, может быть преднамеренным и вызванным соответствующими настройками или непреднамеренным и вызванным неправильной настройкой или DoS-атаками. ЦП обладает встроенным механизмом QoS для предотвращения любых нежелательных явлений в сети, связанных с трафиком. Однако, выявлять основную причину появления трафика, связанного с ЦП, и исключать такой трафик нежелательно.

Программное средство 1: контролируйте трафик ЦП с SPAN — Cisco IOS Software Release 12.1 (19) EW и позднее

Catalyst 4500 обеспечивает монитор Трафика привязанный к ЦПУ, или вход или выход, с использованием стандартной функции SPAN. Интерфейс назначения подключается к монитору пакетов или портативному компьютеру администратора, использующему программное обеспечение сниффера пакетов. Это средство помогает быстро и точно проанализировать трафик, обрабатываемый центральным процессором. Средство предусматривает возможность отслеживать индивидуальные очереди, связанные с модулем пакетов ЦП.

Примечание: Устройство переключения имеет 32 очереди для трафика ЦП, и механизм пакетов ЦПУ имеет 16 очередей.

Switch(config)#monitor session 1 source cpu ?
  both   Monitor received and transmitted traffic
  queue  SPAN source CPU queue
  rx     Monitor received traffic only
  tx     Monitor transmitted traffic only
  <cr>
Switch(config)#monitor session 1 source cpu queue ?
  <1-32>          SPAN source CPU queue numbers
  acl             Input and output ACL [13-20]
  adj-same-if     Packets routed to the incoming interface [7]
  all             All queues [1-32]
  bridged         L2/bridged packets [29-32]
  control-packet  Layer 2 Control Packets [5]
  mtu-exceeded    Output interface MTU exceeded [9]
  nfl             Packets sent to CPU by netflow (unused) [8]
  routed          L3/routed packets [21-28]
  rpf-failure     Multicast RPF Failures [6]
  span            SPAN to CPU (unused) [11]
  unknown-sa      Packets with missing source address [10]
Switch(config)#monitor session 1 source cpu queue all rx
Switch(config)#monitor session 1 destination interface gigabitethernet 1/3
Switch(config)#end
4w6d: %SYS-5-CONFIG_I: Configured from console by console

Switch#show monitor session 1
Session 1
---------
Type              : Local Session
Source Ports      :
    RX Only       : CPU
Destination Ports : Gi1/3
    Encapsulation : Native
          Ingress : Disabled
         Learning : Disabled

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

Примечание: BPDU STP в сниффере ЦПУ обычны. Но если вы видите больше, чем ожидали, это может означать, что были превышены рекомендуемые пределы используемого Supervisor Engine. Для получения дополнительной информации см. раздел данного документа Большое количество портов связующего дерева.

http://www.cisco.com/c/dam/en/us/support/docs/switches/catalyst-4000-series-switches/65591-cat4500-high-cpu-5.gif

Средство 2: Встроенный сниффер ЦПУ — программное обеспечение Cisco IOS версии 12.2 (20) EW и позже

Catalyst 4500 предоставляет встроенный сниффер ЦПУ и декодер для быстрого определения трафика, который поражает ЦПУ. Это устройство может быть включено командой debug, как показано в примере в этом разделе. Эта функциональная возможность является усовершенствованным кольцевым буфером, который одновременно может вместить 1024 пакетов. Вновь прибывшие пакеты записываются поверх старых. При поиске и устранении причин высокой загрузки ЦП использование этой функциональной возможности является безопасным.

Switch#debug platform packet all receive buffer
platform packet debugging is on
Switch#show platform cpu packet buffered
Total Received Packets Buffered: 36
-------------------------------------
Index 0:
7 days 23:6:32:37214 - RxVlan: 99, RxPort: Gi4/48
Priority: Crucial, Tag: Dot1Q Tag, Event: Control Packet, Flags: 0x40, Size: 68
Eth: Src 00-0F-F7-AC-EE-4F Dst 01-00-0C-CC-CC-CD Type/Len 0x0032
Remaining data:
 0: 0xAA 0xAA 0x3  0x0  0x0  0xC  0x1  0xB  0x0  0x0
10: 0x0  0x0  0x0  0x80 0x0  0x0  0x2  0x16 0x63 0x28
20: 0x62 0x0  0x0  0x0  0x0  0x80 0x0  0x0  0x2  0x16
30: 0x63 0x28 0x62 0x80 0xF0 0x0  0x0  0x14 0x0  0x2
40: 0x0  0xF  0x0  0x0  0x0  0x0  0x0  0x2  0x0  0x63
Index 1:
7 days 23:6:33:180863 - RxVlan: 1, RxPort: Gi4/48
Priority: Crucial, Tag: Dot1Q Tag, Event: Control Packet, Flags: 0x40, Size: 68
Eth: Src 00-0F-F7-AC-EE-4F Dst 01-00-0C-CC-CC-CD Type/Len 0x0032
Remaining data:
 0: 0xAA 0xAA 0x3  0x0  0x0  0xC  0x1  0xB  0x0  0x0
10: 0x0  0x0  0x0  0x80 0x0  0x0  0x2  0x16 0x63 0x28
20: 0x62 0x0  0x0  0x0  0x0  0x80 0x0  0x0  0x2  0x16
30: 0x63 0x28 0x62 0x80 0xF0 0x0  0x0  0x14 0x0  0x2
40: 0x0  0xF  0x0  0x0  0x0  0x0  0x0  0x2  0x0  0x63

Примечание: Загрузка ЦПУ при запуске команды отладки всегда - почти 100%. Поэтому при использовании команды debug высокая загрузка ЦП является нормальной.

Программное средство 3: определите интерфейс, который передает трафик к ЦПУ — программное обеспечение Cisco IOS версии 12.2 (20) EW и позже

Catalyst 4500 предоставляет другой полезный инструмент для определения главных интерфейсов, которые передают трафик/пакеты за Обработкой ЦПУ. Это средство позволяет быстро определить устройство, отправляющее широковещательную рассылку или большое количество других DoS-атак на ЦП. При поиске и устранении причин высокой загрузки ЦП использование этой функциональной возможности также является безопасным.

Switch#debug platform packet all count
platform packet debugging is on
Switch#show platform cpu packet statistics

!--- Output suppressed.

Packets Transmitted from CPU per Output Interface

Interface              Total           5 sec avg 1 min avg 5 min avg 1 hour avg
---------------------- --------------- --------- --------- --------- ----------
Gi4/47                            1150         1         5        10          0
Gi4/48                              50         1         0         0          0

Packets Received at CPU per Input Interface

Interface              Total           5 sec avg 1 min avg 5 min avg 1 hour avg
---------------------- --------------- --------- --------- --------- ----------
Gi4/47                           23130         5        10        50         20
Gi4/48                              50         1         0         0          0

Примечание: Загрузка ЦПУ при запуске команды отладки всегда - почти 100%. Поэтому при использовании команды debug высокая загрузка ЦП является нормальной.

Сводка

Коммутаторы Catalyst 4500 поддерживают высокоскоростную пересылку IPv4-пакетов внутри оборудования IP версии 4 (IPv4). Некоторые из функциональных возможностей или исключений могут стать причиной пересылки некоторых пакетов на обработку центральному процессору. Catalyst 4500 использует сложный механизм QoS для обработки пакетов, связанных с ЦП. Этот механизм обеспечивает надежность и стабильность коммутаторов и в то же время увеличивает ресурсы ЦП для программной пересылки пакетов. Программное обеспечение Cisco IOS релиза 12.2(25)EWA2 и более поздних обеспечивает дополнительные усовершенствования управления пакетами/процессами и учетом. Catalyst 4500 также имеет достаточные команды и мощные программные средства для помощи in�the идентификации основной причины сценариев высокой загрузки ЦП. Но в большинстве случаев высокая загрузка ЦП на Catalyst 4500 не приводит к нестабильности сети или связанным с ней проблемам.

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

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


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


Document ID: 65591