Cortar conexiones a propósito
Lento es una forma de ir mal. Desaparecido es otra, y es la que encuentra el camino de código que nadie escribió: la reconexión, el reintento, el mensaje que le dice al usuario qué ha pasado.
Así también se prueba una aplicación sin conexión sin desenchufar nada: el modo LAN deja funcionando la red local y quita internet, y bloquear una dirección deja inaccesible un único servicio mientras el resto de la conexión va bien.
Cinco formas distintas de desaparecer
| Ajuste | Qué ve la aplicación |
|---|---|
| Restablecer conexiones | Las conexiones mueren en plena transferencia, como las cortaría un firewall o un balanceador de carga. Tú fijas con qué frecuencia, en porcentaje. |
| Enlace que va y viene | La red desaparece un rato y luego vuelve, una y otra vez. Tú fijas la duración del ciclo y qué parte de él está caída. |
| Bloquear un puerto | Todo lo que va a ese puerto desaparece. No se toca nada más. |
| Bloquear una dirección | Un servidor queda inaccesible mientras el resto de internet funciona. |
| Modo LAN | La red local sigue funcionando, internet no. Exactamente la forma de un portal cautivo o de un enlace de subida caído. |
Desde la línea de comandos
Matar aproximadamente una de cada diez conexiones, en una aplicación:
BeanNetworkTester.exe --rst-prob 10 --target myapp.exe --duration 60
Ciclos de diez segundos, caídos cuatro de ellos: un enlace que va y viene sin parar:
BeanNetworkTester.exe --flap-period 10 --flap-down 40 --target myapp.exe
Un servidor inaccesible, todo lo demás bien:
BeanNetworkTester.exe --block-ip 203.0.113.10
El bloqueo solo afecta a lo que nombra
A diferencia de la pérdida o el retardo, bloquear un puerto o una dirección afecta solo al tráfico que coincide. Eso lo convierte en lo más seguro de todo esto para ejecutar sin un proceso objetivo, y es la razón de que «haz que desaparezca esta dependencia» sea un comando de una línea.
La trampa de la descarga muerta
También hay un tamaño máximo de paquete. Bájalo un poco y las transferencias grandes se ralentizan. Bájalo a un valor como 576 y las descargas se detienen por completo, para siempre y sin ningún error, porque eso ya no es un tamaño de paquete más pequeño: es el clásico agujero negro donde la red descarta lo que es demasiado grande y nunca lo dice.
Es un modo de fallo real que merece la pena reproducir a propósito, y es genuinamente desconcertante encontrarlo por casualidad. Si una descarga muere en silencio justo después de cambiar este ajuste, es por esto.
Volver a la normalidad
STOP lo restaura todo. También lo hace cerrar el programa, y también el límite de tiempo si pusiste uno. Si la herramienta misma muriera en mitad de una sesión, un watchdog interno detiene la captura en lugar de dejar tu red en mal estado.