Маршрутизаторы : Маршрутизаторы Cisco серии 7500

Высокое потребление ресурсов ЦПУ в процессах Exec и Virtual Exec

5 апреля 2016 - Машинный перевод
Другие версии: PDF-версия:pdf | Английский (31 декабря 2015) | Отзыв


Содержание


Введение

Данный документ описывает процессы Exec и Virtual Exec, а также поиск и устранение неисправностей, связанных с высокой загрузкой CPU в этих процессах.

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

Требования

Cisco рекомендует считать Высокую загрузку ЦП Устранения проблем на маршрутизаторах Cisco перед переходом этот документ.

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

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

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

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

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

Что такое Exec и Virtual Exec Processes?

Процесс exec в Cisco программное обеспечение IOS� является ответственным за связь на линиях tty (консоль, вспомогательным, асинхронным) маршрутизатора. Процесс Virtual Exec отвечает за линии VTY (сеансы Telnet).

Процессы Exec и Virtual Exec имеют средний приоритет, так что при наличии других процессов с более высоким приоритетом (высоким или критическим) процессы с более высоким приоритетом получают ресурсы ЦП.

router#show process | i CPU|Exec 
CPU utilization for five seconds: 0%/0%; one minute: 0%; five minutes: 0% 
 PID QTy       PC Runtime (ms)    Invoked   uSecs    Stacks TTY Process 
  22 M*         0         9644       1733    5564 9732/12000  0 Exec 
  46 ME  80468980           28          6    466610520/12000 66 Virtual Exec 

Обратитесь к Команде show processes для подробного описания выходных данных от этой команды.

Как exec и виртуальные процессы Exec могут вызвать высокую загрузку ЦП?

Если через эти сеансы передается большой объем данных, загрузка ЦП процессом Exec возрастает.

Это происходит потому, что когда маршрутизатор отправляет простой символ через эти линии, он использует некоторые ресурсы ЦП:

  • Для консоли (Exec) маршрутизатор использует одно прерывание на символ.

    Консольное прерывание можно видеть в выходных данных команды show stacks:

    router#show stacks 
         Minimum process stacks: 
         Free/Size   Name 
         11516/12000  Router Init 
         9404/12000  Init 
         5520/6000   AIM_MIB_CREATION 
         5448/6000   RADIUS INITCONFIG 
         9728/12000  Virtual Exec 
         Interrupt level stacks: 
         Level    Called Unused/Size  Name 
         1    23035463   7008/9000  Network interfaces 
         2           0   9000/9000  Timebase Reference Interrupt 
         3           0   9000/9000  PA Management Int Handler 
         6        9791   8892/9000  16552 Con/Aux Interrupt 
         7  1334963882   8920/9000  MPC860 TIMER INTERRUPT 
    
    
  • Для линии VTY (Процесс Virtual Exec) сеанс Telnet должен создать пакет TCP и передать символ (ы) клиенту Telnet.

Устраните неполадки высокой загрузки ЦП в процессе exec

Перечисленный здесь некоторые возможные причины для высокой загрузки ЦП в процессе exec:

  • Слишком много данных передается через консольный порт.

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

    1. Проверьте, не запущены ли на маршрутизаторе процессы отладки, с помощью команды show debugging.

    2. Отключите вход через консоль на маршрутизаторе ни с (какой консолью регистрации) .

    3. Проверьте, распечатано ли большое количество выходных данных на консоли (например, техподдержка показа или show memory ).

  • В программном обеспечении Cisco IOS есть ошибка.

    Используйте Bug Toolkit (только зарегистрированные клиенты) для поиска дефектов с этим признаком в Cisco IOS Software Release.

  • Команда exec настраивается для асинхронных и вспомогательных линий.

    • Если линия имеет только исходящий поток данных, процесс exec должен быть отключен для этой линии, потому что, если устройство (например, модем) подключенный к этой линии передает некоторые данные без запроса, process start exec на этой линии.

    • Если маршрутизатор используется в качестве сервера терминала (для обратного доступа по протоколу Telnet к другим консолям устройства), рекомендуется настроить no exec на линиях, которые связаны с консолью других устройств. Иначе данные, поступающие с консоли, могут запустить процесс Exec, который использует ресурсы ЦП.

Устраните неполадки высокой загрузки ЦП в виртуальном процессе Exec

Перечисленный здесь некоторые возможные причины для высокой загрузки ЦП в Виртуальном процессе Exec:

  • Ошибка в программном обеспечении в программном обеспечении Cisco IOS

    Используйте Bug Toolkit (только зарегистрированные клиенты) для поиска дефектов с этим признаком для Cisco IOS Software Release.

  • Слишком много данных передается по сеансам Telnet.

    Самой распространенной причиной высокой загрузки ЦП в процессе Virtual Exec является передача слишком больших объемов данных от маршрутизатора сеансу Telnet.

    Это может происходить, когда команды с большим объемом выходных данных, например show tech-support, show memory и т.п., выполняются из сеанса Telnet.

    Объем данных, переданный через каждый сеанс VTY, может быть проверен с командой show tcp :

    router#show tcp vty 0
     
    
    tty66, virtual tty from host 10.48.77.64 
    Connection state is ESTAB, I/O status: 1, unread input bytes: 1 
    Local host: 10.48.77.27, Local port: 23 
    Foreign host: 10.48.77.64, Foreign port: 11006 
    
    ........ 
    
    Datagrams (max data segment is 1460 bytes): 
    Rcvd: 525 (out of order: 0), with data: 53, total data bytes: 87 
    Sent: 366 (retransmit: 257, fastretransmit: 0), with data: 356, total data bytes: 
    158187 
    
  • Зависание сеанса Telnet приводит к высокой загрузке CPU из-за Виртуального процесса Exec. Для очистки зависания сеанса Telnet устройство должно быть повторно загружено в большинстве случаев. Другой способ очистить зависание сеанса Telnet состоит в том, чтобы очистить процесс TCP. Процесс TCP может быть определен с командой show tcp brief как в этих выходных данных:

Router#show tcp brief
TCB       Local Address           Foreign Address        (state)
02FA62D0  172.16.152.75.23        dhcp-171-69-104-.3013  ESTAB

От вышеупомянутых выходных данных процесс TCP 02FA62D0 должен быть очищен для очистки зависания сеанса Telnet с командой clear tcp tcb 0x02fa62d0 .

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

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


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


Document ID: 41100