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

Guia do Lag em Jogos › Design de sincronização

Arquitetura com host (dono da sala) Listen server / host advantage

ID da causa sy-host · Responsável principal Desenvolvimento do servidor (Equipe de desenvolvimento) · Também envolvidos Desenvolvimento do cliente (Equipe de desenvolvimento), Infraestrutura de servidores (Equipe de infraestrutura)

Abrir o card interativo, com figuras e simulações →

Quando o PC de um jogador faz o papel de servidor, a conexão e o desempenho do PC dele definem o que todos sentem.

Por quê O PC do host faz o papel de servidor (P2P, listen server) → Efeito Conexão ou PC lento do host afeta todos, e o host joga com ping 0 → Na tela Só o host leva vantagem, e quando ele sai todos travam ou são desconectados

Sintomas
Engasgos, Travamento, Desconexão
Fatores
Latência, Paralisação
Quem é afetado
Local ou canal específico
Quando
Aleatoriamente, de vez em quando
Responsável
Responsável principal Desenvolvimento do servidor (Equipe de desenvolvimento) · Também envolvidos Desenvolvimento do cliente (Equipe de desenvolvimento), Infraestrutura de servidores (Equipe de infraestrutura)
O que fazer (Equipe de desenvolvimento)
Servidor: migrar para servidores dedicados que cuidem das decisões e, até lá, escolher como host no matchmaking quem tem conexão e PC melhores. Cliente: suportar migração de host, medir no matchmaking o ping até os outros participantes, a velocidade de upload e o desempenho do PC e enviar esses dados.
O que fazer (Equipe de infraestrutura)
Garantir máquinas e instâncias para os servidores dedicados, instalá-los perto das regiões com mais jogadores.
No gráfico
Alto só em alguns · Reports de lag e desconexões por host
Onde olhar
Registrar no log da partida a velocidade de upload do host, o RTT de cada participante até o host, o frame time do PC do host e o horário em que o host saiu, e agrupar os reports de lag e desconexão por host. Os próprios jogadores também podem confirmar jogando de novo com as mesmas pessoas e trocando só o host
Confirma se
Lag e desconexões se concentram nas salas de um host específico, todos os participantes pioram juntos quando o upload desse host está baixo ou o frame time dele está alto, e, sem migração de host, todos caem no instante em que o host sai
Descarta se
Só os participantes de uma região pioram, seja quem for o host: problema de conexão ou de rota. Com servidores dedicados, a causa é outra
Como verificar
Exige logs e métricas do servidor ou do cliente do jogo

Fontes

  1. Networking Overview for Unreal Engine Epic Games
    O host do listen server leva vantagem sobre os outros clientes e tem carga maior, porque cuida do servidor e da renderização ao mesmo tempo
  2. Distributed authority topologies (Netcode for GameObjects 2.5) Unity
    Quando o dono da sessão sai, um novo dono é eleito automaticamente entre os clientes restantes
  3. A Survey and Taxonomy of Latency Compensation Techniques for Network Computer Games (ACM Computing Surveys, 2022) ACM
    Até jogos P2P podem ser vistos como uma arquitetura cliente-servidor em que o host acumula o papel de servidor

Veja também

Mesma camada: Design de sincronização

Mesmo sintoma (Engasgos) em outras camadas

Ver o card interativo, com figuras e simulações