한국어English日本語简体中文繁體中文DeutschไทยTiếng ViệtРусскийPortuguês (Brasil)EspañolBahasa Indonesia

Sách trắng lag game › L2 OS và thiết bị phía client

Chuyển đổi Wi-Fi ↔ LTE hoặc 5G Network switch changes IP

ID nguyên nhân co-netswitch · Phụ trách chính Phát triển server (Đội phát triển game) · Phối hợp Phát triển client (Đội phát triển game), Hạ tầng mạng (Đội hạ tầng)

Mở thẻ gốc có hình minh họa và thí nghiệm →

Khi bạn ra khỏi nhà, Wi-Fi mất và máy chuyển sang LTE hoặc 5G, địa chỉ IP của bạn thay đổi nên kết nối hiện có không còn dùng được.

Vì sao Sóng Wi-Fi yếu đi nên máy chuyển sang mạng di động → Dẫn đến Địa chỉ IP của bạn đổi, nên kết nối đã thiết lập bằng địa chỉ cũ không trao đổi dữ liệu được nữa → Trên màn hình Đứng hình một chút rồi mất kết nối hoặc phải kết nối lại

Triệu chứng
Đứng hình, Mất kết nối
Yếu tố
Mất gói
Ai gặp phải
Chỉ mình tôi
Khi nào
Khi di chuyển hoặc chuyển bản đồ
Phụ trách
Phụ trách chính Phát triển server (Đội phát triển game) · Phối hợp Phát triển client (Đội phát triển game), Hạ tầng mạng (Đội hạ tầng)
Việc cần làm (Đội phát triển game)
Server: dùng session token để nhận lại đúng người chơi đó dù địa chỉ đã đổi và dọn ngay kết nối của địa chỉ cũ, cân nhắc giao thức vẫn giữ được kết nối khi địa chỉ đổi (như connection migration của QUIC). Client: phát hiện chuyển mạng thì kết nối lại ngay bằng session token thay vì chờ heartbeat timeout.
Việc cần làm (Đội hạ tầng)
Nếu dùng connection migration của QUIC, cấu hình bộ cân bằng tải chọn server theo connection ID thay vì địa chỉ và cổng (chọn theo địa chỉ và cổng thì gói tin có địa chỉ mới sẽ đi tới server khác).
Trên đồ thị
Rớt kết nối hàng loạt · Số lần mất kết nối và kết nối lại, IP bị đổi khi kết nối lại
Chỗ cần xem
Tìm trong log kết nối của server các lần cùng một session token kết nối lại từ IP khác, rồi đối chiếu với thời điểm callback đổi mạng mặc định của client (registerDefaultNetworkCallback)
Đúng nếu
IP kết nối lại ngay sau khi mất kết nối đổi từ dải IP của Wi-Fi (đường truyền gia đình) sang dải IP của nhà mạng di động hoặc ngược lại, và ngay trước đó có callback chuyển mạng
Loại trừ nếu
IP không đổi mà vẫn mất kết nối → “Handover trạm phát sóng (khi đang di chuyển)” hoặc “Sóng di động yếu hoặc vùng lõm sóng”
Cách kiểm tra
Cần log và chỉ số của server, client game

Nguồn

  1. Read network state Android (Google)
    Khi mạng mặc định đổi, kết nối mới đi qua mạng mới còn kết nối trên mạng cũ cuối cùng bị ngắt cưỡng bức; phát hiện việc chuyển mạng bằng registerDefaultNetworkCallback
  2. RFC 9000: QUIC: A UDP-Based Multiplexed and Secure Transport IETF
    Nhờ connection ID, kết nối vẫn được giữ dù địa chỉ IP và cổng đổi (mục 9); bộ cân bằng tải chỉ phân tải theo địa chỉ và cổng có thể gửi gói tin có địa chỉ mới tới server khác (mục 5.2.3)
  3. RFC 9293: Transmission Control Protocol (TCP) IETF
    Kết nối TCP được nhận diện bằng cặp socket (địa chỉ và cổng) ở hai đầu

Nguyên nhân nên xem cùng

Cùng tầng: L2 OS và thiết bị phía client

Nguyên nhân ở tầng khác gây cùng triệu chứng (Đứng hình)

Xem thẻ gốc có hình minh họa và thí nghiệm