内容

はじめに

前提条件

要件

使用するコンポーネント

表記法

背景説明

show processes コマンド

show processes cpu コマンド

show processes cpu history コマンド

show processes memory コマンド

プロセス

関連情報

はじめに

このドキュメントでは、show processes コマンドと、コマンド出力から取得される詳細な統計情報について説明します。

前提条件

要件

このドキュメントに関する固有の要件はありません。

使用するコンポーネント

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

- Cisco IOS® ソフトウェア リリース 12.2(10b)

このドキュメントの情報は、特定のラボ環境にあるデバイスに基づいて作成されました。このドキュメントで使用するすべてのデバイスは、クリアな（デフォルト）設定で作業を開始しています。本稼働中のネットワークでは、各コマンドによって起こる可能性がある影響を十分確認してください。

表記法

ドキュメント表記の詳細は、『シスコ テクニカル ティップスの表記法』を参照してください。

背景説明

show processes コマンドは、デバイス上のアクティブなプロセスに関する情報を表示します。プロセスの CPU 利用率統計の詳細を表示するには show processes cpu コマンドを、使用されているメモリ量を表示するには show processes memory コマンドを使用します。

デバイスの CPU またはメモリ使用率レベルが問題の可能性を示しているかどうかを確認するには、アウトプット インタープリタ ツールを使用します。詳細は、「ルータの CPU 使用率が高い場合のトラブルシューティング」を参照してください。

注：シスコの内部ツールおよび情報にアクセスできるのは、シスコの登録ユーザーのみです。

show processes コマンド

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

router#show processes

CPU utilization for five seconds: 0%/0%; one minute: 0%; five minutes: 0%

PID Q  Ty       PC  Runtime(uS)    Invoked   uSecs    Stacks TTY Process

1 C  sp 602F3AF0            0       1627       0 2600/3000   0 Load Meter

2 L  we 60C5BE00            4        136      29 5572/6000   0 CEF Scanner

3 L  st 602D90F8         1676        837    2002 5740/6000   0 Check heaps

4 C  we 602D08F8            0          1       0 5568/6000   0 Chunk Manager

5 C  we 602DF0E8            0          1       0 5592/6000   0 Pool Manager

6 M  st 60251E38            0          2       0 5560/6000   0 Timers

7 M  we 600D4940            0          2       0 5568/6000   0 Serial Backgroun

8 M  we 6034B718            0          1       0 2584/3000   0 OIR Handler

9 M  we 603FA3C8            0          1       0 5612/6000   0 IPC Zone Manager

10 M  we 603FA1A0            0       8124       0 5488/6000   0 IPC Periodic Tim

11 M  we 603FA220            0          9       0 4884/6000   0 IPC Seat Manager

12 L  we 60406818          124       2003      61 5300/6000   0 ARP Input

13 M  we 60581638            0          1       0 5760/6000   0 HC Counter Timer

14 M  we 605E3D00            0          2       0 5564/6000   0 DDR Timers

15 M  we 605FC6B8            0          2       011568/12000  0 Dialer event

次の表に、show processes のコマンド出力のフィールドの一覧と説明を示します。

フィールド

説明

CPU utilization for five seconds

過去 5 秒間の CPU 利用率。2 番目の数字は、割り込みレベルで使われた CPU 時間の比率を示します。

one minute

過去 1 分間の CPU 利用率

five minutes

過去 5 分間の CPU 利用率

PID

プロセス ID

Q

プロセス キュー プライオリティ。可能な値：C（重大）、H（高）、M（中）、L（低）。

Ty

スケジューラ テスト。使用可能な値： * （現在実行中）、E （イベントを待機）、S （実行できる状態、プロセッサを任意に解放）、rd （実行できる状態、ウェイクアップ状態が発生）、we （イベントを待機）、sa （絶対時間までスリープ）、si （一定時間スリープ）、sp (一定時間スリープ（代替コール）、st （タイマーが切れるまでスリープ）、hg （ハング、プロセスは再実行されない）、xx （デッド：プロセスが終了したが、削除されていない）。

PC

現在のプログラム カウンタ

Runtime（uS）

プロセスが使用した CPU 時間（マイクロ秒）

Invoked

プロセスが呼び出された回数

uSecs

各プロセス呼び出しの CPU 時間（マイクロ秒）

Stacks

低水準値または使用可能な総スタック容量（バイトで表示）

TTY

プロセスを制御する端末

プロセス

プロセスの名前。詳細は、このドキュメントの「プロセス」のセクションを参照してください。

注：ネットワークサーバーのクロック解像度は 4000 マイクロ秒であるため、ランタイムは、多数の呼び出しまたは妥当な測定ランタイムの後にのみ信頼できると見なされます。

show processes cpu コマンド

show processes cpu コマンドは、ルータ内のアクティブなプロセスとその CPU 使用率統計に関する情報を表示します。次に、show processes cpu コマンドの出力例を示します。

router#show processes cpu

CPU utilization for five seconds: 8%/4%; one minute: 6%; five minutes: 5%

PID Runtime(uS)   Invoked  uSecs    5Sec   1Min   5Min TTY Process

1         384     32789     11   0.00%  0.00%  0.00%   0 Load Meter

2        2752      1179   2334   0.73%  1.06%  0.29%   0 Exec

3      318592      5273  60419   0.00%  0.15%  0.17%   0 Check heaps

4           4         1   4000   0.00%  0.00%  0.00%   0 Pool Manager

5        6472      6568    985   0.00%  0.00%  0.00%   0 ARP Input

6       10892      9461   1151   0.00%  0.00%  0.00%   0 IP Input

7       67388     53244   1265   0.16%  0.04%  0.02%   0 CDP Protocol

8      145520    166455    874   0.40%  0.29%  0.29%   0 IP Background

9        3356      1568   2140   0.08%  0.00%  0.00%   0 BOOTP Server

10          32      5469      5   0.00%  0.00%  0.00%   0 Net Background

11       42256    163623    258   0.16%  0.02%  0.00%   0 Per-Second Jobs

12      189936    163623   1160   0.00%  0.04%  0.05%   0 Net Periodic

13        3248      6351    511   0.00%  0.00%  0.00%   0 Net Input

14         168     32790      5   0.00%  0.00%  0.00%   0 Compute load avgs

15      152408      2731  55806   0.98%  0.12%  0.07%   0 Per-minute Jobs

次の表に、show processes cpu 出力のフィールドの一覧と説明を示します。

フィールド

説明

CPU utilization for five seconds

過去 5 秒間の CPU 利用率。1 番目の数字はトータルを示し、2 番目の数字は、割り込みレベルで使われた CPU 時間の比率を示します。

one minute

過去 1 分間の CPU 利用率

five minutes

過去 5 分間の CPU 利用率

PID

プロセス ID

Runtime（uS）

プロセスが使用した CPU 時間（マイクロ秒）

Invoked

プロセスが呼び出された回数

uSecs

各プロセス呼び出しの CPU 時間（マイクロ秒）

5Sec

最後の 5 秒間のタスクによる CPU 利用率

1Min

最後の 1 分間のタスクによる CPU 利用率

5Min

最後の 5 分間のタスクによる CPU 利用率

TTY

プロセスを制御する端末

プロセス

プロセスの名前。詳細は、このドキュメントの「プロセス」のセクションを参照してください。

注：ネットワークサーバーのクロック解像度は 4000 マイクロ秒であるため、ランタイムは、多数の呼び出しまたは妥当な測定ランタイムの後にのみ信頼できると見なされます。

show processes cpu history コマンド

show processes cpu history コマンドは、一定期間（1 分、1 時間、および 72 時間）のルータの合計 CPU 使用率を、それぞれ 1 秒、1 分、および 1 時間単位で ASCII グラフ形式で表示します。最大使用率は 1 秒ごとに測定と記録が行われます。1 秒間の平均使用率が計算されます。

次に、出力の 1 時間の部分の出力例を示します。

router#show processes cpu history

!--- One minute output omitted

6665776865756676676666667667677676766666766767767666566667

6378016198993513709771991443732358689932740858269643922613

100

90

80         *  *                     * *     *  * *  *

70  * * ***** *  ** ***** ***  **** ******  *  *******     * *

60  #***##*##*#***#####*#*###*****#*###*#*#*##*#*##*#*##*****#

50  ##########################################################

40  ##########################################################

30  ##########################################################

20  ##########################################################

10  ##########################################################

0....5....1....1....2....2....3....3....4....4....5....5....

0    5    0    5    0    5    0    5    0    5

CPU% per minute (last 60 minutes)

* = maximum CPU%   # = average CPU%

!--- 72-hour output omitted

- グラフの Y 軸は CPU の利用率です。

- グラフの X 軸は、グラフに表示されている期間内の増分を表します。この例では、過去 1 時間の分ごとの増分です。一番新しい測定結果が X 軸の左端に表示されます。

- 上部の 2 行は縦に読み、増分中に記録された CPU 使用率の最高値が表示されます。

- 前の例では、記録された最後の 1 分間の CPU 使用率は 66% です。ルータは、その 1 分間に 1 回だけ 66% に到達することも、何度も 66% に到達することもできます。ルータは、増分中に到達したピークと、その増分の過程での平均のみを記録します。

show processes memory コマンド

show processes memory コマンドは、ルータのアクティブプロセスと使用メモリに関する情報を表示します。次に、show processes memory コマンドの出力例を示します。

router>show processes memory

Total: 106206400, Used: 7479116, Free: 98727284

PID TTY  Allocated      Freed    Holding    Getbufs    Retbufs Process

0   0      81648       1808    6577644          0          0 *Init*

0   0        572     123196        572          0          0 *Sched*

0   0   10750692    3442000       5812    2813524          0 *Dead*

1   0        276        276       3804          0          0 Load Meter

2   0        228          0       7032          0          0 CEF Scanner

3   0          0          0       6804          0          0 Check heaps

4   0      18444          0      25248          0          0 Chunk Manager

5   0         96          0       6900          0          0 Pool Manager

6   0        276        276       6804          0          0 Timers

7   0        276        276       6804          0          0 Serial Backgroun

8   0         96          0       3900          0          0 OIR Handler

9   0         96          0       6900          0          0 IPC Zone Manager

10   0          0          0       6804          0          0 IPC Periodic Tim

11   0      17728        484      11156          0          0 IPC Seat Manager

12   0        288        136       7092          0          0 ARP Input

....

90   0          0          0       6804          0          0 DHCPD Timer

91   0        152          0       6956          0          0 DHCPD Database

7478196 Total

注：特定のシスコルータおよびスイッチでの show processes memory sorted の実装方法により、一部のデバイス（Cisco 7304 など）では、合計が show processes memory で表示されるプロセッサメモリの合計ではなく、プロセッサメモリと IO メモリの合計として表示されます。

次の表に、show processes memory のコマンド出力のフィールドと説明を示します。

フィールド

説明

合計

保持されているメモリの合計量。

Used

メモリの使用総量.

Free

メモリの空き総量.

PID

プロセス ID

TTY

プロセスを制御する端末。

Allocated

プロセスによって割り当てられたメモリのバイト数。

Freed

最初に割り当てたユーザとは無関係に、プロセスにより解放されたメモリのバイト数。

Holding

プロセスによって保持されているメモリの量。このパラメータは、メモリリークが疑われる場合のトラブルシューティングに役立ちます。プロセスがメモリを消費し、その消費が一定期間にわたって増加する場合は、メモリリークが発生している可能性があります。詳細は、「メモリ リークの不具合」を参照してください。

Getbufs

プロセスがパケット バッファを要求した回数.

Retbufs

プロセスがパケット バッファを解放した回数.

プロセス

プロセスの名前。詳細は、このドキュメントの「プロセス」のセクションを参照してください。

合計

すべてのプロセスによって保持されているメモリの合計量。

プロセス

次の表では、show processes、show processes cpu、および show processes memory の出力の個々のプロセスについて説明します。これはすべてを網羅したリストではありません。

プロセス

説明

ARP Input

着信する Address Resolution Protocol（ARP）要求を処理します。

BGP I/O

Border Gateway Protocol（BGP; ボーダー ゲードウェイ プロトコル）メッセージの読み取り、書き込み、実行を処理します。

BGP スキャナ

BGP およびメインルーティングテーブルをスキャンして一貫性を確保します（これは別のプロセスであり、時間がかかる場合があります）。

BGP ルータ

設定がフル装備されたときに開始されるメインの BGP プロセス。

BOOTP サーバ

ゲートウェイ ブートストラップ プロトコル（BOOTP）サーバープロセス。

CallMIB Background

通話履歴が期限切れになり、通話情報が収集された場合、通話履歴を削除します。

CDP Protocol

- メイン Cisco Discovery Protocol（CDP）：各インターフェイスの CDP 初期化を処理します。

- 着信パケットの場合、CDP キューとタイマーを監視して、処理を行います。

- タイマー イベントの場合、アップデートを送信します。

Check heaps

毎分メモリをチェックします。プロセッサで破損が見つかった場合、強制的に再起動させます。

Compute load avgs

- ネットワーク インターフェイスごとの 5 分間の指数関数的に衰えた出力ビット レートと、システム全体の負荷要素を計算します。負荷平均は、次の式で計算されます。平均 =（（平均 - 間隔）* exp（-t/C））+ 間隔。ここで、t = 5 秒、C = 5 分、exp（-5/60*5））= .983

- 各インターフェイスの負荷を（1 つずつ）計算し、バックアップ インターフェイスの負荷を確認します（負荷に基づいてインターフェイスを有効化またはシャットダウンします）。

*Dead*

現在、DEAD 状態のグループとしたものを処理します。詳細については、「メモリ問題のトラブルシューティング」を参照してください。

Exec

コンソール EXEC セッションを処理します。高優先度。

Hybridge Input

高速パスを通過する着信トランスペアレント ブリッジ パケットを処理します。

*Init*

システム初期化

IP Background

- カプセル化を変更した場合（たとえば、インターフェイスが新しい状態に移行した場合、IP アドレスが変更された場合、新しい Data Exchange Interface（DXI）マップを追加した場合、または一部のダイヤラタイマーが期限切れになった場合）に呼び出されます。

- Internet Control Message Protocol（ICMP）リダイレクトキャッシュの定期的なエージングを行います。

- インターフェイスのステータスに基づいてルーティングテーブルを変更します。

IP Cache Ager

ルーティング キャッシュのエージングを行い、古い再帰ルートを直します。エージャは指定時間ごとに 1 度（デフォルトで 1 分に 1 度）実行し、再帰ルーティングの変更によりエントリが無効になっていないことを確認します。このエージャには、キャッシュ全体が約 20 分ごとにリフレッシュされていることを確認するという別の機能もあります。

IP Input

プロセススイッチング IP パケット

IP-RT Background

定期的に最後の再ソートおよび IP スタティック ルートのゲートウェイを修正します。このプロセスは、（ラストリゾートゲートウェイが依存する）静的ルートが変更された直後に、オンデマンドで呼び出されます。

ISDNMIB Background

ISDN トラップ サービスを送り、コール キューが古くなっている場合にそれを削除します。

ISDN Timers

ISDN キャリア タイマー イベントを処理します。

Load Meter

5 分ごとの各プロセスの負荷平均、および 5 分間の指数減衰平均法による平均ビジー タイムを計算します。負荷平均は、次の式で計算されます。平均 =（（平均 - 間隔）* exp（-t/C））+ 間隔。ここで、

- t = 5 秒、C = 5 分、exp (-5/(60*5)) = .983~= 1007/1024

- t = 5 秒、C = 1 分、exp (-5/60) = .920~= 942/1024

Multilink PPP out

ファースト スイッチングからキューイングされた（発信ハーフ ファースト スイッチング）マルチリンク パケットを処理します。

Net Background

- 種々のネットワーク関係のバックグラウンド タスクを実行します。これらのタスクは迅速に実行する必要があり、いかなる理由があってもブロックすることはできません。net_background プロセスで呼ばれるタスク（たとえば、インターフェイスのデスロットリング）は、タイムクリティカルです。

- 「Compute load avgs」、「Per-minute Jobs」、および「Net Input」プロセスを実行します。

- インターフェイスがスロットリングされたときに処理します。

Net Input

- 別の方法で不明パケットを処理します。これはプロセスレベルで行われるため、入力キューが機能し始めます。割り込みレベルで操作すると、ルータを簡単にロックできます。

- ブリッジに提供する既知のプロトコルを処理します。 この場合、net_input はパケットを NULL に送るか、ブリッジ処理します。

Net Periodic

次のようなインターフェイス定期機能を毎秒実行します。

- 定期カウンタをリセットします

- 入力エラー率カウンタをクリアします

- シリアル回線をチェックして、不具合から再起動するかどうかを確認します

- 定期的なキープアライブ機能を実行します

- プロトコル ルーティング テーブルの整合性を確認します

- 回線プロトコルのアップまたはダウンイベントを通知するブリッジ状態の一貫性を確認します

Per-minute Jobs

次のタスクを 1 分に 1 回実行します。

- スタック使用状況の分析

- ロー スタックのアナウンス

- 登録されている one_minute ジョブの実行

Per-second Jobs

さまざまなタスクを毎秒実行します。登録された one_second ジョブを実行します。

Pool Manager

マネージャプロセスは、拡張を管理し、割り込みレベルでダイナミックプールからの要求を破棄します。

PPP Manager

- すべての PPP 有限状態マシン（FSM）の動作を管理し、PPP 入力パケットとインターフェイスの遷移を処理します。

- PPP キューおよび PPP タイマー（ネゴシエーション、認証、アイドルなど）をモニターします。

OSPF Router

メインの Open Shortest Path First（OSPF）プロセス

OSPF Hello

hello を受け取る OSPF プロセス

*Sched*

スケジューラ

Serial Background

イベントを監視し、各期限満了イベント用の正しいサービス ルーチンに分岐します（主にインターフェイスのリセット）。

スパニングツリー

- 複数スパニング ツリー アルゴリズムを処理する単一のプロセスであるスパニング ツリー プロトコルを実行します。

- Spanning Tree Protocol（STP; スパニング ツリー プロトコル）キューを監視します。

- 着信 STP パケットを処理します。

- STP タイマーを監視します。

- ハロー タイマー

- トポロジ変更タイマー

- Digital Equipment Corporation（DEC）短期エージング アウト タイマー

- 転送遅延タイマー

- メッセージ経過時間タイマー

Tbridge Monitor

- 「対象パケット」を適切なハンドラにディスパッチします（「対象トラフィック」は、Cisco Group Management Protocol（CGMP）、Internet Group Management Protocol（IGMP）、OSPF パケット [マルチキャスト] です）

- ステーション エントリのエージアウトおよび回線グループのアクティブ回線をチェックするマルチキャスト タイマーを監視します。

TCP Driver

Transmission Control Protocol（TCP）接続を介してパケットデータを送信します。接続を開始/終了します。また、キューがいっぱいになるとパケットをドロップします。Remote Source-Route Bridging（RSRB）、シリアルトンネリング（STUN）、X.25 スイッチング、X.25 over TCP/IP（XOT）、Data-Link Switching（DLSW）、変換、およびルータで開始または終了するすべての TCP 接続は、現在 TCP ドライバを使用しています。

TCP Timer

タイムアウト パケットの再送信を処理します。

Virtual exec

Virtual Type Terminal（vty）回線（ルータ上の telnet セッションなど）を処理します。

CPU 使用率が高いこと自体は、デバイスに問題があることを示しているわけではありません。 おおまかな指針として、長期間にわたり、高い CPU の利用率が続いた場合に初めて、問題があることを意味します。さらに、これらのコマンドは障害を示すものではなく、問題の原因を特定するのに役立ちます。

関連情報

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

- メモリの問題に関するトラブルシューティング

- シスコのテクニカルサポートとダウンロード