PacketProbeは、速度や帯域幅だけでなく、インターネット接続の実際のパケットロスを測定します。多くのスピードテストはTCP上のスループットのみを測定し、失敗したパケットを自動的に再送信することでパケットロスを隠してしまいます。これでは、ゲーム、ビデオ通話、VoIPでの接続品質については何もわかりません。
私たちはWebRTCの配信保証のないデータチャネルを使用しています。これはブラウザがリアルタイム通信に使用するのと同じ技術で、生のUDPのように動作するよう設定されています。パケットが失われると、そのまま失われたものとしてカウントします。これにより、リアルタイム環境下で実際に接続がどのように動作するかを正確に把握できます。
ブラウザがテストサーバーの1つとWebRTCデータチャネルを確立します。次に、設定可能なレートとサイズで番号付きパケットを送信します。サーバーはどのパケットが到着したかを記録し(アップロードロスの測定)、それらを返送します(ダウンロードロスの測定)。テスト全体がブラウザ内で実行され、ソフトウェアのインストールは不要です。
パケットロスとは、ネットワークを通過するデータパケットが宛先に到達できない現象です。インターネットでは、データは独立して移動する小さなパケットに分割されます。混雑したルーター、故障したケーブル、弱いWi-Fi信号などにより途中でパケットが破棄されると、それは「喪失」と見なされます。
オンラインゲーム、ビデオ通話、VoIPなどのリアルタイムアプリケーションでは、わずか1〜2%のパケットロスでも顕著な問題が発生します:ゲームでのラバーバンディング、途切れる音声、フリーズする映像、通話の切断など。ファイルダウンロード(失われたパケットは単に再送信される)とは異なり、リアルタイムデータには期限があり、パケットが遅れて到着しても意味がありません。
0%が理想的です。1%未満はほとんどのアプリケーションで一般的に許容範囲です。1〜2.5%ではゲームや音声通話で問題が出始めます。5%を超えると深刻で、ほとんどのリアルタイムアプリケーションに大きな支障が出ます。
ジッターとは、パケット到着時間のばらつきのことです。パケットが失われなくても、タイミングが不安定だと問題が発生します。ジッターが高い音声通話は途切れて聞こえます。ジッターが高いゲームはラグが多く予測不能に感じられます。ジッターは30ms未満が理想的で、50msを超えると体感できるようになります。
スピードテストはスループットを測定します。つまり、TCP上で1秒あたりどれだけのデータを転送できるかです。TCPは失われたパケットを自動的に再送信するため、スピードテストではパケットロスが完全に隠されます。PacketProbeは配信保証のない(UDPライク)チャネルを使用し、リアルタイム環境下で接続が実際に発生させるロスとジッターを明らかにします。
各プリセットは、特定のアプリケーションのネットワーク動作を模倣するようテストを設定します。例えば、「ゲーム(FPS)」プリセットは、80msの厳しい遅延閾値で毎秒64個の小さなパケットを送信します。これは対戦型シューティングゲームが実際に接続に要求する条件と一致します。これにより、接続がその特定のユースケースに対応できるかどうかがわかります。