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

Libro blanco del lag en juegos › Problemas que solo afectan a algunos

Falsos positivos de validación concentrados en un ISP Anti-cheat / movement validation false positives on bad ISPs

ID de la causa pt-isp-validation · Responsable principal Desarrollo de servidor (Equipo de desarrollo) · También Infraestructura de red (Equipo de infraestructura)

Abrir la ficha interactiva con gráficos y simulaciones →

Los inputs de quienes usan conexiones con mucho jitter llegan a ráfagas, así que caen a menudo en las comprobaciones de velocidad y cooldown del servidor.

Por qué El jitter de las conexiones de un ISP o una región concretos aumenta por la noche → Efecto El servidor interpreta como exceso de velocidad o infracción de cooldown los inputs legítimos que llegaron juntos → En pantalla Solo los jugadores de ese ISP sufren rubber banding, rechazos de habilidades y, en casos graves, una desconexión porque el servidor los expulsa

Síntomas
Rubber banding, Acción perdida / rollback, Desconexión
Factores
Jitter
A quién afecta
Una región o un ISP, Solo yo
Cuándo
Horas pico de la noche, Al moverse o cambiar de zona
Responsable
Responsable principal Desarrollo de servidor (Equipo de desarrollo) · También Infraestructura de red (Equipo de infraestructura)
Tareas (Equipo de desarrollo)
Comprobar con un margen acumulado a lo largo de varios segundos, relajar el criterio teniendo en cuenta el estado de la conexión (ping, jitter), poner una fase de aviso antes de la expulsión, y repartir en cada tick los inputs que llegan juntos con un búfer de inputs por jugador para reducir los propios falsos positivos.
Tareas (Equipo de infraestructura)
Revisar por franja horaria la distribución de la tasa de pérdida y el jitter de cada ISP y compartirla con el equipo de desarrollo, revisar la ruta del tramo de ese ISP (mtr en ambos sentidos) y, si hace falta, cambiar la ruta o escalar al ISP.
En el gráfico
Alto solo a ciertas horas · Rechazos de validación y expulsiones por ISP (ASN), jitter por ISP
Dónde mirar
Añadir el ISP (ASN) de la IP de conexión y la hora a los logs de rechazos de validación, correcciones y expulsiones del servidor, y contarlos por ISP y franja horaria. El equipo de infraestructura lanza a la misma hora un mtr en ambos sentidos hacia ese ISP para ver el jitter y la pérdida
Se confirma si
Los rechazos y expulsiones se concentran en un ISP y aumentan por la noche, el jitter de ese ISP es alto a la misma hora, y el movimiento sumado en ventanas de unos segundos está dentro de las reglas
Se descarta si
Si se repite solo en ciertas cuentas sin importar el ISP, puede haber trampas reales. Si aumenta en todos los ISP a la vez, la causa está en el servidor: el tick se retrasa y los comandos se aplican amontonados (“Tick que excede su presupuesto”)
Se verifica con
Requiere logs y métricas del servidor o el cliente del juego

Fuentes

  1. Source SDK 2013: player.cpp Valve
    Comentario de los desarrolladores: el presupuesto de comandos que se acumula en cada tick frena el exceso de velocidad, pero un límite más estricto provoca tirones también a los jugadores legítimos
  2. RFC 2697: A Single Rate Three Color Marker IETF
    Token bucket: decide con la tasa media y el tamaño de ráfaga permitido
  3. Understanding Networked Movement in the Character Movement Component for Unreal Engine Epic Games
    Si la diferencia entre los timestamps del cliente y del servidor es grande, el movimiento se descarta o pasa por un procedimiento que resuelve la diferencia de tiempo; se calcula con la hora del servidor para evitar los speed hacks

Ver también

Misma capa: Problemas que solo afectan a algunos

Causas de otras capas con el mismo síntoma (Rubber banding)

Ver la ficha interactiva con gráficos y simulaciones