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

"Cisco 12000, 10000, 7600, и маршрутизаторы серии "7500": Устранение неполадок сообщений IPC-3-NOBUFF

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


Содержание


Введение

Этот документ объясняет, почему маршрутизатор выдает связанные с IPC сообщения журнала и как устранить эту проблему. Этот документ также включает анализ терминологии IPC.

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

Требования

Для использования данного документа требуется знание следующих тем:

  • Администрирование Маршрутизатора Cisco

  • IPC и его терминология

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

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

  • Все выпуски ПО IOS� Cisco, которые поддерживают Cisco 12000, 10000, 7600, и маршрутизаторы серии "7500".

  • "Cisco 12000, 10000, 7600, и маршрутизаторы серии "7500".

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

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

Более подробную информацию о применяемых в документе обозначениях см. в описании условных обозначений, используемых в технической документации Cisco.

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

Модуль Межпроцессного взаимодействия (IPC) программного обеспечения Cisco IOS предоставляет инфраструктуру подключения, которой процессы в распределенной системе могут взаимодействовать друг с другом. Он также обеспечивает прозрачную связь через объединительные платы, сети и общую память.

Сервисы IPC служат средствами, которыми линейные карты (LC) и центральный процессор маршрута (RP) в распределенной системе связываются друг с другом посредством обмена сообщениями IPC, передаваемыми от RP до LC, и также между активными и резервными RP. Эти сообщения включают команды настройки и ответы на те команды, и также "события", о которых должен сообщить LC RP.

Серия Cisco 12000, Серия Cisco 10000, Серия Cisco 7600 и Cisco серии 7500 используют распределенную архитектуру на основе сообщений IPC. Под редкими случаями эти маршрутизаторы могут сообщить об этих связанных с IPC сообщениях журнала:

  • Серия Cisco 12000 – %IPC-3-NOBUFF: The main IPC message header cache has emptied

  • Cisco серии 7500 – %IPC_RSP_CBUS-3-NOBUF: Больше буферов MEMD IPC для передачи сообщения IPC

Примечание: IPC также используется на серии Cisco 6400 и серии Cisco 7304.

Основы терминологии взаимодействия процессов (IPC)

Больше стандартной терминологии IPC:

  • IPC – межпроцессное взаимодействие.

  • Адрес IPC – 32-разрядное слово, которое составлено из 16-разрядного ID места и 16-разрядного идентификатора порта.

  • IPC - клиент – модуль ПО, который использует сервисы IPC.

  • Порт IPC – оконечная точка соединения в IPC, используемом в качестве источника и назначения всей связи.

  • Место IPC – место IPC является вычислительным элементом, таким как процессор, который может быть передан с помощью IPC. Место IPC - то, где находятся IPC - клиенты и порты.

  • Сеанс IPC – сеанс IPC является активным каналом односторонней связи между двумя портами IPC.

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

Формат адреса IPC

Адреса IPC назначены на порты IPC локальным менеджером мест IPC. Место является процессором, на котором в настоящее время выполняется протокол IPC. Менеджер места является процессом, который ведет список локальных портов IPC и сервиса локального имени, и также поддерживает открытые сеансы коммуникации IPC.

Когда порт IPC создан, IPC - клиент назначает имя порта на порт IPC. Другие IPC - клиенты могут тогда использовать имя порта, когда они обращаются к недавно созданному порту IPC. Имя порта является строкой символов, которая состоит из названия места и предназначения порта или описания.

IPC Cisco имеет три разных уровня надежности по доставке к порту; когда порт открыт, это определено.

  • Надежный: предоставление сообщения гарантируется. После сбоя будет повторена доставка.

  • Ненадежный: доставка наилучшим образом попытка. Если доставка отказывает, нет никакой индикации.

  • Ненадежный с Уведомлением: предоставление сообщения не гарантируется. Однако отправитель получает уведомление о сбое.

Команда show ipc nodes выводит разъемы IPC, имеющиеся в так называемой области IPC.

Router#show ipc nodes 
     There are 3 nodes in this IPC realm. 
          ID Type       Name                         Last  Last 
                                                     Sent  Heard 
       10000 Local      IPC Master                   0      0 
     1030000 RSP-CY     RSP IPC card slot 3          7      7 
     1000000 RSP-CY     RSP IPC card slot 0          10     10

Когда ведомый RP присутствует, списки команд узлов show ipc ведомый адрес RP, как показано в этом примере выходных данных от маршрутизатора Cisco серии 10000:

10k-2#show ipc nodes 
        There are 5 nodes in this IPC realm. 
           ID   Type       Name                      Last  Last 
                                                     Sent  Heard 
        10000   Local      IPC Master                0     0 
        20000   UDP        C10K Line Card slot 2/0   3     3    
        30000   UDP        C10K Line Card slot 3/0   3     3    
        40000   UDP        C10K Line Card slot 1/0   3     3
        50000   Ethernet   Slave                     18    45

После того, как это создаст порт IPC, IPC - клиент может тогда зарегистрировать его имя порта в глобальном сервисе имен, управляемом Ведущим устройством IPC.

Набор посадочных мест IPC, связанных друг с другом, называется зоной. Для каждой зоны IPC одиночное место IPC определяется Менеджер зоны IPC или Ведущее устройство или Ведущее устройство IPC для краткости Логически, все подключения IPC в протоколе IPC являются двухточечными соединениями. Все установочное соединение IPC, как правило, между активным RP и линейной картой или резервным RP. Линейная карта к связи линейной карты возможна.

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

На маршрутизаторах серий Cisco 12000 и 7500 процессор маршрутов - либо Gigabit Route Processor (GRP), либо Route Switch Processor (RSP) - и интеллектуальные платы каналов выступают в качестве конечных точек IPC. "Главный IPC" управляет группой процессоров. Поскольку маршрутизатор инициализирует, Ведущее устройство IPC обнаруживает подарок оконечных точек IPC на линейных картах в системе. Для этого Ведущее устройство IPC просматривает все слоты, определяет тип контроллера и определяет, имеет ли контроллер производительность IPC.

/image/gif/paws/21165/ipc.gif

Используйте команду show ipc ports для просмотра этих портов. На ведомом устройстве IPC, это списки команд порты, которые были созданы на том определенном месте IPC. Когда выполнено на Ведущем устройстве IPC, эта команда отображает порты, которые были созданы на Ведущем устройстве, и также портах, которые были зарегистрированы ведомыми устройствами IPC (LC). Кроме того, порты show ipc открывают списки команд порты, которые были открыты от этого места IPC. Ниже представлен пример выходных данных:

router#show ipc ports
              There are 87 ports defined.
                   Port ID Type Name
            10000.1 unicast IPC Master:Zone
            10000.2 unicast IPC Master:Echo
           10000.3 unicast IPC Master:Control
            10000.4 unicast IPC Master:Init
     port_index = 0 seat_id = 0x1020000 last sent = 0 last heard = 1
     port_index = 1 seat_id = 0x1010000 last sent = 0 last heard = 1
     port_index = 2 seat_id = 0x1040000 last sent = 0 last heard = 1
     port_index = 3 seat_id = 0x1050000 last sent = 0 last heard = 1
     port_index = 4 seat_id = 0x1060000 last sent = 0 last heard = 1
     port_index = 5 seat_id = 0x1070000 last sent = 0 last heard = 1
     port_index = 6 seat_id = 0x1080000 last sent = 0 last heard = 1
     port_index = 7 seat_id = 0x1090000 last sent = 0 last heard = 1
     port_index = 8 seat_id = 0x10A0000 last sent = 0 last heard = 1
     port_index = 9 seat_id = 0x10B0000 last sent = 0 last heard = 1
     port_index = 10 seat_id = 0x1030000 last sent = 0 last heard = 1
         10000.5 unicast Remote TTY Server Port
     port_index = 0 seat_id = 0x1070000 last sent = 0 last heard = 2
     port_index = 1 seat_id = 0x1010000 last sent = 0 last heard = 2
     port_index = 3 seat_id = 0x1040000 last sent = 0 last heard = 2
     port_index = 4 seat_id = 0x1050000 last sent = 0 last heard = 2
                   Port ID Type Name
     port_index = 5 seat_id = 0x1060000 last sent = 0 last heard = 3
     port_index = 6 seat_id = 0x1080000 last sent = 0 last heard = 2
     port_index = 7 seat_id = 0x1090000 last sent = 0 last heard = 2
     port_index = 8 seat_id = 0x10A0000 last sent = 0 last heard = 2
     port_index = 9 seat_id = 0x10B0000 last sent = 0 last heard = 2
                    [output omitted]

port_index поле является идентификатором сеанса, используемым целевым IPC, когда это обрабатывает входящие сообщения. Когда ведомый RP присутствует, информация о резервном порте показов команды show ipc ports, как проиллюстрировано в этом примере выходных данных:

10k-2#show ipc ports
There are 16 ports defined.
Port ID       Type       Name
10000.1     Unicast    IPC Master:Zone
10000.2     Unicast    IPC Master:Echo
10000.3     Unicast    IPC Master:Control
10000.4     Unicast    Microcode Server
10000.5     Unicast    RFS Server Port
10000.6     Unicast    Remote File System Server Port
10000.7     Unicast    Master : TTY Server Port
port_index = 0  seat_id = 0x50000   last sent = 0     last heard = 0
10000.8     Unicast    C10K Line Card API
port_index = 0  seat_id = 0x20000   last sent = 0     last heard = 58521
port_index = 1  seat_id = 0x30000   last sent = 0     last heard = 64235
port_index = 2  seat_id = 0x40000   last sent = 0     last heard = 13486
50000.3     Unicast    Slave IPC:Control
50000.9     Unicast    Secondary RFS Server Port 
50000.A     Unicast    Secondary Old RFS Server Port 
50000.8     Unicast    Slave : TTY Client Port 
50000.7     Unicast    Secondary Services Port
50000.B     Unicast    IF-con server port
50000.C     Unicast    RF : Standby
50000.D     Unicast    CF : Standby

Какие данные следует передавать через IPC?

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

В заголовке IPC IPC определяет несколько других флажков сообщений, которые изменяют получить обработку сообщения IPC. Из определенных флагов четыре определяют тип используемого соединения (unreliable, unreliable with notification, reliable - ненадежное, ненадежное с уведомлением и надежное соответственно), четыре определяют параметры обмена сообщениями при вызове удаленной процедуры (RPC) или внутреннего контроля, а оставшиеся два не используются.

Вот несколько IPC - клиентов:

  • Команды, отправленные RP, чтобы запросить линейные платы о таких сведениях, как версия, объемы памяти, интерфейсная статистика, изменения статуса интерфейса и данные конфигурации.

  • Ответы на команды от RP, которые передаются от линейной карты до RP. Примеры сведений, содержавшиеся в сообщениях IPC, включают синхронизированные обновления статистики и сообщения windows, которые указывают, насколько больше сообщений IPC линейная карта в состоянии поместить в очередь.

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

  • Сообщения между активным и резервным RP для установки контрольных точек правильной работы.

  • Некоторые процессы программного обеспечения Cisco IOS требуют обмена информацией между линейными картами и процессором маршрута. Эти процессы считаются приложениями IPC. Примеры включают технологию CEF и удаленные файловые системы для обмена образами между процессорами маршрута Серии Cisco 12000.

  • Технические примечания по поиску и устранению неисправностей

Таблица 1 перечисляет уровни стека протокола IPC:

Таблица 1 – уровни стека протокола IPC

Стек протокола IPC
Приложения IPC
Механизм межпроцессорного взаимодействия
Коммутационная матрица (серии 12000) или уровень данных CBUS (серии 7500)

Как передаются сообщения IPC

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

Серия Cisco 7500

В серии 7500 используется особый набор буферов в системной пакетной памяти (MEMD). Для получения дополнительной информации о MEMD и 7500 архитектурах, посмотрите Что Причины a "%RSP-3-RESTART: cbus complex"? и Понимание VIP¦ CPU, Достигающего 99% и Буферизации на стороне приемника.

В серии 7500 очереди IPC находятся в памяти процессора. В некоторых версиях Cisco IOS (см. пример выходных данных ниже), составное пространство буфера IPC в памяти процессора может быть настроено командой ipc cache size. MEMD держит некоторые ограниченные буферы, которые не могут быть настроены. Когда сообщение IPC, которое ставится в очередь в памяти процессора, передается, и когда существует некоторое свободное место в MEMD, сообщения IPC "перемещены" от памяти процессора до MEMD, прежде чем они будут переданы LC.

Используйте команду show ipc queue для просмотра статуса очередей IPC.

Router#show ipc queue 
       There are 0 IPC messages waiting for acknowledgment in the transmit queue. 
       There are 0 IPC messages waiting for a response. 
       There are 0 IPC messages waiting for additional fragments. 
       There are 0 IPC messages currently on the IPC inbound.  
       There are 0 messages currently in use by the system.

Примечание: Эти очереди являются поддержанными IPC очередями программного обеспечения и не должны быть перепутаны с очередями аппаратных ресурсов QA-ASIC серии 7500.

Серия Cisco 12000

На серии 12000 GRP передает сообщения IPC по коммутационной матрице. В загружаются, алгоритм выделения буфера создает два набора пулов в так называемом tofab (сторона получения) и frfab (передающая сторона) память. As shown in the sample output of the show controller tofab queues command (see below), the two sets are Non-IPC Free Queues and IPC Queues. For guidance on how to interpret the output, see Cisco 12000 Series Internet Router: Frequently Asked Questions.

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

Cisco IOS Software Release 12.0 (18) s/st увеличил число по умолчанию заголовков сообщения, созданных в инициализации от 1000 до 5000 и на GRP и на LC (см. выходные данные, которые придерживаются). От выпуска 12.0 (23) S и позже, кэшу заголовка IPC позволяют вырасти динамично. Следовательно, это больше не должно настраиваться вручную.

LC поддерживают заголовки сообщения IPC в Динамическом ram (dram). Кроме того, на платах LC выделяется 100 буферов в памяти tofab и fromfab для сообщений IPC. Вместе с каждым переданным сообщением IPC LC должна запросить у кэша заголовок сообщения IPC, а затем запросить у ASIC управления буфером frfab буфер сообщения IPC, который следует использовать для отправки сообщения на GRP через матрицу.

LC-Slot1#show controllers tofab queues
       Carve information for ToFab buffers
         SDRAM size: 33554432 bytes, address: 30000000, carve base: 30029100
         33386240 bytes carve size, 4 SDRAM bank(s), 8192 bytes SDRAM pagesize, 2 carve(s)
         max buffer data size 9248 bytes, min buffer data size 80 bytes
         40606/40606 buffers specified/carved
         33249088/33249088 bytes sum buffer sizes specified/carved
             
             Qnum        Head    Tail    #Qelem  LenThresh
             ----        ----    ----    ------  ---------
           
        5 non-IPC free queues:
            20254/20254 (buffers specified/carved), 49.87%, 80 byte data size
              1          17297   17296    20254    65535
            12152/12152 (buffers specified/carved), 29.92%, 608 byte data size
              2          20548   20547    12152    65535
            6076/6076 (buffers specified/carved), 14.96%, 1568 byte data size
              3          32507   38582    6076     65535
            1215/1215 (buffers specified/carved), 2.99%, 4544 byte data size
              4          38583   39797    1215     65535
            809/809 (buffers specified/carved), 1.99%, 9248 byte data size
              5          39798   40606    809      65535
        IPC Queue:
            100/100 (buffers specified/carved), 0.24%, 4112 byte data size 
              30         72      71       100      65535
        Raw Queue:
              31         0       17302    0        65535
        
      [output omitted]

Шаги для решения проблем, известных ошибок и улучшений

Шаг 1: Настройте кэш IPC

Примечание: Посмотрите таблицу 2 для списка версий IOS, которым перечислили усовершенствования в этом разделе.

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

Oct 7 03:36:49: %RSP-3-RESTART: interface Serial0/0/4:1, not transmitting 
Oct 7 03:39:51: %IPC_RSP_CBUS-3-NOBUF: No more IPC memd buffers to transmit 
IPC message 
Oct 7 03:40:09: %RSP-3-RESTART: interface Serial0/0/2:1, not transmitting 
Oct 7 03:40:19: %LINEPROTO-5-UPDOWN: Line protocol on Interface Serial0/1/0, 
changed state to down 
Oct 7 03:40:19: %LINEPROTO-5-UPDOWN: Line protocol on Interface Serial0/1/1, 
changed state to down 
Oct 7 03:40:19: %LINEPROTO-5-UPDOWN: Line protocol on Interface Serial0/1/2, 
changed state to down 
Oct 7 03:40:19: %LINEPROTO-5-UPDOWN: Line protocol on InterfaceSerial0/1/3, 
changed state to down 
Oct 7 03:40:21: %IPC_RSP_CBUS-3-NOBUF: No more IPC memd buffers to transmit 
IPC message 
Oct 7 03:40:26: %FIB-3-FIBDISABLE: Fatal error, slot 0: IPC failure 
Oct 7 03:40:26: %FIB-3-FIBDISABLE: Fatal error, slot 1: IPC failure 
Oct 7 03:40:26: %FIB-3-FIBDISABLE: Fatal error, slot 4: IPC failure 
Oct 7 03:40:26: %FIB-3-FIBDISABLE: Fatal error, slot 5: IPC failure 
Oct 7 03:40:29: %LINEPROTO-5-UPDOWN: Line protocol on Interface

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

Для решения их, типы сбоев, кэш IPC на RP и Память IPC на линейных картах, возможно, должны быть увеличены. Прежде чем вы сделаете так, используйте команду show ipc status, чтобы заняться расследованиями, буферизуют ли RP или LC или оба исчерпанные IPC. Возьмите эти выходные данные и исследуйте их и от RP и от LC.

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

Вот являются выходные данные команды show ipc status от маршрутизатора с по умолчанию 1000 заголовков сообщения.

Примечание: Cisco IOS Software Release 12.2T и 12.2S представляет изменения выходным данным этой команды.

router#show ipc status 
      IPC System Status:
      This processor is the IPC master server.
      1000 IPC message headers in cache 
      4049362 messages in, 92615 out, 4048932 delivered to local port, 
      352 acknowledgments received, 386 sent, 
      0 NACKS received, 0 sent, 
      15326 messages dropped on input, 154 messages dropped on output 
      0 no local port, 110 destination unknown, 0 no transport 
      0 missing callback or queue, 34 duplicate ACKs, 0 retries, 
      0 message timeouts. 
      0 ipc_output failures, 0 mtu failures, 
      7707 msg alloc failed, 0 emer MSG alloc failed, 0 no origs for RPC replies 
      0 pak alloc failed, 0 memd alloc failed 
      0 no hwq, 0 failed opens, 0 hardware errors

Требуемое количество памяти, которая будет выделена, зависит от типа карты (RP или LC, RSP или VIP) на платформе и действии приложений, которые требуют IPC (распределенный CEF, например).

От программного обеспечения Cisco IOS версии 12.0(23)S 12.2 (18) S и новый IOS обучаются 12.3 и 12.3T, кэшем сообщения IPC управляют динамично, а не статическое распределение кэша IPC. Предложенное решение к проблеме истощения кэша сообщений IPC вследствие к пульсирующему тяжелому трафику IPC должно было вырастить и уменьшить кэш сообщений динамично. На инициализацию система выделяет заданное число по умолчанию платформы сообщений. Когда количество бесплатных сообщений далеко от "минимальных" буферов, оно уведомляет важный фоновый процесс для роста кэша. Это позволяет IPC продолжить выращивать кэш для удовлетворения потребностей его клиентов. Если недавно выделенные буфера никогда не используются IPC для кадра заданного времени, этот процесс начинает уменьшаться. Кэш останавливается для уменьшения, когда он достигает размера по умолчанию. Это повышение производительности было представлено в CSCdv57496. С реализацией CSCdv57496 больше не работает команда <size> кэша ipc, поскольку это сделано автоматически. Это допустимо по всем платформам IPC.

ВАЖНОЕ ПРИМЕЧАНИЕ: От Cisco IOS Software Release 12.3 (5.5) T была удалена возможность вручную настроить кэш IPC. См. CSCec17505 (только зарегистрированные клиенты) для получения дополнительной информации.

Когда вы проверяете выходные данные команды show ipc queue, вот то, что необходимо видеть:

c7500#show ipc queue

Message waiting for acknowledgement in  Tx queue :       0
Maximum acknowledgement msg usage in Tx queue :          0

Message waiting for additional Fragments      :          0
Maximum message fragment usage                :          0


There are 0 IPC messages waiting for a response.
There are 0 IPC messages currently on the IPC inboundQ.

Messages currently in use                     :          0
Message cache size                            :       1000
Maximum message cache usage                   :       1344
0 times message cache crossed 5000 [max]

Emergency messages currently in use           :          0

Inbound message queue depth 0
Zone inbound message queue depth 0

Если маршрутизатор выполняет версию программного обеспечения Cisco IOS, которая не включает динамично управляемые буфера кэша IPC, т.е. образы до 12.0 (23) S, 12.2 (18), S, 12.3 и 12.3T, кэш IPC на RP и Память IPC на линейных картах может быть вручную увеличен. Прежде чем вы сделаете так, используйте команду show ipc status, чтобы заняться расследованиями, исчерпывает ли RP, LC, или оба, буферы IPC. Возьмите эти выходные данные и исследуйте их и от RP и от LC.

Если необходимо, можно использовать эти команды для настройки воспоминаний:

  • Кэш ipc 5000 команд настройки для увеличения кэша заголовка IPC на RP.

  • <Size> кэша ipc [слот {slot_num | все}] дают команду для увеличения кэша на LC Cisco 12000.

Примечание: При выделении большей памяти для сообщений IPC меньше памяти доступно для других процессов. Размер одиночного сообщения IPC фактически меняется в зависимости от других ответвлений программного обеспечения Cisco IOS. Используйте команду show memory summary, чтобы проверить, существует ли достаточный объем свободной памяти в Пуле процессора.

Шаг 2 ---- -------------------------------- --------- : Настройте пропускную способность IPC

Примечание: Посмотрите таблицу 2 для списка версий IOS, которым перечислили усовершенствования в этом разделе.

В некоторых ситуациях можно хотеть также настроить пропускную способность IPC между RP и LC. Это в особенности имеет место, когда RP должен загрузить большую таблицу CEF к LC. Например, это могло произойти, в то время как загрузки маршрутизатора, когда это получает большое количество сведений о маршрутизации от Однорангового соединения по протоколу BGP. Можно настроить дополнительную буферизацию IPC на LC с командой ip cef linecard ipc memory xxxxx для увеличения пропускной способности IPC. Эта команда была представлена CSCds89515 (только зарегистрированные клиенты). Значение для этой памяти было установлено в приемлемый по умолчанию с CSCdu54205 (только зарегистрированные клиенты) и CSCuk27162 (только зарегистрированные клиенты).

Вот команды, которые указывают на результат, когда вы изменяете этот параметр:

Router#configure terminal
Enter configuration commands, one per line.  End with CNTL/Z.
Router(config)#ip cef line ipc mem 20000
Router(config)#^Z
Router#show cef state
...
 RP state:
  Expanded LC ipc memory:             20000 Kbytes
...
or, alternatively:
Router#show cef line 
Slot      MsgSent    XDRSent  Window   LowQ   MedQ  HighQ Flags
0           12515      21687     505      0      0      0 up
1           12515      21675     505      0      0      0 up 
3           12515      21701     505      0      0      0 up 
5           12515      21700     505      0      0      0 up 
2           12518      22008     505      0      0      0 up
Router#configure terminal
Enter configuration commands, one per line.  End with CNTL/Z.
Router(config)#ip cef line ipc mem 20000
Router(config)#^Z
Router#show cef line
Slot      MsgSent    XDRSent  Window   LowQ   MedQ  HighQ Flags 
0           12538      22097    4966      0      0      0 up 
1           12538      22081    4966      0      0      0 up 
3           12538      22115    4966      0      0      0 up 
5           12538      22114    4966      0      0      0 up 
2           12541      22418    4966      0      0      0 up

Список усовершенствований IPC

Таблица 2 предоставляет обзор улучшений, внедренный в программном обеспечении Cisco IOS к вручную, и динамично настройте Память IPC по другим платформам.

Таблица 2 – усовершенствования в программном обеспечении Cisco IOS

Идентификатор ошибки Cisco Исправленный в Усовершенствование
CSCdk75315 (только зарегистрированные клиенты) 12.0 (5) S 12.0 (5) 12.0 (5) T 11.3 (10) AA Представляет размер Кэша ipc, который может быть настроен с помощью команды <size> кэша ipc.
CSCds89515 (только зарегистрированные клиенты) 12.2 (4) B 12.1 (9) E 12.1 (8a) E 12.2 (3) T 12.2 (2) S 12.1 (9) 12.0 (14) ST1 12.2 (2) 12.2 (1) T 12.0 (15) S3 12.0 (16) ST 12.0 (16) S На Интернет-маршрутизаторе Cisco 12000 серии Distributed Cisco Express Forwarding (dCEF) может быть отключен из-за нехватки памяти во время большого обновления маршрутов (например, при начальной загрузке). Как обходной путь, уменьшите максимальный путь в Протоколе BGP для сокращения CEF количества данных, распространяется к линейным картам. Также уменьшите размер окна TCP для сокращения скорости входящих Обновлений BGP. Посмотрите Достигают Оптимальной маршрутизации и Уменьшают Использование памяти BGP. Также можно также ввести ip cef linecard ipc memory 0-128000 команд настройки интерфейса. Объем процессора линейной платы или основной памяти ограничен 50 процентами от общего объема памяти. Эта команда позволяет вам выделять большую сумму памяти процессора линейной карты организации очереди для Маршрутизации в режиме CEF к обновленным сообщениям. Это позволяет RP освобождать обновления CEF более быстро к свободному память, и это предотвращает возникновение нехватки памяти на RP. На основе количества Многоцелевых интерфейсных процессоров (VIP) dCEF требует большого количества временной памяти на RSP для буферизации сообщений IPC, связанных с VIP, особенно в случаях, когда большие Одноранговые соединения по протоколу BGP подходят или когда База данных переадресации (FIB) распространяется к VIP после Cbus Complex или сбоя VIP (или когда команда clear cef line выполнена).
CSCdu21591 (только зарегистрированные клиенты) 12.0 (17) ST4 12.0 (18) ST 12.0 (18) S Увеличивает размер кэша заголовков сообщения IPC по умолчанию от 1000 до 5000 на маршрутизаторах серии "12000". Ранее, синтаксический анализатор принял любое количество между трудно кодированными значениями 1000 и 15000. Сегодня, синтаксический анализатор только принимает количество между определенным платформой минимальным и максимальным размером кэша. Кроме того, первоначально, не было возможно очистить команду ipc cache от конфигурации даже при выполнении команды no ipc cache в конфигурации для удаления пользовательского значения кэша IPC. Вместо этого это вставило кэш ipc x команда, где x является в настоящее время определяемым размером кэша по умолчанию. Сегодня, команда no ipc cache имеет нормальное поведение. Это полностью удаляет команду ipc cache из конфигурации.
CSCdu12540 12.0 (19) ST 12.0 (19) S Только применимый к Серии Cisco 12000: Первоначально команда ipc cache <размер> использовалась только для кэша RP IPC. теперь, команда ipc cache может использоваться на LC следующим образом:
ipc cache <size> [slot {slot_num | all}]
Параметры slot_num и all не являются взаимоисключающими., Например, эти команды допустимы: кэш ipc 4000 слотов все кэш ipc 3000 слотов 5 Эти команды увеличивает размер кэша в слоте 5 - 3000 и к 4000 для всех других слотов. Если вы хотите использовать всю опцию, чтобы перезаписать предыдущих операторов конфигурации размера кэша для LC, гарантировать, что вы также используете "NOPREFIX", чтобы удалить предыдущие команды в Энергонезависимой памяти (NVRAM) и внедрить корректные результаты. В режиме с отсутствием префиксов используйте слот no ipc cache {slot_num | все} команда для сброса размера кэша к его значению по умолчанию.
CSCdu54205 12.0 (19) ST 12.0 (19) S Только применимый к Серии Cisco 12000: Это усовершенствование изменило значение по умолчанию для распределения памяти обновления CEF линейной карты к 512 сообщениям. Больше не необходимо использовать команду ip cef linecard ipc memory xxxxx , пока не наблюдается проблема.
CSCuk27162 (только зарегистрированные клиенты) 12.2 (9) T 12.2 (9) S 12.2 (9) 12.0 (21) ST 12.0 (22) S Это улучшение программного обеспечения изменяет буферы ipc карты числа линий на платформу по умолчанию, выделенные в загрузке. Это также увеличивает RSP память карты IPC линии по умолчанию на платформу с 25 до 128 сообщений IPC. Обходной путь: Используйте команду глобальной кофигурации ip cef linecard ipc memory xxxxx для увеличения числа буферов на линейных картах.
CSCdv57496 12.0 (23) S Управляйте кэшем сообщения IPC динамично вместо статического распределения кэша IPC. С реализацией CSCdv57496 команда <size> кэша ipc больше не действительна, поскольку это сделано автоматически. Это допустимо по всем платформам IPC.
CSCdz77490 12.2 (19.7) S 12.0 (26.2) S 12.3 (1) B 12.3 (1) С реализацией CSCdz77490 интерфейс командной строки <size> кэша ipc удален из версий программного обеспечения Cisco IOS 12.3 и 12.3T. В Cisco IOS 12.3 серий скрыта эта команда, но, если настроено от терминала, это распечатывает сообщение пользователю. В следующем основном релизе 12.4, будет удалена эта команда.
CSCec17505 (только зарегистрированные клиенты) TBD Признаки: размер кэша ipc не изменяется при использовании команды CLI <size> кэша ipc для изменения размера кэша. Условия: Это условие происходит в результате архитектурных изменений с IPC. Обходной путь: функциональные возможности кэша IPC теперь сделаны автоматически и не могут быть изменены пользователем на CLI. Это усовершенствование удаляет команду CLI <size> кэша ipc в версиях программного обеспечения Cisco IOS, которые больше не позволяют пользователю вручную изменять кэш IPC. Не должно быть никаких проблем прежней совместимости, поскольку CLI будет все еще существовать в версиях, где пользователь может вручную изменить кэш IPC с командой CLI <size> кэша ipc.

Cisco 7600 Series

Когда рабочий Catalyst OS, Catalyst 6000 / Серия Cisco 7600 использует Supervisor Engine с дополнительной платой маршрутизации, известной как функциональная карта многоуровневого коммутатора (MSFC). ЦПУ на Супервизоре и ЦПУ на MSFC связываются через сообщения IPC по шине управления при нестандартном подключении Ethernet. Когда рабочее системное ПО Cisco IOS, RP и процессор коммутации (SP) также связываются через сообщения IPC. Первоначально, 3000 буферов были созданы для сообщений IPC. В редких случаях система исчерпывает буферы IPC и сообщает об этих сообщениях об ошибках:

01:52:13: %ICC-2-NOMEM: No memory available for unregistering card Card2 
     02:42:08: %IPC-3-NOBUFF: The main IPC message header cache has emptied    
     -Traceback= 4026779C 40268350 4025F930 40223D34 40221C40 40221EA4 401EAB10

Примечание: ICC обозначает Связи между платами.

От Cisco IOS Software Release 12.1 (08a) E01 и 12.1 (10) E, Серия Cisco 7600 теперь создает 6000 буферов сообщения IPC по умолчанию. Кроме того, изменения сделали в версиях 12.1 (08a) E и 12.1 (09) справка EC для предотвращения истощения заголовка IPC, которое следует из большого числа Виртуальной локальной сети (VLAN) связанные обновления. Каждое сообщение ICC объявляет группу изменений состояния соединения VLAN, а не одну VLAN за один раз.

Более новые линейные карты для Серии Cisco 7600 поддерживают распределенную дочернюю плату функции (DFC) для скоростей высокоскоростной обработки пакетов. Поддерживающие DFC линейные карты поддерживают локальный Cisco Быстрая коммутация и таблицы соседей и связываются с Супервизором с помощью сообщений IPC.

Некоторые сообщения IPC больше, чем максимальный размер передаваемого блока данных (MTU) коммутируемой шины Catalyst 6000 (например, сообщения IPC использовали сообщать о статистике интерфейса SONET в сообщениях, больше, чем 1500 байтов). Такие сообщения должны быть фрагментированы. Под редкими случаями истощен кэш заголовка фрагмента IPC, и система сообщает об этом сообщении об ошибках:

%IPC-DFC6-3-NOBUFF: The fragment IPC message header cache has emptied

Изменения, внесенные в Cisco IOS Software Release 12.1 (08a) E и 12.1 (09.05) EC, увеличивают число заголовков буфера фрагмента IPC от 32 до 128.

Если двойные подтверждения получены IPC - клиентом, это сообщение могло бы появиться в выходных данных отладки.

IPC: не Может найти исходное сообщение для HDR ACK:

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

Соберите сведения об устранении проблем для центра технической поддержки Cisco

При тихой необходимости помощи после того, как вы придерживаетесь действий по устранению проблем выше и хотите создать запрос на обслуживание с Центром технической поддержки Cisco, несомненно будут включать следующую информацию для устранения проблем IPC-3-NOBUFF-related сообщения об ошибках:
  • Выполнен ли процесс устранения неполадок перед созданием обращения.
  • выходные данные команды show technical-support (по возможности во включенном режиме).
  • результаты выполнения команды show log или снимки консоли (если имеются).
Присоедините собранные данные к описанию в простом текстовом файле (.txt). Можно подключить информацию к случаю. Для этого загрузите его с помощью Программного средства Case Query (только зарегистрированные клиенты). Если не получен доступ к инструменту Case Query, относящиеся к примеру данные можно отправить на адрес attach@cisco.com с номером примера в строке "Тема" в отправляемом сообщении.

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

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

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


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