ルータ : Cisco 10000???? ??????? ???

トラブルシューティング:Cisco 12000、10000、7600、および 7500 シリーズ ルータでの IPC-3-NOBUFF メッセージ

2002 年 9 月 6 日 - ライター翻訳版
その他のバージョン: PDFpdf | 機械翻訳版 (2013 年 8 月 21 日) | 英語版 (2008 年 6 月 24 日) | フィードバック

目次


概要

分散システムでは、Route Processor(RP; ルート プロセッサ)から Line Card(LC; ラインカード)に送信される IPC メッセージ、およびアクティブ RP とスタンバイ RP との間でやり取りされる IPC メッセージを交換することによって、LC と中央の RP が相互に通信しますが、そのための手段として機能するのが Cisco IOS(R) ソフトウェアの Inter-process Communications(IPC; プロセス間通信)サービスです。これらの IPC メッセージには、設定コマンドやそれらのコマンドへの応答のほか、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: No more IPC memd buffers to transmit IPC message

この文書は、これらのログ メッセージに示される状態をルータが報告する原因と、この問題のトラブルシューティング方法について説明しています。この文書では Inter-process Communications(IPC; プロセス間通信)についての知識が必要になるため、最初に IPC の用語について復習します。

ハードウェアとソフトウェアのバージョン

この文書の情報は、次のソフトウェアとハードウェアのバージョンに基づいています。

  • Cisco 12000、10000、7600、および 7500 シリーズ ルータをサポートしているすべての Cisco IOS ソフトウェア リリース
  • Cisco 12000、10000、7600、および 7500 シリーズ ルータ

IPC 用語の基礎

IPC の 2 つのエンティティである送信元ポートと宛先ポートは、IPC メッセージを交換します。ポートとは 32 ビットの数値とポート名(省略可)により識別される、通信のエンドポイントです。show ipc nodes コマンドには、いわゆる IPC realm の中に存在する 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 nodes コマンドにスレーブ 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 による通信は単方向通信であるためです。RP は、LC と通信しようとするときに、最初に LC 上のポートをオープンします(LC ではあらかじめポートを作成してそれを IPC マスターである RP に登録しておく必要があります)。オープンが成功すると、通常の IPC メッセージ トラフィックを開始できます。

Cisco 12000 および 7500 シリーズでは、ルート プロセッサ(Gigabit Route Processor(GRP; ギガビット ルート プロセッサ)か Route Switch Processor(RSP; ルート スイッチ プロセッサ)のどちらか)とインテリジェント ラインカードが、IPC エンドポイントとして機能します。「IPC マスター」はプロセッサのグループを制御します。ルータの初期化中、IPC マスターはシステム内のラインカードに存在する IPC エンドポイントを検出します。これには、すべてのスロットをスキャンしてコントローラのタイプを識別し、IPC の機能を備えているかどうかを判断します。

これらのポートを表示するには show ipc ports コマンドを使用します。IPC スレーブでは、このコマンドにより、その特定の IPC シート上ですでに作成されたポートが一覧表示されます。IPC マスターでこのコマンドを発行すると、マスター上ですでに作成されたポートのほか、IPC スレーブ(LC)によりすでに登録されたポートも表示されます。また、show ipc ports open コマンドでは、「この」シートからすでにオープンされたポートが一覧表示されます。出力例を次に示します。

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] 

スレーブ 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 メッセージを通じて頻繁にやり取りします。メッセージには、ヘッダー、送信元と宛先のアドレス情報、およびメッセージ データが含まれています。

分散ルータでは次の 4 種類の IPC メッセージが使用されています。

  • RP から送られるコマンド。これにより、バージョン、メモリ量、インターフェイス統計情報、インターフェイス ステータスの変更、設定データなどの情報をラインカードに問い合せます。
  • RP からのコマンドへの応答。応答はラインカードから RP に送られます。この IPC メッセージに含まれる情報の例としては、定期的な統計情報の更新や、ラインカードがあといくつの IPC メッセージをキューイングできるかを示すウィンドウ メッセージがあります。
  • 非同期に生成されるイベントやメッセージ。例として、入力エラーやラント、ジャイアントといったレポート エラーのほか、バイト カウントやパケット カウントといったレポート統計情報およびアカウント情報があります。
  • アクティブ RP とスタンバイ RP との間で正常な動作のチェックポイントを行うためのメッセージ。

また、Cisco IOS ソフトウェア プロセスの中には、ラインカードとルート プロセッサとの間で情報交換を必要とするものがあります。これらのプロセスは IPC アプリケーションと呼ばれます。例として、Cisco Express Forwarding(CEF)や、Cisco 12000 シリーズのルート プロセッサ同士でイメージを交換するためのリモート ファイル システムがあります。

IPC のプロトコル スタックの各層を次の表に示します。

IPC アプリケーション
IPC メカニズム本体
スイッチ ファブリック(12000 シリーズ)または CBUS(7500 シリーズ)データ層

これらの汎用 IPC 機能に加えて、Cisco 12000 シリーズには、次の 2 つのカテゴリを持つ独自の汎用 IPC メカニズムがあります。

  • コマンド。通常は 12000 から LC に送られる設定コマンドです。
  • LC から 12000 に送られるイベント。メッセージの例としては、定期的な統計情報の更新、LC で検出されたエラー、非同期イベントがあります。

IPC メッセージの送信方法

7500 シリーズと 12000 シリーズではどちらも、IPC メッセージを格納するために特殊なバッファ セットが割り当てられます。これらのバッファには、送信のためにキューイングされ、宛先の IPC ポートからの確認応答を待っている IPC メッセージが格納されます。7500 シリーズは、システム パケット メモリ(MEMD)内で特殊なバッファ セットを使用します。MEMD の詳細については、「「%RSP-3-RESTART: cbus complex」の原因」を参照してください。

7500 シリーズでは、IPC キューはプロセッサ メモリ内にあります。プロセッサ メモリ内のこのプールは ipc cache size コマンドで調整できます。MEMD にも若干の限られたバッファが確保されていますが、これらは調整できません。MEMD に多少の空き領域があると、キューがプロセッサ メモリから MEMD に「移され」、それから LC に送られます。

ほとんどの場合、Cisco 12000 シリーズの Gigabit Route Processor(GRP; ギガビット ルート プロセッサ)は、スイッチ ファブリックを経由して IPC メッセージを送信します。バッファ分割アルゴリズムにより、tofab(受信側)および frfab(送信側)メモリの中に 2 組のプールが作成されます。次の show controller tofab queues コマンドの出力例からわかるように、これら 2 組のメモリは「Non-IPC Free Queues」と「IPC Queues」です。次の出力の解釈方法については、「Cisco 12000 シリーズ インターネット ルータ:FAQ」を参照してください。

Cisco 12000 シリーズでは、初期化時に GRP によって一定数のメッセージ ヘッダーが割り当てられます。Cisco IOS ソフトウェア リリース 12.0(18)S/ST では、初期化時に作成されるメッセージ ヘッダーのデフォルト数が、GRP と LC のどちらも 1000 から 5000 に増えています。設定可能な最大値は 15000 です。LC は IPC メッセージ ヘッダーを DRAM にも保持しています。

さらに、LC は IPC メッセージ用として、tofab および fromfab メモリ内に 100 個のバッファを確保しています。送信された各 IPC メッセージについて、LC は必ず IPC メッセージ ヘッダーをキャッシュから要求します。そして、frfab の Buffer Memory ASIC(BMA)に対して IPC メッセージ バッファの使用を要求し、ファブリック経由で GRP にメッセージを送信します。GRP には IPC 用のハードウェア バッファはありません。

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]

7500 シリーズに限り、RP と、IPC サービスを実行しているすべてのラインカードは、IPC ハードウェア キューを備えています。2 つのカードは IPC メッセージをハードウェア キューに置くことによって通信します。RP のキューにメッセージが置かれると、割り込みが生成されます。この割り込みをトリガとして、最終的に IPC メッセージのデキューイングと処理が行われます。ラインカードでは、ドライバが自身の IPC キューをポーリングし、キューイングされているメッセージをすべてフェッチします。

IPC キューのステータスを表示するには、show ipc queue コマンドを使用します。

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 用に管理されているソフトウェア キューです。7500 シリーズの QA-ASIC ハードウェア キューと混同しないようにしてください。

元来は、IPC を使用するすべてのシステムでバッファとして使用するために、デフォルトで 1000 個のキャッシュ メッセージ ヘッダーが割り当てられていて、これらは着信および発信の両方のメッセージで共有されていました。IPC キャッシュ メッセージ ヘッダーの数は調整可能なパラメータです。最大値は、RSP で 5000、Cisco 12000 シリーズで 15000 です。

次の show ipc status コマンドからの出力は、デフォルトの 1000 個のメッセージ ヘッダーを持つルータで取得したものです(注:Cisco IOS ソフトウェア リリース 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

トラブルシューティング ステップと既知の不具合および改良

まれな事例として(たとえば大量の情報を交換する必要がある場合など)、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 を無効にします。これは、IPC を使用しているラインカードの CEF テーブルを更新できなくなるためです。そのため、すべてのラインカードに対して FIBDISABLE メッセージが報告されます。

この問題を解決するには、ipc cache 5000 設定コマンドを使用して IPC ヘッダー キャッシュ サイズを調整し、ip cef linecard ipc memory 10000 設定コマンドを使用して少なくとも 10 MB のラインカード メモリを IP メッセージ用に割り当てます。IPC メッセージ用にメモリを多く割り当てると、他のプロセス用のメモリがそれだけ少なくなることに注意してください。IPC キャッシュの枯渇とパーサーの改良に関する既知の問題については、次のバグ ID もチェックしてください。

バグ ID 改良点
CSCdm60149 ipc cache <サイズ> コマンドを使用して IPC キャッシュ サイズを設定することが可能になります。通常、シスコではキャッシュ ヘッダー サイズを 5000 に設定し、ip cef linecard ipc memory 10000 コマンドを使用して 10 MB のラインカード メモリを IP メッセージ用に割り当てることをお勧めします。

注:CSCdu35042(「IP クラッシュによる IPC-3-NOBUFF および IPC-5-NULL の出力」)も参照してください。このバグ ID は IPC ヘッダー キャッシュ サイズの調整によって解決されました。

CSCds89515  Cisco 12000 シリーズ インターネット ルータでは、大規模なルーティング更新の実行中(ブートアップ中など)にメモリ不足となり、それが原因で distributed Cisco Express Forwarding(dCEF)が無効になることがあります。

回避策:Border Gateway Protocol(BGP; ボーダーゲートウェイ プロトコル)の最大パスを減らして CEF がラインカードに伝搬する情報の量を減らすか、または TCP のウィンドウ サイズを減らして着信 BGP 更新の速度を下げます。詳細については、「最適なルーティングの実現と BGP メモリ消費の低減」を参照してください。

別の回避策:ip cef linecard ipc memory 0-128000 インターフェイス設定コマンドを入力します。ラインカード プロセッサ メモリまたはメイン メモリの量は、全メモリの 50 % に制限されています。このコマンドを使用すると、CEF ルーティングのメッセージ更新用のキューイングに、より多くのラインカード プロセッサ メモリを割り当てることができます。また、CEF 更新の処理速度が向上してルート プロセッサのメモリが迅速に解放されるため、ルート プロセッサがメモリ不足に陥る事態を回避できます。Versatile Interface Processor(VIP)の数によっては、dCEF を実行する際に VIP を宛先とする IPC メッセージをバッファリングするために大量の一時メモリが RSP で必要となります。特に、多数の BGP ピアがアップ状態となるときや、CBUS complex または VIP クラッシュの後に(あるいは clear cef line コマンドを発行したときに)Forwarding Information Base(FIB; 転送情報ベース)が VIP に伝搬される場合などはそうです。

CSCdk75315 1 回の IPC サーバ プロセスで処理されるメッセージの数を増やします。この変更によって、GRP のキューがより効率的に排出されるようになる一方で、GRP から LC に送られる情報量が増加する可能性もありますのでご注意ください。したがって、LC にさらに多くの IPC バッファが必要となる可能性があります。
CSCdv87489 ルータの稼働中にラインカードを挿入または取りはずしたとき(Online Insertion and Removal(OIR; ホットスワップ)とも呼ばれます)に発生する IPC の枯渇の問題を解決します。OIR は MEMD の再分割を促します。さらにそれが原因となって、再分割が完了するまで内部 CBUS がストールします。場合によっては、ラインカードへの信頼性のある接続が完全に復旧しないことがあります。この問題は、再分割が発生したときに、移動中のメッセージが正しく処理されないことが原因で起こります。
CSCdv43373 (CSCdv22860 も参照してください。)Cisco 7500 ルータのギガビット イーサネット インターフェイスで、出力がスタックした後に IPC メモリ バッファに関する問題が起き、次のメッセージが表示されることがあります。

%RSP-3-RESTART: interface GigabitEthernet0/0/0, not transmitting Output Stuck on GigabitEthernet0/0/0

回避策:オート ネゴシエーションの使用を避けてください。

CSCdu12540 インターフェイス数およびプレフィクス数が増えるにつれて IPC メッセージの使用が劇的に増加し、IPC メッセージ ヘッダー キャッシュがすぐに枯渇して、それが原因で IPC メッセージ関連のエラーが発生することがあります。このバグ ID に実装された変更により、RP と LC 間で交換される IPC メッセージの予測量に基づいて、メッセージ ヘッダー キャッシュ サイズを実行時に変更できます。

元来、ipc cache <サイズ> コマンドは RP の IPC キャッシュに対してのみ動作していました。現在では、次のように LC でも ipc cache コマンドを使用できます。

ipc cache <size> [slot {slot_num | all}] 

オプション「slot_num」と「all」は同時に使用できます。たとえば、次のコマンドは有効です。

ipc cache 4000 slot all 
ipc cache 3000 slot 5 

これらのコマンドにより、スロット 5 のキャッシュ サイズが 3000 に増え、それ以外のスロットのキャッシュ サイズが 4000 に増えます。「all」オプションを使用して LC に対する以前のキャッシュ サイズ設定文を上書きしたい場合は、必ず「NOPREFIX」を使用して Nonvolatile RAM(NVRAM; 不揮発性 RAM)にある以前のコマンドを削除してから、正しい結果を実装してください。

noprefix モードでこのコマンドを使用すると、キャッシュ サイズがデフォルト値にリセットされます。no ipc cache slot {slot_num | all} コマンドを使用します。

CSCdu21591 12000 シリーズで、デフォルトの IPC メッセージ ヘッダー キャッシュ サイズが 1000 から 5000 に増えます。以前は、パーサーは 1000 〜 15000 の範囲にあるハードコーディングされた値を承認していました。しかし現在では、パーサーはプラットフォームで定義された最小キャッシュ サイズから最大キャッシュ サイズまでの範囲にある値しか承認しなくなりました。

また元来、設定内で no ipc cache を実行してカスタムの IPC キャッシュ値を削除しても、ipc cache コマンドが設定からクリアーされることはありませんでした。代わりに、ipc cache x コマンドが挿入されていました。ここで x はその時点で定義されているデフォルト キャッシュ サイズです。現在では、no ipc cache コマンドは設定からコマンドを完全に削除するという期待どおりの動作をします。

これらの機能は Cisco IOS ソフトウェア リリース 12.0(17)ST4、12.0(18)ST、および 12.0(18)S に実装されています。

CSCdu07744 GRP と LC との通信が失敗し、どのフラグも設定されないとき、FIB は LC で無効になり、エラー メッセージ「IPC failure」が出力されます。新しいバージョンのラインカードのイベント ロガーでは、ラインカードへの IPC 接続に失敗したことを示すために CEF で使用されるメッセージ レポート機能が拡張されています。これらの変更は Cisco IOS ソフトウェア リリース 12.2(7)S、12.0(21)ST1、12.0(21)S1、12.2(7)T、および 12.2(7) に組み込まれています。

Cisco 7600 シリーズ

Catalyst OS を実行している Catalyst 6000 / Cisco 7600 シリーズは、Multilayer Switch Feature Card(MSFC)と呼ばれるオプションのルータ カードを備えたスーパーバイザ エンジンを使用します。スーパーバイザの CPU と MSFC の CPU は、イーサネットのアウトバンド管理バスを通じて IPC メッセージで通信します。Cisco IOS ソフトウェア(ネイティブ IOS)を実行しているときは、Route Processor(RP; ルート プロセッサ)と Switch Processor(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 とは InterCard Communications を意味します。

Cisco IOS ソフトウェア リリース 12.1(08a)E01 および 12.1(10)E 以降では、Cisco 7600 シリーズで 6000 個の IPC メッセージ バッファがデフォルトで作成されるようになりました。また、12.1(08a)E および 12.1(09)EC に加えられた変更は、Virtual LAN(VLAN; 仮想 LAN)に関連する大量の更新が原因で IPC ヘッダーが枯渇する問題を避けるために役立ちます。ICC メッセージはそれぞれ、一度に 1 つの VLAN ではなく、VLAN のリンクステートに関する変更をグループでアドバタイズします。

Cisco 7600 シリーズ用の比較的新しいラインカードは、高速のパケット処理レートを実現するために Distributed Forwarding daughterCard(DFC)をサポートしています。DFC 対応のラインカードはローカルの CEF テーブルと隣接関係テーブルを保持し、IPC メッセージを使用してスーパーバイザと通信します。

IPC メッセージの中には、Catalyst 6000 スイッチング バスの Maximum Transmission Unit(MTU; 最大伝送ユニット)よりも大きいものがあります。たとえば、SONET インターフェイス統計情報の報告に使用される IPC メッセージは 1500 バイトよりも大きくなります。このようなメッセージは断片化が必要になります。まれに、IPC フラグメント ヘッダー キャッシュが枯渇し、システムが次のエラー メッセージを報告することがあります。

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

12.1(08a)E、12.1(09.05)EC に加えられた変更により、IPC フラグメント バッファ ヘッダーの数が 32 から 128 に増えています。


ツール情報

その他のリソースについては、シスコの「ルータおよび IOS アーキテクチャ テクノロジー用の TAC ツール」を参照してください。


関連するシスコ サポート コミュニティ ディスカッション

シスコ サポート コミュニティは、どなたでも投稿や回答ができる情報交換スペースです。


関連情報

関連トピック

その他の文書


Document ID: 21165