![Google ビデオチャットは、WAN 接続よりもローカル LAN 上で高速に動作します。](https://rvso.com/image/1331425/Google%20%E3%83%93%E3%83%87%E3%82%AA%E3%83%81%E3%83%A3%E3%83%83%E3%83%88%E3%81%AF%E3%80%81WAN%20%E6%8E%A5%E7%B6%9A%E3%82%88%E3%82%8A%E3%82%82%E3%83%AD%E3%83%BC%E3%82%AB%E3%83%AB%20LAN%20%E4%B8%8A%E3%81%A7%E9%AB%98%E9%80%9F%E3%81%AB%E5%8B%95%E4%BD%9C%E3%81%97%E3%81%BE%E3%81%99%E3%80%82.png)
最近、大学の LAN のインターネット速度が急激に低下しました。ファイルのダウンロード速度の平均は現在 13 Kbps です。Google トークのビデオ チャットは、大学の LAN 内の人と行う場合は信じられないほど高速です。大学のネットワーク外の人とは、実質的に使用できません。私の大学にはプロキシ サーバーがあり、大学の LAN 内のすべてのコンピューターはプロキシ サーバーを介してインターネットに接続します。問題はプロキシ サーバーによるものと思われます。
g-talk はどのようにしてビデオチャットを開始するのでしょうか? 同じネットワーク内の 2 つのクライアント間のビデオチャットを高速化するメカニズムなのでしょうか? 大学の LAN 内のすべてのコンピューターは同じプロキシを使用しているため、Google サーバーにはそれらの IP が同じであるように見えます。
答え1
Google チャット ビデオは、最初に直接接続 (LAN 経由) を試みるようです。それが不可能な場合は、Google インフラストラクチャ経由で接続を試みます。そのため、大学のネットワーク上の人と話すときに高速になる理由は 2 つあります。
1: UDP と TCP ネットワーク上の誰かに直接接続する場合、ファイアウォールを経由せず、ルーターだけを経由することになります。NAT も行われない可能性が高くなります。つまり、Google Chat は UDP を使用してビデオを送受信します。UDP は「コネクションレス」プロトコルとして知られており、確認なしでデータを送信します。衝突検出に基づいてトラフィックを制御する試みはありません。ただし、大学のネットワーク外の誰かに接続する場合は、ファイアウォールと NAT が適用されている可能性があり、通常は UDP (ファイアウォール) がブロックされます。Google Chat はそれを検出し、ビデオにはそれほど効率的ではない TCP を使用します。
2: ゲートウェイを経由する問題。すべてのトラフィックが 1 つの IP を通過するため、速度が低下します。また、距離が離れているため、遅延の問題も発生します。
ソース:https://developers.google.com/talk/libjingle/important_concepts#connections