スピードテストを走らせたら数百 Mbps 出た、それでもゲームはラバーバンドする——その結果は、そもそもゲームについての証拠ではありませんでした。測っている量が違い、通る経路が違い、つないだサーバーも違うからです。ここでは、ゲームが実際に反応しているものと、さっきの数字の代わりに見るべき数値を整理します。
まず自分のケースを見つける
| 見えている症状 | 最も可能性が高い原因 | 次にやること |
|---|---|---|
| Mbps は十分、全リージョンでラグい | ローカル側。Wi-Fi、上りの逼迫、ISP 回線そのもの | 有線にする、アップロードを止める、全リージョンを測り直す |
| Mbps は十分、一部のリージョンだけ悪い | 自分の回線ではなく、そのリージョンへの経路 | きれいな結果が出たリージョンで遊ぶ |
| 一人なら快適、誰かが配信するとラグい | 上りが埋まり、ゲームのパケットが順番待ちしている | 空いているときと負荷中で1回ずつ測って比べる |
| 平均 ping は低いのにカクつく | 平均が隠している遅延の振れ | 中央値だけでなく遅延の範囲を読む |
| ワープする、入力が抜ける | パケットロス | まず Wi-Fi を除外し、次にリージョンを比較する |
| ネットワークの数値は全部きれいなのにカクつく | ネットワークの問題ではない | フレーム時間、端末負荷、ゲーム側の障害情報を確認 |
スピードテストは、ゲームが尋ねていない質問に答えている
Mbps は、回線が1秒間にどれだけのデータを運べるかです。ゲームが必要としているのは、小さなパケット1つが向こうに着いて戻ってくるまでの時間で、単位はミリ秒です。単位が違うのは、そもそも別の問題だからです。
| スピードテストが報告するもの | ゲームが実際に依存しているもの |
|---|---|
| 近くの測定サーバーへの最大スループット | ゲームのサーバーリージョンまでの往復時間 |
| 数秒間の一括転送 | 30分の対戦を通じた一貫性 |
| 何もしていない回線で測った ping | 回線が他のことも同時にしているときの遅延 |
| 管が太いかどうか | 小さなパケットが全部、しかも時間どおりに届くかどうか |
ダウンロードは管を満たす作業です。管が太いほど大きなファイルは早く終わります。一方で対戦が送るのは毎秒数十回の小さなパケットの細い流れで、その一つひとつが急ぎの荷物です。管を太くしてもパケットが早く着くようにはなりません。道路に車線を足しても道が短くならないのと同じです。だからこそ、500Mbps と測定された回線が、それでも撃った弾を遅れて届けることがあります。失敗していたのは帯域の部分ではなかったのです。
スピードテストは一番近いサーバーを選んだ。ゲームはそうしない
ここが多くの人のつまずきどころで、しかも運の悪さではなく構造の問題です。
スピードテストはサーバーを自動で選び、その基準は近さです。たいていは最寄りの1台で、自分の ISP の網内にあることも珍しくありません。回線の帯域を測る設計としてはそれが正解で、その結果テストは自分の街も自分のプロバイダも一度も出ないまま終わります。
ゲームサーバーはそうやって選ばれません。固定のリージョンに置かれていて、パケットは自分とそのリージョンの間にあるトランジットやピアリングを越えていく必要があります。つまり、遊べるかどうかを決めている区間——リージョン間のトランジット、混雑したピアリングポイント、遠回りの経路を掴まされている状態——こそが、スピードテストが一度も触れていない区間なのです。きれいなスコアが教えてくれるのはラストワンマイルが健康だということだけで、ラグはたいていその先に住んでいます。
これを見るには、複数のリージョンを同時に測って結果を横に並べます。数値が1つだけでは比べる相手がいませんが、8つ並べればルーティングの形がその場で見えます。
平均が隠すのは、まさに試合を落とす2つの出来事
スピードテストは数秒間の一括転送の平均を報告します。平均はスループットには正しい道具ですが、ゲームには間違った道具です。交戦を壊すのは平均ではなく、その中のたった一瞬だからです。
- 失われた1つのパケット。 回線は余裕のある 30ms を平均していながら、撃った弾を運ぶパケットを落とすことがあります。ゲーム内ではラバーバンド、入力抜け、ワンテンポ遅れて入るヒット判定として現れます。
- 1回のスパイク。 30ms で安定しているところから一瞬だけ 150ms に跳ねるほうが、ずっと 60ms でいるより不快です。ゲームは一定のタイミングを前提に作られていて、平均はそのばらつきを見えない場所へ均してしまいます。
1回だけのテスト同士が食い違う理由もここにあり、この測定がそうした瞬間を均さずに捕まえる設計になっているのもこのためです。各リージョンではまず捨てるための3パケットをウォームアップとして送り、続いて 50ms の固定間隔で20パケットを1ラウンド送ります。間隔を固定するのは、返事を待ってから次を送る方式ではキューがほとんど埋まらず、パケットロスを体系的に過小報告してしまうからです。1つでもパケットが失われるか、往復時間の跳ねが大きければ、そのリージョンは自動的に2ラウンド追加測定され、合計60サンプルで採点されます。20パケットではパケットロスを5%刻みでしか分解できませんが、60パケットならそれが 1.67% まで下がります。これが「断定」と「推測」の違いです。
速い回線でも、埋まれば順番待ちになる
ここでは帯域の大きさが逆に働くことすらあります。アップロードやクラウドバックアップ、同居人の配信が上りを埋めると、ゲームのパケットはその後ろのキューで待たされます。しかも機器のバッファが大きいほど待ち時間は長くなります。ping は上がり、ときには大きく上がりますが、あとから空いた回線で走らせたスピードテストは何事もなかったように完璧な結果を返します。家族の誰かがラグを訴えても1時間後には誰も再現できない、というよくある状況の正体です。
2分で決着がつきます。回線が空いているときに1つのリージョンを測り、次に大きなファイルのアップロードを始めて同じリージョンをもう一度測ってください。負荷時に遅延とパケットロスが跳ね上がるなら、直すべきはルーターのキュー管理か重いトラフィックの時間をずらすことであって、上位プランへの変更ではありません。
代わりに何を測るか
4つを、この順番で見ます。
- 1つを測るのではなく、リージョンを比べる。 全リージョンを一度に走らせます。全部悪ければ自分のネットワーク側、一部だけ悪ければ経路側で、後者はリージョンを変えれば今日のうちに解決します。
- 単一の数値ではなく、範囲を読む。 28〜34ms に収まっているリージョンと、25〜140ms の間で振れるリージョンは、平均が同じでもまったく別物です。
- その隣でパケットロスを読む。 遅延が低くても損失があれば快適には遊べません。どんな小さな損失も一度見直す価値があり、だからこそここでは1パケットの損失でも追加測定が走ります。
- 実際に遊ぶ時間帯に測る。 ピーク時の輻輳こそがこの問いの核心であり、日曜の朝の結果ではそれは見えません。
実際に働いているのは3つの数値で、1つのスコアに混ぜずに分けたまま表示しています。一般的なリアルタイム対戦なら、中央値 25ms 未満は優秀、50ms 未満なら快適で、およそ 90ms を超えたあたりから体験が落ちていきます。競技系シューターは、ゆったりしたジャンルより厳しめに評価されます。これらの区切りはメーカーが公表した基準ではなく、私たちの技術的な解釈です。P10–P90 の範囲はサンプルがどれだけ広がっているかを示し、「ping は良さそうなのにカクつく」現象を最もよく説明する数値です。パケットロスは 0% であるべきで、5% 以上になると評価は大きく下がります。
5つ目のチェックも手元に残しておく価値があります。ネットワークの数値がすべてきれいなら、ネットワークに時間を使うのはやめることです。フレーム時間のスパイク、シェーダーのコンパイル、熱でクロックを落とした GPU、あるいは不調なゲームサービスは、どれもラグとまったく同じ感触のカクつきを生みます。きれいな複数リージョンの結果はここで本当に役に立ちます。どこをこれ以上探さなくていいかを教えてくれるからです。
そして、影響を受けているのが自分だけでなくパーティ全員なら、問いの形が変わります。必要なのは一番遅いメンバーにとって許容できるリージョンであって、一番速い人にとって最適なリージョンではありません。その考え方は全員に公平なサーバーリージョンを5分で選ぶ方法にまとめてあります。
このテストが測っているもの
測っているのは、あなたのブラウザから8つのリージョンにある測定ノードまでの往復時間です。UDP を使い、ブラウザの中で動き、インストールするものはありません。この数値は方向の比較に使ってください。プロバイダがうまく経路を引けているリージョンはどれか、今夜は避けたほうがいいリージョンはどれか、問題はどこへ行ってもついてくるのか一方向だけを指しているのか。ある1試合についての最終的な答えはゲームクライアントが表示する数値です。クライアントはパブリッシャーのサーバーへ自分自身の経路で到達するからです。ここで得られるのは、どの経路に乗る価値があるかを教えてくれる比較のほうです。測定そのものについてはping計測の結果は正確?ツールごとに数値が違う理由で詳しく扱っています。
ゲームのことをスピードテストに尋ねるのはもうやめましょう。全リージョンを一度走らせれば、1分もかからず答えが目の前に並びます。