質問: 大きなファイルを高速でダウンロードするとワイヤレストラフィックが停止します:パケットが失われました(linksys wrt120nルーター) 問題注:まず、なぜこれが起こっているのかを理解したいと思います。もちろん、解決策もいいでしょう。 :)大きなファイルをhttp経由で高速でダウンロードすると、基本的にワイヤレストラフィックが停止します。ウェブページを開くことができず、ダウンロード自体が一時停止します。開始直後はほとんど一時停止します。時には800kb、時には数mb。しばらくすると、ダウンロード(およびその他のトラフィック)が再開されますが、同じダウンロード中に問題が繰り返し発生します。同じルーター(linskys wrt120n)を介して有線接続を使用する場合、この問題は発生しません。また、これが発生すると、接続はnotドロップされないことに注意してください。トラフィックが止まり、webページなどを閲覧できないだけです(synパケットは送信されますが、何も受信されませんなど)。wiresharkで検査すると、次のことが起こります。 サーバーは、クライアントによって確認されたデータパケットを送信します サーバーはパケットを送信しますが、seqは一部のパケットが失われたことを示します(1回の発生で6パケット)。 サーバーはさらにいくつかのパケットを送信し、クライアントは「選択的確認応答」を使用してこれらを確認します サーバーはしばらくの間データの送信を停止します(失われたパケットが確認されなかったためまたはルーターはそれらの転送を停止しますか?) 最終的に、サーバーは「再送信」を実行し、トラフィックは通常どおり再開します。 パケット損失が発生した場合、これはすべて正常な動作のように見えます。 私を困惑させるのは、大規模な高速ダウンロード全体で一貫したパケット損失です。何が原因でしょうか?私自身の考えは次のとおりです。私のインターネットはかなり高速(100 mbps)なので、大きなファイルのダウンロードを開始すると、ルーターは着信データをバッファリングします(ワイヤレスでは、他のネットワークが原因で、わずかな遅延や速度の低下が発生するため) 、しかし、バッファがオーバーフローし、ルーターはトラフィックを規制するためにパケットをドロップします(そして選択の余地がないため)。しかし、どうしてそれが起こるのでしょうか? tcpウィンドウサイズは、確認応答されないデータの量を制限しませんか?では、確認応答を待機しているのが64 kb程度しかない場合、ルーターのバッファオーバーフローはどのように発生しますか?注:これを修正するために、netshオプションを使用してtcpウィンドウスケーリングと動的ウィンドウサイズを無効にしましたが、修正しません重要なようです。また、 wiresharkは、サーバーが2パケット(1514バイト)を送信し、クライアントがackを送信するパターンを示しています。これにより、バッファオーバーフローの可能性が排除されますか?そして、さらにいくつかの後続のパケットが受信されます...私はここで途方に暮れています。洞察をありがとう。(おそらく)原因ではないもの/私が実験した ブラウザ さまざまなtcp windows 7のオプション(netshなど) mtu、ビーコン間隔、upnp、..などのルーター設定.
回答: 解決策解決策は、ルーター構成で単純にwmmサポートを無効にするにすることでした。どうやら、linksys wrt120n wmmのサポートは、何らかの理由でwindows7ワイヤレスではうまく機能しません。詳細多くの場合、問題が発生すると、パケットがルーターによってしばらくキューに入れられたかのように、トラフィックは最終的に(同じ接続に対して)再開されます。これらの一時停止は通常40秒以上続きます。正直なところ、それでも私は困惑します。この間、他の(tcp)接続は確立できませんでした。webページなどを参照しようとすると、ラップトップはsynパケットを送信しますが、応答はありません。ただし、dnsおよびarp要求は正常に処理されました。