図4 統計情報をグラフィカルに表示する<BR>通信量の多いコンピュータのベスト10をグラフ表示したり,パケットをやりとりしたコンピュータのペアを円周上に表示する。ネットワークの全体像を素早く把握できる。
図4 統計情報をグラフィカルに表示する<BR>通信量の多いコンピュータのベスト10をグラフ表示したり,パケットをやりとりしたコンピュータのペアを円周上に表示する。ネットワークの全体像を素早く把握できる。
[画像のクリックで拡大表示]
図5 やりとりの流れを示す「ラダー表示」&lt;BR&gt;特定のコンピュータ同士がやりとりした様子を表示する。エラーが起こった部分を目立たせて表示するものもある。トラブル解決時に,やりとりのどの部分でエラーが起こったかを調べるのに役立つ。
図5 やりとりの流れを示す「ラダー表示」<BR>特定のコンピュータ同士がやりとりした様子を表示する。エラーが起こった部分を目立たせて表示するものもある。トラブル解決時に,やりとりのどの部分でエラーが起こったかを調べるのに役立つ。
[画像のクリックで拡大表示]

通信するペアを線で結ぶ

 まずはパケットの総数やデータ量などの統計をグラフィカルに表示する機能である。ネットワークの全体像を素早く把握したいときに有効だ。

 例えば,米ネットワークジェネラルのSniffer Portable(スニファー ポータブル)は,送り出したパケット数が多いコンピュータのトップ10をグラフに表示する(図4[拡大表示])。パケット送出量が突出しているコンピュータがあったら,LANアダプタの故障やウイルス感染などの可能性があると推測できる。

 このほか,パケットをやりとりしたコンピュータのペアを表示することもできる。通信しているコンピュータの名前を円周上に配置し,コンピュータのペアを線で結んで表示する。トラフィックが多いペアの間は太い線で結ばれるので,通信量の多いコンピュータが一目でわかる。米ネットワーク・インスツルメンツのObserber(オブザーバー)も同様の機能を持っている(図4の右)。

 フリーのEtherealも,コンピュータごとのパケットの送出数や,やりとりしたコンピュータのペアといった統計情報を表示することはできる。ただし,ほとんどが数値表示で,グラフ表示できるのは受信したパケット数とデータ量だけである*

よく使うフィルタのひな形を用意

 このような統計表示は,キャプチャ・ソフトが備えるフィルタ機能を使っている。

 キャプチャ・ソフトは,受信したパケットが自分あてかどうかにかかわらず,流れているパケットすべてを取得する。このため,取得した大量のパケットの中から目的のパケットを見つけ出す必要が出てくる。そこで活躍するのがフィルタ機能である。

 フィルタを使うと,収集したたくさんのパケットからMACアドレス,IPアドレス,ポート番号といった情報をキーにして,該当するパケットだけを抽出できる。例えば,「送信元アドレスがAのパケットだけを取り出す」とか,「送信元がAであて先がBのパケットだけを取り出す」といった処理である。

 どの製品もユーザーが手動でフィルタ条件を設定することはできる。ただ,この設定作業は意外と面倒だ。そこで市販製品は,ユーザーがよく使うであろうフィルタ条件をあらかじめいくつか用意しておいて,ユーザーが手動でフィルタ条件を入力しなくても目的のパケットを抽出できるようにしているわけだ。さらに,その結果をグラフィカルに表示する機能も持っている。

シーケンスがわかる「ラダー表示」

 特定のコンピュータ同士でやりとりしたパケットを抽出する機能をさらに進めたのが,コンピュータ同士でやりとりしたパケットの流れを示す「ラダー表示」と呼ばれる機能である。ラダー(ladder)とは「はしご」の意味。2台のコンピュータの間で行き交うパケットを順番に矢印で示していくと,その全体像がはしごのように見えることに由来している。

 例えばレイヤーのPacMon Pro(パックモン プロ)は,TCPのシーケンスをラダー表示する(図5[拡大表示])。TCPヘッダーのフラグ*を合わせて表示するので,特定のコンピュータ同士のTCPコネクションの確立から切断までを追うことができる。

 ラダー表示を使えば,トラブル発生時に,シーケンスのどこで通信が止まったのかがすぐに確認できる。ラダー表示内の一つのパケットをダブルクリックすると,そのパケットの詳細を表示した画面に切り替えることもできる。

 Etherealでも,フィルタ機能を使えば特定のTCP通信のやりとりだけを抽出できる*。ただしEtherealでできるのは,該当するパケットを抽出するところまで。やりとりをラダー表示することはできない。

エラー部分が一目でわかる

 また,米クリアサイト・ネットワークスのClearSight Analyzer(クリアサイト アナライザ)は,HTTP*FTP*といったアプリケーション・レベルのシーケンスを解析してラダー表示する(図5の右)。

 例えば,Webアクセスで使うHTTPをラダー表示すると,Webブラウザが送ったGETリクエストと呼ばれるメッセージに対して,サーバーがWebページのデータを返信している様子がわかる。またこの返信メッセージの中に,通信が成功したことを示す200番のステータス・コードが記述されていることも確認できる。

 さらに,通常のパケットのやりとりは青色,再送パケットは黄色,エラー・メッセージのパケットは赤色で表される。このため,エラーがどこで出ているかが一目でわかる。

 こうした機能を持たないキャプチャ・ソフトを使う場合は,パケットを取り込んだあとに特定のコンピュータ同士のやりとりをフィルタで抽出し,それらをプロトコルのシーケンスと照らし合わせて,シーケンスのどの部分でエラーが起こっているかを探らなくてはならない。ClearSightなら,アプリケーション・プロトコルのシーケンスが頭に入っていなくても,シーケンスのどこでトラブルが発生しているのかが簡単に発見できる。