Restricciones de UDP e inspección de paquetes por país o ISP UDP blocking, throttling and inspection by networks
ID de la causa isp-udp-block · Responsable principal Externo (Externo) · También Desarrollo de cliente (Equipo de desarrollo), Desarrollo de servidor (Equipo de desarrollo), Infraestructura de red (Equipo de infraestructura)
Algunas redes bloquean ciertas direcciones y puertos UDP o limitan la velocidad del UDP, y sus dispositivos de inspección de paquetes filtran los protocolos que no reconocen. En esas redes, los juegos que se comunican por UDP no conectan o se desconectan a menudo.
Por qué Conexión desde la red de un ISP que limita la velocidad del UDP, o desde una red con dispositivos de inspección (censura) del tráfico a nivel de país o de ISP → Efecto Se bloquean ciertas direcciones y puertos UDP, se limita la velocidad del UDP en las horas de más tráfico, se filtran los puertos y protocolos que no están en la lista de permitidos, o se dejan pasar solo los primeros paquetes y luego se bloquea → En pantalla Solo para los jugadores de ciertos países o ISP: el juego no conecta o se queda en carga infinita, se desconecta poco después de entrar, o hay teletransporte por pérdida de paquetes en las horas de más tráfico
Al conectar o tras un mantenimiento, Siempre, Horas pico de la noche
Responsable
Responsable principal Externo (Externo) · También Desarrollo de cliente (Equipo de desarrollo), Desarrollo de servidor (Equipo de desarrollo), Infraestructura de red (Equipo de infraestructura)
Tareas (Equipo de desarrollo)
Cliente: pasar automáticamente a una ruta alternativa por TCP/TLS 443 si el UDP no conecta en unos segundos, detectar también las conexiones que entran y se cortan enseguida y reintentarlas por la ruta alternativa, registrar en el log por qué ruta se conectó. Servidor: aceptar el mismo protocolo del juego también por TCP 443 (TLS), ajustar los timeouts porque la ruta alternativa puede añadir latencia.
Tareas (Equipo de infraestructura)
Antes de abrir un país nuevo, medir en las redes de los ISP locales si llega el UDP y cuánta pérdida hay en horas pico, poner cerca de esa región servidores relay o gateways que acepten la ruta alternativa por TCP 443, vigilar la tasa de conexiones UDP y TCP exitosas por país y ASN, reunir datos y escalar a los ISP en los que se confirme la limitación del UDP.
Tareas (Externo)
Preguntar al ISP o al organismo correspondiente por sus criterios de restricción del UDP y si puede relajarlos, indicar a los jugadores que prueben a conectarse desde otra red para comparar.
Cifras de referencia
Según mediciones citadas en un documento del IETF, el 3–5% de las redes bloquea el UDP por completo. Cuando Google revisó en 2016 el uso de QUIC (basado en UDP), el 4.4% de los clientes no podía usar UDP/QUIC porque estaba bloqueado o porque la MTU de la ruta era pequeña, casi siempre detrás de firewalls corporativos, y no vio ningún caso de un ISP entero que lo bloqueara. Otro 0.3% estaba en redes donde la pérdida subía mucho en horas pico, al parecer porque limitaban la velocidad del UDP; pidiendo cambios a los ISP, esa cifra bajó desde el 1% de 2015.
En el gráfico
Alto solo en algunos · Tasa de éxito de conexión UDP (por país/ASN)
Dónde mirar
Separar por país y ASN la tasa de éxito de conexión UDP y la de la ruta alternativa por TCP 443. Desde una VM en la nube dentro de la red de ese ISP o desde la computadora de un jugador conectado a él, probar la conexión al puerto UDP del juego y a TCP 443 por separado, y comparar mtr -u -P (puerto del juego) con mtr -T -P 443 para ver a partir de qué salto desaparecen las respuestas
Se confirma si
Solo en un país o ASN concreto, el UDP no recibe la primera respuesta o se corta a los pocos segundos, mientras que TCP 443 funciona desde el mismo lugar. Si es limitación de velocidad, la pérdida del UDP sube claramente solo en horas pico y el TCP se ve menos afectado
Se descarta si
Si el TCP también falla, apunta a una caída de la ruta, un bloqueo de IP o “Fallos y lentitud del DNS”. Si pasa igual en todos los países, a la configuración de nuestros servidores o firewalls. Si la pérdida aparece solo con ráfagas de tráfico, tanto en UDP como en TCP, a “Descarte del exceso por un policer”
Se verifica con
Con herramientas de infraestructura (no hace falta código del juego)
Para saber más
Según un documento de estudio del IRTF, los dispositivos de inspección de paquetes pueden seleccionar flujos UDP por dirección, puerto y protocolo para bloquearlos, o bloquear todo salvo los protocolos permitidos (lista de permitidos). Si el dispositivo decide mirando solo algunos campos del paquete, basta un pequeño cambio en el protocolo para que lo bloquee. En los inicios de QUIC, tras cambiar un bit de la cabecera, un firewall dejaba pasar los primeros paquetes y bloqueaba los siguientes, así que la lógica del cliente para cambiar a TCP no llegaba a activarse. Al abrir un país nuevo, puede aparecer en reportes como “en Corea va bien, pero en ese país no se puede conectar desde algunos ISP”. Si solo se bloquea en la red de un lugar, como una cafetería o una oficina, consulta la entrada “Restricciones en Wi-Fi público y redes corporativas”.
Fuentes
RFC 9308: Applicability of the QUIC Transport ProtocolIETF Según los estudios de medición, el 3–5% de las redes bloquea el UDP por completo, así que las apps basadas en UDP deben aceptar fallos de conexión o tener una ruta alternativa por TCP (TLS); los firewalls pueden bloquear los puertos que no corresponden a un servicio registrado
The QUIC Transport Protocol: Design and Internet-Scale Deployment (SIGCOMM 2017)ACM 2016: el 4.4% de los clientes no podía usar QUIC sobre UDP (UDP/QUIC bloqueado o MTU de ruta pequeña, casi siempre detrás de firewalls corporativos; no se observó ningún bloqueo de un ISP entero); el 0.3% estaba en redes que parecían limitar la velocidad del UDP (más pérdida en horas pico; bajó desde el 1% de 2015 tras pedírselo a los ISP); caso de un firewall que, tras el cambio de 1 bit de la cabecera, dejaba pasar solo los primeros paquetes y bloqueaba el resto, lo que anulaba la lógica de cambio a TCP
RFC 9505: A Survey of Worldwide Censorship TechniquesIRTF Los dispositivos de inspección de la red pueden seleccionar flujos TCP y UDP por dirección, puerto y protocolo para bloquearlos (con QUIC se observó el bloqueo de endpoints UDP); permitir solo ciertos protocolos lleva a bloquear de más, y también se usa la limitación de velocidad de cierto tráfico
mtr(8) manual page sourcemtr Envía UDP con -u o TCP SYN con -T y fija el puerto de destino con -P, para medir la ruta con el mismo protocolo y puerto que el juego