Решение проблемы высокой загрузки ЦП на маршрутизаторах Cisco
В этой статье объясняются общие симптомы и причины высокой загруженности ЦП в маршрутизаторах Cisco и даются указания и решения по устранению неполадок. Данный документ не ограничен отдельными версиями программного и аппаратного обеспечения.
Симптомы высокой загруженности ЦП
Ниже перечислены распространенные симптомы высокой загрузки ЦП. Если присутствует любой из описанных признаков, для устранения неполадки выполните действия, описанные в данном документе.
- Команда show processes cpu выдает высокое значение в процентах
- Медленная работа
- Службы маршрутизатора не отвечают, например:
- задержка ответа Telnet или невозможно получить доступ к маршрутизатору по протоколу Telnet
- медленный ответ на консоли
- медленный ответ на запрос команды ping или вообще нет ответа
- маршрутизатор не отправляет обновления маршрутизации другим маршрутизаторам
Первоначальное устранение неполадок
Как только будет замечен какой-нибудь из указанных выше симптомов, выполните следующее:
- Проверьте наличие проблем, связанных с безопасностью. Как правило, высокая загрузка ЦП бывает обусловлена именно проблемами такого рода, например функционированием вредоносной программы (червя или вируса) в сети. Если последние изменения в сети производились давно, это наиболее вероятная причина высокой загрузки ЦП. Обычно для ограничения негативных последствий этой проблемы достаточно добавить строки в списки доступа.
- Убедитесь, что все команды отладки в маршрутизаторе выключены, выполнив команду undebug all или no debug all.
- Удается выполнить команды show на маршрутизаторе? Если да, немедленно начните собирать дополнительные сведения, используя эти команды.
- Маршрутизатор недоступен? Удается воспроизвести эту проблему? Если да, выключите и включите маршрутизатор, а перед воспроизведением проблемы настройте команду scheduler interval 500. В результате выполнение процессов с низким приоритетом будет запланировано с интервалом в 500 миллисекунд, благодаря чему появится время для запуска некоторых команд, даже если ЦП используется на все 100%. На оборудовании Cisco серий 7200 и 7500 используйте команду scheduler allocate 3000 1000.
- Проявляет маршрутизатор признаки высокой загрузки ЦП в течение кратких и непрогнозируемых периодов? Если да, регулярно собирайте выходные данные команды show processes cpu, которые отображают причину высокой загрузки ЦП, если она вызвана прерываниями или отдельным процессом.
- Выяснение причин и решение проблемы
Используйте команду show processes cpu, чтобы определить, чем вызвана высокая загрузка ЦП, прерываниями или процессами.
Высокая загруженность ЦП процессами
Определите процесс, чрезмерно использующий ЦП. Необычная активность, относящаяся к процессу, приводит к сообщению об ошибке в журнале. Таким образом, выходные данные команды show logging exec следует проверить, в первую очередь, на наличие любых ошибок, относящихся к процессу, использующему большое количество циклов ЦП.
Отладка также является очень полезной при устранении проблемы высокой загруженности ЦП процессами. Однако отладку следует выполнять очень осторожно, поскольку это может привести к еще большей загрузке ЦП. Отладка будет безопасной и эффективной при выполнении следующих предварительных условий:
- Все журналы регистрации, за исключением журнала регистрации сведений для буферов, должны быть отключены или уровень важности протоколируемых в них сведений должен быть понижен с 7 (отладка) до 6 (информационный) или ниже при помощи соответствующей команды настройки logging destination[уровень важности]. Сведения о включенных журналах регистрации и уровнях важности протоколируемых в них сведений содержатся в строках заголовка выходных данных команды show logging exec.
- Размер буфера регистрации необходимо увеличить, чтобы он вмещал всю необходимую информацию. Дополнительные сведения см. в описании команды глобальной настройки logging buffered.
- Чтобы облегчить восприятие и понимание отладки, следует включить временные отметки в миллисекундах, а также дату и время. Дополнительную информацию см. в описании команды глобальной настройки service timestamps.
Команды для получения дополнительной информации
Эти команды позволяют получить дополнительные сведения о проблеме:
- show processes cpu
- show interfaces
- show interfaces switching
- show interfaces stat
- show ip nat translations
- show align
- show version
- show log
Если маршрутизатор совершенно недоступен, сначала выключите и включите его. Затем периодически собирайте выходные данные вышеуказанных команд, за исключением команды show log, результаты выполнения которой должны регистрироваться на сервере системного журнала. Выходные данные следует собирать с интервалом 5 минут. Сбор данных можно также выполнить с помощью HTTP или SNMP.
Команда show processes cpu
Это пример заголовка команды show processes cpu:
CPU utilization for five seconds: X%/Y%; one minute: Z%; five minutes: W% PID Runtime(ms) Invoked uSecs 5Sec 1Min 5Min TTY Process
В следующей таблице описаны поля этого заголовка:
¹Использование ЦП на уровне процесса = X - Y ²Значения соответствуют не арифметическому среднему, а экспоненциально затухающему среднему, поэтому последние значения больше влияют на вычисляемое среднее.
Примечание: Суммарное использование ЦП не следует интерпретировать как показатель способности маршрутизатора коммутировать большее число пакетов. В маршрутизаторах Cisco 7500 универсальные интерфейсные процессоры (VIP) и процессоры маршрутизации и коммутации (RSP) не сообщают о линейном использовании ЦП. Почти половина мощности коммутации в пакетах в секунду реализуется после 90-95% загрузки ЦП.
Команда show interfaces switching
Эта команда используется для определения активных путей коммутации на интерфейсах
Ниже приведен пример выходных данных команды show interfaces switching для одного интерфейса:
RouterA#show interfaces switching
Throttle count 0 Drops RP 0 SP 0 SPD Flushes Fast 0 SSE 0 SPD Aggress Fast 0 0 SPD Priority Inputs 0 Drops 0 Protocol Path Pkts In Chars In Pkts Out Chars Out Other Process 0 0 595 35700 Cache misses 0 Fast 0 0 0 0 Auton/SSE 0 0 0 0 IP Process 4 456 4 456 Cache misses 0 Fast 0 Auton/SSE 0 0 0 0 IPX Process 0 0 2 120 Cache misses 0 Fast 0 0 0 0 Auton/SSE 0 0 0 0 Trans. Bridge Process 0 0 0 0 Cache misses 0 Fast 11 660 0 0 Auton/SSE 0 0 0 0 DEC MOP Process 0 0 10 770 Cache misses 0 Fast 0 0 0 0 Auton/SSE 0 0 0 0 ARP Process 1 60 2 120 Cache misses 0 Fast 0 0 0 0 Auton/SSE 0 0 0 0 CDP Process 200 63700 100 31183 Cache misses 0 Fast 0 0 0 0 Auton/SSE 0 0 0 0
В выходных сведениях перечисляются пути коммутации для всех настроенных на интерфейсе протоколов, так что можно легко видеть тип и количество трафика, проходящего через маршрутизатор. В следующей таблице описаны поля выходных данных.
Команда show interfaces stat
Эта команда является объединенной версией команды show interfaces switching. Ниже приведен пример выходных данных для одного интерфейса:
RouterA#show interfaces stat
Ethernet0 Switching path Pkts In Chars In Pkts Out Chars Out Processor 52077 12245489 24646 3170041 Route cache 0 0 0 0 Distributed cache 0 0 0 0 Total 52077 12245489 24646 3170041
Выходные данные команды show interfaces stat на разных платформах отличаются: они зависят от доступных и настроенных коммутируемых путей.
Команда show ip nat translations
Команда show ip nat translations служит для отображения активных на маршрутизаторе трансляций преобразования сетевых адресов (NAT). Каждая активная трансляция генерирует прерывания ЦП и влияет на суммарное использование ЦП маршрутизатора. Большое число трансляций может повлиять на производительность маршрутизатора.
Ниже приведен пример выходных данных команды show ip nat translations:
router#show ip nat translations Pro
Inside global Inside local Outside local Outside global --- 172.16.131.1 10.10.10.1 ---
Команда show align
Эта команда доступна только на платформах на базе RISC-процессоров с сокращенным набором команд. На этих платформах ЦП может корректировать нарушения выравнивания для чтения и записи в памяти. Ниже приведен пример выходных данных:
Alignment data for: 4500 Software (C4500-DS40-M), Version mis-aligned RELEASE SOFTWARE (fc1) Compiled Tue 31-Mar-98 15:05 by jdoe
Total Corrections 33911, Recorded 2, Reads 33911, Writes 0
Initial Initial Address Count Access Type Traceback 40025F4D 15561 16bit read 0x606F4A7C 0x601C78F8 0x6012FE94 0x600102C0 40025F72 18350 32bit read 0x606FB260 0x6013113C 0x600102C0 0x60010988
Команда show version
В целях отслеживания проблем высокой загрузки ЦП, важной частью выходных данных этой команды является версия программного обеспечения Cisco IOS, платформа, тип ЦП и время работы маршрутизатора. Щелкните эту ссылку, чтобы ознакомиться с подробным описанием команды show version.
Команда show log
Эта команда отображает содержание сообщений журнала регистрации сведений о буферах.
Есть вопросы? Обращайтесь в "Аквилон-А", чтобы узнать подробности и получить именно то, что вам требуется.