Mi equipo Linux está descartando paquetes UDP. Tiene una NIC 10GbeE 82599ES con ixgbe
controlador.
Corriendo nc
para recibir paquetes como este:
$ nc -I 100000000 -l 2004 -u > /dev/null
y enviando paquetes desde una máquina diferente con:
$ cat /dev/zero | nc 10.5.10.248 2004 -u
tiene los RcvbufErrors en la máquina receptora /proc/net/snmp
aumentando como loco. Curiosamente /proc/net/udp
no muestra ningún paquete perdido. Mi versión del kernel es:
$ uname -a
Linux titan 3.16.0-4-amd64 #1 SMP Debian 3.16.39-1+deb8u2 (2017-03-07) x86_64 GNU/Linux
Hasta donde puedo decir, la única forma de obtener RcvbufErrors sin caídas de UDP es sifiltro_skregresa -ENOMEM
encalcetín_queue_recv_skb, lo que sucede si se pfmemalloc
edita la página del búfer del socket, lo que a su vez sucede si la máquina está bajo presión de memoria.
Lo raro es que free
dice que hay mucho espacio:
$ free -m
total used free shared buffers cached
Mem: 32210 32016 194 178 352 29948
-/+ buffers/cache: 1715 30495
Swap: 65467 162 65305
¡¿Ayuda?! (Gracias de antemano)
k