20212021年6月5日、題名を修正したよ!本連載は、筆者がWiresharkの達人となるまでを追うドキュメンタリー作品である。今回の記事では、ネットワーク監視ソフトウェアに標準で搭載されているRTTグラフをWiresharkで生成しようといった内容です。「行き帰りの時間」となりこの時間が明らかに多いと通信パスでなんらかの遅延が発生している可能性があります。あるサイトにアクセスした時に通信遅延が発生している場合、「自PC→スイッチ→ルータ→AS1234→AS5678→目的のサイト」といった経路のどこかのルートで、遅延が発生している可能性があります。Solarwinds社のNetpathはこの通信ルートの遅延を視覚化してくれるツールです。Wiresharkには残念ながらそこまでの機能はありませんが、収集したパケットからRTTグラフを生成することができます。今回は、そのやり方をご紹介します。検証環境のおさらいです。以下の赤枠が今回試験をした環境となります。今回iperf3というツールを使って、tcp通信を生成します。Engine製のapu4は中身はUbuntu18.04。有線接続のPCはWindows10です。iper3を両端末ともインストールしておきます。ダウンロードは、こちらから。次に通信遅延を故意的に発生させたいと思います。apu4側でtcコマンドを使えば通信遅延を発生させることができます。コマンドは以下の通りです。#100ms通信遅延の初期設定(addオプション)。root今回の検証では、200msの設定をしました。※iperf3ではデフォルトの実行時間が10秒ととても短く遅延のグラフ化には適当でありません。よって、クライアント側のオプションでiperf3の実行時間を5分に設定しました。本試験の間、サーバー側のapu4側ではtcpdumpコマンドを利用してパケットをキャプチャしております。receiveriper3は5201ポートを利用して通信試験をするので収集したパケットはこのポート番号でフィルタをかけて調査を開始します。ストリーム番号の選定Wiresharkでは3ウェイハンドシェイクで開始したTCP通信が終了する(FIN-ACK/ACK,RSTによる中断)迄の一連の通信をストリームと呼んでいます。それぞれストリームごとに番号を振っています。今回iperf3で実験した通信のストリーム番号を特定してグラフ化してみましょう。5201′′と入力し、キーボードの「Enter」ボタンをおしてください。追跡→TCPストリーム適当なパケットを選択した状態で、右クリック。「追跡」→「TCPストリーム」と進んでください。図4が表示されるので、「ストリーム」の右に記載されている番号を確認します。図6にRTTグラフが表示されます。若干ばらつきはあるものの概ね200msで推移していることが分かります。本機能を利用すればターゲットプロトコルに対してのRTTを見える化することができ遅延原因特定の証拠となります。