Wireshark でドロップされたパケットを見つける方法
低速でラグのある接続は、パケットが伝送中に失われていることを示している可能性があります。 一部のシナリオでは一定レベルのパケット損失が許容されますが、他のシナリオでは、特にメディアのストリーミング時に、ユーザー エクスペリエンスが著しく損なわれる可能性があります。 さらに、システムは遅延を補うためにパケットを完全にドロップする可能性があり、その過程でデータが失われる可能性があります。
問題を迅速に診断できるように、Wireshark を使用してパケットのドロップまたは損失を処理しているかどうかを判断する方法を次に示します。
ドロップされたパケット? レッツ・ピックアップ・ゼム・アップ
ユーザーがサービスの遅さやデータ転送の質の悪さを訴える場合、パケット損失が原因であると考えるのは当然です。 すべての失われたパケットがドロップされるわけではありませんが、ドロップ率が高い場合でも、さまざまな問題が発生している可能性があります。 Wireshark でパケットをドロップしたかどうかを確認するプロセスは次のとおりです。
- 開く ワイヤーシャーク デスクトップアプリ。
- キャプチャ モードになっていることを確認します。
- ウィンドウの下部にあるステータス バーを見つけます。
ここでキャプチャしたパケットに関する統計が表示されます。 「Dropped」の横の数字は、パケットがドロップされたかどうかを示します。 一部のバージョンでは、「ドロップ」カウンターは、Wireshark がすべてのパケットをキャプチャしなかった場合にのみ表示されます。
一部のパケットがドロップされたことが確実であるが、ステータス バーが役に立たない場合は、次の方法でドロップされたパケットの統計を見つけてください。
- メニューバーの「統計」をクリックします。
- 「キャプチャファイルのプロパティ」を選択します。 新しいウィンドウが開きます。
- 「インターフェース」の下に、「ドロップされたパケット」が表示されます。 その下の数字は、キャプチャされなかったパケットの数を示します。
Wireshark がすべてのパケットをキャプチャしなくても、送信されなかったわけではありません。 プログラムが高速ストリームに追いつけないだけかもしれません。 それでも、ACK パケットでキャプチャされなかったパケットは、キャプチャしやすい小さなパケットであるため、認識される可能性があります。 したがって、多くの場合、情報列で ACK を検索することにより、ドロップされたパケットを識別できます。 ACK は、パケットが欠落しているにもかかわらず、データが正常に送信されたことを示します。
失われたパケットの調査
キャプチャされていないパケットは、失われたパケットと同じではありません。 Wireshark がキャプチャしなかったパケットは宛先に到着する可能性がありますが、失われたパケットは到着しません。 代わりに、それらは通常再送信され、最悪のシナリオでのみドロップされます。 TCP セグメントで失われたパケットを調査するには、キャプチャ画面の情報列を詳しく調べる必要があります。
- 調査する会話を選択し、フィルターとして適用します。 これは必須ではありませんが、全体像を把握するのに役立ちます。
- 任意のパケットを選択します。
- 詳細セクションで「インターネット プロトコル バージョン 4」をクリックします。
- 識別番号を見つけて右クリックし、「列として適用」を押します。
これで、各送信の連続した識別番号を確認できます。 数値を調べて、矛盾を見つけます。 TCP では、失われたパケットが後で再送信される可能性があることに注意してください。そのため、送信がその場所から失われたとしても、さらに下にある可能性があります。 識別番号を使用して検索できます。
パケットの転送に失敗すると、次の行の情報列に「前のセグメントがキャプチャされていません」というメッセージが表示されます。 このエラー メッセージでフィルタリングすることにより、すべての会話で失われたパケットを探すこともできます。 フィルター バーに「tcp.analysis.lost_segment」と入力し、Enter キーを押します。 2 つのフィルターの間に「and」を入力して、これを IP アドレスまたは会話フィルターと組み合わせて、より正確な結果を取得することもできます。 繰り返しますが、識別番号を確認した後、失われたパケットを検索できます。
前述のように、TCP では失われたセグメントを後で再送信できます。 「tcp.analysis.retransmission」フィルターを使用して、再送信を見つけることができます。 失われたセグメントには複数のパケットが含まれる可能性があり、再送信は個別のパケットであるため、再送信されたパケットを検索する方が、失われたセグメントを探すよりも生産的である場合があります。
Wireshark で失われたパケットを追跡する
Wireshark によってパケットが失われたかドロップされたかを判断することは、必ずしも簡単ではありません。 通常、1 つの指標だけを見るだけでは十分ではありませんが、いくつかの要因を考慮する必要があります。 多くの場合、ドロップされたパケットは無傷で宛先に到着しますが、多くの失われたパケットはユーザー エクスペリエンスの低下につながる可能性があります。