
PC のインターネット使用状況を監視および記録するプログラムについて詳しく説明している回答が多数ありますが、どのアプリケーションがそのデータを消費したかを詳細に記録して分類する必要があります。
各アプリケーションのデータ使用量をリアルタイムでフィードするツールがいくつかあることに気付きましたが (NetLimiter、Win7 Resource Monitor)、そのようなデータを記録するツールは見つかりません。
誰か知っていますか? 友達の帯域幅を消費しているプログラムを追跡する必要があります。
答え1
答え2
アプリケーション的に満足できるものが見つからない場合は、重い(しかし、解決したときには非常に満足できる)解決策として、ネットワーク監視を行うことをお勧めします。Microsoft ネットワーク モニター(現在は v3.4) これにより、必要に応じて物事をスライスしたりダイスしたりできるようになりますか?
正直に言うと、あなたが求めているもの(アプリケーションレベルのログ)を正確に得ることはできませんが、意思創造力があれば、データを分割してその情報を取得できます。
(データがどこに送られるかを見るのも楽しいです。)
ご紹介: Microsoft ネットワーク モニター 3.4
今、この回答を入力しながらキャプチャを実行しています。Windows の更新プログラムをチェックしたり、IE を実行してファイルを取得したりと、変化を加えていますが、ここのスクリーンショットからわかるように、
最初は少し圧倒されるかもしれませんが、主に左側のボックスに目を向けてください。そこには、ネットワーク トラフィックを生成するものとしてキャプチャされたすべてのプロセスが表示されます。アプリケーションを開くと、会話に分解され、さらに詳しく調べることができます。私が山ほど言葉を使って説明するよりも、すぐに試してみたほうがよいでしょうが、簡単に言うと、ネットワーク トラフィックのあらゆる小さなビットがログに記録されます。それが中央のペインに表示されているものです。
気が狂わないようにすべてをフィルタリングします...
キャプチャしたデータにフィルターを適用して、特定の IP アドレス、プロトコル、または特定のプロセス (必要に応じて会話も) を除外するなど、表示する内容を絞り込むことができます。
フィルター言語はヘルプ内に文書化されており、適切な定型例もいくつかありますが、パッケージをダウンロードせずに確認できるように、いくつかの例を以下に示します。
Conversation.ProcessName == "iexplore.exe" // restrict your examination to iexplore.exe
(Conversation.ProcessName == "firefox.exe" and Conversation.ProcessId == 3824) // only look at firefox process 3824
IPv4.Address == 64.34.119.12 // traffic in both directions to superuser.com
IPv4.SourceAddress == 64.34.119.12 // traffic coming from superuser.com
...そしてそれをもう少し読みやすいものに集約します (NMTopUsers)
そうです。これにより、特定のターゲットグループに絞り込むことができますが、特にマゾヒストでフレームヘッダーを読むのが好きなのでなければ、NMTopUsersの専門家に依頼することをお勧めします。
このエキスパートは、入力されたデータをフィルタリングした後で処理します (そのため、これを行うには、キャプチャ ファイルを開き、フィルターを適用して firefox.exe などを分離してから、エキスパートを呼び出します)。そして、次のような出力を生成します。
関連するパッケージがインストールされていれば (このマシンにはインストールされていません)、グラフも利用できます。出力により、トラフィックの行き先 (および出元) を宛先別に一目で確認でき、見出しの数字も表示されるので、遠回しにではありますが、探している情報が得られます。
誰かが、まさにあなたが求めているものを実行するエキスパートを開発しているかもしれませんが、私はそのようなエキスパートを知りません。申し訳ありません。何かを作ることを提案したいのですが、ちょっと練習不足です :P
とにかく、これを使って、試してみたいという気持ちがあれば、perfmon を使用してインターフェイスの基本的なログ記録を行うことで「一体何が帯域幅を消費しているのか」という問題に取り組むことができます (これにより、何かが起こっているのか、それとも持続的なベースロードの問題なのかを切り分けることができます)。そして、並行して (またはイベント後に) ネットワーク モニター トレースを設定して、関心のあるデータをキャプチャします (キャプチャを集中できるほど、より効果的です。長時間実行すると、キャプチャ ファイルが非常に大きくなるからです)。
これらすべてを取得したら、NMTopUsers を実行して詳細に調べ、特にリソースを消費するアプリはどれか、また、リソースが何らかの形でどこに送られているのか、さらには、HTTP なのか、それとも他の何かなのかなどを確認できます。
答え3
MS SysinternalsのTCP Viewが役に立つかもしれません。リンクはこちらです http://technet.microsoft.com/ja-jp/sysinternals/bb897437 より