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

Sách trắng lag game › Sự cố chỉ một số người gặp

Lỗi phân biệt phiên theo IP hoặc thiết bị Session keyed by IP or machine ID

ID nguyên nhân pt-session-key · 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)

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

Nếu server hoặc server trung gian phân biệt kết nối bằng IP hay ID thiết bị, hai client trên cùng một PC (cùng IP công cộng) sẽ bị coi là một người.

Vì sao Bảng phiên được lập theo IP hoặc IP + ID thiết bị → Dẫn đến Thông tin của client thứ hai ghi đè lên hoặc bị trộn vào phiên thứ nhất → Trên màn hình Một bên không thấy NPC, bên kia bị mất kết nối hoặc nhận nhầm thông tin của người khác

Triệu chứng
Không hiển thị·đối tượng ma, Mất kết nối
Yếu tố
Mất gói
Ai gặp phải
Chỉ một client trên cùng PC, Cùng một nhà, Một khu vực hoặc nhà mạng
Khi nào
Ngay sau đăng nhập hoặc bảo trì
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)
Việc cần làm (Đội phát triển game)
Server: cả server lẫn server trung gian đều phân biệt bằng session token riêng cho từng kết nối; nhiều người trong cùng một nhà (sau NAT của router) và người chơi dùng mạng di động nơi nhà mạng chia một IP cho nhiều thuê bao (CGNAT) cũng gặp cùng vấn đề, nên nhất định phải sửa. Client: dùng session token nhận riêng cho mỗi client đang chạy.
Trên đồ thị
Chỉ một phần cao · Số phiên đồng thời từ cùng một IP công cộng, số lần phiên bị ghi đè
Chỗ cần xem
Ghi vào log server và server trung gian khóa dùng để tìm phiên, session token, IP và cổng client, rồi xem phiên cũ có bị thay đổi đúng lúc kết nối thứ hai từ cùng IP đi vào không. Bật lần lượt hai client trên cùng một PC là tái hiện được
Đúng nếu
đúng lúc client thứ hai kết nối, địa chỉ hoặc thông tin nhân vật của phiên thứ nhất bị thay đổi, và những người chơi khác sau cùng router hoặc mạng di động (CGNAT) cũng gặp mất kết nối tương tự
Loại trừ nếu
hai phiên từ cùng IP được duy trì riêng với token khác nhau → không phải nguyên nhân này. Hai tiến trình dùng cùng một cổng cục bộ → xung đột cổng UDP cố định
Cách kiểm tra
Cần log và chỉ số của server, client game

Nguồn

  1. RFC 6269: Issues with IP Address Sharing IETF
    Khi nhiều thuê bao dùng chung một địa chỉ IPv4 qua NAT hoặc CGN, chỉ dựa vào IP thì không phân biệt được người dùng

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

Cùng tầng: Sự cố chỉ một số người gặp

Nguyên nhân ở tầng khác gây cùng triệu chứng (Không hiển thị·đối tượng ma)

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