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

Libro blanco del lag en juegos › L6 Tarjeta de red del servidor

Coalescencia de interrupciones excesiva Interrupt coalescing

ID de la causa nic-coalesce · Responsable principal Infraestructura de servidores (Equipo de infraestructura)

Abrir la ficha interactiva con gráficos y simulaciones →

Para reducir la carga de la CPU, la NIC junta paquetes y avisa de una sola vez, así que los paquetes se retrasan lo que dura esa espera.

Por qué La NIC junta paquetes durante cierto tiempo o hasta cierto número antes de avisar → Efecto Los paquetes esperan mientras se juntan → En pantalla Leve aumento de la latencia. Normalmente es pequeño, pero si se exagera llega al orden de ms

Síntomas
Input lag
Factores
Latencia
A quién afecta
Todo el servidor
Cuándo
Siempre
Responsable
Responsable principal Infraestructura de servidores (Equipo de infraestructura)
Tareas (Equipo de infraestructura)
Usar coalescencia adaptativa, ajustar los valores para un servidor de juegos (ethtool -C).
Cifras de referencia
Normalmente de decenas a cientos de µs. Para un juego suele ser despreciable, pero con una configuración excesiva llega a ms.
En el gráfico
Siempre alto · Tiempo de ida y vuelta dentro del mismo centro de datos
Dónde mirar
Ver con ethtool -c la configuración actual de coalescencia (adaptive-rx, rx-usecs, rx-frames) y comparar el tiempo de ida y vuelta del ping a otro servidor del mismo centro de datos antes y después de cambiarla
Se confirma si
rx-usecs está configurado alto (cientos de µs o más) y, al bajarlo, el tiempo de ida y vuelta dentro del centro de datos se reduce en la misma medida
Se descarta si
Si al bajarlo el tiempo de ida y vuelta no cambia, no es esta causa
Se verifica con
Con herramientas de infraestructura (no hace falta código del juego)

Fuentes

  1. Linux Driver for Intel(R) Ethernet Network Connection (e1000e) Linux kernel
    Por defecto, moderación adaptativa de interrupciones de 4,000–20,000 por segundo (cada 50–250 µs); menos interrupciones ahorran CPU, pero aumentan la latencia
  2. Linux Base Driver for Intel(R) Ethernet Network Connection (e1000) Linux kernel
    RxIntDelay puede retrasar las interrupciones de recepción en unidades de 1.024 µs hasta 65,535 (unos 67 ms), y cuanto mayor es el valor, más latencia de recepción hay
  3. ethtool(8) — Linux manual page ethtool
    Los ajustes adaptive-rx, rx-usecs y rx-frames de ethtool -C

Ver también

Misma capa: L6 Tarjeta de red del servidor

Causas de otras capas con el mismo síntoma (Input lag)

Ver la ficha interactiva con gráficos y simulaciones