Windows 10 x64 では HTTPS トラフィックが HTTP より 40 倍遅い

Windows 10 x64 では HTTPS トラフィックが HTTP より 40 倍遅い

この問題のフォローアップ https://stackoverflow.com/questions/45768893/git-clone-in-windows-much-slower-than-in-linux/45893258#45893258

Windows 10のHTTPSトラフィックは200~240kb/sに制限されています。HTTPトラフィックは簡単に8mb/sに達します。

これは、ケーブル接続されたイーサネットまたは Wi-Fi 経由でも同様です。ルーターやファイアウォールを使用せずに、PC を HFC ケーブル コンセントに直接接続した場合も同様です。

同じ問題(同じ Windows インストール)のある別の Windows 10 PC を試しました。

Windows 10 で HTTPS が HTTP より 40 倍遅くなる原因は何でしょうか?

私はMicrosoft Windows [バージョン 10.0.15063] x64 Enterpriseを実行しています

ブリッジネットワーク接続を使用してWindowsホストでKali Linux VMを実行すると、HTTPS経由で8mb/sを取得できます。Kali Linux VMをNATに設定すると、速度は200kb/sに低下します。

Windows 10 ホストで Windows XP VM を実行すると、NAT またはブリッジに関係なく、HTTPS から 200kb/s を取得します。

編集: MTU を 576 に強制し、次の Wireshark ダンプを Bitbucket に出力して確認しました。速度は依然として約 200kb/s です。

Frame 147: 590 bytes on wire (4720 bits), 590 bytes captured (4720 bits) on interface 0
Ethernet II, Src: JuniperN_28:63:ca (d4:04:ff:28:63:ca), Dst: Giga-Byt_3c:b0:19 (90:2b:34:3c:b0:19)
Internet Protocol Version 4, Src: 104.192.143.2, Dst: x.x.x.x
Transmission Control Protocol, Src Port: 443, Dst Port: 40796, Seq: 10142, Ack: 528, Len: 536
Source Port: 443
Destination Port: 40796
**[TCP Segment Len: 536]**
0101 .... = Header Length: 20 bytes (5)
Flags: 0x010 (ACK)
Window size value: 30552
[Calculated window size: 30552]
[Window size scaling factor: -2 (no window scaling used)]
Urgent pointer: 0
[SEQ/ACK analysis]
**TCP payload (536 bytes)**
[Reassembled PDU in frame: 152]
**TCP segment data (536 bytes)**

編集: 次の netsh int ipv4 reset netsh winsock reset reboot を試しました。

IPv6 対応の HTTPS は 3.5mb/s と高速であることがわかりましたが、IPv4 HTTPS はわずか ~200kb/s です。

私が持っているWindows 7のラップトップは、HTTPSを最大8mb/sで使用できますが、Windows 10マシンは両方ともHTTPS経由で約200kb/sしかダウンロードできません。

ファイアウォール、ルーターなどを無効にしてみました。

答え1

問題が解決しました。

netsh インターフェース tcp グローバルを表示

netsh int tcp グローバル自動チューニングレベルを通常に設定する

何らかの理由で、すべての Windows 10 PC で自動チューニングが無効に設定されていました

答え2

私は Windows 10 を使用していますが、HTTPS トラフィックは、現在ほぼすべての Web サイトで使用されているため、制限されていません。

試すことができるのは以下のとおりです:

  1. ファイアウォールを無効にします。

  2. インストールされている製品が原因かどうかを確認するには、ネットワーク対応のセーフ モードで再起動します。

  3. コントロール パネル / インターネット オプションの [詳細設定] タブで、セキュリティ セクションまで下にスクロールし、[TLS 1.2 を使用する] のチェックを外して再起動します。

質問: この問題は複数のブラウザで発生しますか?

関連情報