web-dev-qa-db-ja.com

Linuxでプロセスが使用している帯域幅をどのように判断するか

gnome-system-monitorを使用した bandwidth の使用量が300kbit/sに達することがあります。何が原因なのかわからない。そのようなネットワークを使用する際のプロセスまたはプログラムを知りたいですか?

帯域幅の使用状況を監視できるようにしたいさまざまなマシンやサーバーにSSH接続します。どの 帯域幅 が使用されているか、どのアプリケーション/プログラム/プロセス/またはスレッドによって使用されているかを確認するために、どのユーティリティを使用しているかを知ることは非常に役立ちます。どこから探し始めたらいいのかわからない。

私が見つけた2つの小さなプログラムは不十分です。 bmon および bwm-ng および wiresharkパケットスニファ )はやり過ぎです。真ん中に何か、できればテキストコンソールベースのものが欲しいのですが。

11
nelaaro

あなたが使用することができます

iptraf

または

iftop -P

帯域幅の多くを消費する接続を特定します。接続は、(localip:port、remoteip:port)のペアによって識別されます。その後、使用することができます

netstat -tunp

どのプロセスがその接続を使用しているかを調べます。ただし、ほとんどの場合、ポートを見ただけで、どのサービスが責任を負っているのかを知ることができます。接続がローカル側でlocalip:80を使用している場合、おそらくWebサーバーです;-)

11
barbaz

iftopがありますが、これは送信元と宛先のみを示しており、トラフィックを引き起こしているプログラムは示していません。

編集:

nethogsが見つかりました。それはまさにあなたが望むことをします。

11
Šimon Tóth

Iftop

帯域幅が使用されているIP /ホストを示すのに適しています。情報を単一のプログラムまたはポートに分離できます。

Sudo Iftop

実行されたら、Hまたは?を使用してヘルプメニューにアクセスできます。多くの便利なオプションがあります

Host display:                          General:
 n - toggle DNS Host resolution         P - pause display
 s - toggle show source Host            h - toggle this help display
 d - toggle show destination Host       b - toggle bar graph display
 t - cycle line display mode            B - cycle bar graph average
                                        T - toggle cummulative line totals
Port display:                           j/k - scroll display
 N - toggle service resolution          f - edit filter code
 S - toggle show source port            l - set screen filter
 D - toggle show destination port       L - lin/log scales
 p - toggle port display                ! - Shell command
                                        q - quit
Sorting:
 1/2/3 - sort by 1st/2nd/3rd column
 < - sort by source name
 > - sort by dest name
 o - freeze current order

iftop, version 0.17
0
nelaaro