Ir al contenido

Problemas Comunes con la Entrada UDP

UDP (Protocolo de Datagrama de Usuario) - protocolo de comunicación en redes locales o Internet, con retrasos mínimos y estabilidad mínima.

Antes de solucionar problemas, recomendamos usar nuestro script System Tune para optimizar la configuración de Linux.

Con Astra puedes analizar cualquier fuente compatible. Solo ejecuta en la consola el siguiente comando:

Ventana de terminal
astra --analyze "udp://eth0@239.255.1.1:1234"

Para detener el analizador de Astra presiona Ctrl+C. Lee más sobre Astra MPEG-TS Analyzer

Tcpdump es una herramienta común para revisar el tráfico de red. Por ejemplo, el comando para revisar la recepción de multicast UDP al grupo 239.255.1.1 en la interfaz eth0:

Ventana de terminal
tcpdump -pnni eth0 udp and host 239.255.1.1

Si no sabes cuál es la interfaz actual, puedes encontrarla con el comando:

Ventana de terminal
ip route get 239.255.1.1

La salida de tcpdump se ve como muchas líneas con información sobre el origen, destino y longitud de los paquetes. Por ejemplo:

21:38:42.143839 IP 192.168.88.100.33610 > 239.255.1.1.1234: UDP, length 1316
21:38:42.143868 IP 192.168.88.100.33610 > 239.255.1.1.1234: UDP, length 1316

Para detener tcpdump presiona Ctrl+C

No funciona significa un bitrate de cero en la salida de Astra MPEG-TS Analyzer. Por ejemplo:

Jan 27 09:00:00: INFO: Bitrate: 0 Kbit/s
Jan 27 09:00:01: INFO: Bitrate: 0 Kbit/s

Primero revisa el tráfico en la interfaz de red con la herramienta tcpdump. Si no hay información sobre paquetes entrantes, entonces debes revisar la configuración de red o la configuración de la fuente.

  1. Configuración de rutas inválida. Si tienes varias interfaces, por favor revisa que la ruta al grupo multicast esté configurada correctamente o define el nombre de la interfaz en la dirección udp.
  2. Problemas de conectividad. Verifica que tu servidor esté conectado a ethernet o que la interfaz vlan esté creada.
  3. Versión IGMP incompatible. Por ejemplo, tu servidor usa IGMPv3, pero el equipo de red solo soporta IGMPv2: Configurar Versión IGMP

Si tcpdump muestra información sobre los paquetes UDP, pueden existir los siguientes problemas:

  1. UDP bloqueado por reglas de firewall. Revisa la configuración de tu firewall.
  2. Si tu servidor tiene varias interfaces, entonces añade una ruta al grupo multicast o configura el RP Filter: RP Filter y recepción de Multicast en Linux

Los errores CC (Contador de Continuidad) indican que la continuidad de los paquetes está dañada. El error puede ser causado por pérdida o exceso de paquetes:

Jan 27 09:00:00: INFO: Bitrate: 13259 Kbit/s
Jan 27 09:00:00: ERROR: CC: PID:18=3 PID:20=3 PID:256=24
Jan 27 09:00:01: INFO: Bitrate: 13261 Kbit/s
Jan 27 09:00:01: ERROR: CC: PID:18=5 PID:20=2

Primero revisa pérdidas y errores en la interfaz de red:

Ventana de terminal
ip -s link show eth0

Observa los errores RX. Algunas tarjetas de red ofrecen información más detallada sobre la naturaleza de la pérdida:

Ventana de terminal
ethtool -S eth0

Las pérdidas pueden no estar solo en las tarjetas de red de tu servidor. También pueden estar en el puerto del equipo de red. Puedes encontrar información sobre cómo verlo en la documentación del fabricante del equipo de red. Donde eth0 es el nombre de la interfaz. Después de la fila RX habrá una fila con números. El tercer número son los errores de recepción UDP.

La configuración de Calidad de Servicio (QoS) en tu equipo de red puede afectar el tráfico UDP. Asegúrate de que tu configuración de QoS priorice el tráfico UDP y no limite su ancho de banda.

El exceso de paquetes se ve como un bitrate duplicado en el analizador Astra MPEG-TS. Puede comprobarse con tcpdump donde los paquetes con el mismo destino tienen diferentes fuentes:

21:38:42.143839 IP 192.168.88.100.33610 > 239.255.1.1.1234: UDP, length 1316
21:38:42.143868 IP 192.168.88.100.24081 > 239.255.1.1.1234: UDP, length 1316

Puede haber dos causas:

  • Si la dirección de origen es la misma pero los puertos son diferentes (en el ejemplo son 33610 y 24081), entonces el servidor de origen envía el mismo canal dos veces.
  • Si las direcciones de origen son diferentes, entonces más de un servidor está enviando paquetes al mismo grupo.

En ambos casos, debes revisar la configuración del servidor remoto. Si esto no es posible o como solución temporal, puedes bloquear los paquetes de la segunda fuente con el firewall.