第39章 SystemTap でのネットワークアクティビティーの監視
/usr/share/systemtap/testsuite/systemtap.examples/ ディレクトリーで利用可能な SystemTap スクリプトの例を使用して、systemtap-testsuite パッケージをインストールし、システムのネットワークアクティビティーを監視して調べることができます。
39.1. SystemTap でのネットワークアクティビティーのプロファイル リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
nettop.stp のサンプルの SystemTap スクリプトを使用して、ネットワークアクティビティーのプロファイルを作成できます。このスクリプトは、システムでネットワークトラフィックを生成しているプロセスを追跡し、各プロセスに関する以下の情報を提供します。
- PID
- リスト表示されているプロセスの ID。
- UID
- ユーザー ID。ユーザー ID が 0 の場合は、root ユーザーを指します。
- DEV
- データの送受信に使用されるイーサネットデバイス (eth0、eth1 など)。
- XMIT_PK
- プロセスが送信したパケットの数。
- RECV_PK
- プロセスが受信したパケットの数。
- XMIT_KB
- プロセスにより送信されたデータの量 (キロバイト)。
- RECV_KB
- サービスが受信したデータの量 (キロバイト単位)。
前提条件
- SystemTap のインストール の説明に従って、SystemTap をインストールしている。
手順
nettop.stpスクリプトを実行します。# stap --example nettop.stpnettop.stpスクリプトは、5 秒間隔でネットワークプロファイルのサンプリングを行います。nettop.stpスクリプトの出力は、以下のようになります。[...] PID UID DEV XMIT_PK RECV_PK XMIT_KB RECV_KB COMMAND 0 0 eth0 0 5 0 0 swapper 11178 0 eth0 2 0 0 0 synergyc PID UID DEV XMIT_PK RECV_PK XMIT_KB RECV_KB COMMAND 2886 4 eth0 79 0 5 0 cups-polld 11362 0 eth0 0 61 0 5 firefox 0 0 eth0 3 32 0 3 swapper 2886 4 lo 4 4 0 0 cups-polld 11178 0 eth0 3 0 0 0 synergyc PID UID DEV XMIT_PK RECV_PK XMIT_KB RECV_KB COMMAND 0 0 eth0 0 6 0 0 swapper 2886 4 lo 2 2 0 0 cups-polld 11178 0 eth0 3 0 0 0 synergyc 3611 0 eth0 0 1 0 0 Xorg PID UID DEV XMIT_PK RECV_PK XMIT_KB RECV_KB COMMAND 0 0 eth0 3 42 0 2 swapper 11178 0 eth0 43 1 3 0 synergyc 11362 0 eth0 0 7 0 0 firefox 3897 0 eth0 0 1 0 0 multiload-apple