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

Guia do Lag em Jogos › L6 Placa de rede do servidor

Saturação da largura de banda da NIC NIC bandwidth saturation

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

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

Usar uma placa de 1 Gbps ou 10 Gbps no limite faz a fila de transmissão crescer até os pacotes serem descartados.

Por quê Mais broadcasts levam o tráfego ao limite da placa → Efeito A fila de transmissão cresce e, quando transborda, os pacotes são descartados → Na tela Atraso e perda no servidor inteiro (input lag, teleporte)

Sintomas
Input lag, Teleporte
Fatores
Latência, Perda de pacotes
Quem é afetado
Servidor inteiro
Quando
Quando junta muita gente
Responsável
Responsável principal Desenvolvimento do servidor (Equipe de desenvolvimento) · Também envolvidos Infraestrutura de servidores (Equipe de infraestrutura)
O que fazer (Equipe de desenvolvimento)
Reduzir o tráfego (área de interesse, compressão, enviar só o que mudou).
O que fazer (Equipe de infraestrutura)
Fazer upgrade da placa (NIC mais rápida ou, na nuvem, instância maior), criar alerta de utilização da NIC.
No gráfico
Achata ao bater no limite · Volume de transmissão da NIC, descartes na transmissão
Onde olhar
Comparar o txkB/s e o %ifutil (utilização em relação à velocidade da interface) do sar -n DEV 1 com a velocidade da NIC ou a largura de banda da instância, junto com o TX dropped do ip -s link
Confirma se
O volume de transmissão achata perto da largura de banda da NIC ou da instância, e a partir daí os descartes na transmissão e a latência do servidor inteiro aumentam
Descarta se
Largura de banda com folga: não é esta causa. Muitos pacotes pequenos e perda: “Limite de PPS da nuvem excedido”
Como verificar
Ferramentas de infra (sem precisar do código do jogo)

Fontes

  1. Interface statistics Linux kernel
    tx_dropped: número de pacotes descartados durante a transmissão por falta de recursos
  2. Amazon EC2 instance network bandwidth AWS
    A largura de banda que uma instância pode usar depende do número de vCPUs (tamanho da instância)
  3. sar(1) — Linux manual page sysstat
    rxkB/s, txkB/s e %ifutil (utilização em relação à velocidade da interface) do -n DEV

Veja também

Mesma camada: L6 Placa de rede do servidor

Mesmo sintoma (Input lag) em outras camadas

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