スイッチ : Cisco Catalyst 2900 XL シリーズ スイッチ

Catalyst 2900XL/3500XL スイッチでの CPU の高使用率

2005 年 5 月 2 日 - ライター翻訳版
その他のバージョン: PDFpdf | 機械翻訳版 (2013 年 8 月 21 日) | 英語版 (2005 年 8 月 30 日) | フィードバック

目次

概要
はじめに
      表記法
      前提条件
      使用するコンポーネント
背景説明
ベースライン CPU 使用率
CPU 使用率が高い場合のトラブルシューティング
2900XL および 3500XL スイッチの使用状況の確認
show processes cpu コマンドの出力例
既知の問題: CPU 高使用率の原因が Autoconf プロセスにある場合
関連するシスコ サポート コミュニティ ディスカッション
関連情報

概要

show processes cpu コマンドの発行後、Catalyst 固定構成スイッチ 2900XL および 3500XL ではアイドル時に高い値の CPU 使用率が報告されます。 他のシスコ デバイスではアイドル時の CPU 使用率が高いと問題になることがありますが、2900XL および 3500XL では、これは正常な状態です。

この文書では、CPU 使用率が高い値になっている理由を説明し、CPU 使用率が著しく高い状態の監視とトラブルシューティングを行うためのヒントをいくつか示します。

はじめに

表記法

文書表記の詳細は、『シスコ テクニカル ティップスの表記法』を参照してください。

前提条件

この文書に適用される特定の前提条件はありません。

使用するコンポーネント

この文書は、特定のソフトウェアまたはハードウェアのバージョンに限定されるものではありません。

背景説明

2900XL/3500XL スイッチには 2 つの独立したハードウェア サブシステム、つまりスイッチング サブシステムと内部 CPU エンジンがあります。 これを個別に説明します。

  • スイッチング サブシステムは、データ トラフィックの受信と転送の制御を行います。

  • 内部 CPU エンジンには高レベル プロトコルが実装されており、スイッチ動作の制御と監視を行います。

その結果、次のものは 2900XL/3500XL の CPU 使用率に反映されていません

  • スイッチングされるパケットの数。

  • スイッチの総負荷。

CPU 使用率に反映されているものは、次のようなスイッチの CPU 処理です。

  • スパニングツリー処理

  • ポート ステータス

  • LED インジケータ

これに対して、Cisco 3600 などのシスコ ルータでは、ソフトウェアを使用してパケットを処理とルーティングが行われます。したがって、show processes cpu コマンドの出力で、ルータの全体的な負荷が把握できます。 CPU 使用率は、Cisco 3600 ルータで実行されるパケットの処理とルーティングの量に比例して増加します。

一般に、2900XL/3500XL スイッチでの show processes cpu コマンドの CPU 使用率の出力には、スイッチがアイドル状態でアクティブなポートがないときに、かなり高い値が示されます。 show processes cpu コマンドの出力では、Port Status ProcessLed Control Process が最も高い使用率を示しています。 これらのプロセスが総 CPU 使用率の高い割合を占めていることは、正常な動作です。

ベースライン CPU 使用率

次の表に、3500XL スイッチでのアイドル時と負荷をかけた場合の通常の CPU 使用状況をまとめます。 CPU 使用率が負荷の増加に比例して増加してはいない点に注目してください。

スイッチ

アイドル時の CPU 使用率

ユニキャスト トラフィックを使用した 50 % の書き込み速度での CPU 使用率

3512 XL

5 秒(32 %/2 %)

1 分(32 %)

5 分(32 %)

5 秒(32 %/2 %)

1 分(33 %)

5 分(32 %)

3548 XL

5 秒(44 %/6 %)

1 分(44 %)

5 分(32 %)

5 秒(46 %/7 %)

1 分(33 %)

5 分(33 %)

このように、負荷が最小の場合でも CPU 使用率が 30 〜 50 % の値を示すことは、2900XL または 3500XL スイッチでは正常です。

CPU 使用率が高い場合のトラブルシューティング

CPU は次のプロセスに使用されます。

  • ブロードキャストの処理

  • スパニングツリーの Bridge Protocol Data Unit(BPDU; ブリッジ プロトコル データ ユニット)

  • アドレス学習

  • ポート ステータス

  • LED 操作

上記のプロセスが過剰な CPU 使用率の原因となる可能性があります。 CPU 使用率が著しく高い場合(80 〜 99 % 近辺)、または CPU 使用率が通常より高い場合は、次の推奨事項に従ってください。

  1. 負荷をかけない状態でベースライン CPU 使用率を作成します。

  2. どのプロセスが最大の負荷を生成しているかに注意します。

  3. MAC アドレスのクリアが継続して行われているか、またはスパニングツリーに不安定な状態がないかチェックします。 show spanning-tree vlan vlan-id コマンドを使用して、この情報を収集します。

  4. ネットワーク ブロードキャスト ストームがないかチェックします。

  5. 必要ならば、シスコ テクニカル サポートでサービス リクエストを作成します。

2900XL および 3500XL スイッチの使用状況の確認

show controller switch コマンドは、スイッチの使用状況全般に関する情報を表示します。 次に例を示します。

Switch#show controller switch
  Switch registers:
  Device Type : 0x00040273
  Congestion Threshold : 0x00000E95
  Peak Total Allocation : 0x0000001A
  Total Allocation : 0x00000000
  Peak Total Bandwidth : 0x00000020
  Total Bandwidth : 0x00000000
  Total Bandwidth Limit : 0x000003DE
  Lower Bandwidth Limit : 0x000003DE
  Switch Mode : 0x00040000
  Switch#
  

Total Bandwidth Limit は、各 2900XL および 3500XL モデルの間で異なります。 Total BandwidthTotal Bandwidth Limit 値に達すると、スイッチは全帯域幅容量に達しているので、パケットの廃棄が始まります。 Peak Total Bandwidth は、show controller switch コマンドが最後に実行されてから Total Bandwidth によって得られた最高値です。 上記のパラメータの値は 16 進数であることに注意してください。

Congestion Threshold 値は、最大グローバル バッファ使用率の安全値として使用されます。 Total Allocation によって示されるバッファ使用率がこの値に達すると、スイッチでフレームが廃棄される可能性があります。 Peak Total Allocation 値は、show controller switch コマンドが最後に実行されてから Total Allocation によって得られた最高値を示します。 Peak Total AllocationTotal Allocation の両方または一方が Congestion Threshold を越える可能性があります。 Total AllocationCongestion Threshold に達するかこの値を超えた場合、スイッチのネットワーク アクティビティはフル容量に近い状態になっています。

グローバル バッファ使用率は、次に示すような設定の問題によって悪影響を受ける場合があります。

  1. 入力ポートと出力ポート間での速度のミスマッチ。たとえば、複数の 100 Mb クライアントが、10 Mb、半二重でスイッチに接続されているサーバにファイルを転送する場合。

  2. 複数の入力ポートから単一の出力ポートへの送信。

  3. 複数のポートでのデュプレックスのミスマッチ。

  4. 半二重設定またはスロー リンクの加入過多によるコリジョンまたは出力エラーが多数のポートで発生している。

show processes cpu コマンドの出力例

show processes cpu コマンドの出力例を次に示します。

Switch#show processes cpu
  CPU utilization for five seconds 35%/4%; one minute 35%; five minutes 35%
   PID  Runtime(ms)  Invoked  uSecs    5Sec   1Min   5Min TTY Process
     1          15     44349      0   0.00%  0.00%  0.00%   0 Load Meter
     2          18        31    580   0.24%  0.02%  0.00%   0 Exec
     3       90945     22514   4039   0.00%  0.01%  0.00%   0 Check heaps
     4           3         1   3000   0.00%  0.00%  0.00%   0 Chunk Manager
     5           2         3    666   0.00%  0.00%  0.00%   0 Pool Manager
     6           0         2      0   0.00%  0.00%  0.00%   0 Timers
     7           0         1      0   0.00%  0.00%  0.00%   0 Entity MIB API
     8         451      3742    120   0.00%  0.00%  0.00%   0 ARP Input
     9           0         1      0   0.00%  0.00%  0.00%   0 RAM Access (dm 0
    10           0         1      0   0.00%  0.00%  0.00%   0 Critical Bkgnd
    11        1202     89758     13   0.00%  0.00%  0.00%   0 Net Background
    12           0        53      0   0.00%  0.00%  0.00%   0 Logger
    13        2410    221081     10   0.00%  0.00%  0.00%   0 TTY Background
    14      352967    767348    459   0.04%  0.09%  0.08%   0 Per-Second Jobs
    15         708      9223     76   0.00%  0.00%  0.00%   0 Net Input
    16          70     44350      1   0.00%  0.00%  0.00%   0 Compute load avg
    17       37697      3697  10196   0.00%  0.01%  0.00%   0 Per-minute Jobs
    18      877166  17911145     48   0.32%  0.21%  0.20%   0 LED Control Proc
    19       11915    221085     53   0.00%  0.00%  0.00%   0 Frank Aging
    20    23499061  26508015    886   5.73%  5.54%  5.55%   0 Port Status Proc
    21           0         1      0   0.00%  0.00%  0.00%   0 VM Prune Events
    23     1554627    741189   2097   0.32%  0.41%  0.43%   0 GDS Frame Ager
    24           0         1      0   0.00%  0.00%  0.00%   0 RAM Access (gi0/
    25           0         1      0   0.00%  0.00%  0.00%   0 IP NAT Ager
    28           0         1      0   0.00%  0.00%  0.00%   0 RAM Access (gi0/
    30     2568178   5890745    435   0.65%  0.73%  0.74%   0 Broadcast Storm
    31           0         1      0   0.00%  0.00%  0.00%   0 Port Group Chang
    32        2265      5952    380   0.00%  0.00%  0.00%   0 IP Input
    33         627       392   1599   0.00%  0.00%  0.00%   0 Address Learning
    34           0         1      0   0.00%  0.00%  0.00%   0 RAM Access (dm 1
    35           0         1      0   0.00%  0.00%  0.00%   0 RAM Access (dm 2
    36      369323    663847    556   0.00%  0.00%  0.00%   0 Enet Aging
    37        3073     26588    115   0.00%  0.00%  0.00%   0 CDP Protocol
    38         805        70  11500   0.00%  0.00%  0.00%   0 Address Deletion
    39          71        35   2028   0.00%  0.00%  0.00%   0 Switch CGMP Prot
    40           0         1      0   0.00%  0.00%  0.00%   0 TCP Timer
    41           0         1      0   0.00%  0.00%  0.00%   0 TCP Protocols
    42           0         1      0   0.00%  0.00%  0.00%   0 Socket Timers
    43           0         1      0   0.00%  0.00%  0.00%   0 HTTP Timer
    44           0         1      0   0.00%  0.00%  0.00%   0 CGMP Forwarding
    45         121     22176      5   0.00%  0.00%  0.00%   0 Cluster RARP
    46         184     27803      6   0.00%  0.00%  0.00%   0 Cluster Base
    47         105       113    929   0.00%  0.00%  0.00%   0 Spanning Tree
    48        6438     36032    178   0.00%  0.00%  0.00%   0 STP Hello
    49      283088    128597   2201   0.00%  0.00%  0.00%   0 STP Queue Handle
    50         172        93   1849   0.00%  0.00%  0.00%   0 Malibu STP Adjus
    51           0         1      0   0.00%  0.00%  0.00%   0 Time Range Proce
    52           0         1      0   0.00%  0.00%  0.00%   0 SNMP ConfCopyPro
    53           0         2      0   0.00%  0.00%  0.00%   0 Bridge MIB traps
  

既知の問題: CPU 高使用率の原因が Autoconf プロセスにある場合

CPU 高使用率(最大 99 %)が発生しており、show processes cpu コマンドの出力に、その大部分が Autoconf プロセスとして示されている場合は、既知の不具合が発生しているとものと考えられます。 この問題は、Cisco IOS ソフトウェア リリース 12.0(5.4)WC1 以前で報告されています。

この問題は、IP アドレスを持たない管理上はダウン状態の VLAN 1 インターフェイスが設定されているスイッチをブートし、管理上アップ状態の IP アドレスを持つ別の VLAN インターフェイスが存在するときに発生します。 この設定では、スイッチは、ブートアップ時に VLAN 1 の IP アドレスが存在しないことを検出し、DHCP ベースの自動設定を開始します。 この時、DHCP の開始前にアップになるインターフェイス VLAN 1 があるかどうかをチェックする関数がソフトウェアで呼び出されるため、無限ループが発生します。 その結果、CPU 使用率が高くなります。

この回避策は、次のコマンドを設定し、設定を保存し、スイッチをリロードすることです。

  • interface vlan 1

  • no ip address

注:IP アドレスを持たないインターフェイス VLAN が他にもある場合は、それらすべての VLAN に関して同じ手順に従う必要があります。 

次のコマンドは、スイッチがこの不具合に該当している場合の出力例を示します。

Switch#show processes cpu
  CPU utilization for five seconds: 99%/7%; one minute: 99%; five minutes: 99%
  PID  Runtime(ms)  Invoked  uSecs    5Sec   1Min   5Min TTY Process
     1        4034    538437      7   0.00%  0.00%  0.00%   0 Load Meter
     2           0         1      0   0.00%  0.00%  0.00%   0 IP NAT Ager
  !---出力を省略
  
    62  1888112123 117660129  16047  24.77% 49.89% 51.43%   0 Router Autoconf  
    63       12583      1254  10034   0.00%  0.00%  0.00%   0 SNMP ConfCopyPro
    64          20         9   2222   0.00%  0.00%  0.00%   0 Bridge MIB traps
    66      592259    538607   1099   0.00%  0.00%  0.00%   0 Runtime diags
    67           0         1      0   0.00%  0.00%  0.00%   0 SNMP Timers
  !---出力を省略
  
  Switch#
  

この Autoconf プロセスの高 CPU 問題に対する修正は、Cisco IOS ソフトウェア リリース 12.0(5)WC2 以降のコードに統合されています。 Software Bug Toolkit登録ユーザのみ)の Cisco Bug ID CSCdv21552登録ユーザのみ)を参照してください。

一部ツールについては、ゲスト登録のお客様にはアクセスできない場合がありますことを、ご了承ください。



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

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


関連情報


Document ID: 10557