Descarte del exceso por un policer Traffic policing
ID de la causa rt-policer · Responsable principal Infraestructura de red (Equipo de infraestructura) · También Infraestructura de servidores (Equipo de infraestructura), Desarrollo de servidor (Equipo de desarrollo)
Los planes de los ISP, los límites de las instancias en la nube y los dispositivos de protección DDoS a veces descartan al instante, sin encolarlos, los paquetes que superan una velocidad fijada.
Por qué El volumen enviado en un instante supera la velocidad permitida o la ráfaga permitida → Efecto Los paquetes que sobran se descartan en el acto, sin cola (policing) → En pantalla En cada ráfaga grande desaparecen varios paquetes: congelamiento seguido de cámara rápida, aunque la velocidad media parezca estar por debajo del límite
Cuando se junta mucha gente, Horas pico de la noche
Responsable
Responsable principal Infraestructura de red (Equipo de infraestructura) · También Infraestructura de servidores (Equipo de infraestructura), Desarrollo de servidor (Equipo de desarrollo)
Tareas (Equipo de desarrollo)
Repartir dentro del tick lo que se envía de golpe en cada tick para bajar el volumen instantáneo por debajo de la ráfaga permitida, juntar los mensajes de un tick en un solo paquete si se topa con el límite de paquetes por segundo.
Tareas (Equipo de infraestructura)
Red: revisar los contadores de exceso del policer en los dispositivos, sustituir el policer por un shaper, ampliar la ráfaga permitida. Servidores/SO: revisar las métricas de límite superado de la nube (en AWS, bw_out_allowance_exceeded y pps_allowance_exceeded en ethtool -S), subir de instancia, aplicar pacing en el servidor (cola fq de Linux).
Cifras de referencia
Un shaper (limitador que encola los paquetes y los retrasa) aumenta la latencia, y un policer (limitador que los descarta al instante) aumenta la pérdida. Una conexión TCP de juego puede detenerse cientos de ms por una sola pérdida, así que, cuando el límite se supera solo un momento, casi siempre hace más daño el policer.
En el gráfico
Topa con el límite · Volumen de envío a intervalos cortos, contadores de exceso del policer y de allowance
Dónde mirar
Contadores de exceso (exceed) y de descartes del dispositivo donde está el policer; en la nube, bw_out_allowance_exceeded y pps_allowance_exceeded en ethtool -S. En las conexiones con pérdida, el RTT justo antes de la pérdida con el rtt de ss -ti o con una captura de paquetes
Se confirma si
Los contadores de exceso suben, y el volumen de envío visto a intervalos cortos se queda plano, como cortado en un valor. El RTT no sube justo antes de la pérdida, y solo en los momentos de ráfaga grande desaparecen varios paquetes a la vez
Se descarta si
Si el RTT sube justo antes de la pérdida, apunta a un desbordamiento de cola (“Desbordamiento de la cola en el cuello de botella (pérdida por congestión)”, “Ráfagas de envío que desbordan búferes poco profundos”). Si los contadores de exceso no cambian, es otra causa
Se verifica con
Con herramientas de infraestructura (no hace falta código del juego)
An Internet-Wide Analysis of Traffic PolicingGoogle Las transferencias sometidas a policing tienen de media una tasa de pérdida 6 veces mayor, y el mismo objetivo se puede lograr con pacing o shaping. Distinción: el policing descarta el exceso sin que suba el RTT, y en el desbordamiento de cola el RTT sube antes de la pérdida (SIGCOMM 2016)