Программное обеспечение Cisco IOS и NX-OS : Программное обеспечение Cisco IOS версии 12.0 Mainline

Устранение неполадок, связанных с фиктивным доступом, ошибками выравнивания и фиктивными прерываниями

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


Интерактивно этот документ предлагает анализ конкретного устройства Cisco.


Содержание


Введение

Цель этого документа состоит в том, чтобы описать три типа ошибок - подложные доступы, ошибки выравнивания, и ложные прерывания - с которым можно встретиться на устройствах рабочий Cisco программное обеспечение IOS�.

Если есть выходные данные команды show alignment от устройства Cisco, то можно использовать для получения наглядной информации о возможных проблемах и способах их устранения. Для работы с необходимо быть зарегистрированным пользователем, войти в систему и включить поддержку JavaScript.

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

Требования

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

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

Данная команда не поддерживается на всех платформах, за исключением процессоров RISC (процессор с архитектурой вычислений с сокращенным набором команд).

Команда show alignment появилась в версии 12.3(7)T и отсутствовала в более ранних версиях.

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

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

Фиктивные попытки доступа

Фиктивный доступ — это попытка программного обеспечения Cisco IOS получить доступ к памяти в ограниченном расположении. Пример выхода системного журнала для ложного доступа показан ниже:

%ALIGN-3-SPURIOUS: Spurious memory access made at 0x60968C44 reading 0x0
%ALIGN-3-TRACE: -Traceback= 60968C44 60269808 602389D8 00000000 00000000 00000000 
00000000 00000000

Причина

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

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

В зависимости от платформы ПО Cisco IOS по разному обрабатывает подложный доступ. На тех платформах, где это возможно, код программного обеспечения Cisco IOS обрабатывает подложный доступ, возвращая значение ноль и записывая событие. Если это не поддерживается платформой, на маршрутизаторе произойдет ошибка SegV. Поскольку ложный доступ неприемлем, любые случаи ложного доступа всегда указывают на ошибку.

Проверка ложных ошибок доступа

По возможности, программа Cisco IOS подсчитывает и регистрирует попытки несанкционированного доступа. Эта информация доступна с помощью команды show alignment. Данные, полученные в результате отслеживания (трассировки) в обратном порядке, необходимы для определения причин произошедших попыток фиктивного доступа и способов их устранения.

Примечание: Команда show alignment скрыта и не документирована. Данная команда также не поддерживается на всех платформах, за исключением процессоров с архитектурой вычислений с сокращённым набором команд [RISC]. Пример выходных данных команды show alignment показан ниже:

Router#show alignment 
Alignment data for: 
GS Software (RSP-PV-M), Version 11.1(26.1)CC, EARLY DEPLOYMENT MAINTENANCE INTER 
IM SOFTWARE 
Compiled Thu 27-May-99 20:48 by jjgreen 

No alignment data has been recorded. 

Total Spurious Accesses 167110746, Recorded 2 

Address  Count  Traceback 
      0  10474  0x6012D488  0x6020FFB4 0x601D5CE0 
      0  49008  0x6012D488  0x6020D25C 0x6020E744 0x602106B4
Router#

Исправление ошибок фиктивных попыток доступа

Ошибки подложного доступа всегда происходят из-за сбоев программного обеспечения Cisco IOS. Чтобы устранить эту проблему, обновите программное обеспечение до последней версии серии, например, если используется версия системы Cisco IOS® 11.2(14), следует выполнить обновление до последней версии 11.2(x). Если это не решает проблему либо не удается обновить маршрутизатор, обратитесь в центр технической поддержки Cisco. При открытии дела для сообщения о попытках ложного доступа включите следующие сведения:

  • выходные данные команды show version

  • выходные данные команды show tech-support

  • соответствующие системные журналы

Alignment errors (ошибки выравнивания)

Ниже приведен пример системного журнала в случае ошибки выравнивания:

%ALIGN-3-CORRECT: Alignment correction made at 0x60262478 reading/writing 0x60A9FF5C

Причина

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

Проверка ошибок регулировки

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

Примечание: Команда show alignment скрыта и не документирована. Данная команда также не поддерживается на всех платформах (ее поддерживают только маршрутизаторы высокого класса). Пример выходных данных команды show alignment показан ниже:

Router#show alignment
Alignment data for: 
RSP Software (RSP-ISV-M), Version 11.3(3a), RELEASE SOFTWARE (fc1) 
Compiled Fri 01-May-98 18:28 by phanguye

Total Corrections 6, Recorded 2, Reads 6, Writes 0 

Initial Initial 
Address    Count  Access  Type  Traceback 
60EF3765   3      32bit   read  0x60262474 0x601AC594 0x601AC580 
60EF3761   3      32bit   read  0x60262478 0x601AC594 0x601AC580 

No spurious memory references have been recorded. 

Router#

Исправление ошибок выравнивания

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

Ложные прерывания

Фиктивные прерывания — это не то же самое, что попытки фиктивного доступа к памяти.

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

Команда show align выдает информацию о попытках фиктивного доступа к памяти, но не о фиктивных прерываниях. Единственные сведения о фиктивных прерываниях, которые можно получить от системы, находятся в выходных данных команды show stacks, там есть счетчик таких прерываний.

Router#show stacks
Minimum process stacks:
 Free/Size   Name
 3692/4000   DHCPD Receive
 4796/6000   Router Init
 1904/4000   Init
 3408/4000   RADIUS INITCONFIG
 4228/5000   DHCP Client
 2468/4000   Exec

Interrupt level stacks:
Level    Called Unused/Size  Name
  3           0   3000/3000  Serial interface state change interrupt
  4    54351439   1760/3000  Network interfaces
  5       64181   2872/3000  Console Uart

Spurious interrupts: 29 

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

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

Маршрутизаторы Cisco, базирующиеся на процессоре 68 кбит (то есть Cisco 1000, 1600, 2500, 4000 и 7000 (RP)), можно настроить таким образом, чтобы они делали выгрузку содержимого памяти (дамп), если количество фиктивных прерываний достигает определенного порогового значения.

Router(config)#exception ? 
core-file           Set name of core dump file
crashinfo           Crashinfo collection
dump                Set name of host to dump to
flash               Set the device and erase permission
memory              Memory leak debugging
protocol            Set protocol for sending core file
region-size         Size of region for exception-time memory pool
spurious-interrupt  Crash after a given number of spurious interrupts

Router(config)#exception spurious-interrupt ? 
  <1-4294967295>  Spurious interrupt threshold

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

Сведения, необходимые при обращении в Центр технической поддержки

Если после выполнения вышеуказанных инструкций по устранению неполадок поддержка все еще необходима и нужно создать запрос на обслуживание (только для зарегистрированных клиентов) в службу технической поддержки Cisco, следует обязательно включить нижеследующую информацию в сообщение о возникшей ошибке для устранения неполадок, связанных с попытками фиктивного доступа, ошибками выравнивания и фиктивными прерываниями:
  • Устранение неисправностей перед созданием служебного запроса
  • выходные данные команды show technical-support (в активном режиме, если возможно)
  • выходные данные команды show alignment (в случае, если они уже не были включены в выходные данные команды show technical-support)
  • результаты выполнения команды show log или снимки консоли (если имеются)
Приложите собранные данные к запросу на обслуживание в простом текстовом формате (.txt), не архивируя вложенный файл. Приложить информацию к запросу можно путем ее загрузки с помощью интерфейса TAC Service Request (только для зарегистрированных клиентов). Если не удается получить доступ к Service Request Tool, можно присоединить дополнительные данные к запросу на обслуживание и отослать их на адрес attach@cisco.com, указав номер запроса в теме письма.

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

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

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


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


Document ID: 15103