16

HTTP 1.1ではHTTPキープアライブがデフォルトでオンになっていることは知っていますが、実際に機能していることを確認する方法を見つけたいと思います。

Webブラウザからテストする簡単な方法(たとえば、wiresharkの意味を理解する方法)を知っている人はいますか?同じTCP接続で複数のHTTPリクエストを探す必要があることは知っていますが、wiresharkやその他の方法でそれを確認する方法がわかりません。

ありがとう!

4

4 に答える 4

4

Windows Vista 以降を使用している場合は、Resource Manager を使用できます。[ネットワーク] タブには、開いているすべての TCP 接続と、それらが開始されたプロセスが一覧表示されます。1 つのタブでブラウザーを開き、ページを参照してテストします。

于 2010-11-22T03:59:01.657 に答える
1

まず、Wireshark でターゲット Web サイトへのトラフィックをキャプチャし、次のようなフィルターを使用して必要なものに制限してみてください。

tcp port 80 and host targetwebsite.com

次に、ブラウザにページをロードするか、任意のツールでフェッチします。ターゲット Web ページ自体またはその中の値の 1 つが更新された場合は、少なくとも 1 つの変更があるまで開いたままにしておきます。

これで十分なデータが得られたので、Wireshark でのキャプチャ手順を停止できます。

多数のレコードが表示され、それらのプロトコルは TCP または HTTP である必要があります。迅速で簡単なチェックのために、TCP レコードは必要ありません。そこで、別のフィルターを適用してそれらを削除しましょう。ウィンドウの上部に「フィルター」フィールドがあります。そこに「http」と入力すると、wireshark は HTTP プロトコルを持つレコード以外のすべてのレコードを非表示にします。

ここでレコードを選択し、次のレベルの詳細を確認します。これは、すべてのレコードの下にある 2 番目のボックスにあります。正しい場所を見ていることを確認するために、最初の行は「Frame XYZ」で始まります。4 行目は「Transmission Control Protocol」で始まります。「SRC Port」と「DST Port:」の後のポート番号を探します。レコードに応じて、これらの番号の 1 つは Web サーバーに属し (通常は 80)、もう 1 つはエンドのポート番号を示します。

次に、いくつかの異なる GET レコードを確認します。リクエストが GET レコードかどうかを確認するには、Info 列を確認します。エンドのポート番号が数回使用されている場合、それらの要求はすべて HTTP キープアライブを介して行われました。

Web サーバーがキープアライブをサポートしている場合でも、ほとんどのブラウザーは複数の接続を開くことに注意してください。そのため、1 つの異なるポートだけを見つけて評価を終了しないでください。

于 2014-10-04T13:29:11.330 に答える