ゲームラグ白書 › 症状から探す
引き戻し:原因14件と担当
別名:巻き戻り、ラバーバンド、位置が戻される
図のあるメインページの症状辞典で開く →
自分のキャラクターが前に進んでいたのに、今通ってきた位置へ引き戻されます。
走っている途中で1〜5m後ろへ急に戻される。同じ区間を2〜3回繰り返して歩くこともあります。
自分の画面(予測)とサーバーの判定が食い違っています。自分の入力がサーバーに届かなかったか(パケットロス)、サーバーの移動検証に弾かれたか、双方の移動計算が一致していません。
この症状を引き起こす原因
L1 クライアントのゲームプロセス
- クライアントサイド予測の不一致: 自分のクライアントが先に動かして見せたのに、サーバーの計算結果が違うと、自分のキャラクターが引き戻されます。 (ゲーム開発チーム・クライアント開発)
L3 家庭内ネットワーク
- Wi-Fiの干渉・電波の弱さ: 電波が弱かったり干渉があったりすると、無線区間で何度も送り直すことになり、パケットの到着がばらつきます。 (外部・外部)
L4 インターネット回線
- ピーク時間帯のピアリング混雑: 夜9〜11時ごろは動画のトラフィックが急増し、通信事業者間の接続区間(ピアリング)が混雑しやすくなります。 (インフラチーム・ネットワークインフラ)
- ECMP経路のうち1本の不良: 通信事業者やデータセンターは同じ宛先への経路を複数持ち、接続ごとに1本の経路を決めて送ります。1本の経路だけが故障すると、その経路に割り当てられた人だけにラグが出続けます。 (インフラチーム・ネットワークインフラ)
L5 データセンターのネットワーク機器
- ケーブル不良・ポートエラー: 光モジュールやケーブルが不良だと、その経路を通るパケットが一定の割合で壊れます。 (インフラチーム・ネットワークインフラ)
L6 サーバーのネットワークカード
- NIC割り込みの単一コア集中: NICがパケット到着の割り込みを1つのCPUコアにだけ送ると、そのコアがボトルネックになります。 (インフラチーム・サーバーインフラ)
L13 サーバー構成と運用
- ゾーン移動(サーバー間の引き継ぎ): 別のエリアやダンジョンに入るとき、キャラクター情報を別のサーバーへ引き渡す過程で遅延や失敗が起きます。 (ゲーム開発チーム・サーバー開発)
- マッチメイキング・リージョン割り当ての誤り: 近いリージョンがあるのに遠いリージョンのサーバーに割り当てられると、回線に問題がなくても、そのユーザーだけPingが常に高くなります。 (ゲーム開発チーム・サーバー開発)
同期設計
- 厳しすぎるサーバー検証: 移動速度・クールタイム・射程をサーバーが厳しくチェックしすぎると、ジッターでまとめて届いた正常な入力まで拒否します。 (ゲーム開発チーム・サーバー開発)
- 先行演出後のサーバー拒否: 自分の画面で先に見せたヒット・スキルを後からサーバーが認めないと、確かに見た結果がなかったことになります。 (ゲーム開発チーム・クライアント開発)
- コマンド同期の経路計算の不一致: 「ここへ行け」だけをやり取りして経路は両側でそれぞれ計算すると、計算が少し違うだけで、キャラクターやモンスターが別の経路を進んだ後、元の位置に引き戻されます。 (ゲーム開発チーム・サーバー開発)
一部のユーザーだけに起きる問題
TCP再送の根本原因
- ボトルネックでのキューあふれ(輻輳によるロス): ルーター、通信事業者どうしの接続区間、データセンターの回線のように、最も細い箇所のキューが満杯になると、新しく届くパケットを破棄します。 (インフラチーム・ネットワークインフラ)
- ACKの遅れ・消失(上り回線の飽和): データは問題なく届いているのに、「受け取った」というACKが満杯の上りキューで遅れたり消えたりすると、送信側はパケットロスと判断して再送します。 (外部・外部)
図のあるメインページの症状辞典を見る