Toleranz gegenüber instabiler Netzwerkverbindung

Tronar

aus Überzeugung altmodisch
Liebe Leut,

ich habe wieder eines dieser Probleme, die man im Prinzip durch den Kauf billiger Hardware lösen kann; das ich aber eigensinnig in Software lösen möchte.
Ein Rechner unter NetBSD (*) fungiert als Internet-Gateway, Router und WLAN access point. Dank "hostapd", "IPNAT" und IP forwarding komme ich z. B. mit meinem Android-Tablet ins Internet hinaus.
Jedoch ist das WLAN-Teil in diesem Gateway ein bißchen minderwertig. Es fällt alle ein, zwei Minuten ganz kurz aus, für einen Sekundenbruchteil oder vielleicht eine Sekunde. Laut LOG-Datei ist die WLAN-Verbindung kurz "disassociated" und dann wieder "associated". (**) Beim Surfen im Web stellt das kein Problem dar. Ordentliche Browser wie Googles Chrome, den ich auf dem Tablet benutze, können damit umgehen; auch Downloads funktionieren tadellos. (Bei schlechteren Browsern, z. B. dem von Yandex, gehen Downloads nicht.)
Ein echtes Problem tritt aber auf bei Internet-Telefonaten mit Skype oder Linphone (SIP). Dort reißt die Verbindung ab. Frage also: Wie kann ich (weniger den VoIP client als vielmehr) das System ein wenig toleranter machen? Wie kann ich überhaupt feststellen, wer die Verbindung unterbricht? Der Tablet, weil er kein WLAN sieht? Der Server im Internet, weil er "unreachable"-Meldungen (***) vom Gateway bekommt? Der Gateway selbst, z. B. weil seine NAT-Tabelle ungültig wird?

Vorschläge?


(*) Ich glaube nicht, daß die Fragestellung übermäßig NetBSD-spezifisch ist; daher sind auch Antworten von FreeBSD-Nutzern und anderen erwünscht.

(**) Das ist hardwarebedingt. Es trat unter einem anderen Betriebssystem ebenso auf.

(***) Da könnte es sinnvoll sein, ICMP-Pakete auf dem Gateway zu blockieren, so daß entsprechende "unreachable"-Meldungen nicht rausgehen. Aber wahrscheinlich sollte ich nicht alle ICMP-Pakete blockieren, sonst kriege ich bestimmt anderswo Probleme.
 
Hat das WLAN Teil einen 2,4GHz und einen 5GHz Teil eingebaut? Wenn ja, sind dann beide Module bei den Ausfällen betroffen? Kannst du alle Clients mit einem UDP basierten Tunnel surfen lassen? Ist ein MESH über andere Geräte machbar?
 
Zuletzt bearbeitet:
Das Gerät hat nur 2.4 GHz.
Tunnel ... Du meinst, eine mehr oder weniger virtuelle TCP-Verbindung würde vom Ausfall der UDP-Schicht nicht so schnell was merken. Gute Idee, aber ich fürchte, in Android oder Windows kriege ich das nicht hin, zumindest wird es eine langwierige Bastelei. Und mit Linux/BSD habe ich hier keine Clients.
Für MESH habe ich auch keine geeigneten Geräte. Sowas würde wohl eher bei geringer Signalstärke helfen, aber die ist nicht das Problem.

Zuviel Aufwand will ich nicht betreiben; ich bin hier nur noch für ein paar Wochen. Das ist auch der Grund, warum ich keine Hardware kaufen will, die ich danach sicher nie wieder benutze.
Ich frage auch deshalb, weil ich vor ein paar Jahren ein ähnliches Problem schon mal mit einem Gigaset-Router hatte, es also gut ist, mal ein paar Ideen im Hinterkopf zu behalten.
Gibt es vielleicht ein paar Timeout-Einstellungen oder Puffermechanismen, die ich mittels Sysctls etwas toleranter stellen kann?

Ich probiere morgen abend mal mit TcpDump herum, um was Genaueres herauszufinden, und melde mich ggf.
 
Zurück
Oben