Verbindungen absichtlich kappen
Langsam ist eine Art von schlecht. Weg ist eine andere, und sie findet den Codepfad, den niemand geschrieben hat: die Wiederverbindung, den erneuten Versuch, die Meldung, die dem Nutzer sagt, was passiert ist.
So testest du auch eine Anwendung offline, ohne etwas abzustecken: Der LAN-Modus lässt das lokale Netzwerk laufen und nimmt das Internet weg, und das Sperren einer Adresse macht einen einzelnen Dienst unerreichbar, während der Rest der Verbindung in Ordnung bleibt.
Fünf verschiedene Arten, weg zu sein
| Einstellung | Was die App sieht |
|---|---|
| Verbindungen zurücksetzen | Verbindungen sterben mitten in der Übertragung, so wie eine Firewall oder ein Load Balancer sie beendet. Du legst fest, wie oft, in Prozent. |
| Verbindung ein und aus | Das Netzwerk verschwindet für eine Weile und kommt dann wieder, immer wieder. Du legst die Zykluslänge fest und wie viel davon Ausfallzeit ist. |
| Einen Port sperren | Alles an diesen Port verschwindet. Nichts sonst wird berührt. |
| Eine Adresse sperren | Ein Server wird unerreichbar, während der Rest des Internets funktioniert. |
| LAN-Modus | Das lokale Netzwerk funktioniert weiter, das Internet nicht. Genau die Form eines Captive Portals oder einer toten Uplink-Verbindung. |
Über die Befehlszeile
Grob jede zehnte Verbindung beenden, für eine App:
BeanNetworkTester.exe --rst-prob 10 --target myapp.exe --duration 60
Zyklen von zehn Sekunden, davon vier Sekunden unten: eine Verbindung, die ständig kommt und geht:
BeanNetworkTester.exe --flap-period 10 --flap-down 40 --target myapp.exe
Ein Server unerreichbar, alles andere in Ordnung:
BeanNetworkTester.exe --block-ip 203.0.113.10
Das Sperren trifft nur, was es nennt
Anders als Verlust oder Verzögerung betrifft das Sperren eines Ports oder einer Adresse nur den passenden Datenverkehr. Damit ist es das sicherste dieser Werkzeuge, wenn man es ohne Prozessziel ausführt, und deshalb ist „diese eine Abhängigkeit verschwinden lassen“ ein Einzeiler.
Die Falle des toten Downloads
Es gibt auch eine maximale Paketgröße. Senkst du sie ein wenig, werden große Übertragungen langsamer. Senkst du sie auf einen Wert wie 576, hören Downloads vollständig auf, für immer und ohne Fehlermeldung. Denn das ist keine kleinere Paketgröße mehr, sondern das klassische Black Hole, in dem das Netzwerk verwirft, was zu groß ist, und es nie meldet.
Das ist ein echter Fehlermodus, den es sich lohnt, absichtlich nachzustellen, und ihm zufällig zu begegnen, ist wirklich verwirrend. Wenn ein Download direkt nach dieser Einstellung stillschweigend stirbt, liegt es daran.
Zurück zum Normalzustand
STOP stellt alles wieder her. Das Schließen des Programms ebenfalls, und auch das Zeitlimit, falls du eines gesetzt hast. Sollte das Tool selbst mitten in der Sitzung sterben, stoppt ein Watchdog darin die Erfassung, statt dein Netzwerk in einem kaputten Zustand zu lassen.