Interrompere le connessioni di proposito
Lento è un modo di essere messi male. Scomparso è un altro, ed è quello che trova il percorso di codice che nessuno ha scritto: la riconnessione, il nuovo tentativo, il messaggio che dice all’utente cos’è successo.
È anche il modo di provare un’applicazione offline senza staccare nulla: la modalità LAN lascia funzionare la rete locale e toglie internet, e bloccare un indirizzo rende irraggiungibile un singolo servizio mentre il resto della connessione va bene.
Cinque modi diversi di sparire
| Impostazione | Cosa vede l’app |
|---|---|
| Reset delle connessioni | Le connessioni muoiono a metà trasferimento, come le ucciderebbe un firewall o un bilanciatore di carico. Imposti tu la frequenza, in percentuale. |
| Collegamento che va e viene | La rete scompare per un po’ e poi torna, ancora e ancora. Imposti tu la durata del ciclo e quanta parte è di inattività. |
| Bloccare una porta | Tutto ciò che va a quella porta scompare. Nient’altro viene toccato. |
| Bloccare un indirizzo | Un server diventa irraggiungibile mentre il resto di internet funziona. |
| Modalità LAN | La rete locale continua a funzionare, internet no. Esattamente la forma di un captive portal o di un uplink morto. |
Dalla riga di comando
Uccidere circa una connessione su dieci, su un’app:
BeanNetworkTester.exe --rst-prob 10 --target myapp.exe --duration 60
Cicli di dieci secondi, quattro dei quali di inattività: un collegamento che va e viene di continuo:
BeanNetworkTester.exe --flap-period 10 --flap-down 40 --target myapp.exe
Un server irraggiungibile, tutto il resto a posto:
BeanNetworkTester.exe --block-ip 203.0.113.10
Il blocco colpisce solo ciò che nomina
A differenza di perdita o ritardo, bloccare una porta o un indirizzo riguarda solo il traffico corrispondente. Questo lo rende il più sicuro di questi da eseguire senza un processo di destinazione, ed è il motivo per cui «fai sparire questa dipendenza» è un comando di una riga.
La trappola del download morto
C’è anche una dimensione massima del pacchetto. Abbassala un poco e i trasferimenti grandi rallentano. Abbassala a un valore come 576 e i download si fermano del tutto, per sempre, senza alcun errore, perché non è più una dimensione di pacchetto più piccola: è il classico buco nero in cui la rete scarta ciò che è troppo grande e non lo dice mai.
È una vera modalità di guasto che vale la pena riprodurre di proposito, ed è davvero sconcertante incontrarla per caso. Se un download muore in silenzio subito dopo aver cambiato questa impostazione, è per questo.
Tornare alla normalità
STOP ripristina tutto. Lo fa anche chiudere il programma, e lo fa anche il limite di tempo se ne hai impostato uno. Se lo strumento stesso dovesse morire a metà sessione, un watchdog al suo interno interrompe la cattura invece di lasciare la tua rete in uno stato rotto.